@atlaspack/core 2.14.0 → 2.14.1-canary.3710

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.
Files changed (81) hide show
  1. package/LICENSE +201 -0
  2. package/lib/AssetGraph.js +521 -0
  3. package/lib/Atlaspack.js +677 -0
  4. package/lib/AtlaspackConfig.js +298 -0
  5. package/lib/AtlaspackConfig.schema.js +103 -0
  6. package/lib/BundleGraph.js +1527 -0
  7. package/lib/CommittedAsset.js +155 -0
  8. package/lib/Dependency.js +136 -0
  9. package/lib/Environment.js +144 -0
  10. package/lib/IdentifierRegistry.js +36 -0
  11. package/lib/InternalConfig.js +56 -0
  12. package/lib/PackagerRunner.js +525 -0
  13. package/lib/ReporterRunner.js +151 -0
  14. package/lib/RequestTracker.js +1178 -0
  15. package/lib/SymbolPropagation.js +618 -0
  16. package/lib/TargetDescriptor.schema.js +118 -0
  17. package/lib/Transformation.js +522 -0
  18. package/lib/UncommittedAsset.js +348 -0
  19. package/lib/Validation.js +203 -0
  20. package/lib/applyRuntimes.js +355 -0
  21. package/lib/assetUtils.js +205 -0
  22. package/lib/atlaspack-v3/AtlaspackV3.js +66 -0
  23. package/lib/atlaspack-v3/NapiWorkerPool.js +71 -0
  24. package/lib/atlaspack-v3/fs.js +39 -0
  25. package/lib/atlaspack-v3/index.js +26 -0
  26. package/lib/atlaspack-v3/jsCallable.js +20 -0
  27. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +197 -0
  28. package/lib/atlaspack-v3/worker/compat/bitflags.js +84 -0
  29. package/lib/atlaspack-v3/worker/compat/dependency.js +44 -0
  30. package/lib/atlaspack-v3/worker/compat/environment.js +57 -0
  31. package/lib/atlaspack-v3/worker/compat/index.js +104 -0
  32. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +164 -0
  33. package/lib/atlaspack-v3/worker/compat/plugin-config.js +78 -0
  34. package/lib/atlaspack-v3/worker/compat/plugin-logger.js +29 -0
  35. package/lib/atlaspack-v3/worker/compat/plugin-options.js +113 -0
  36. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +12 -0
  37. package/lib/atlaspack-v3/worker/compat/target.js +17 -0
  38. package/lib/atlaspack-v3/worker/index.js +3 -0
  39. package/lib/atlaspack-v3/worker/worker.js +280 -0
  40. package/lib/constants.js +21 -0
  41. package/lib/dumpGraphToGraphViz.js +206 -0
  42. package/lib/index.js +70 -0
  43. package/lib/loadAtlaspackPlugin.js +115 -0
  44. package/lib/loadDotEnv.js +54 -0
  45. package/lib/projectPath.js +112 -0
  46. package/lib/public/Asset.js +259 -0
  47. package/lib/public/Bundle.js +236 -0
  48. package/lib/public/BundleGraph.js +279 -0
  49. package/lib/public/BundleGroup.js +50 -0
  50. package/lib/public/Config.js +202 -0
  51. package/lib/public/Dependency.js +131 -0
  52. package/lib/public/Environment.js +247 -0
  53. package/lib/public/MutableBundleGraph.js +204 -0
  54. package/lib/public/PluginOptions.js +71 -0
  55. package/lib/public/Symbols.js +247 -0
  56. package/lib/public/Target.js +64 -0
  57. package/lib/registerCoreWithSerializer.js +51 -0
  58. package/lib/requests/AssetGraphRequest.js +432 -0
  59. package/lib/requests/AssetGraphRequestRust.js +220 -0
  60. package/lib/requests/AssetRequest.js +132 -0
  61. package/lib/requests/AtlaspackBuildRequest.js +79 -0
  62. package/lib/requests/AtlaspackConfigRequest.js +479 -0
  63. package/lib/requests/BundleGraphRequest.js +485 -0
  64. package/lib/requests/ConfigRequest.js +203 -0
  65. package/lib/requests/DevDepRequest.js +193 -0
  66. package/lib/requests/EntryRequest.js +295 -0
  67. package/lib/requests/PackageRequest.js +88 -0
  68. package/lib/requests/PathRequest.js +357 -0
  69. package/lib/requests/TargetRequest.js +1179 -0
  70. package/lib/requests/ValidationRequest.js +66 -0
  71. package/lib/requests/WriteBundleRequest.js +252 -0
  72. package/lib/requests/WriteBundlesRequest.js +167 -0
  73. package/lib/requests/asset-graph-diff.js +128 -0
  74. package/lib/requests/asset-graph-dot.js +131 -0
  75. package/lib/resolveOptions.js +265 -0
  76. package/lib/serializerCore.browser.js +29 -0
  77. package/lib/summarizeRequest.js +55 -0
  78. package/lib/types.js +35 -0
  79. package/lib/utils.js +160 -0
  80. package/lib/worker.js +184 -0
  81. package/package.json +20 -19
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MutableDependencySymbols = exports.MutableAssetSymbols = exports.AssetSymbols = void 0;
7
+ function _nullthrows() {
8
+ const data = _interopRequireDefault(require("nullthrows"));
9
+ _nullthrows = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ var _utils = require("../utils");
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+ const EMPTY_ITERABLE = {
17
+ [Symbol.iterator]() {
18
+ return EMPTY_ITERATOR;
19
+ }
20
+ };
21
+ const EMPTY_ITERATOR = {
22
+ next() {
23
+ return {
24
+ done: true
25
+ };
26
+ }
27
+ };
28
+ const inspect = Symbol.for('nodejs.util.inspect.custom');
29
+ let valueToSymbols = new WeakMap();
30
+ class AssetSymbols {
31
+ /*::
32
+ @@iterator(): Iterator<[ISymbol, {|local: ISymbol, loc: ?SourceLocation, meta?: ?Meta|}]> { return ({}: any); }
33
+ */
34
+ #value;
35
+ #options;
36
+ constructor(options, asset) {
37
+ let existing = valueToSymbols.get(asset);
38
+ if (existing != null) {
39
+ return existing;
40
+ }
41
+ this.#value = asset;
42
+ this.#options = options;
43
+ valueToSymbols.set(asset, this);
44
+ return this;
45
+ }
46
+ hasExportSymbol(exportSymbol) {
47
+ var _this$value$symbols;
48
+ return Boolean((_this$value$symbols = this.#value.symbols) === null || _this$value$symbols === void 0 ? void 0 : _this$value$symbols.has(exportSymbol));
49
+ }
50
+ hasLocalSymbol(local) {
51
+ if (this.#value.symbols == null) {
52
+ return false;
53
+ }
54
+ for (let s of this.#value.symbols.values()) {
55
+ if (local === s.local) return true;
56
+ }
57
+ return false;
58
+ }
59
+ get(exportSymbol) {
60
+ var _this$value$symbols2;
61
+ return fromInternalAssetSymbol(this.#options.projectRoot, (_this$value$symbols2 = this.#value.symbols) === null || _this$value$symbols2 === void 0 ? void 0 : _this$value$symbols2.get(exportSymbol));
62
+ }
63
+ get isCleared() {
64
+ return this.#value.symbols == null;
65
+ }
66
+ exportSymbols() {
67
+ var _this$value$symbols3;
68
+ return ((_this$value$symbols3 = this.#value.symbols) === null || _this$value$symbols3 === void 0 ? void 0 : _this$value$symbols3.keys()) ?? [];
69
+ }
70
+ // $FlowFixMe
71
+ [Symbol.iterator]() {
72
+ return this.#value.symbols ? this.#value.symbols[Symbol.iterator]() : EMPTY_ITERATOR;
73
+ }
74
+
75
+ // $FlowFixMe
76
+ [inspect]() {
77
+ return `AssetSymbols(${this.#value.symbols ? [...this.#value.symbols].map(([s, {
78
+ local
79
+ }]) => `${s}:${local}`).join(', ') : null})`;
80
+ }
81
+ }
82
+ exports.AssetSymbols = AssetSymbols;
83
+ let valueToMutableAssetSymbols = new WeakMap();
84
+ class MutableAssetSymbols {
85
+ /*::
86
+ @@iterator(): Iterator<[ISymbol, {|local: ISymbol, loc: ?SourceLocation, meta?: ?Meta|}]> { return ({}: any); }
87
+ */
88
+ #value;
89
+ #options;
90
+ constructor(options, asset) {
91
+ let existing = valueToMutableAssetSymbols.get(asset);
92
+ if (existing != null) {
93
+ return existing;
94
+ }
95
+ this.#value = asset;
96
+ this.#options = options;
97
+ return this;
98
+ }
99
+
100
+ // immutable
101
+
102
+ hasExportSymbol(exportSymbol) {
103
+ var _this$value$symbols4;
104
+ return Boolean((_this$value$symbols4 = this.#value.symbols) === null || _this$value$symbols4 === void 0 ? void 0 : _this$value$symbols4.has(exportSymbol));
105
+ }
106
+ hasLocalSymbol(local) {
107
+ if (this.#value.symbols == null) {
108
+ return false;
109
+ }
110
+ for (let s of this.#value.symbols.values()) {
111
+ if (local === s.local) return true;
112
+ }
113
+ return false;
114
+ }
115
+ get(exportSymbol) {
116
+ var _this$value$symbols5;
117
+ return fromInternalAssetSymbol(this.#options.projectRoot, (_this$value$symbols5 = this.#value.symbols) === null || _this$value$symbols5 === void 0 ? void 0 : _this$value$symbols5.get(exportSymbol));
118
+ }
119
+ get isCleared() {
120
+ return this.#value.symbols == null;
121
+ }
122
+ exportSymbols() {
123
+ // $FlowFixMe
124
+ return this.#value.symbols.keys();
125
+ }
126
+ // $FlowFixMe
127
+ [Symbol.iterator]() {
128
+ return this.#value.symbols ? this.#value.symbols[Symbol.iterator]() : EMPTY_ITERATOR;
129
+ }
130
+
131
+ // $FlowFixMe
132
+ [inspect]() {
133
+ return `MutableAssetSymbols(${this.#value.symbols ? [...this.#value.symbols].map(([s, {
134
+ local
135
+ }]) => `${s}:${local}`).join(', ') : null})`;
136
+ }
137
+
138
+ // mutating
139
+
140
+ ensure() {
141
+ if (this.#value.symbols == null) {
142
+ this.#value.symbols = new Map();
143
+ }
144
+ }
145
+ set(exportSymbol, local, loc, meta) {
146
+ (0, _nullthrows().default)(this.#value.symbols).set(exportSymbol, {
147
+ local,
148
+ loc: (0, _utils.toInternalSourceLocation)(this.#options.projectRoot, loc),
149
+ meta
150
+ });
151
+ }
152
+ delete(exportSymbol) {
153
+ (0, _nullthrows().default)(this.#value.symbols).delete(exportSymbol);
154
+ }
155
+ }
156
+ exports.MutableAssetSymbols = MutableAssetSymbols;
157
+ let valueToMutableDependencySymbols = new WeakMap();
158
+ class MutableDependencySymbols {
159
+ /*::
160
+ @@iterator(): Iterator<[ISymbol, {|local: ISymbol, loc: ?SourceLocation, isWeak: boolean, meta?: ?Meta|}]> { return ({}: any); }
161
+ */
162
+ #value;
163
+ #options;
164
+ constructor(options, dep) {
165
+ let existing = valueToMutableDependencySymbols.get(dep);
166
+ if (existing != null) {
167
+ return existing;
168
+ }
169
+ this.#value = dep;
170
+ this.#options = options;
171
+ return this;
172
+ }
173
+
174
+ // immutable:
175
+
176
+ hasExportSymbol(exportSymbol) {
177
+ var _this$value$symbols6;
178
+ return Boolean((_this$value$symbols6 = this.#value.symbols) === null || _this$value$symbols6 === void 0 ? void 0 : _this$value$symbols6.has(exportSymbol));
179
+ }
180
+ hasLocalSymbol(local) {
181
+ if (this.#value.symbols) {
182
+ for (let s of this.#value.symbols.values()) {
183
+ if (local === s.local) return true;
184
+ }
185
+ }
186
+ return false;
187
+ }
188
+ get(exportSymbol) {
189
+ return fromInternalDependencySymbol(this.#options.projectRoot, (0, _nullthrows().default)(this.#value.symbols).get(exportSymbol));
190
+ }
191
+ get isCleared() {
192
+ return this.#value.symbols == null;
193
+ }
194
+ exportSymbols() {
195
+ // $FlowFixMe
196
+ return this.#value.symbols ? this.#value.symbols.keys() : EMPTY_ITERABLE;
197
+ }
198
+
199
+ // $FlowFixMe
200
+ [Symbol.iterator]() {
201
+ return this.#value.symbols ? this.#value.symbols[Symbol.iterator]() : EMPTY_ITERATOR;
202
+ }
203
+
204
+ // $FlowFixMe
205
+ [inspect]() {
206
+ return `MutableDependencySymbols(${this.#value.symbols ? [...this.#value.symbols].map(([s, {
207
+ local,
208
+ isWeak
209
+ }]) => `${s}:${local}${isWeak ? '?' : ''}`).join(', ') : null})`;
210
+ }
211
+
212
+ // mutating:
213
+
214
+ ensure() {
215
+ if (this.#value.symbols == null) {
216
+ this.#value.symbols = new Map();
217
+ }
218
+ }
219
+ set(exportSymbol, local, loc, isWeak) {
220
+ var _symbols$get;
221
+ let symbols = (0, _nullthrows().default)(this.#value.symbols);
222
+ symbols.set(exportSymbol, {
223
+ local,
224
+ loc: (0, _utils.toInternalSourceLocation)(this.#options.projectRoot, loc),
225
+ isWeak: (((_symbols$get = symbols.get(exportSymbol)) === null || _symbols$get === void 0 ? void 0 : _symbols$get.isWeak) ?? true) && (isWeak ?? false)
226
+ });
227
+ }
228
+ delete(exportSymbol) {
229
+ (0, _nullthrows().default)(this.#value.symbols).delete(exportSymbol);
230
+ }
231
+ }
232
+ exports.MutableDependencySymbols = MutableDependencySymbols;
233
+ function fromInternalAssetSymbol(projectRoot, value) {
234
+ return value && {
235
+ local: value.local,
236
+ meta: value.meta,
237
+ loc: (0, _utils.fromInternalSourceLocation)(projectRoot, value.loc)
238
+ };
239
+ }
240
+ function fromInternalDependencySymbol(projectRoot, value) {
241
+ return value && {
242
+ local: value.local,
243
+ meta: value.meta,
244
+ isWeak: value.isWeak,
245
+ loc: (0, _utils.fromInternalSourceLocation)(projectRoot, value.loc)
246
+ };
247
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ exports.targetToInternalTarget = targetToInternalTarget;
8
+ function _nullthrows() {
9
+ const data = _interopRequireDefault(require("nullthrows"));
10
+ _nullthrows = function () {
11
+ return data;
12
+ };
13
+ return data;
14
+ }
15
+ var _Environment = _interopRequireDefault(require("./Environment"));
16
+ var _projectPath = require("../projectPath");
17
+ var _utils = require("../utils");
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+ const inspect = Symbol.for('nodejs.util.inspect.custom');
20
+ const internalTargetToTarget = new WeakMap();
21
+ const _targetToInternalTarget = new WeakMap();
22
+ function targetToInternalTarget(target) {
23
+ return (0, _nullthrows().default)(_targetToInternalTarget.get(target));
24
+ }
25
+ class Target {
26
+ #target /*: TargetValue */;
27
+ #options /*: AtlaspackOptions */;
28
+
29
+ constructor(target, options) {
30
+ let existing = internalTargetToTarget.get(target);
31
+ if (existing != null) {
32
+ return existing;
33
+ }
34
+ this.#target = target;
35
+ this.#options = options;
36
+ _targetToInternalTarget.set(this, target);
37
+ internalTargetToTarget.set(target, this);
38
+ return this;
39
+ }
40
+ get distEntry() {
41
+ return this.#target.distEntry;
42
+ }
43
+ get distDir() {
44
+ return (0, _projectPath.fromProjectPath)(this.#options.projectRoot, this.#target.distDir);
45
+ }
46
+ get env() {
47
+ return new _Environment.default(this.#target.env, this.#options);
48
+ }
49
+ get name() {
50
+ return this.#target.name;
51
+ }
52
+ get publicUrl() {
53
+ return this.#target.publicUrl;
54
+ }
55
+ get loc() {
56
+ return (0, _utils.fromInternalSourceLocation)(this.#options.projectRoot, this.#target.loc);
57
+ }
58
+
59
+ // $FlowFixMe[unsupported-syntax]
60
+ [inspect]() {
61
+ return `Target(${this.name} - ${this.env[inspect]()})`;
62
+ }
63
+ }
64
+ exports.default = Target;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.registerCoreWithSerializer = registerCoreWithSerializer;
7
+ function _buildCache() {
8
+ const data = require("@atlaspack/build-cache");
9
+ _buildCache = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _graph() {
15
+ const data = require("@atlaspack/graph");
16
+ _graph = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ var _package = _interopRequireDefault(require("../package.json"));
22
+ var _AtlaspackConfig = require("./AtlaspackConfig");
23
+ var _AssetGraph = _interopRequireDefault(require("./AssetGraph"));
24
+ var _BundleGraph = _interopRequireDefault(require("./BundleGraph"));
25
+ var _Config = _interopRequireDefault(require("./public/Config"));
26
+ var _RequestTracker = require("./RequestTracker");
27
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
+ let coreRegistered;
29
+ function registerCoreWithSerializer() {
30
+ if (coreRegistered) {
31
+ return;
32
+ }
33
+ const packageVersion = _package.default.version;
34
+ if (typeof packageVersion !== 'string') {
35
+ throw new Error('Expected package version to be a string');
36
+ }
37
+
38
+ // $FlowFixMe[incompatible-cast]
39
+ for (let [name, ctor] of Object.entries({
40
+ AssetGraph: _AssetGraph.default,
41
+ Config: _Config.default,
42
+ BundleGraph: _BundleGraph.default,
43
+ Graph: _graph().Graph,
44
+ AtlaspackConfig: _AtlaspackConfig.AtlaspackConfig,
45
+ RequestGraph: _RequestTracker.RequestGraph
46
+ // $FlowFixMe[unclear-type]
47
+ })) {
48
+ (0, _buildCache().registerSerializableClass)(packageVersion + ':' + name, ctor);
49
+ }
50
+ coreRegistered = true;
51
+ }