This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/ember-cli-build.js
Robin Ward 37c42a57b0
DEV: Make dockcontainer and hidepassed the defaults (#12416)
This makes running qunit tests in a browser much simpler
2021-03-16 14:34:59 -04:00

54 lines
1.6 KiB
JavaScript

"use strict";
const EmberApp = require("ember-cli/lib/broccoli/ember-app");
const resolve = require("path").resolve;
const mergeTrees = require("broccoli-merge-trees");
const concat = require("broccoli-concat");
const babel = require("broccoli-babel-transpiler");
const path = require("path");
const funnel = require("broccoli-funnel");
function prettyTextEngine(vendorJs, engine) {
let engineTree = babel(`../pretty-text/engines/${engine}`, {
plugins: ["@babel/plugin-transform-modules-amd"],
moduleIds: true,
getModuleId(name) {
return `pretty-text/engines/${engine}/${path.basename(name)}`;
},
});
let markdownIt = funnel(vendorJs, { files: ["markdown-it.js"] });
return concat(mergeTrees([engineTree, markdownIt]), {
outputFile: `assets/${engine}.js`,
});
}
module.exports = function (defaults) {
let discourseRoot = resolve("../../../..");
let vendorJs = discourseRoot + "/vendor/assets/javascripts/";
let app = new EmberApp(defaults, {
autoRun: false,
"ember-qunit": {
insertContentForTestBody: false,
},
});
// WARNING: We should only import scripts here if they are not in NPM.
// For example: our very specific version of bootstrap-modal.
app.import(vendorJs + "bootbox.js");
app.import(vendorJs + "bootstrap-modal.js");
app.import(vendorJs + "jquery.ui.widget.js");
app.import(vendorJs + "jquery.fileupload.js");
app.import(vendorJs + "jquery.autoellipsis-1.0.10.js");
return mergeTrees([
app.toTree(),
concat(app.options.adminTree, {
outputFile: `assets/admin.js`,
}),
prettyTextEngine(vendorJs, "discourse-markdown"),
]);
};