@embroider/core 3.4.8 → 3.4.9-unstable.3d20631

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,73 @@
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
+ exports.renderVendor = exports.decodeVirtualVendor = void 0;
7
+ const shared_internals_1 = require("@embroider/shared-internals");
8
+ const fs_extra_1 = require("fs-extra");
9
+ const lodash_1 = require("lodash");
10
+ const path_1 = require("path");
11
+ const resolve_1 = __importDefault(require("resolve"));
12
+ function decodeVirtualVendor(filename) {
13
+ return filename.endsWith('-embroider-vendor.js');
14
+ }
15
+ exports.decodeVirtualVendor = decodeVirtualVendor;
16
+ function renderVendor(filename, resolver) {
17
+ const owner = resolver.packageCache.ownerOfFile(filename);
18
+ if (!owner) {
19
+ throw new Error(`Failed to find a valid owner for ${filename}`);
20
+ }
21
+ return { src: getVendor(owner, resolver, filename), watches: [] };
22
+ }
23
+ exports.renderVendor = renderVendor;
24
+ function getVendor(owner, resolver, filename) {
25
+ let engineConfig = resolver.owningEngine(owner);
26
+ let addons = new Map(engineConfig.activeAddons.map(addon => [
27
+ resolver.packageCache.get(addon.root),
28
+ addon.canResolveFromFile,
29
+ ]));
30
+ let path = (0, path_1.join)((0, shared_internals_1.locateEmbroiderWorkingDir)(resolver.options.appRoot), 'ember-env.json');
31
+ if (!(0, fs_extra_1.lstatSync)(path).isFile()) {
32
+ throw new Error(`Failed to read the ember-env.json when generating content for ${filename}`);
33
+ }
34
+ let emberENV = (0, fs_extra_1.readJSONSync)(path);
35
+ return generateVendor(addons, emberENV);
36
+ }
37
+ function generateVendor(addons, emberENV) {
38
+ // Add addons implicit-scripts
39
+ let vendor = impliedAddonVendors(addons).map((sourcePath) => {
40
+ let source = (0, fs_extra_1.readFileSync)(sourcePath);
41
+ return `${source}`;
42
+ });
43
+ // Add _testing_prefix_.js
44
+ vendor.unshift(`var runningTests=false;`);
45
+ // Add _ember_env_.js
46
+ vendor.unshift(`window.EmberENV={ ...(window.EmberENV || {}), ...${JSON.stringify(emberENV, null, 2)} };`);
47
+ // Add _loader_.js
48
+ vendor.push(`loader.makeDefaultExport=false;`);
49
+ return vendor.join('');
50
+ }
51
+ function impliedAddonVendors(addons) {
52
+ let result = [];
53
+ for (let addon of (0, lodash_1.sortBy)(Array.from(addons.keys()), pkg => {
54
+ switch (pkg.name) {
55
+ case 'loader.js':
56
+ return 0;
57
+ case 'ember-source':
58
+ return 10;
59
+ default:
60
+ return 1000;
61
+ }
62
+ })) {
63
+ let implicitScripts = addon.meta['implicit-scripts'];
64
+ if (implicitScripts) {
65
+ let options = { basedir: addon.root };
66
+ for (let mod of implicitScripts) {
67
+ result.push(resolve_1.default.sync(mod, options));
68
+ }
69
+ }
70
+ }
71
+ return result;
72
+ }
73
+ //# sourceMappingURL=virtual-vendor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-vendor.js","sourceRoot":"","sources":["virtual-vendor.ts"],"names":[],"mappings":"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","sourcesContent":["import { type Package, locateEmbroiderWorkingDir } from '@embroider/shared-internals';\nimport type { V2AddonPackage } from '@embroider/shared-internals/src/package';\nimport { lstatSync, readFileSync, readJSONSync } from 'fs-extra';\nimport { sortBy } from 'lodash';\nimport { join } from 'path';\nimport resolve from 'resolve';\nimport type { Resolver } from './module-resolver';\nimport type { VirtualContentResult } from './virtual-content';\n\nexport function decodeVirtualVendor(filename: string): boolean {\n return filename.endsWith('-embroider-vendor.js');\n}\n\nexport function renderVendor(filename: string, resolver: Resolver): VirtualContentResult {\n const owner = resolver.packageCache.ownerOfFile(filename);\n if (!owner) {\n throw new Error(`Failed to find a valid owner for ${filename}`);\n }\n return { src: getVendor(owner, resolver, filename), watches: [] };\n}\n\nfunction getVendor(owner: Package, resolver: Resolver, filename: string): string {\n let engineConfig = resolver.owningEngine(owner);\n let addons = new Map(\n engineConfig.activeAddons.map(addon => [\n resolver.packageCache.get(addon.root) as V2AddonPackage,\n addon.canResolveFromFile,\n ])\n );\n\n let path = join(locateEmbroiderWorkingDir(resolver.options.appRoot), 'ember-env.json');\n if (!lstatSync(path).isFile()) {\n throw new Error(`Failed to read the ember-env.json when generating content for ${filename}`);\n }\n let emberENV = readJSONSync(path);\n\n return generateVendor(addons, emberENV);\n}\n\nfunction generateVendor(addons: Map<V2AddonPackage, string>, emberENV?: unknown): string {\n // Add addons implicit-scripts\n let vendor: string[] = impliedAddonVendors(addons).map((sourcePath: string): string => {\n let source = readFileSync(sourcePath);\n return `${source}`;\n });\n // Add _testing_prefix_.js\n vendor.unshift(`var runningTests=false;`);\n // Add _ember_env_.js\n vendor.unshift(`window.EmberENV={ ...(window.EmberENV || {}), ...${JSON.stringify(emberENV, null, 2)} };`);\n // Add _loader_.js\n vendor.push(`loader.makeDefaultExport=false;`);\n\n return vendor.join('') as string;\n}\n\nfunction impliedAddonVendors(addons: Map<V2AddonPackage, string>): string[] {\n let result: Array<string> = [];\n for (let addon of sortBy(Array.from(addons.keys()), pkg => {\n switch (pkg.name) {\n case 'loader.js':\n return 0;\n case 'ember-source':\n return 10;\n default:\n return 1000;\n }\n })) {\n let implicitScripts = addon.meta['implicit-scripts'];\n if (implicitScripts) {\n let options = { basedir: addon.root };\n for (let mod of implicitScripts) {\n result.push(resolve.sync(mod, options));\n }\n }\n }\n return result;\n}\n"]}
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2018 Edward Faulkner
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.