@embroider/compat 3.5.4 → 3.5.5-unstable.3734d9fa
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +13 -13
- package/src/audit/babel-visitor.js +12 -6
- package/src/audit/babel-visitor.js.map +1 -1
- package/src/audit/build.js +3 -3
- package/src/audit/build.js.map +1 -1
- package/src/audit-cli.js.map +1 -1
- package/src/audit.d.ts +6 -54
- package/src/audit.js +93 -277
- package/src/audit.js.map +1 -1
- package/src/babel-plugin-adjust-imports.d.ts +2 -1
- package/src/babel-plugin-adjust-imports.js +2 -2
- package/src/babel-plugin-adjust-imports.js.map +1 -1
- package/src/build-compat-addon.js +1 -1
- package/src/build-compat-addon.js.map +1 -1
- package/src/compat-adapters/@ember/test-waiters.js.map +1 -1
- package/src/compat-adapters/@ember-data/store.d.ts +1 -5
- package/src/compat-adapters/@ember-data/store.js +3 -15
- package/src/compat-adapters/@ember-data/store.js.map +1 -1
- package/src/compat-adapters/ember-asset-loader.d.ts +0 -1
- package/src/compat-adapters/ember-asset-loader.js.map +1 -1
- package/src/compat-adapters/ember-cli-babel.js.map +1 -1
- package/src/compat-adapters/ember-cli-clipboard.d.ts +0 -1
- package/src/compat-adapters/ember-cli-fastboot.js.map +1 -1
- package/src/compat-adapters/ember-cli-mirage.js.map +1 -1
- package/src/compat-adapters/ember-composable-helpers.js.map +1 -1
- package/src/compat-adapters/ember-data.js.map +1 -1
- package/src/compat-adapters/ember-engines.js.map +1 -1
- package/src/compat-adapters/ember-fetch.d.ts +5 -0
- package/src/compat-adapters/ember-fetch.js +19 -0
- package/src/compat-adapters/ember-fetch.js.map +1 -0
- package/src/compat-adapters/ember-macro-helpers.js.map +1 -1
- package/src/compat-adapters/ember-scroll-modifiers.js.map +1 -1
- package/src/compat-adapters/ember-source.js.map +1 -1
- package/src/compat-adapters/ember-svg-jar.js.map +1 -1
- package/src/compat-addons.js +1 -1
- package/src/compat-addons.js.map +1 -1
- package/src/compat-app-builder.d.ts +9 -31
- package/src/compat-app-builder.js +76 -859
- package/src/compat-app-builder.js.map +1 -1
- package/src/compat-app.d.ts +2 -8
- package/src/compat-app.js +54 -59
- package/src/compat-app.js.map +1 -1
- package/src/compat-utils.js +4 -5
- package/src/compat-utils.js.map +1 -1
- package/src/content-for-config.d.ts +11 -0
- package/src/content-for-config.js +66 -0
- package/src/content-for-config.js.map +1 -0
- package/src/dasherize-component-name.js +2 -3
- package/src/dasherize-component-name.js.map +1 -1
- package/src/default-pipeline.d.ts +2 -2
- package/src/default-pipeline.js +23 -3
- package/src/default-pipeline.js.map +1 -1
- package/src/dependency-rules.js +3 -4
- package/src/dependency-rules.js.map +1 -1
- package/src/detect-babel-plugins.js +4 -5
- package/src/detect-babel-plugins.js.map +1 -1
- package/src/detect-compact-reexports.js +1 -2
- package/src/detect-compact-reexports.js.map +1 -1
- package/src/dummy-package.js.map +1 -1
- package/src/empty-package-tree.js.map +1 -1
- package/src/get-real-addon.js +1 -1
- package/src/get-real-addon.js.map +1 -1
- package/src/hbs-to-js-broccoli-plugin.js.map +1 -1
- package/src/htmlbars-unwrapper.js +1 -2
- package/src/htmlbars-unwrapper.js.map +1 -1
- package/src/http-audit.d.ts +13 -0
- package/src/http-audit.js +45 -0
- package/src/http-audit.js.map +1 -0
- package/src/index.d.ts +1 -1
- package/src/index.js +2 -1
- package/src/index.js.map +1 -1
- package/src/merges.js +2 -3
- package/src/merges.js.map +1 -1
- package/src/module-visitor.d.ts +52 -0
- package/src/module-visitor.js +285 -0
- package/src/module-visitor.js.map +1 -0
- package/src/modules-compat.js +1 -1
- package/src/modules-compat.js.map +1 -1
- package/src/options.d.ts +1 -0
- package/src/options.js +3 -2
- package/src/options.js.map +1 -1
- package/src/prepare-htmlbars-ast-plugins.js +1 -1
- package/src/prepare-htmlbars-ast-plugins.js.map +1 -1
- package/src/rename-require-plugin.js +1 -1
- package/src/rename-require-plugin.js.map +1 -1
- package/src/resolver-transform.js +4 -1
- package/src/resolver-transform.js.map +1 -1
- package/src/rewrite-addon-tree.js +1 -1
- package/src/rewrite-addon-tree.js.map +1 -1
- package/src/smoosh-package-json.js.map +1 -1
- package/src/snitch.js.map +1 -1
- package/src/standalone-addon-build.js +5 -6
- package/src/standalone-addon-build.js.map +1 -1
- package/src/sync-dir.js.map +1 -1
- package/src/synthesize-template-only-components.js.map +1 -1
- package/src/v1-addon.js.map +1 -1
- package/src/v1-appboot.js.map +1 -1
- package/src/v1-config.d.ts +0 -8
- package/src/v1-config.js +1 -51
- package/src/v1-config.js.map +1 -1
- package/src/v1-instance-cache.js.map +1 -1
- package/LICENSE +0 -21
- package/src/compat-adapters/@ember-data/debug.d.ts +0 -6
- package/src/compat-adapters/@ember-data/debug.js +0 -22
- package/src/compat-adapters/@ember-data/debug.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-adjust-imports.js","sourceRoot":"","sources":["babel-plugin-adjust-imports.ts"],"names":[],"mappings":"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","sourcesContent":["import { join } from 'path';\nimport type { NodePath } from '@babel/traverse';\nimport type * as Babel from '@babel/core';\nimport type { types as t } from '@babel/core';\nimport { ImportUtil } from 'babel-import-util';\nimport { readJSONSync } from 'fs-extra';\nimport type { CompatResolverOptions } from './resolver-transform';\nimport type { Package } from '@embroider/core';\nimport { locateEmbroiderWorkingDir, packageName, Resolver, unrelativize } from '@embroider/core';\nimport { snippetToDasherizedName } from './dasherize-component-name';\nimport type { ActivePackageRules, ComponentRules, ModuleRules, TemplateRules } from './dependency-rules';\nimport { appTreeRulesDir } from './dependency-rules';\n\nexport type Options = { appRoot: string };\n\ninterface State {\n opts: Options;\n}\n\ntype BabelTypes = typeof t;\n\ninterface ExtraImports {\n [key: string]: {\n dependsOnComponents?: string[]; // these are already standardized in dasherized form\n dependsOnModules?: string[];\n };\n}\n\ntype InternalConfig = {\n resolverOptions: CompatResolverOptions;\n resolver: Resolver;\n\n // rule-based extra dependencies, indexed by filename\n extraImports: ExtraImports;\n\n // rule-based extra dependencies, indexed by classical component name\n componentExtraImports: ExtraImports;\n};\n\nexport default function main(babel: typeof Babel) {\n let t = babel.types;\n let cached: InternalConfig | undefined;\n function getConfig(appRoot: string) {\n if (cached) {\n return cached;\n }\n let resolverOptions: CompatResolverOptions = readJSONSync(\n join(locateEmbroiderWorkingDir(appRoot), 'resolver.json')\n );\n let resolver = new Resolver(resolverOptions);\n cached = {\n resolverOptions,\n resolver,\n extraImports: preprocessExtraImports(resolverOptions, resolver),\n componentExtraImports: preprocessComponentExtraImports(resolverOptions),\n };\n return cached;\n }\n\n return {\n visitor: {\n Program: {\n enter(path: NodePath<t.Program>, state: State) {\n addExtraImports(t, path, getConfig(state.opts.appRoot));\n },\n },\n },\n };\n}\n\n(main as any).baseDir = function () {\n return join(__dirname, '..');\n};\n\nfunction addExtraImports(t: BabelTypes, path: NodePath<t.Program>, config: InternalConfig) {\n let filename: string = (path.hub as any).file.opts.filename;\n let entry = config.extraImports[filename];\n let adder = new ImportUtil(t, path);\n if (entry) {\n applyRules(t, path, entry, adder, config, filename);\n }\n\n let componentName = config.resolver.reverseComponentLookup(filename);\n if (componentName) {\n let rules = config.componentExtraImports[componentName];\n if (rules) {\n applyRules(t, path, rules, adder, config, filename);\n }\n }\n}\n\nfunction applyRules(\n t: BabelTypes,\n path: NodePath<t.Program>,\n rules: ExtraImports[string],\n adder: ImportUtil,\n config: InternalConfig,\n filename: string\n) {\n let lookup = lazyPackageLookup(config, filename);\n if (rules.dependsOnModules) {\n for (let target of rules.dependsOnModules) {\n if (lookup.owningPackage) {\n let runtimeName: string;\n if (packageName(target)) {\n runtimeName = target;\n } else {\n runtimeName = unrelativize(lookup.owningPackage, target, filename);\n }\n path.node.body.unshift(amdDefine(t, adder, path, target, runtimeName));\n }\n }\n }\n if (rules.dependsOnComponents) {\n for (let dasherizedName of rules.dependsOnComponents) {\n if (lookup.owningEngine) {\n path.node.body.unshift(\n amdDefine(\n t,\n adder,\n path,\n `#embroider_compat/components/${dasherizedName}`,\n `${lookup.owningEngine.packageName}/components/${dasherizedName}`\n )\n );\n }\n }\n }\n}\n\nfunction amdDefine(t: BabelTypes, adder: ImportUtil, path: NodePath<t.Program>, target: string, runtimeName: string) {\n let value = t.callExpression(adder.import(path, '@embroider/macros', 'importSync'), [t.stringLiteral(target)]);\n return t.expressionStatement(\n t.callExpression(t.memberExpression(t.identifier('window'), t.identifier('define')), [\n t.stringLiteral(runtimeName),\n t.functionExpression(null, [], t.blockStatement([t.returnStatement(value)])),\n ])\n );\n}\n\nfunction preprocessExtraImports(config: CompatResolverOptions, resolver: Resolver): ExtraImports {\n let extraImports: ExtraImports = {};\n for (let rule of config.activePackageRules) {\n if (rule.addonModules) {\n for (let [filename, moduleRules] of Object.entries(rule.addonModules)) {\n for (let root of rule.roots) {\n expandDependsOnRules(root, filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.appModules) {\n for (let [filename, moduleRules] of Object.entries(rule.appModules)) {\n for (let root of rule.roots) {\n // in general v2 addons can keep their app tree stuff in other places\n // than \"_app_\" and we would need to check their package.json to see.\n // But this code is only for applying packageRules to auto-upgraded v1\n // addons, and those we always organize with their treeForApp output\n // in _app_.\n expandDependsOnRules(appTreeRulesDir(root, resolver), filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.addonTemplates) {\n for (let [filename, moduleRules] of Object.entries(rule.addonTemplates)) {\n for (let root of rule.roots) {\n expandInvokesRules(root, filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.appTemplates) {\n for (let [filename, moduleRules] of Object.entries(rule.appTemplates)) {\n for (let root of rule.roots) {\n expandInvokesRules(appTreeRulesDir(root, resolver), filename, moduleRules, extraImports);\n }\n }\n }\n }\n return extraImports;\n}\n\nfunction lazyPackageLookup(config: InternalConfig, filename: string) {\n let owningPackage: { result: Package | undefined } | undefined;\n let owningEngine: { result: ReturnType<Resolver['owningEngine']> | undefined } | undefined;\n return {\n get owningPackage() {\n if (!owningPackage) {\n owningPackage = { result: config.resolver.packageCache.ownerOfFile(filename) };\n }\n return owningPackage.result;\n },\n get owningEngine() {\n if (!owningEngine) {\n owningEngine = { result: undefined };\n let p = this.owningPackage;\n if (p) {\n owningEngine.result = config.resolver.owningEngine(p);\n }\n }\n return owningEngine.result;\n },\n };\n}\n\nfunction preprocessComponentExtraImports(config: CompatResolverOptions): ExtraImports {\n let extraImports: ExtraImports = {};\n for (let rule of config.activePackageRules) {\n if (rule.components) {\n for (let [componentName, rules] of Object.entries(rule.components)) {\n if (rules.invokes) {\n extraImports[dasherizeComponent(componentName, rule)] = {\n dependsOnComponents: Object.values(rules.invokes)\n .flat()\n .map(c => dasherizeComponent(c, rules)),\n };\n }\n }\n }\n }\n return extraImports;\n}\n\nfunction dasherizeComponent(\n componentSnippet: string,\n rules: ModuleRules | ComponentRules | ActivePackageRules\n): string {\n let d = snippetToDasherizedName(componentSnippet);\n if (!d) {\n throw new Error(\n `unable to parse component snippet \"${componentSnippet}\" from rule ${JSON.stringify(rules, null, 2)}`\n );\n }\n return d;\n}\n\nfunction expandDependsOnRules(\n root: string,\n filename: string,\n rules: ModuleRules,\n extraImports: InternalConfig['extraImports']\n) {\n if (rules.dependsOnModules || rules.dependsOnComponents) {\n let entry: InternalConfig['extraImports'][string] = {};\n if (rules.dependsOnModules) {\n entry.dependsOnModules = rules.dependsOnModules;\n }\n if (rules.dependsOnComponents) {\n entry.dependsOnComponents = rules.dependsOnComponents.map(c => dasherizeComponent(c, rules));\n }\n extraImports[join(root, filename)] = entry;\n }\n}\n\nfunction expandInvokesRules(\n root: string,\n filename: string,\n rules: TemplateRules,\n extraImports: InternalConfig['extraImports']\n) {\n if (rules.invokes) {\n let dependsOnComponents: string[] = [];\n for (let componentList of Object.values(rules.invokes)) {\n for (let component of componentList) {\n let d = snippetToDasherizedName(component);\n if (!d) {\n throw new Error(\n `unable to parse component snippet \"${component}\" from rule ${JSON.stringify(rules, null, 2)}`\n );\n }\n dependsOnComponents.push(d);\n }\n }\n extraImports[join(root, filename)] = { dependsOnComponents };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"babel-plugin-adjust-imports.js","sourceRoot":"","sources":["babel-plugin-adjust-imports.ts"],"names":[],"mappings":"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","sourcesContent":["import { join } from 'path';\nimport type { NodePath } from '@babel/traverse';\nimport type * as Babel from '@babel/core';\nimport type { types as t } from '@babel/core';\nimport { ImportUtil } from 'babel-import-util';\nimport { readJSONSync } from 'fs-extra';\nimport type { CompatResolverOptions } from './resolver-transform';\nimport type { Package } from '@embroider/core';\nimport { cleanUrl, locateEmbroiderWorkingDir, packageName, Resolver, unrelativize } from '@embroider/core';\nimport { snippetToDasherizedName } from './dasherize-component-name';\nimport type { ActivePackageRules, ComponentRules, ModuleRules, TemplateRules } from './dependency-rules';\nimport { appTreeRulesDir } from './dependency-rules';\n\nexport type Options = { appRoot: string };\n\ninterface State {\n opts: Options;\n}\n\ntype BabelTypes = typeof t;\n\ninterface ExtraImports {\n [key: string]: {\n dependsOnComponents?: string[]; // these are already standardized in dasherized form\n dependsOnModules?: string[];\n };\n}\n\ntype InternalConfig = {\n resolverOptions: CompatResolverOptions;\n resolver: Resolver;\n\n // rule-based extra dependencies, indexed by filename\n extraImports: ExtraImports;\n\n // rule-based extra dependencies, indexed by classical component name\n componentExtraImports: ExtraImports;\n};\n\nexport default function main(babel: typeof Babel) {\n let t = babel.types;\n let cached: InternalConfig | undefined;\n function getConfig(appRoot: string) {\n if (cached) {\n return cached;\n }\n let resolverOptions: CompatResolverOptions = readJSONSync(\n join(locateEmbroiderWorkingDir(appRoot), 'resolver.json')\n );\n let resolver = new Resolver(resolverOptions);\n cached = {\n resolverOptions,\n resolver,\n extraImports: preprocessExtraImports(resolverOptions, resolver),\n componentExtraImports: preprocessComponentExtraImports(resolverOptions),\n };\n return cached;\n }\n\n return {\n visitor: {\n Program: {\n enter(path: NodePath<t.Program>, state: State) {\n addExtraImports(t, path, getConfig(state.opts.appRoot));\n },\n },\n },\n };\n}\n\n(main as any).baseDir = function () {\n return join(__dirname, '..');\n};\n\nfunction addExtraImports(t: BabelTypes, path: NodePath<t.Program>, config: InternalConfig) {\n let filename: string = cleanUrl((path.hub as any).file.opts.filename);\n let entry = config.extraImports[filename];\n let adder = new ImportUtil(t, path);\n if (entry) {\n applyRules(t, path, entry, adder, config, filename);\n }\n\n let componentName = config.resolver.reverseComponentLookup(filename);\n if (componentName) {\n let rules = config.componentExtraImports[componentName];\n if (rules) {\n applyRules(t, path, rules, adder, config, filename);\n }\n }\n}\n\nfunction applyRules(\n t: BabelTypes,\n path: NodePath<t.Program>,\n rules: ExtraImports[string],\n adder: ImportUtil,\n config: InternalConfig,\n filename: string\n) {\n let lookup = lazyPackageLookup(config, filename);\n if (rules.dependsOnModules) {\n for (let target of rules.dependsOnModules) {\n if (lookup.owningPackage) {\n let runtimeName: string;\n if (packageName(target)) {\n runtimeName = target;\n } else {\n runtimeName = unrelativize(lookup.owningPackage, target, filename);\n }\n path.node.body.unshift(amdDefine(t, adder, path, target, runtimeName));\n }\n }\n }\n if (rules.dependsOnComponents) {\n for (let dasherizedName of rules.dependsOnComponents) {\n if (lookup.owningEngine) {\n path.node.body.unshift(\n amdDefine(\n t,\n adder,\n path,\n `#embroider_compat/components/${dasherizedName}`,\n `${lookup.owningEngine.packageName}/components/${dasherizedName}`\n )\n );\n }\n }\n }\n}\n\nfunction amdDefine(t: BabelTypes, adder: ImportUtil, path: NodePath<t.Program>, target: string, runtimeName: string) {\n let value = t.callExpression(adder.import(path, '@embroider/macros', 'importSync'), [t.stringLiteral(target)]);\n return t.expressionStatement(\n t.callExpression(t.memberExpression(t.identifier('window'), t.identifier('define')), [\n t.stringLiteral(runtimeName),\n t.functionExpression(null, [], t.blockStatement([t.returnStatement(value)])),\n ])\n );\n}\n\nfunction preprocessExtraImports(config: CompatResolverOptions, resolver: Resolver): ExtraImports {\n let extraImports: ExtraImports = {};\n for (let rule of config.activePackageRules) {\n if (rule.addonModules) {\n for (let [filename, moduleRules] of Object.entries(rule.addonModules)) {\n for (let root of rule.roots) {\n expandDependsOnRules(root, filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.appModules) {\n for (let [filename, moduleRules] of Object.entries(rule.appModules)) {\n for (let root of rule.roots) {\n // in general v2 addons can keep their app tree stuff in other places\n // than \"_app_\" and we would need to check their package.json to see.\n // But this code is only for applying packageRules to auto-upgraded v1\n // addons, and those we always organize with their treeForApp output\n // in _app_.\n expandDependsOnRules(appTreeRulesDir(root, resolver), filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.addonTemplates) {\n for (let [filename, moduleRules] of Object.entries(rule.addonTemplates)) {\n for (let root of rule.roots) {\n expandInvokesRules(root, filename, moduleRules, extraImports);\n }\n }\n }\n if (rule.appTemplates) {\n for (let [filename, moduleRules] of Object.entries(rule.appTemplates)) {\n for (let root of rule.roots) {\n expandInvokesRules(appTreeRulesDir(root, resolver), filename, moduleRules, extraImports);\n }\n }\n }\n }\n return extraImports;\n}\n\nfunction lazyPackageLookup(config: InternalConfig, filename: string) {\n let owningPackage: { result: Package | undefined } | undefined;\n let owningEngine: { result: ReturnType<Resolver['owningEngine']> | undefined } | undefined;\n return {\n get owningPackage() {\n if (!owningPackage) {\n owningPackage = { result: config.resolver.packageCache.ownerOfFile(filename) };\n }\n return owningPackage.result;\n },\n get owningEngine() {\n if (!owningEngine) {\n owningEngine = { result: undefined };\n let p = this.owningPackage;\n if (p) {\n owningEngine.result = config.resolver.owningEngine(p);\n }\n }\n return owningEngine.result;\n },\n };\n}\n\nfunction preprocessComponentExtraImports(config: CompatResolverOptions): ExtraImports {\n let extraImports: ExtraImports = {};\n for (let rule of config.activePackageRules) {\n if (rule.components) {\n for (let [componentName, rules] of Object.entries(rule.components)) {\n if (rules.invokes) {\n extraImports[dasherizeComponent(componentName, rule)] = {\n dependsOnComponents: Object.values(rules.invokes)\n .flat()\n .map(c => dasherizeComponent(c, rules)),\n };\n }\n }\n }\n }\n return extraImports;\n}\n\nfunction dasherizeComponent(\n componentSnippet: string,\n rules: ModuleRules | ComponentRules | ActivePackageRules\n): string {\n let d = snippetToDasherizedName(componentSnippet);\n if (!d) {\n throw new Error(\n `unable to parse component snippet \"${componentSnippet}\" from rule ${JSON.stringify(rules, null, 2)}`\n );\n }\n return d;\n}\n\nfunction expandDependsOnRules(\n root: string,\n filename: string,\n rules: ModuleRules,\n extraImports: InternalConfig['extraImports']\n) {\n if (rules.dependsOnModules || rules.dependsOnComponents) {\n let entry: InternalConfig['extraImports'][string] = {};\n if (rules.dependsOnModules) {\n entry.dependsOnModules = rules.dependsOnModules;\n }\n if (rules.dependsOnComponents) {\n entry.dependsOnComponents = rules.dependsOnComponents.map(c => dasherizeComponent(c, rules));\n }\n extraImports[join(root, filename)] = entry;\n }\n}\n\nfunction expandInvokesRules(\n root: string,\n filename: string,\n rules: TemplateRules,\n extraImports: InternalConfig['extraImports']\n) {\n if (rules.invokes) {\n let dependsOnComponents: string[] = [];\n for (let componentList of Object.values(rules.invokes)) {\n for (let component of componentList) {\n let d = snippetToDasherizedName(component);\n if (!d) {\n throw new Error(\n `unable to parse component snippet \"${component}\" from rule ${JSON.stringify(rules, null, 2)}`\n );\n }\n dependsOnComponents.push(d);\n }\n }\n extraImports[join(root, filename)] = { dependsOnComponents };\n }\n}\n"]}
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = buildCompatAddon;
|
|
6
7
|
const smoosh_package_json_1 = __importDefault(require("./smoosh-package-json"));
|
|
7
8
|
const broccoli_merge_trees_1 = __importDefault(require("broccoli-merge-trees"));
|
|
8
9
|
const empty_package_tree_1 = __importDefault(require("./empty-package-tree"));
|
|
@@ -38,5 +39,4 @@ function buildCompatAddon(originalPackage, v1Cache) {
|
|
|
38
39
|
return oldPackages[0].v2Tree;
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
|
-
exports.default = buildCompatAddon;
|
|
42
42
|
//# sourceMappingURL=build-compat-addon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-compat-addon.js","sourceRoot":"","sources":["build-compat-addon.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"build-compat-addon.js","sourceRoot":"","sources":["build-compat-addon.ts"],"names":[],"mappings":";;;;;AAOA,mCAoCC;AAzCD,gFAAsD;AACtD,gFAAsD;AAEtD,8EAAoD;AAEpD,SAAwB,gBAAgB,CAAC,eAAwB,EAAE,OAAwB;IACzF,IAAI,eAAe,CAAC,SAAS,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACb,uEAAuE,eAAe,CAAC,IAAI,OAAO,eAAe,CAAC,IAAI,gBAAgB,CACvI,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,sEAAsE;QACtE,2EAA2E;QAC3E,+BAA+B;QAC/B,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,yEAAyE;QACzE,4EAA4E;QAC5E,kCAAkC;QAClC,EAAE;QACF,yEAAyE;QACzE,gEAAgE;QAChE,0EAA0E;QAC1E,2BAA2B;QAC3B,OAAO,IAAI,4BAAgB,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,cAAc,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACzD,IAAI,QAAQ,GAAG,IAAI,6BAAiB,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;QAClF,OAAO,IAAA,8BAAkB,EAAC,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/B,CAAC;AACH,CAAC","sourcesContent":["import type V1InstanceCache from './v1-instance-cache';\nimport type { Package } from '@embroider/core';\nimport SmooshPackageJSON from './smoosh-package-json';\nimport broccoliMergeTrees from 'broccoli-merge-trees';\nimport type { Node } from 'broccoli-node-api';\nimport EmptyPackageTree from './empty-package-tree';\n\nexport default function buildCompatAddon(originalPackage: Package, v1Cache: V1InstanceCache): Node {\n if (originalPackage.isV2Addon()) {\n throw new Error(\n `bug in @embroider/compat. We should not see any v2 addons here, but ${originalPackage.name} as ${originalPackage.root} is a v2 addon`\n );\n }\n\n let oldPackages = v1Cache.getAddons(originalPackage.root);\n\n if (oldPackages.length > 1) {\n // extensibility hook that allows a compat adapter to optimize its own\n // smooshing. We do it early so that if it reduces all the way to zero, the\n // next check will handle that.\n oldPackages = oldPackages[0].reduceInstances(oldPackages);\n }\n\n if (oldPackages.length === 0) {\n // this happens when the v1 addon wasn't actually getting instantiated at\n // all, which can happen if the app uses `addons.blacklist` or another addon\n // uses `shouldIncludeChildAddon`.\n //\n // we still keep a place for this addon in the rewritten addon workspace,\n // because that whole process only depends on looking at all the\n // package.json files on disk -- it can't know which ones are going to end\n // up unused at this point.\n return new EmptyPackageTree(originalPackage);\n }\n\n let needsSmooshing = oldPackages.length > 1 && oldPackages[0].hasAnyTrees();\n if (needsSmooshing) {\n let trees = oldPackages.map(pkg => pkg.v2Tree).reverse();\n let smoosher = new SmooshPackageJSON(trees, { annotation: originalPackage.name });\n return broccoliMergeTrees([...trees, smoosher], { overwrite: true });\n } else {\n return oldPackages[0].v2Tree;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-waiters.js","sourceRoot":"","sources":["test-waiters.ts"],"names":[],"mappings":";;;;;AAAA,8DAAqC;AACrC,mCAAmC;AAEnC,eAAqB,SAAQ,kBAAO;IAClC,uEAAuE;IACvE,0EAA0E;IAC1E,8EAA8E;IAC9E,6CAA6C;IACnC,cAAc,CAAC,KAAa;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,eAAe,CAAC,SAAoB;QAClC,IAAI,CAAC,IAAA,kBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"test-waiters.js","sourceRoot":"","sources":["test-waiters.ts"],"names":[],"mappings":";;;;;AAAA,8DAAqC;AACrC,mCAAmC;AAEnC,eAAqB,SAAQ,kBAAO;IAClC,uEAAuE;IACvE,0EAA0E;IAC1E,8EAA8E;IAC9E,6CAA6C;IACnC,cAAc,CAAC,KAAa;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,eAAe,CAAC,SAAoB;QAClC,IAAI,CAAC,IAAA,kBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,yKAAyK,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,CACrM,CAAC;QACJ,CAAC;QAED,8EAA8E;QAC9E,6BAA6B;QAC7B,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;CACF;AApBD,4BAoBC","sourcesContent":["import V1Addon from '../../v1-addon';\nimport { satisfies } from 'semver';\n\nexport default class extends V1Addon {\n // our heuristic for detecting tree suppression can't deal with the way\n // test-waiters patches treeFor on other copies of its addon instances all\n // over the place. It causes us to falsely detect that it's trying to suppress\n // all tree output, reducing in empty copies.\n protected suppressesTree(_name: string): boolean {\n return false;\n }\n\n reduceInstances(instances: V1Addon[]): V1Addon[] {\n if (!satisfies(this.packageJSON.version, '>=3.0.2')) {\n throw new Error(\n `@ember/test-waiters cannot work safely under embroider before version 3.0.2 due to https://github.com/emberjs/ember-test-waiters/pull/388. You have a copy at version ${this.packageJSON.version}.`\n );\n }\n\n // we know test waiters tries to dedup itself, so there's no point in building\n // and smooshing many copies.\n return [instances[0]];\n }\n}\n"]}
|
|
@@ -1,18 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var _a;
|
|
7
|
-
let meta = super.packageMeta;
|
|
8
|
-
// this is here because the compat-adapter for @ember-data/debug adds this
|
|
9
|
-
// to externals because it has an undeclared peerDep on us, and thus might
|
|
10
|
-
// resolve totally incorrect copies. By making it external we leave it up to
|
|
11
|
-
// runtime, where we will find this implicit-module for the actual copy of
|
|
12
|
-
// @ember-data/store that is active in app.
|
|
13
|
-
meta['implicit-modules'] = [...((_a = meta['implicit-modules']) !== null && _a !== void 0 ? _a : []), './index.js'];
|
|
14
|
-
return meta;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
exports.default = EmberDataStore;
|
|
3
|
+
exports.default = void 0;
|
|
4
|
+
var ember_data_1 = require("../ember-data");
|
|
5
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return ember_data_1.EmberDataBase; } });
|
|
18
6
|
//# sourceMappingURL=store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["store.ts"],"names":[],"mappings":";;;AAAA,4CAAyD;AAAhD,qGAAA,aAAa,OAAW","sourcesContent":["export { EmberDataBase as default } from '../ember-data';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-asset-loader.js","sourceRoot":"","sources":["ember-asset-loader.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,sEAA0C;AAC1C,iEAAyC;AAEzC,gFAAgF;AAChF,gFAAgF;AAChF,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,uCAAuC;AACvC,EAAE;AACF,gFAAgF;AAChF,4DAA4D;AAC5D,eAAqB,SAAQ,kBAAO;IAClC,IAAI,MAAM;QACR,OAAO,IAAA,yBAAW,EAAC,KAAK,CAAC,MAAM,EAAE;YAC/B,OAAO,EAAE,CAAC,gCAAgC,EAAE,oDAAoD,CAAC;SAClG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-asset-loader.js","sourceRoot":"","sources":["ember-asset-loader.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,sEAA0C;AAC1C,iEAAyC;AAEzC,gFAAgF;AAChF,gFAAgF;AAChF,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,uCAAuC;AACvC,EAAE;AACF,gFAAgF;AAChF,4DAA4D;AAC5D,eAAqB,SAAQ,kBAAO;IAClC,IAAI,MAAM;QACR,OAAO,IAAA,yBAAW,EAAC,KAAK,CAAC,MAAM,EAAE;YAC/B,OAAO,EAAE,CAAC,gCAAgC,EAAE,oDAAoD,CAAC;SAClG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnB,IAAI,GAAG,IAAA,mBAAS,EAAC,IAAI,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC,QAAQ,CAAE,CAAC,gDAAgD,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,QAAQ,CAAE,CAAC,4BAA4B,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAfD,4BAeC","sourcesContent":["import V1Addon from '../v1-addon';\nimport buildFunnel from 'broccoli-funnel';\nimport cloneDeep from 'lodash/cloneDeep';\n\n// ember-asset-loader's ManifestGenerator (which is used as the Addon base class\n// for by ember-engines) has an \"all\" postprocessTree hook. We can't / won't run\n// those in embroider. The hook inserts the asset manifest into index.html.\n//\n// This patch removes the code that would explode if it tries to read from that\n// manifest. ember-asset-loader itself has a mode that excludes these files, so\n// it's tolerant of them being missing.\n//\n// We mostly just want ember-asset-loader to sit down and be quiet, because lazy\n// loading is a thing that is natively handled by embroider.\nexport default class extends V1Addon {\n get v2Tree() {\n return buildFunnel(super.v2Tree, {\n exclude: ['_app_/config/asset-manifest.js', '_app_/instance-initializers/load-asset-manifest.js'],\n });\n }\n get packageMeta() {\n let meta = super.packageMeta;\n if (meta['app-js']) {\n meta = cloneDeep(meta);\n delete meta['app-js']!['./instance-initializers/load-asset-manifest.js'];\n delete meta['app-js']!['./config/asset-manifest.js'];\n }\n return meta;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-cli-babel.js","sourceRoot":"","sources":["ember-cli-babel.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,MAAqB,aAAc,SAAQ,kBAAO;IAChD,0EAA0E;IAC1E,4EAA4E;IAC5E,gCAAgC;IAChC,eAAe,CAAC,MAAuB;QACrC,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACjC,IAAI,QAAQ,GAAG,CAAC,CAAC,aAAoB,CAAC;YACtC,OAAO,OAAO,QAAQ,CAAC,sBAAsB,KAAK,UAAU,IAAI,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACpG,CAAC,CAAC,CAAC;QACH,IAAI,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-cli-babel.js","sourceRoot":"","sources":["ember-cli-babel.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,MAAqB,aAAc,SAAQ,kBAAO;IAChD,0EAA0E;IAC1E,4EAA4E;IAC5E,gCAAgC;IAChC,eAAe,CAAC,MAAuB;QACrC,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACjC,IAAI,QAAQ,GAAG,CAAC,CAAC,aAAoB,CAAC;YACtC,OAAO,OAAO,QAAQ,CAAC,sBAAsB,KAAK,UAAU,IAAI,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACpG,CAAC,CAAC,CAAC;QACH,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,YAAY,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAfD,gCAeC","sourcesContent":["import V1Addon from '../v1-addon';\n\nexport default class EmberCliBabel extends V1Addon {\n // the only copy of ember-cli-babel that might need to do something is the\n // first one that wants to emit babel polyfills. No other copy is allowed to\n // emit anything into the build.\n reduceInstances(copies: EmberCliBabel[]): EmberCliBabel[] {\n let polyfillCopy = copies.find(c => {\n let instance = c.addonInstance as any;\n return typeof instance._shouldIncludePolyfill === 'function' && instance._shouldIncludePolyfill();\n });\n if (polyfillCopy) {\n return [polyfillCopy];\n } else {\n return [];\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-cli-fastboot.js","sourceRoot":"","sources":["ember-cli-fastboot.ts"],"names":[],"mappings":"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","sourcesContent":["import V1Addon from '../v1-addon';\nimport Plugin from 'broccoli-plugin';\nimport type { Node } from 'broccoli-node-api';\nimport { readJSONSync, outputJSONSync } from 'fs-extra';\nimport { join } from 'path';\nimport writeFile from 'broccoli-file-creator';\nimport { Memoize } from 'typescript-memoize';\nimport bind from 'bind-decorator';\nimport type { AddonMeta } from '@embroider/core';\n\nexport default class EmberCliFastboot extends V1Addon {\n customizes(...trees: string[]): boolean {\n return trees.some(tree => {\n if (tree === 'treeForPublic') {\n // This is an optimization. It means we won't bother running\n // ember-cli-fastboot's custom treeForPublic at all. We don't actually\n // want *most* of what's in there, because embroider natively\n // understands how to build each addon's treeForFastboot.\n //\n // But we do want *some*, so we handle those specific bits below in\n // v2Trees.\n return false;\n } else {\n return super.customizes(tree);\n }\n });\n }\n get v2Trees() {\n let trees = super.v2Trees;\n\n // We want to grab the fastboot config and rewrite it. We're going to strip\n // out the expectedFiles that we know are already accounted for, and we're\n // going to add app-factory.js which we know is not.\n trees.push(\n new RewriteManifest(this.addonInstance._buildFastbootConfigTree(this.rootTree), this.scriptFilter, [\n 'ember-cli-fastboot/app-factory.js',\n ])\n );\n\n // We also still need to emit the fastboot app factory module. This emits\n // the actual file into our package.\n trees.push(writeFile('public/app-factory.js', this.appFactoryModule));\n\n return trees;\n }\n\n get packageMeta() {\n let meta = super.packageMeta;\n if (!meta['public-assets']) {\n meta['public-assets'] = {};\n }\n // we need to list app-factory.js as a public asset so it will make it's way\n // into the app's final dist.\n meta['public-assets']['./public/app-factory.js'] = 'ember-cli-fastboot/app-factory.js';\n return meta;\n }\n\n // these are the default files that ember-cli-fastbot includes in its appFiles\n // and vendorFiles that we know are already accounted for by the standard\n // embroider build\n @Memoize()\n private expectedFiles(): string[] {\n let outputPaths = this.addonInstance.app.options.outputPaths;\n function stripLeadingSlash(filePath: string) {\n return filePath.replace(/^\\//, '');\n }\n let appFilePath = stripLeadingSlash(outputPaths.app.js);\n let appFastbootFilePath = appFilePath.replace(/\\.js$/, '') + '-fastboot.js';\n let vendorFilePath = stripLeadingSlash(outputPaths.vendor.js);\n\n // ember-auto-import emits this into the fastboot manifest. But embroider\n // subsumes all of ember-auto-import, so we take responsibility for this\n // stuff directly.\n let autoImportPath = 'assets/auto-import-fastboot.js';\n\n // the compat adapter for ember-asset-loader has already removed the code\n // that reads from this file. And this file fails to get generated because\n // we don't run ember-asset-loader's \"all\" postprocess tree. So we need to\n // remove it here so it doesn't try to load.\n let nodeAssetManifest = 'assets/node-asset-manifest.js';\n\n return [appFilePath, appFastbootFilePath, vendorFilePath, autoImportPath, nodeAssetManifest];\n }\n\n @bind\n private scriptFilter(file: string): boolean {\n // we can drop all of engines-dist here because engines are handled natively\n // by embroider (the engine code is part of the regular module graph)\n return !this.expectedFiles().includes(file) && !file.startsWith('engines-dist/');\n }\n\n @Memoize()\n private get appFactoryModule() {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const fastbootAppFactoryModule = require(join(this.root, 'lib/utilities/fastboot-app-factory-module.js'));\n return fastbootAppFactoryModule(this.addonInstance._name, false);\n }\n}\n\nclass RewriteManifest extends Plugin {\n constructor(tree: Node, private scriptFilter: (file: string) => boolean, private extraAppFiles: string[]) {\n super([tree], {\n annotation: 'embroider-compat-adapter-ember-cli-fastboot',\n persistentOutput: true,\n needsCache: false,\n });\n }\n build() {\n let json = readJSONSync(join(this.inputPaths[0], 'package.json'));\n\n let extraAppFiles = (json.fastboot.manifest.appFiles as string[]).filter(this.scriptFilter);\n\n for (let file of this.extraAppFiles) {\n extraAppFiles.push(file);\n }\n\n let extraVendorFiles = (json.fastboot.manifest.vendorFiles as string[]).filter(this.scriptFilter);\n\n // we're using our own new style of fastboot manifest that loads everything\n // via the HTML. HTML is better understood by tools beyond Ember and\n // Fastboot, so it's more robust to going through third-party bundlers\n // without breaking. We can get by with only a very small extension over\n // purely standards-compliant HTML.\n json.fastboot = {\n schemaVersion: 5,\n htmlEntrypoint: 'index.html',\n moduleWhitelist: json.fastboot.moduleWhitelist,\n hostWhitelist: json.fastboot.hostWhitelist,\n };\n\n // this is a message to Embroider stage2 (in app.ts), because we need it to\n // arrange the one special extension to HTML that we need: fastboot-only\n // script tags.\n //\n // Fastboot only javascript *modules* don't need any magic, because our\n // macro system can guard them. That is the preferred way to have\n // fastboot-only code. But for backward compatibility, we also support\n // fastboot-only *scripts*, and those do need a bit of magic, in the form of\n // <fastboot-script> tags.\n json['embroider-fastboot'] = {\n extraAppFiles,\n extraVendorFiles,\n };\n\n // because we contain a subdir with its own package.json, that subdir\n // becomes a \"package\" from emroider's perspective, and if we want it to get\n // treated as ember code it needs to have v2 addon metadata\n json.keywords = [...(json.keywords ?? []), 'ember-addon'];\n let meta: AddonMeta = {\n type: 'addon',\n version: 2,\n 'auto-upgraded': true,\n };\n json['ember-addon'] = meta;\n\n outputJSONSync(join(this.outputPath, '_fastboot_', 'package.json'), json, { spaces: 2 });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ember-cli-fastboot.js","sourceRoot":"","sources":["ember-cli-fastboot.ts"],"names":[],"mappings":"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","sourcesContent":["import V1Addon from '../v1-addon';\nimport Plugin from 'broccoli-plugin';\nimport type { Node } from 'broccoli-node-api';\nimport { readJSONSync, outputJSONSync } from 'fs-extra';\nimport { join } from 'path';\nimport writeFile from 'broccoli-file-creator';\nimport { Memoize } from 'typescript-memoize';\nimport bind from 'bind-decorator';\nimport type { AddonMeta } from '@embroider/core';\n\nexport default class EmberCliFastboot extends V1Addon {\n customizes(...trees: string[]): boolean {\n return trees.some(tree => {\n if (tree === 'treeForPublic') {\n // This is an optimization. It means we won't bother running\n // ember-cli-fastboot's custom treeForPublic at all. We don't actually\n // want *most* of what's in there, because embroider natively\n // understands how to build each addon's treeForFastboot.\n //\n // But we do want *some*, so we handle those specific bits below in\n // v2Trees.\n return false;\n } else {\n return super.customizes(tree);\n }\n });\n }\n get v2Trees() {\n let trees = super.v2Trees;\n\n // We want to grab the fastboot config and rewrite it. We're going to strip\n // out the expectedFiles that we know are already accounted for, and we're\n // going to add app-factory.js which we know is not.\n trees.push(\n new RewriteManifest(this.addonInstance._buildFastbootConfigTree(this.rootTree), this.scriptFilter, [\n 'ember-cli-fastboot/app-factory.js',\n ])\n );\n\n // We also still need to emit the fastboot app factory module. This emits\n // the actual file into our package.\n trees.push(writeFile('public/app-factory.js', this.appFactoryModule));\n\n return trees;\n }\n\n get packageMeta() {\n let meta = super.packageMeta;\n if (!meta['public-assets']) {\n meta['public-assets'] = {};\n }\n // we need to list app-factory.js as a public asset so it will make it's way\n // into the app's final dist.\n meta['public-assets']['./public/app-factory.js'] = 'ember-cli-fastboot/app-factory.js';\n return meta;\n }\n\n // these are the default files that ember-cli-fastbot includes in its appFiles\n // and vendorFiles that we know are already accounted for by the standard\n // embroider build\n @Memoize()\n private expectedFiles(): string[] {\n let outputPaths = this.addonInstance.app.options.outputPaths;\n function stripLeadingSlash(filePath: string) {\n return filePath.replace(/^\\//, '');\n }\n let appFilePath = stripLeadingSlash(outputPaths.app.js);\n let appFastbootFilePath = appFilePath.replace(/\\.js$/, '') + '-fastboot.js';\n let vendorFilePath = stripLeadingSlash(outputPaths.vendor.js);\n\n // ember-auto-import emits this into the fastboot manifest. But embroider\n // subsumes all of ember-auto-import, so we take responsibility for this\n // stuff directly.\n let autoImportPath = 'assets/auto-import-fastboot.js';\n\n // the compat adapter for ember-asset-loader has already removed the code\n // that reads from this file. And this file fails to get generated because\n // we don't run ember-asset-loader's \"all\" postprocess tree. So we need to\n // remove it here so it doesn't try to load.\n let nodeAssetManifest = 'assets/node-asset-manifest.js';\n\n return [appFilePath, appFastbootFilePath, vendorFilePath, autoImportPath, nodeAssetManifest];\n }\n\n @bind\n private scriptFilter(file: string): boolean {\n // we can drop all of engines-dist here because engines are handled natively\n // by embroider (the engine code is part of the regular module graph)\n return !this.expectedFiles().includes(file) && !file.startsWith('engines-dist/');\n }\n\n @Memoize()\n private get appFactoryModule() {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const fastbootAppFactoryModule = require(join(this.root, 'lib/utilities/fastboot-app-factory-module.js'));\n return fastbootAppFactoryModule(this.addonInstance._name, false);\n }\n}\n\nclass RewriteManifest extends Plugin {\n constructor(tree: Node, private scriptFilter: (file: string) => boolean, private extraAppFiles: string[]) {\n super([tree], {\n annotation: 'embroider-compat-adapter-ember-cli-fastboot',\n persistentOutput: true,\n needsCache: false,\n });\n }\n build() {\n let json = readJSONSync(join(this.inputPaths[0], 'package.json'));\n\n let extraAppFiles = (json.fastboot.manifest.appFiles as string[]).filter(this.scriptFilter);\n\n for (let file of this.extraAppFiles) {\n extraAppFiles.push(file);\n }\n\n let extraVendorFiles = (json.fastboot.manifest.vendorFiles as string[]).filter(this.scriptFilter);\n\n // we're using our own new style of fastboot manifest that loads everything\n // via the HTML. HTML is better understood by tools beyond Ember and\n // Fastboot, so it's more robust to going through third-party bundlers\n // without breaking. We can get by with only a very small extension over\n // purely standards-compliant HTML.\n json.fastboot = {\n schemaVersion: 5,\n htmlEntrypoint: 'index.html',\n moduleWhitelist: json.fastboot.moduleWhitelist,\n hostWhitelist: json.fastboot.hostWhitelist,\n };\n\n // this is a message to Embroider stage2 (in app.ts), because we need it to\n // arrange the one special extension to HTML that we need: fastboot-only\n // script tags.\n //\n // Fastboot only javascript *modules* don't need any magic, because our\n // macro system can guard them. That is the preferred way to have\n // fastboot-only code. But for backward compatibility, we also support\n // fastboot-only *scripts*, and those do need a bit of magic, in the form of\n // <fastboot-script> tags.\n json['embroider-fastboot'] = {\n extraAppFiles,\n extraVendorFiles,\n };\n\n // because we contain a subdir with its own package.json, that subdir\n // becomes a \"package\" from emroider's perspective, and if we want it to get\n // treated as ember code it needs to have v2 addon metadata\n json.keywords = [...(json.keywords ?? []), 'ember-addon'];\n let meta: AddonMeta = {\n type: 'addon',\n version: 2,\n 'auto-upgraded': true,\n };\n json['ember-addon'] = meta;\n\n outputJSONSync(join(this.outputPath, '_fastboot_', 'package.json'), json, { spaces: 2 });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-cli-mirage.js","sourceRoot":"","sources":["ember-cli-mirage.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,sEAA0C;AAG1C,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-cli-mirage.js","sourceRoot":"","sources":["ember-cli-mirage.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,sEAA0C;AAG1C,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC,WAAW,CAAC;QAC3B,CAAC;QACD,OAAO;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,CAAC;YACV,eAAe,EAAE,IAAI;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;QACxB,IAAI,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAA,yBAAW,EAAC,IAAI,EAAE;YACvB,OAAO,EAAE,CAAC,cAAc,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;CACF;AArBD,4BAqBC","sourcesContent":["import V1Addon from '../v1-addon';\nimport buildFunnel from 'broccoli-funnel';\nimport type { AddonMeta } from '@embroider/core';\n\nexport default class extends V1Addon {\n get packageMeta(): Partial<AddonMeta> {\n if (this.addonInstance._shouldIncludeFiles()) {\n return super.packageMeta;\n }\n return {\n type: 'addon',\n version: 2,\n 'auto-upgraded': true,\n };\n }\n\n get v2Tree() {\n let tree = super.v2Tree;\n if (this.addonInstance._shouldIncludeFiles()) {\n return tree;\n }\n return buildFunnel(tree, {\n include: ['package.json'],\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-composable-helpers.js","sourceRoot":"","sources":["ember-composable-helpers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,+BAA4B;AAE5B,2BAA8D;AAC9D,uCAAsD;AACtD,qDAAyC;AACzC,sCAAwC;AACxC,kDAA0D;AAE1D,eAAqB,SAAQ,kBAAO;IAClC,IAAI,MAAM;QACR,iFAAiF;QACjF,oEAAoE;QACpE,oEAAoE;QACpE,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;CACF;AAPD,4BAOC;AAED,MAAM,YAAa,SAAQ,wBAAM;IAC/B,YAAY,SAAe;QACzB,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,aAAa,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,eAAe,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAE1D,KAAK,IAAI,QAAQ,IAAI,IAAA,gBAAW,EAAC,aAAa,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-composable-helpers.js","sourceRoot":"","sources":["ember-composable-helpers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,+BAA4B;AAE5B,2BAA8D;AAC9D,uCAAsD;AACtD,qDAAyC;AACzC,sCAAwC;AACxC,kDAA0D;AAE1D,eAAqB,SAAQ,kBAAO;IAClC,IAAI,MAAM;QACR,iFAAiF;QACjF,oEAAoE;QACpE,oEAAoE;QACpE,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;CACF;AAPD,4BAOC;AAED,MAAM,YAAa,SAAQ,wBAAM;IAC/B,YAAY,SAAe;QACzB,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,aAAa,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,eAAe,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAE1D,KAAK,IAAI,QAAQ,IAAI,IAAA,gBAAW,EAAC,aAAa,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,IAAA,yBAAc,EAAC,IAAA,WAAI,EAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;gBACrD,IAAA,qBAAU,EAAC,IAAA,WAAI,EAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QACD,IAAI,GAAG,GAAG,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,OAAO,GAAG,CAAC,IAAA,sCAAuB,EAAC,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC1E,IAAA,kBAAa,EAAC,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,IAAA,gBAAS,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAE,CAAC,IAAK,CAAC,CAAC;IAC1G,CAAC;CACF","sourcesContent":["import V1Addon from '../v1-addon';\nimport { join } from 'path';\nimport type { Node } from 'broccoli-node-api';\nimport { readdirSync, writeFileSync, readFileSync } from 'fs';\nimport { pathExistsSync, removeSync } from 'fs-extra';\nimport { Funnel } from 'broccoli-funnel';\nimport { transform } from '@babel/core';\nimport { stripBadReexportsPlugin } from '../compat-utils';\n\nexport default class extends V1Addon {\n get v2Tree(): Node {\n // workaround for https://github.com/DockYard/ember-composable-helpers/issues/308\n // and https://github.com/DockYard/ember-composable-helpers/pull/302\n // and https://github.com/DockYard/ember-composable-helpers/pull/307\n return new MatchHelpers(super.v2Tree);\n }\n}\n\nclass MatchHelpers extends Funnel {\n constructor(inputTree: Node) {\n super(inputTree, {});\n }\n\n async build() {\n await super.build();\n let appHelpersDir = join(this.outputPath, '_app_', 'helpers');\n let addonHelpersDir = join(this.inputPaths[0], 'helpers');\n\n for (let filename of readdirSync(appHelpersDir)) {\n if (!pathExistsSync(join(addonHelpersDir, filename))) {\n removeSync(join(appHelpersDir, filename));\n }\n }\n let src = readFileSync(join(this.inputPaths[0], 'index.js'), 'utf8');\n let plugins = [stripBadReexportsPlugin({ resolveBase: this.outputPath })];\n writeFileSync(join(this.outputPath, 'index.js'), transform(src, { plugins, configFile: false })!.code!);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-data.js","sourceRoot":"","sources":["ember-data.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2DAAkC;AAClC,+BAA4B;AAC5B,2DAA6C;AAE7C,qCAA8C;AAC9C,oDAA4B;AAE5B,MAAa,aAAc,SAAQ,kBAAO;IACxC,0EAA0E;IAC1E,4EAA4E;IAC5E,sEAAsE;IACtE,EAAE;IACF,uEAAuE;IACvE,uBAAuB;IACvB,UAAU,CAAC,GAAG,KAAe;QAC3B,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,aAAkB;QAC1C,OAAO,gBAAM,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF;AAdD,sCAcC;AAED,MAAqB,SAAU,SAAQ,aAAa;IAClD,6DAA6D;IAE7D,IAAI,OAAO;QACT,IAAI,WAAuB,CAAC;QAC5B,IAAI;
|
|
1
|
+
{"version":3,"file":"ember-data.js","sourceRoot":"","sources":["ember-data.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2DAAkC;AAClC,+BAA4B;AAC5B,2DAA6C;AAE7C,qCAA8C;AAC9C,oDAA4B;AAE5B,MAAa,aAAc,SAAQ,kBAAO;IACxC,0EAA0E;IAC1E,4EAA4E;IAC5E,sEAAsE;IACtE,EAAE;IACF,uEAAuE;IACvE,uBAAuB;IACvB,UAAU,CAAC,GAAG,KAAe;QAC3B,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,aAAkB;QAC1C,OAAO,gBAAM,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF;AAdD,sCAcC;AAED,MAAqB,SAAU,SAAQ,aAAa;IAClD,6DAA6D;IAE7D,IAAI,OAAO;QACT,IAAI,WAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,4DAA4D;YAC5D,iEAAiE;YACjE,WAAW,GAAG,OAAO,CAAC,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,CAAC,GAAG,CAAC,CAAC;YACf,IAAI,CAAC;gBACH,wDAAwD;gBACxD,iEAAiE;gBACjE,WAAW,GAAG,OAAO,CAAC,IAAA,cAAW,EAAC,oDAAoD,EAAE;oBACtF,OAAO,EAAE,IAAI,CAAC,IAAI;iBACnB,CAAC,CAAC,CAAC;YACN,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,CAAC,GAAG,CAAC,CAAC;gBACf,kDAAkD;gBAClD,iEAAiE;gBACjE,WAAW,GAAG,OAAO,CAAC,IAAA,cAAW,EAAC,2DAA2D,EAAE;oBAC7F,OAAO,EAAE,IAAI,CAAC,IAAI;iBACnB,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA/BD,4BA+BC;AA5BC;IADC,IAAA,4BAAO,GAAE;wCA4BT;AAGH,SAAS,SAAS,CAAC,GAAQ;IACzB,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACpC,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC","sourcesContent":["import V1Addon from '../v1-addon';\nimport { join } from 'path';\nimport { Memoize } from 'typescript-memoize';\nimport type { Node } from 'broccoli-node-api';\nimport { sync as resolveSync } from 'resolve';\nimport semver from 'semver';\n\nexport class EmberDataBase extends V1Addon {\n // May of the ember-data packages use rollup to try to hide their internal\n // structure. This is fragile and it breaks under embroider, and they should\n // really move this kind of \"build-within-a-build\" to prepublish time.\n //\n // This disables any custom implementation of `treeForAddon`. The stock\n // behavior is correct.\n customizes(...names: string[]) {\n return super.customizes(...names.filter(n => n !== 'treeForAddon'));\n }\n\n static shouldApplyAdapter(addonInstance: any) {\n return semver.lt(addonInstance.pkg.version, '4.11.1');\n }\n}\n\nexport default class EmberData extends EmberDataBase {\n // ember-data needs its dynamically generated version module.\n @Memoize()\n get v2Trees() {\n let versionTree: () => Node;\n try {\n // ember-data 3.10 and earlier kept the version module here.\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n versionTree = require(join(this.root, 'lib/version'));\n } catch (err) {\n handleErr(err);\n try {\n // ember-data 3.11 to 3.14 keep the version module here.\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n versionTree = require(resolveSync('@ember-data/-build-infra/src/create-version-module', {\n basedir: this.root,\n }));\n } catch (err) {\n handleErr(err);\n // ember-data 3.15+ keeps the version module here.\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n versionTree = require(resolveSync('@ember-data/private-build-infra/src/create-version-module', {\n basedir: this.root,\n }));\n }\n }\n\n let trees = super.v2Trees;\n trees.push(versionTree());\n return trees;\n }\n}\n\nfunction handleErr(err: any) {\n if (err.code !== 'MODULE_NOT_FOUND') {\n throw err;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-engines.js","sourceRoot":"","sources":["ember-engines.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,4FAAgD;AAGhD,MAAM,GAAI,SAAQ,oCAAM;IAGtB,YAAY,SAAc,EAAE,MAAc,EAAE,OAAe;QACzD,KAAK,CAAC,SAAS,EAAE,EAAS,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACD,aAAa,CAAC,OAAe;QAC3B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACF;AAED,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAE7B,0FAA0F;QAC1F,IAAI,IAAI,CAAC,kBAAkB,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-engines.js","sourceRoot":"","sources":["ember-engines.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,4FAAgD;AAGhD,MAAM,GAAI,SAAQ,oCAAM;IAGtB,YAAY,SAAc,EAAE,MAAc,EAAE,OAAe;QACzD,KAAK,CAAC,SAAS,EAAE,EAAS,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACD,aAAa,CAAC,OAAe;QAC3B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACF;AAED,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAE7B,0FAA0F;QAC1F,IAAI,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,uBAAuB,CAAC,CAAC;QACrG,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM;QACR,gFAAgF;QAChF,8DAA8D;QAC9D,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,kCAAkC,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;CACF;AAjBD,4BAiBC","sourcesContent":["import V1Addon from '../v1-addon';\nimport Filter from 'broccoli-persistent-filter';\nimport type { AddonMeta } from '@embroider/core';\n\nclass Awk extends Filter {\n search: string;\n replace: string;\n constructor(inputNode: any, search: string, replace: string) {\n super(inputNode, {} as any);\n this.search = search;\n this.replace = replace;\n }\n processString(content: string) {\n return content.replace(this.search, this.replace);\n }\n}\n\nexport default class extends V1Addon {\n get packageMeta(): Partial<AddonMeta> {\n let meta = super.packageMeta;\n\n // remove from the build so that it will not be present even with staticAddonTrees = false\n if (meta['implicit-modules']) {\n meta['implicit-modules'] = meta['implicit-modules'].filter(mod => mod !== './-private/router-ext');\n }\n\n return meta;\n }\n\n get v2Tree() {\n // dont allow ember-engines to reopen the router as we are doing things with it.\n // this simple deletes the import so the reopen doesn't happen\n return new Awk(super.v2Tree, `import '../-private/router-ext';`, '');\n }\n}\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const v1_addon_1 = __importDefault(require("../v1-addon"));
|
|
7
|
+
class default_1 extends v1_addon_1.default {
|
|
8
|
+
get packageMeta() {
|
|
9
|
+
let meta = super.packageMeta;
|
|
10
|
+
// this file is not accessible from the outside of ember-fetch and is not being used inside ember-fetch so it's dead code
|
|
11
|
+
// but it is importing `@ember/polyfills` which casues ember-source@5 to crash because it has been removed
|
|
12
|
+
if (meta['implicit-modules']) {
|
|
13
|
+
meta['implicit-modules'] = meta['implicit-modules'].filter(mod => mod !== './utils/mung-options-for-fetch');
|
|
14
|
+
}
|
|
15
|
+
return meta;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = default_1;
|
|
19
|
+
//# sourceMappingURL=ember-fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ember-fetch.js","sourceRoot":"","sources":["ember-fetch.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAGlC,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAE7B,yHAAyH;QACzH,0GAA0G;QAC1G,IAAI,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,gCAAgC,CAAC,CAAC;QAC9G,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAZD,4BAYC","sourcesContent":["import V1Addon from '../v1-addon';\nimport type { AddonMeta } from '@embroider/core';\n\nexport default class extends V1Addon {\n get packageMeta(): Partial<AddonMeta> {\n let meta = super.packageMeta;\n\n // this file is not accessible from the outside of ember-fetch and is not being used inside ember-fetch so it's dead code\n // but it is importing `@ember/polyfills` which casues ember-source@5 to crash because it has been removed\n if (meta['implicit-modules']) {\n meta['implicit-modules'] = meta['implicit-modules'].filter(mod => mod !== './utils/mung-options-for-fetch');\n }\n\n return meta;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-macro-helpers.js","sourceRoot":"","sources":["ember-macro-helpers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-macro-helpers.js","sourceRoot":"","sources":["ember-macro-helpers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AATD,4BASC","sourcesContent":["import V1Addon from '../v1-addon';\n\nexport default class extends V1Addon {\n get packageMeta() {\n let meta = super.packageMeta;\n if (!meta.externals) {\n meta.externals = [];\n }\n meta.externals.push('./-computed-store');\n return meta;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-scroll-modifiers.js","sourceRoot":"","sources":["ember-scroll-modifiers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,0GAA0G;QAC1G,mHAAmH;QACnH,IACE,IAAI,CAAC,kBAAkB,CAAC;YACxB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,KAAK,gCAAgC,CAAC,EACrG;
|
|
1
|
+
{"version":3,"file":"ember-scroll-modifiers.js","sourceRoot":"","sources":["ember-scroll-modifiers.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAElC,eAAqB,SAAQ,kBAAO;IAClC,IAAI,WAAW;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7B,0GAA0G;QAC1G,mHAAmH;QACnH,IACE,IAAI,CAAC,kBAAkB,CAAC;YACxB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,KAAK,gCAAgC,CAAC,EACrG,CAAC;YACD,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAClE,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAfD,4BAeC","sourcesContent":["import V1Addon from '../v1-addon';\n\nexport default class extends V1Addon {\n get packageMeta() {\n let meta = super.packageMeta;\n // observer-manager is injected with the undocumented package@service syntax without being app re-exported\n // this makes sure that the service is always re-exported and injectable even when built with staticAddonTrees=true\n if (\n meta['implicit-modules'] &&\n !meta['implicit-modules'].find(implicitModule => implicitModule === './services/observer-manager.js')\n ) {\n meta['implicit-modules'].push('./services/observer-manager.js');\n } else if (!meta['implicit-modules']) {\n meta['implicit-modules'] = ['./services/observer-manager.js'];\n }\n return meta;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-source.js","sourceRoot":"","sources":["ember-source.ts"],"names":[],"mappings":"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","sourcesContent":["import V1Addon from '../v1-addon';\nimport buildFunnel from 'broccoli-funnel';\nimport mergeTrees from 'broccoli-merge-trees';\nimport AddToTree from '../add-to-tree';\nimport { outputFileSync, readFileSync, readdirSync, unlinkSync } from 'fs-extra';\nimport { join, resolve } from 'path';\nimport { Memoize } from 'typescript-memoize';\nimport { satisfies } from 'semver';\nimport { transform } from '@babel/core';\nimport type * as Babel from '@babel/core';\nimport type { NodePath } from '@babel/traverse';\nimport Plugin from 'broccoli-plugin';\nimport type { Node } from 'broccoli-node-api';\nimport { existsSync } from 'fs';\n\nexport default class extends V1Addon {\n get v2Tree() {\n return mergeTrees([super.v2Tree, buildFunnel(this.rootTree, { include: ['dist/ember-template-compiler.js'] })]);\n }\n\n private get useStaticEmber(): boolean {\n return this.app.options.staticEmberSource;\n }\n\n // versions of ember-source prior to\n // https://github.com/emberjs/ember.js/pull/20675 ship dist/packages and\n // dist/dependencies separately and the imports between them are package-name\n // imports. Since many of the dependencies are also true package.json\n // dependencies (in order to get typescript types), and our module-resolver\n // prioritizes true dependencies, it's necessary to detect and remove the\n // package.json dependencies.\n //\n // After the above linked change, ember-source ships only dist/packages and\n // the inter-package imports are all relative. Some of the things in\n // dist/packages are still the rolled-in dependencies, but now that the\n // imports are all relative we need no special handling for them (beyond the\n // normal v2 addon renamed-modules support.\n @Memoize()\n private get includedDependencies() {\n let result: string[] = [];\n let depsDir = resolve(this.root, 'dist', 'dependencies');\n if (!existsSync(depsDir)) {\n return result;\n }\n for (let name of readdirSync(depsDir)) {\n if (name[0] === '@') {\n for (let innerName of readdirSync(resolve(this.root, 'dist', 'dependencies', name))) {\n if (innerName.endsWith('.js')) {\n result.push(name + '/' + innerName.slice(0, -3));\n }\n }\n } else {\n if (name.endsWith('.js')) {\n result.push(name.slice(0, -3));\n }\n }\n }\n return result;\n }\n\n get newPackageJSON() {\n let json = super.newPackageJSON;\n if (this.useStaticEmber) {\n for (let name of this.includedDependencies) {\n // weirdly, many of the inlined dependency are still listed as real\n // dependencies too. If we don't delete them here, they will take\n // precedence over the inlined ones, because the embroider module-resolver\n // tries to prioritize real deps.\n delete json.dependencies?.[name];\n }\n }\n return json;\n }\n\n customizes(treeName: string) {\n if (this.useStaticEmber) {\n // we are adding custom implementations of these\n return treeName === 'treeForAddon' || treeName === 'treeForVendor' || super.customizes(treeName);\n } else {\n return super.customizes(treeName);\n }\n }\n\n invokeOriginalTreeFor(name: string, opts: { neuterPreprocessors: boolean } = { neuterPreprocessors: false }) {\n if (this.useStaticEmber) {\n if (name === 'addon') {\n return this.customAddonTree();\n }\n if (name === 'vendor') {\n return this.customVendorTree();\n }\n }\n return super.invokeOriginalTreeFor(name, opts);\n }\n\n // Our addon tree is all of the \"packages\" we share. @embroider/compat already\n // supports that pattern of emitting modules into other package's namespaces.\n private customAddonTree() {\n let packages = buildFunnel(this.rootTree, {\n srcDir: 'dist/packages',\n });\n\n let trees: Node[] = [\n packages,\n buildFunnel(this.rootTree, {\n srcDir: 'dist/dependencies',\n allowEmpty: true,\n }),\n ];\n\n if (satisfies(this.packageJSON.version, '>= 4.0.0-alpha.0 <4.10.0-alpha.0', { includePrerelease: true })) {\n // import { loc } from '@ember/string' was removed in 4.0. but the\n // top-level `ember` package tries to import it until 4.10. A\n // spec-compliant ES modules implementation will treat this as a parse\n // error.\n trees.push(new FixStringLoc([packages]));\n }\n\n return mergeTrees(trees, { overwrite: true });\n }\n\n // We're zeroing out these files in vendor rather than deleting them, because\n // we can't easily intercept the `app.import` that presumably exists for them,\n // so rather than error they will just be empty.\n //\n // The reason we're zeroing these out is that we're going to consume all our\n // modules directly out of treeForAddon instead, as real modules that webpack\n // can see.\n private customVendorTree() {\n return new AddToTree(this.addonInstance._treeFor('vendor'), outputPath => {\n unlinkSync(join(outputPath, 'ember', 'ember.js'));\n outputFileSync(join(outputPath, 'ember', 'ember.js'), '');\n unlinkSync(join(outputPath, 'ember', 'ember-testing.js'));\n outputFileSync(join(outputPath, 'ember', 'ember-testing.js'), '');\n });\n }\n\n get packageMeta() {\n let meta = super.packageMeta;\n if (this.useStaticEmber) {\n if (!meta['implicit-modules']) {\n meta['implicit-modules'] = [];\n }\n meta['implicit-modules'].push('./ember/index.js');\n // before 5.6, Ember uses the AMD loader to decide if it's test-only parts\n // are present, so we must ensure they're registered. After that it's\n // enough to evaluate ember-testing, which @embroider/core is hard-coded\n // to do in the backward-compatible tests bundle.\n if (!satisfies(this.packageJSON.version, '>= 5.6.0-alpha.0', { includePrerelease: true })) {\n if (!meta['implicit-test-modules']) {\n meta['implicit-test-modules'] = [];\n }\n meta['implicit-test-modules'].push('./ember-testing/index.js');\n }\n }\n return meta;\n }\n}\n\nclass FixStringLoc extends Plugin {\n build() {\n let inSource = readFileSync(resolve(this.inputPaths[0], 'ember', 'index.js'), 'utf8');\n let outSource = transform(inSource, {\n plugins: [fixStringLoc],\n configFile: false,\n })!.code!;\n outputFileSync(resolve(this.outputPath, 'ember', 'index.js'), outSource, 'utf8');\n }\n}\n\nfunction fixStringLoc(babel: typeof Babel) {\n let t = babel.types;\n return {\n visitor: {\n Program(path: NodePath<Babel.types.Program>) {\n path.node.body.unshift(\n t.variableDeclaration('const', [t.variableDeclarator(t.identifier('loc'), t.identifier('undefined'))])\n );\n },\n ImportDeclaration: {\n enter(path: NodePath<Babel.types.ImportDeclaration>, state: { inEmberString: boolean }) {\n if (path.node.source.value === '@ember/string') {\n state.inEmberString = true;\n }\n },\n exit(_path: NodePath<Babel.types.ImportDeclaration>, state: { inEmberString: boolean }) {\n state.inEmberString = false;\n },\n },\n ImportSpecifier(path: NodePath<Babel.types.ImportSpecifier>, state: { inEmberString: boolean }) {\n let name = 'value' in path.node.imported ? path.node.imported.value : path.node.imported.name;\n if (state.inEmberString && name === 'loc') {\n path.remove();\n }\n },\n },\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ember-source.js","sourceRoot":"","sources":["ember-source.ts"],"names":[],"mappings":"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","sourcesContent":["import V1Addon from '../v1-addon';\nimport buildFunnel from 'broccoli-funnel';\nimport mergeTrees from 'broccoli-merge-trees';\nimport AddToTree from '../add-to-tree';\nimport { outputFileSync, readFileSync, readdirSync, unlinkSync } from 'fs-extra';\nimport { join, resolve } from 'path';\nimport { Memoize } from 'typescript-memoize';\nimport { satisfies } from 'semver';\nimport { transform } from '@babel/core';\nimport type * as Babel from '@babel/core';\nimport type { NodePath } from '@babel/traverse';\nimport Plugin from 'broccoli-plugin';\nimport type { Node } from 'broccoli-node-api';\nimport { existsSync } from 'fs';\n\nexport default class extends V1Addon {\n get v2Tree() {\n return mergeTrees([super.v2Tree, buildFunnel(this.rootTree, { include: ['dist/ember-template-compiler.js'] })]);\n }\n\n private get useStaticEmber(): boolean {\n return this.app.options.staticEmberSource;\n }\n\n // versions of ember-source prior to\n // https://github.com/emberjs/ember.js/pull/20675 ship dist/packages and\n // dist/dependencies separately and the imports between them are package-name\n // imports. Since many of the dependencies are also true package.json\n // dependencies (in order to get typescript types), and our module-resolver\n // prioritizes true dependencies, it's necessary to detect and remove the\n // package.json dependencies.\n //\n // After the above linked change, ember-source ships only dist/packages and\n // the inter-package imports are all relative. Some of the things in\n // dist/packages are still the rolled-in dependencies, but now that the\n // imports are all relative we need no special handling for them (beyond the\n // normal v2 addon renamed-modules support.\n @Memoize()\n private get includedDependencies() {\n let result: string[] = [];\n let depsDir = resolve(this.root, 'dist', 'dependencies');\n if (!existsSync(depsDir)) {\n return result;\n }\n for (let name of readdirSync(depsDir)) {\n if (name[0] === '@') {\n for (let innerName of readdirSync(resolve(this.root, 'dist', 'dependencies', name))) {\n if (innerName.endsWith('.js')) {\n result.push(name + '/' + innerName.slice(0, -3));\n }\n }\n } else {\n if (name.endsWith('.js')) {\n result.push(name.slice(0, -3));\n }\n }\n }\n return result;\n }\n\n get newPackageJSON() {\n let json = super.newPackageJSON;\n if (this.useStaticEmber) {\n for (let name of this.includedDependencies) {\n // weirdly, many of the inlined dependency are still listed as real\n // dependencies too. If we don't delete them here, they will take\n // precedence over the inlined ones, because the embroider module-resolver\n // tries to prioritize real deps.\n delete json.dependencies?.[name];\n }\n }\n return json;\n }\n\n customizes(treeName: string) {\n if (this.useStaticEmber) {\n // we are adding custom implementations of these\n return treeName === 'treeForAddon' || treeName === 'treeForVendor' || super.customizes(treeName);\n } else {\n return super.customizes(treeName);\n }\n }\n\n invokeOriginalTreeFor(name: string, opts: { neuterPreprocessors: boolean } = { neuterPreprocessors: false }) {\n if (this.useStaticEmber) {\n if (name === 'addon') {\n return this.customAddonTree();\n }\n if (name === 'vendor') {\n return this.customVendorTree();\n }\n }\n return super.invokeOriginalTreeFor(name, opts);\n }\n\n // Our addon tree is all of the \"packages\" we share. @embroider/compat already\n // supports that pattern of emitting modules into other package's namespaces.\n private customAddonTree() {\n let packages = buildFunnel(this.rootTree, {\n srcDir: 'dist/packages',\n });\n\n let trees: Node[] = [\n packages,\n buildFunnel(this.rootTree, {\n srcDir: 'dist/dependencies',\n allowEmpty: true,\n }),\n ];\n\n if (satisfies(this.packageJSON.version, '>= 4.0.0-alpha.0 <4.10.0-alpha.0', { includePrerelease: true })) {\n // import { loc } from '@ember/string' was removed in 4.0. but the\n // top-level `ember` package tries to import it until 4.10. A\n // spec-compliant ES modules implementation will treat this as a parse\n // error.\n trees.push(new FixStringLoc([packages]));\n }\n\n return mergeTrees(trees, { overwrite: true });\n }\n\n // We're zeroing out these files in vendor rather than deleting them, because\n // we can't easily intercept the `app.import` that presumably exists for them,\n // so rather than error they will just be empty.\n //\n // The reason we're zeroing these out is that we're going to consume all our\n // modules directly out of treeForAddon instead, as real modules that webpack\n // can see.\n private customVendorTree() {\n return new AddToTree(this.addonInstance._treeFor('vendor'), outputPath => {\n unlinkSync(join(outputPath, 'ember', 'ember.js'));\n outputFileSync(join(outputPath, 'ember', 'ember.js'), '');\n unlinkSync(join(outputPath, 'ember', 'ember-testing.js'));\n outputFileSync(join(outputPath, 'ember', 'ember-testing.js'), '');\n });\n }\n\n get packageMeta() {\n let meta = super.packageMeta;\n if (this.useStaticEmber) {\n if (!meta['implicit-modules']) {\n meta['implicit-modules'] = [];\n }\n meta['implicit-modules'].push('./ember/index.js');\n // before 5.6, Ember uses the AMD loader to decide if it's test-only parts\n // are present, so we must ensure they're registered. After that it's\n // enough to evaluate ember-testing, which @embroider/core is hard-coded\n // to do in the backward-compatible tests bundle.\n if (!satisfies(this.packageJSON.version, '>= 5.6.0-alpha.0', { includePrerelease: true })) {\n if (!meta['implicit-test-modules']) {\n meta['implicit-test-modules'] = [];\n }\n meta['implicit-test-modules'].push('./ember-testing/index.js');\n }\n }\n return meta;\n }\n}\n\nclass FixStringLoc extends Plugin {\n build() {\n let inSource = readFileSync(resolve(this.inputPaths[0], 'ember', 'index.js'), 'utf8');\n let outSource = transform(inSource, {\n plugins: [fixStringLoc],\n configFile: false,\n })!.code!;\n outputFileSync(resolve(this.outputPath, 'ember', 'index.js'), outSource, 'utf8');\n }\n}\n\nfunction fixStringLoc(babel: typeof Babel) {\n let t = babel.types;\n return {\n visitor: {\n Program(path: NodePath<Babel.types.Program>) {\n path.node.body.unshift(\n t.variableDeclaration('const', [t.variableDeclarator(t.identifier('loc'), t.identifier('undefined'))])\n );\n },\n ImportDeclaration: {\n enter(path: NodePath<Babel.types.ImportDeclaration>, state: { inEmberString: boolean }) {\n if (path.node.source.value === '@ember/string') {\n state.inEmberString = true;\n }\n },\n exit(_path: NodePath<Babel.types.ImportDeclaration>, state: { inEmberString: boolean }) {\n state.inEmberString = false;\n },\n },\n ImportSpecifier(path: NodePath<Babel.types.ImportSpecifier>, state: { inEmberString: boolean }) {\n let name = 'value' in path.node.imported ? path.node.imported.value : path.node.imported.name;\n if (state.inEmberString && name === 'loc') {\n path.remove();\n }\n },\n },\n };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-svg-jar.js","sourceRoot":"","sources":["ember-svg-jar.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,gFAA8C;AAC9C,sEAAqC;AACrC,uCAAsF;AACtF,+BAA4B;AAE5B,MAAM,SAAU,SAAQ,yBAAM;IAC5B,KAAK;QACH,IAAI,UAAU,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QAC5E,IAAI,IAAA,yBAAc,EAAC,UAAU,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"ember-svg-jar.js","sourceRoot":"","sources":["ember-svg-jar.ts"],"names":[],"mappings":";;;;;AAAA,2DAAkC;AAClC,gFAA8C;AAC9C,sEAAqC;AACrC,uCAAsF;AACtF,+BAA4B;AAE5B,MAAM,SAAU,SAAQ,yBAAM;IAC5B,KAAK;QACH,IAAI,UAAU,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QAC5E,IAAI,IAAA,yBAAc,EAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,IAAI,MAAM,GAAG,IAAA,uBAAY,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,GAAG,mDAAmD,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;YAC5G,IAAA,wBAAa,EAAC,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;YACzD,IAAA,wBAAa,EAAC,IAAA,WAAI,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;CACF;AAED,eAAqB,SAAQ,kBAAO;IAClC,IAAI,MAAM;QACR,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;QACxB,OAAO,IAAA,8BAAU,EAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvG,CAAC;CACF;AALD,4BAKC","sourcesContent":["import V1Addon from '../v1-addon';\nimport mergeTrees from 'broccoli-merge-trees';\nimport Plugin from 'broccoli-plugin';\nimport { readFileSync, writeFileSync, ensureDirSync, pathExistsSync } from 'fs-extra';\nimport { join } from 'path';\n\nclass FixSVGJar extends Plugin {\n build() {\n let helperFile = join(this.inputPaths[0], '_app_', 'helpers', 'svg-jar.js');\n if (pathExistsSync(helperFile)) {\n let source = readFileSync(helperFile, 'utf8');\n source = `import { importSync } from '@embroider/macros';\\n` + source.replace(/\\brequire\\b/g, 'importSync');\n ensureDirSync(join(this.outputPath, '_app_', 'helpers'));\n writeFileSync(join(this.outputPath, '_app_', 'helpers', 'svg-jar.js'), source);\n }\n }\n}\n\nexport default class extends V1Addon {\n get v2Tree() {\n let orig = super.v2Tree;\n return mergeTrees([orig, new FixSVGJar([orig], { annotation: 'fix-svg-jar' })], { overwrite: true });\n }\n}\n"]}
|
package/src/compat-addons.js
CHANGED
|
@@ -29,7 +29,7 @@ class CompatAddons {
|
|
|
29
29
|
}
|
|
30
30
|
async ready() {
|
|
31
31
|
return {
|
|
32
|
-
outputPath: (0, path_1.resolve)((0, core_1.locateEmbroiderWorkingDir)(this.compatApp.root), 'rewritten-app'),
|
|
32
|
+
outputPath: (0, path_1.resolve)((0, core_1.locateEmbroiderWorkingDir)(this.compatApp.root), '..', '..', 'tmp', 'rewritten-app'),
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
async build({ addons, }, changedMap) {
|
package/src/compat-addons.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compat-addons.js","sourceRoot":"","sources":["compat-addons.ts"],"names":[],"mappings":";;;;;AACA,+BAA+B;AAE/B,0CAAiG;AACjG,0DAAiC;AAEjC,qEAA+D;AAE/D,gFAAgF;AAChF,8EAA8E;AAC9E,kEAAkE;AAClE,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,iBAAiB;AACjB,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"compat-addons.js","sourceRoot":"","sources":["compat-addons.ts"],"names":[],"mappings":";;;;;AACA,+BAA+B;AAE/B,0CAAiG;AACjG,0DAAiC;AAEjC,qEAA+D;AAE/D,gFAAgF;AAChF,8EAA8E;AAC9E,kEAAkE;AAClE,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,iBAAiB;AACjB,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,WAAW,EAAE,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,MAAM,CAAC;AAChD,CAAC;AAED,MAAqB,YAAY;IAO/B,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QANhC,aAAQ,GAAG,KAAK,CAAC;QAOvB,IAAI,CAAC,MAAM,GAAG,IAAA,4CAAmB,EAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;IAClC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,mBAAY,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,0BAA0B,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACtG,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO;YACL,UAAU,EAAE,IAAA,cAAO,EAAC,IAAA,gCAAyB,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC;SACxG,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,KAAK,CACjB,EACE,MAAM,GAGP,EACD,UAAgC;QAEhC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAC1B,MAAM,EACN,IAAA,cAAO,EAAC,IAAA,gCAAyB,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAC9E,CAAC;QACJ,CAAC;QAED,IACE,CAAC,IAAI,CAAC,QAAQ,IAAI,iCAAiC;YACnD,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EACtB,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,4BAAqB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QACnF,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AA9CD,+BA8CC","sourcesContent":["import type { Node } from 'broccoli-node-api';\nimport { resolve } from 'path';\nimport type { Stage } from '@embroider/core';\nimport { locateEmbroiderWorkingDir, RewrittenPackageCache, WaitForTrees } from '@embroider/core';\nimport TreeSync from 'tree-sync';\nimport type CompatApp from './compat-app';\nimport { convertLegacyAddons } from './standalone-addon-build';\n\n// This build stage expects to be run with broccoli memoization enabled in order\n// to get good rebuild performance. We turn it on by default here, but you can\n// still explicitly turn it off by setting the env var to \"false\".\n//\n// As for safetly mutating process.env: broccoli doesn't read this until a Node\n// executes its build hook, so as far as I can tell there's no way we could set\n// this too late.\nif (typeof process.env.BROCCOLI_ENABLED_MEMOIZE === 'undefined') {\n process.env.BROCCOLI_ENABLED_MEMOIZE = 'true';\n}\n\nexport default class CompatAddons implements Stage {\n private didBuild = false;\n private treeSync: TreeSync | undefined;\n readonly inputPath: string;\n\n private addons: Node;\n\n constructor(private compatApp: CompatApp) {\n this.addons = convertLegacyAddons(compatApp);\n this.inputPath = compatApp.root;\n }\n\n get tree(): Node {\n return new WaitForTrees({ addons: this.addons }, '@embroider/compat/addons', this.build.bind(this));\n }\n\n async ready(): Promise<{ outputPath: string }> {\n return {\n outputPath: resolve(locateEmbroiderWorkingDir(this.compatApp.root), '..', '..', 'tmp', 'rewritten-app'),\n };\n }\n\n private async build(\n {\n addons,\n }: {\n addons: string;\n },\n changedMap: Map<string, boolean>\n ) {\n if (!this.treeSync) {\n this.treeSync = new TreeSync(\n addons,\n resolve(locateEmbroiderWorkingDir(this.compatApp.root), 'rewritten-packages')\n );\n }\n\n if (\n !this.didBuild || // always copy on the first build\n changedMap.get(addons)\n ) {\n this.treeSync.sync();\n RewrittenPackageCache.shared('embroider', this.compatApp.root).invalidateIndex();\n }\n this.didBuild = true;\n }\n}\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Node as BroccoliNode } from 'broccoli-node-api';
|
|
2
2
|
import type { OutputPaths } from '@embroider/core';
|
|
3
3
|
import type Options from './options';
|
|
4
|
+
import type ContentForConfig from './content-for-config';
|
|
4
5
|
import type { V1Config } from './v1-config';
|
|
5
6
|
import type { Package } from '@embroider/core';
|
|
6
7
|
import type CompatApp from './compat-app';
|
|
@@ -11,49 +12,31 @@ export declare class CompatAppBuilder {
|
|
|
11
12
|
private options;
|
|
12
13
|
private compatApp;
|
|
13
14
|
private configTree;
|
|
15
|
+
private contentForTree;
|
|
14
16
|
private synthVendor;
|
|
15
17
|
private synthStyles;
|
|
16
|
-
|
|
17
|
-
constructor(root: string, origAppPackage: Package, appPackageWithMovedDeps: Package, options: Required<Options>, compatApp: CompatApp, configTree: V1Config, synthVendor: Package, synthStyles: Package);
|
|
18
|
+
constructor(root: string, origAppPackage: Package, appPackageWithMovedDeps: Package, options: Required<Options>, compatApp: CompatApp, configTree: V1Config, contentForTree: ContentForConfig, synthVendor: Package, synthStyles: Package);
|
|
18
19
|
private fastbootJSSrcDir;
|
|
19
|
-
private extractAssets;
|
|
20
|
-
private findTestemAsset;
|
|
21
20
|
private activeAddonChildren;
|
|
22
21
|
private get allActiveAddons();
|
|
23
22
|
private isActiveAddon;
|
|
24
23
|
private orderAddons;
|
|
25
24
|
private resolvableExtensions;
|
|
26
|
-
private
|
|
25
|
+
private addEmberEntrypoints;
|
|
27
26
|
private modulePrefix;
|
|
28
27
|
private podModulePrefix;
|
|
29
28
|
private rootURL;
|
|
30
29
|
private activeRules;
|
|
31
30
|
private resolverConfig;
|
|
32
|
-
private scriptPriority;
|
|
33
31
|
private get resolvableExtensionsPattern();
|
|
34
|
-
private impliedAssets;
|
|
35
|
-
private impliedAddonAssets;
|
|
36
32
|
private babelConfig;
|
|
37
|
-
private insertEmberApp;
|
|
38
|
-
private implicitScriptsAsset;
|
|
39
|
-
private implicitStylesAsset;
|
|
40
|
-
private implicitTestScriptsAsset;
|
|
41
|
-
private implicitTestStylesAsset;
|
|
42
33
|
private findActiveAddons;
|
|
43
34
|
private partitionEngines;
|
|
44
35
|
private get activeFastboot();
|
|
45
36
|
private get fastbootConfig();
|
|
46
37
|
private engines;
|
|
47
38
|
private updateAppJS;
|
|
48
|
-
private
|
|
49
|
-
private prepareAssets;
|
|
50
|
-
private assetIsValid;
|
|
51
|
-
private updateOnDiskAsset;
|
|
52
|
-
private updateInMemoryAsset;
|
|
53
|
-
private updateBuiltEmberAsset;
|
|
54
|
-
private updateConcatenatedAsset;
|
|
55
|
-
private updateAssets;
|
|
56
|
-
private gatherAssets;
|
|
39
|
+
private get staticAppPathsPattern();
|
|
57
40
|
private firstBuild;
|
|
58
41
|
build(inputPaths: OutputPaths<TreeNames>): Promise<void>;
|
|
59
42
|
private combinePackageJSON;
|
|
@@ -61,15 +44,10 @@ export declare class CompatAppBuilder {
|
|
|
61
44
|
private get portableHints();
|
|
62
45
|
private addBabelConfig;
|
|
63
46
|
private addResolverConfig;
|
|
64
|
-
private
|
|
65
|
-
private
|
|
66
|
-
private
|
|
67
|
-
private
|
|
68
|
-
private requiredOtherFiles;
|
|
69
|
-
private appJSAsset;
|
|
70
|
-
private importPaths;
|
|
71
|
-
private routeEntrypoint;
|
|
72
|
-
private testJSEntrypoint;
|
|
47
|
+
private addContentForConfig;
|
|
48
|
+
private addEmberEnvConfig;
|
|
49
|
+
private addMacrosConfig;
|
|
50
|
+
private addAppBoot;
|
|
73
51
|
}
|
|
74
52
|
interface TreeNames {
|
|
75
53
|
appJS: BroccoliNode;
|