@ethlete/cli 3.0.0-next.24 → 3.0.0-next.26
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/CHANGELOG.md +126 -0
- package/design/define-call.ts +69 -0
- package/design/define-part.ts +43 -9
- package/design/embed-page.ts +37 -4
- package/design/icon-sheet.ts +151 -0
- package/design/logo-sheet.ts +52 -0
- package/design/mark-part.ts +79 -2
- package/design/motion-drive.ts +215 -0
- package/design/motion-runtime.ts +224 -5
- package/design/motion-tokens.ts +177 -0
- package/design/spring.ts +53 -0
- package/design/token-sheet.ts +87 -0
- package/design/web/frame-fill.ts +4 -0
- package/design/web/frame-scheme.ts +44 -0
- package/design/web/frame.ts +239 -31
- package/package.json +1 -1
- package/src/lib/design/calls-tsconfig.d.ts +2 -0
- package/src/lib/design/calls-tsconfig.js +11 -5
- package/src/lib/design/calls-tsconfig.js.map +1 -1
- package/src/lib/design/check.d.ts +1 -0
- package/src/lib/design/check.js +62 -6
- package/src/lib/design/check.js.map +1 -1
- package/src/lib/design/contact-sheet.d.ts +9 -0
- package/src/lib/design/contact-sheet.js +38 -4
- package/src/lib/design/contact-sheet.js.map +1 -1
- package/src/lib/design/design-command.js +56 -7
- package/src/lib/design/design-command.js.map +1 -1
- package/src/lib/design/draw-ledger.d.ts +36 -0
- package/src/lib/design/draw-ledger.js +52 -0
- package/src/lib/design/draw-ledger.js.map +1 -0
- package/src/lib/design/force-interactions.d.ts +2 -1
- package/src/lib/design/force-interactions.js +7 -4
- package/src/lib/design/force-interactions.js.map +1 -1
- package/src/lib/design/mcp-command.d.ts +81 -0
- package/src/lib/design/mcp-command.js +422 -0
- package/src/lib/design/mcp-command.js.map +1 -0
- package/src/lib/design/motion-command.d.ts +71 -0
- package/src/lib/design/motion-command.js +308 -0
- package/src/lib/design/motion-command.js.map +1 -0
- package/src/lib/design/motion-endpoint.d.ts +61 -0
- package/src/lib/design/motion-endpoint.js +133 -0
- package/src/lib/design/motion-endpoint.js.map +1 -0
- package/src/lib/design/motion-flow.d.ts +5 -0
- package/src/lib/design/motion-flow.js +29 -0
- package/src/lib/design/motion-flow.js.map +1 -0
- package/src/lib/design/motion-shot.d.ts +43 -0
- package/src/lib/design/motion-shot.js +97 -0
- package/src/lib/design/motion-shot.js.map +1 -0
- package/src/lib/design/paths.d.ts +14 -0
- package/src/lib/design/paths.js +50 -1
- package/src/lib/design/paths.js.map +1 -1
- package/src/lib/design/ready-shots.d.ts +7 -0
- package/src/lib/design/ready-shots.js +22 -1
- package/src/lib/design/ready-shots.js.map +1 -1
- package/src/lib/design/render-packages.d.ts +14 -0
- package/src/lib/design/render-packages.js +18 -3
- package/src/lib/design/render-packages.js.map +1 -1
- package/src/lib/design/render-worker.js +1 -0
- package/src/lib/design/render-worker.js.map +1 -1
- package/src/lib/design/render.js +3 -3
- package/src/lib/design/render.js.map +1 -1
- package/src/lib/design/serve.d.ts +2 -2
- package/src/lib/design/serve.js +191 -21
- package/src/lib/design/serve.js.map +1 -1
- package/src/lib/design/shot-command.d.ts +13 -4
- package/src/lib/design/shot-command.js +30 -24
- package/src/lib/design/shot-command.js.map +1 -1
- package/src/lib/design/shot-store.d.ts +24 -0
- package/src/lib/design/shot-store.js +120 -0
- package/src/lib/design/shot-store.js.map +1 -0
- package/src/lib/design/shot.d.ts +37 -1
- package/src/lib/design/shot.js +185 -34
- package/src/lib/design/shot.js.map +1 -1
- package/src/lib/design/sketch-command.js +197 -51
- package/src/lib/design/sketch-command.js.map +1 -1
- package/src/lib/design/ssr-shims.d.ts +2 -0
- package/src/lib/design/ssr-shims.js +12 -1
- package/src/lib/design/ssr-shims.js.map +1 -1
- package/src/lib/design/studio-api.d.ts +31 -0
- package/src/lib/design/studio-api.js +118 -1
- package/src/lib/design/studio-api.js.map +1 -1
- package/src/lib/design/system/check-system.d.ts +6 -2
- package/src/lib/design/system/check-system.js +102 -20
- package/src/lib/design/system/check-system.js.map +1 -1
- package/src/lib/design/system/colour.d.ts +4 -1
- package/src/lib/design/system/colour.js +54 -2
- package/src/lib/design/system/colour.js.map +1 -1
- package/src/lib/design/system/complete-command.d.ts +1 -1
- package/src/lib/design/system/complete-command.js +80 -6
- package/src/lib/design/system/complete-command.js.map +1 -1
- package/src/lib/design/system/complete.d.ts +172 -9
- package/src/lib/design/system/complete.js +792 -167
- package/src/lib/design/system/complete.js.map +1 -1
- package/src/lib/design/system/contrast-check.d.ts +6 -1
- package/src/lib/design/system/contrast-check.js +167 -12
- package/src/lib/design/system/contrast-check.js.map +1 -1
- package/src/lib/design/system/drawn-open-points.d.ts +16 -0
- package/src/lib/design/system/drawn-open-points.js +43 -0
- package/src/lib/design/system/drawn-open-points.js.map +1 -0
- package/src/lib/design/system/exceptions.d.ts +59 -0
- package/src/lib/design/system/exceptions.js +132 -0
- package/src/lib/design/system/exceptions.js.map +1 -0
- package/src/lib/design/system/flows/flow.d.ts +3 -0
- package/src/lib/design/system/flows/flow.js +5 -3
- package/src/lib/design/system/flows/flow.js.map +1 -1
- package/src/lib/design/system/handoff.d.ts +11 -0
- package/src/lib/design/system/handoff.js +30 -0
- package/src/lib/design/system/handoff.js.map +1 -0
- package/src/lib/design/system/inventory-approval.d.ts +41 -0
- package/src/lib/design/system/inventory-approval.js +71 -0
- package/src/lib/design/system/inventory-approval.js.map +1 -0
- package/src/lib/design/system/inventory.d.ts +65 -0
- package/src/lib/design/system/inventory.js +168 -0
- package/src/lib/design/system/inventory.js.map +1 -0
- package/src/lib/design/system/list-system.d.ts +4 -1
- package/src/lib/design/system/list-system.js +11 -3
- package/src/lib/design/system/list-system.js.map +1 -1
- package/src/lib/design/system/open-points.d.ts +101 -0
- package/src/lib/design/system/open-points.js +156 -0
- package/src/lib/design/system/open-points.js.map +1 -0
- package/src/lib/design/system/part-ready.d.ts +52 -0
- package/src/lib/design/system/part-ready.js +101 -0
- package/src/lib/design/system/part-ready.js.map +1 -0
- package/src/lib/design/system/read-open-points.d.ts +27 -0
- package/src/lib/design/system/read-open-points.js +81 -0
- package/src/lib/design/system/read-open-points.js.map +1 -0
- package/src/lib/design/system/ready-command.d.ts +7 -0
- package/src/lib/design/system/ready-command.js +65 -0
- package/src/lib/design/system/ready-command.js.map +1 -0
- package/src/lib/design/system/render-check.d.ts +2 -0
- package/src/lib/design/system/render-check.js +216 -32
- package/src/lib/design/system/render-check.js.map +1 -1
- package/src/lib/design/system/resolve-product.d.ts +4 -4
- package/src/lib/design/system/resolve-product.js +22 -7
- package/src/lib/design/system/resolve-product.js.map +1 -1
- package/src/lib/design/system/rules/implements.d.ts +7 -0
- package/src/lib/design/system/rules/implements.js +43 -0
- package/src/lib/design/system/rules/implements.js.map +1 -0
- package/src/lib/design/system/rules/motion.d.ts +2 -0
- package/src/lib/design/system/rules/motion.js +26 -1
- package/src/lib/design/system/rules/motion.js.map +1 -1
- package/src/lib/design/system/rules/option-values.d.ts +15 -0
- package/src/lib/design/system/rules/option-values.js +145 -0
- package/src/lib/design/system/rules/option-values.js.map +1 -0
- package/src/lib/design/system/rules/stale-replace.js +80 -3
- package/src/lib/design/system/rules/stale-replace.js.map +1 -1
- package/src/lib/design/system/rules/token-selectors.js +1 -1
- package/src/lib/design/system/rules/token-selectors.js.map +1 -1
- package/src/lib/design/system/sketch/baseline.d.ts +11 -2
- package/src/lib/design/system/sketch/baseline.js +4 -2
- package/src/lib/design/system/sketch/baseline.js.map +1 -1
- package/src/lib/design/system/sketch/check-sketches.d.ts +1 -0
- package/src/lib/design/system/sketch/check-sketches.js +4 -2
- package/src/lib/design/system/sketch/check-sketches.js.map +1 -1
- package/src/lib/design/system/sketch/host-edit.d.ts +4 -0
- package/src/lib/design/system/sketch/host-edit.js +68 -0
- package/src/lib/design/system/sketch/host-edit.js.map +1 -0
- package/src/lib/design/system/sketch/merge.d.ts +3 -2
- package/src/lib/design/system/sketch/merge.js +79 -12
- package/src/lib/design/system/sketch/merge.js.map +1 -1
- package/src/lib/design/system/sketch/merged-parts.d.ts +11 -1
- package/src/lib/design/system/sketch/merged-parts.js +24 -3
- package/src/lib/design/system/sketch/merged-parts.js.map +1 -1
- package/src/lib/design/system/sketch/no-visible-change.d.ts +6 -0
- package/src/lib/design/system/sketch/no-visible-change.js +25 -1
- package/src/lib/design/system/sketch/no-visible-change.js.map +1 -1
- package/src/lib/design/system/sketch/overlay.js +11 -3
- package/src/lib/design/system/sketch/overlay.js.map +1 -1
- package/src/lib/design/system/sketch/part-definition.d.ts +36 -0
- package/src/lib/design/system/sketch/part-definition.js +56 -2
- package/src/lib/design/system/sketch/part-definition.js.map +1 -1
- package/src/lib/design/system/sketch/sketch.d.ts +47 -0
- package/src/lib/design/system/sketch/sketch.js +137 -44
- package/src/lib/design/system/sketch/sketch.js.map +1 -1
- package/src/lib/design/system/sketch/unchanged-states.d.ts +4 -1
- package/src/lib/design/system/sketch/unchanged-states.js +9 -5
- package/src/lib/design/system/sketch/unchanged-states.js.map +1 -1
- package/src/lib/design/system/sketch/unused-closure.d.ts +12 -0
- package/src/lib/design/system/sketch/unused-closure.js +195 -0
- package/src/lib/design/system/sketch/unused-closure.js.map +1 -0
- package/src/lib/design/system/sketch/unused-files.d.ts +1 -1
- package/src/lib/design/system/sketch/unused-files.js +6 -3
- package/src/lib/design/system/sketch/unused-files.js.map +1 -1
- package/src/lib/design/system/system-modules.js +6 -9
- package/src/lib/design/system/system-modules.js.map +1 -1
- package/src/lib/design/system/system-tsconfig.d.ts +2 -1
- package/src/lib/design/system/system-tsconfig.js +10 -6
- package/src/lib/design/system/system-tsconfig.js.map +1 -1
- package/src/lib/design/system/ts-source.d.ts +3 -0
- package/src/lib/design/system/ts-source.js +21 -4
- package/src/lib/design/system/ts-source.js.map +1 -1
- package/src/lib/design/thumb.d.ts +31 -4
- package/src/lib/design/thumb.js +105 -40
- package/src/lib/design/thumb.js.map +1 -1
|
@@ -8,8 +8,9 @@ export type MergeRefusal = {
|
|
|
8
8
|
};
|
|
9
9
|
/**
|
|
10
10
|
* Merges the variant the user picked in a ready sketch into the product: copies each part it holds
|
|
11
|
-
* over the product's
|
|
12
|
-
*
|
|
11
|
+
* over the product's - a part the product takes from its base over the base's, unless the sketch was opened with
|
|
12
|
+
* `override`; `into-base` also removes the product copy and its `merged.json` entry - sets `note` (when given) and `madeBy` (the file's own plus the variant's authors) on the target, runs the check
|
|
13
|
+
* records each merged part's hash in `merged.json` and deletes the sketch. With `override`, a target the product only takes from its base is copied into the product first. When the check fails, the
|
|
13
14
|
* product's old files come back and the sketch stays. Each file in the variant's `assets/` goes into the product's `assets/`. A file of the sketch's `shared/` folder whose path the product's `shared/` holds
|
|
14
15
|
* replaces it there; the rest goes into the target's folder when the target imports it, with its `@shared/` imports made relative; any other part that imports it stops the merge. Otherwise the addressed comments on its variants, and those on the merged parts that have no sketch, are resolved, and the open ones on its variants are addressed, by `author` or the user. Refuses without a
|
|
15
16
|
* pick, and when a part the variant replaces changed in the product since the sketch's baseline. Answers with the merged part keys, or with why nothing was merged - and, when a rebase
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.discardSketch = exports.mergeSketch = void 0;
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
4
5
|
const fs_1 = require("fs");
|
|
6
|
+
const module_1 = require("module");
|
|
5
7
|
const os_1 = require("os");
|
|
6
8
|
const path_1 = require("path");
|
|
7
9
|
const check_system_1 = require("../check-system");
|
|
8
10
|
const comment_1 = require("../comments/comment");
|
|
9
11
|
const assets_1 = require("../assets");
|
|
10
12
|
const product_1 = require("../product");
|
|
13
|
+
const base_1 = require("../base");
|
|
11
14
|
const resolve_product_1 = require("../resolve-product");
|
|
12
15
|
const baseline_1 = require("./baseline");
|
|
13
16
|
const merge_shared_1 = require("./merge-shared");
|
|
@@ -24,6 +27,8 @@ const swap = (entries) => {
|
|
|
24
27
|
});
|
|
25
28
|
for (const { from, to } of entries) {
|
|
26
29
|
(0, fs_1.rmSync)(to, { recursive: true, force: true });
|
|
30
|
+
if (from === null)
|
|
31
|
+
continue;
|
|
27
32
|
(0, fs_1.mkdirSync)((0, path_1.dirname)(to), { recursive: true });
|
|
28
33
|
(0, fs_1.cpSync)(from, to, { recursive: true });
|
|
29
34
|
}
|
|
@@ -49,9 +54,9 @@ const pickOf = (sketch) => {
|
|
|
49
54
|
};
|
|
50
55
|
const notedTargetOf = (options) => {
|
|
51
56
|
var _a, _b, _c, _d, _e;
|
|
52
|
-
const { sketch, variant, parts, product, key, note } = options;
|
|
57
|
+
const { sketch, variant, parts, product, root, key, note } = options;
|
|
53
58
|
const name = (_a = key.split('/')[1]) !== null && _a !== void 0 ? _a : '';
|
|
54
|
-
const targetDir = (0, path_1.resolve)(
|
|
59
|
+
const targetDir = (0, path_1.resolve)(root, key);
|
|
55
60
|
const noteFile = (0, path_1.resolve)(targetDir, `${name}.ts`);
|
|
56
61
|
const carried = (_b = parts.find((part) => (0, resolve_product_1.partKeyOf)(part) === key)) === null || _b === void 0 ? void 0 : _b.file;
|
|
57
62
|
const inherited = carried || (0, fs_1.existsSync)(noteFile) ? null : ((_c = product.parts.find((part) => (0, resolve_product_1.partKeyOf)(part) === key)) !== null && _c !== void 0 ? _c : null);
|
|
@@ -68,7 +73,42 @@ const notedTargetOf = (options) => {
|
|
|
68
73
|
return `${held} holds no definePart({ note: '…' }) to set the note on`;
|
|
69
74
|
return { key, targetDir, noteFile, inherited, noted };
|
|
70
75
|
};
|
|
76
|
+
/** The parts of `keys` the merge writes into the product's base instead of the product. */
|
|
77
|
+
const baseKeysOf = (options) => {
|
|
78
|
+
const { product, sketch, keys } = options;
|
|
79
|
+
return keys.filter((key) => {
|
|
80
|
+
var _a;
|
|
81
|
+
const origin = (_a = product.parts.find((part) => (0, resolve_product_1.partKeyOf)(part) === key)) === null || _a === void 0 ? void 0 : _a.origin;
|
|
82
|
+
return sketch.merge === 'into-base'
|
|
83
|
+
? origin === 'base' || origin === 'overridden'
|
|
84
|
+
: sketch.merge !== 'override' && origin === 'base';
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
const prettierBinOf = (target) => {
|
|
88
|
+
const from = [(0, path_1.join)(target, 'package.json'), __filename].find((file) => {
|
|
89
|
+
try {
|
|
90
|
+
return !!(0, module_1.createRequire)(file).resolve('prettier/package.json');
|
|
91
|
+
}
|
|
92
|
+
catch (_a) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
return from ? (0, path_1.resolve)((0, path_1.dirname)((0, module_1.createRequire)(from).resolve('prettier/package.json')), 'bin/prettier.cjs') : null;
|
|
97
|
+
};
|
|
98
|
+
const formatFiles = (target, files) => {
|
|
99
|
+
var _a;
|
|
100
|
+
const bin = prettierBinOf(target);
|
|
101
|
+
if (!bin || files.length === 0)
|
|
102
|
+
return;
|
|
103
|
+
const formatted = (0, child_process_1.spawnSync)(process.execPath, [bin, '--write', '--ignore-unknown', '--log-level', 'warn', ...files], {
|
|
104
|
+
cwd: target,
|
|
105
|
+
encoding: 'utf8',
|
|
106
|
+
});
|
|
107
|
+
if (formatted.error || formatted.status !== 0)
|
|
108
|
+
console.warn(`Could not format the merged files: ${(formatted.stderr || ((_a = formatted.error) === null || _a === void 0 ? void 0 : _a.message) || '').trim()}`);
|
|
109
|
+
};
|
|
71
110
|
const mergeOrReason = (options) => {
|
|
111
|
+
var _a, _b;
|
|
72
112
|
const { target, config, product, sketch, note, author } = options;
|
|
73
113
|
if (sketch.status !== 'ready')
|
|
74
114
|
return `${sketch.target} is ${sketch.status} - mark it ready before a merge`;
|
|
@@ -98,22 +138,32 @@ const mergeOrReason = (options) => {
|
|
|
98
138
|
reason: `${conflicts.join(', ')} changed in the product since the sketch on ${sketch.target} was created - bring variant "${variant}" up to date, then run sketch rebase ${sketch.target}`,
|
|
99
139
|
changed: conflicts,
|
|
100
140
|
};
|
|
141
|
+
const mergedKeys = [...new Set([...sketch.targets, ...parts.map(resolve_product_1.partKeyOf)])];
|
|
142
|
+
const baseKeys = baseKeysOf({ product, sketch, keys: mergedKeys });
|
|
143
|
+
const base = product.base;
|
|
144
|
+
if (baseKeys.length > 0 && (!base || (0, base_1.isBuiltInBase)((_a = product.config.base) !== null && _a !== void 0 ? _a : '')))
|
|
145
|
+
return `${baseKeys.join(', ')} comes from the built-in base ${product.config.base} - only a sketch opened with --override merges it, as a product copy`;
|
|
146
|
+
const rootOf = (key) => (base && baseKeys.includes(key) ? base.dir : product.dir);
|
|
147
|
+
const removedKeys = baseKeys.filter((key) => { var _a; return ((_a = product.parts.find((part) => (0, resolve_product_1.partKeyOf)(part) === key)) === null || _a === void 0 ? void 0 : _a.origin) === 'overridden'; });
|
|
101
148
|
const notedTargets = [];
|
|
102
149
|
for (const key of sketch.targets) {
|
|
103
|
-
const noted = notedTargetOf({ sketch, variant, parts, product, key, note });
|
|
150
|
+
const noted = notedTargetOf({ sketch, variant, parts, product, root: rootOf(key), key, note });
|
|
104
151
|
if (typeof noted === 'string')
|
|
105
152
|
return noted;
|
|
106
153
|
notedTargets.push(noted);
|
|
107
154
|
}
|
|
108
155
|
const inheritedKeys = notedTargets.flatMap((entry) => (entry.inherited ? [entry.key] : []));
|
|
109
|
-
const mergedKeys = [...new Set([...sketch.targets, ...parts.map(resolve_product_1.partKeyOf)])];
|
|
110
156
|
const assetFiles = (0, assets_1.filesBelow)((0, path_1.resolve)(dir, assets_1.ASSETS_FOLDER));
|
|
111
157
|
const sharedChanges = (0, merge_shared_1.productSharedChangesOf)({ sketch, variant, product });
|
|
112
158
|
const untouched = assetFiles.length > 0 || sharedChanges.length > 0 ? (0, merged_parts_1.unchangedMergedOf)({ product, except: mergedKeys }) : [];
|
|
113
|
-
const
|
|
159
|
+
const baseProduct = base && baseKeys.length > 0 && base.configFile === product.configFile && ((_b = config.products) === null || _b === void 0 ? void 0 : _b[base.name])
|
|
160
|
+
? (0, resolve_product_1.resolveProduct)({ target, name: base.name, config: base.config })
|
|
161
|
+
: null;
|
|
162
|
+
const known = [...(0, check_system_1.ruleLinesOf)(target, product), ...(baseProduct ? (0, check_system_1.ruleLinesOf)(target, baseProduct) : [])];
|
|
114
163
|
const swapped = swap([
|
|
115
164
|
...notedTargets.flatMap(({ inherited, targetDir }) => inherited ? [{ from: (0, path_1.dirname)(inherited.file), to: targetDir }] : []),
|
|
116
|
-
...parts.map((part) => ({ from: (0, path_1.dirname)(part.file), to: (0, path_1.resolve)(
|
|
165
|
+
...parts.map((part) => ({ from: (0, path_1.dirname)(part.file), to: (0, path_1.resolve)(rootOf((0, resolve_product_1.partKeyOf)(part)), part.layer, part.name) })),
|
|
166
|
+
...removedKeys.map((key) => ({ from: null, to: (0, path_1.resolve)(product.dir, key) })),
|
|
117
167
|
...(fixtures ? [{ from: fixtures, to: (0, path_1.resolve)(product.dir, 'fixtures.ts') }] : []),
|
|
118
168
|
...assetFiles.map((file) => ({
|
|
119
169
|
from: file,
|
|
@@ -123,14 +173,30 @@ const mergeOrReason = (options) => {
|
|
|
123
173
|
]);
|
|
124
174
|
for (const { noteFile, noted } of notedTargets)
|
|
125
175
|
(0, fs_1.writeFileSync)(noteFile, noted);
|
|
126
|
-
for (const { targetDir, paths } of shared.carry)
|
|
127
|
-
(0,
|
|
128
|
-
|
|
176
|
+
for (const { targetDir, paths } of shared.carry) {
|
|
177
|
+
const key = (0, path_1.relative)(product.dir, targetDir);
|
|
178
|
+
(0, merge_shared_1.carryShared)({ sketch, variant, targetDir: (0, path_1.resolve)(rootOf(key), key), paths, product });
|
|
179
|
+
}
|
|
180
|
+
const checked = [product.name, ...(baseProduct ? [baseProduct.name] : [])];
|
|
181
|
+
if ((0, check_system_1.checkSystem)({ target, config, products: checked, known }) !== 0) {
|
|
129
182
|
swapped.restore();
|
|
130
183
|
return `the check failed after the merge of ${sketch.target} variant "${variant}" - the product's old files are back, the sketch stays`;
|
|
131
184
|
}
|
|
185
|
+
const written = [
|
|
186
|
+
...mergedKeys.flatMap((key) => (0, assets_1.filesBelow)((0, path_1.resolve)(rootOf(key), key))),
|
|
187
|
+
...sharedChanges.map(({ to }) => to),
|
|
188
|
+
...(fixtures ? [(0, path_1.resolve)(product.dir, 'fixtures.ts')] : []),
|
|
189
|
+
...assetFiles.map((file) => (0, path_1.resolve)(product.dir, assets_1.ASSETS_FOLDER, (0, path_1.relative)((0, path_1.resolve)(dir, assets_1.ASSETS_FOLDER), file))),
|
|
190
|
+
];
|
|
191
|
+
formatFiles(target, [...new Set(written)]);
|
|
132
192
|
swapped.drop();
|
|
133
|
-
|
|
193
|
+
const productKeys = mergedKeys.filter((key) => !baseKeys.includes(key));
|
|
194
|
+
if (productKeys.length > 0)
|
|
195
|
+
(0, merged_parts_1.recordMerged)({ product, parts: productKeys });
|
|
196
|
+
if (base && baseKeys.length > 0) {
|
|
197
|
+
(0, merged_parts_1.recordMerged)({ product: { dir: base.dir, base: null }, parts: baseKeys });
|
|
198
|
+
(0, merged_parts_1.forgetMerged)({ productDir: product.dir, parts: removedKeys });
|
|
199
|
+
}
|
|
134
200
|
const alsoChanged = (0, merged_parts_1.rerecordChangedMerged)({ product, before: untouched });
|
|
135
201
|
if (alsoChanged.length > 0)
|
|
136
202
|
console.log(`Asset or shared/ change also updates: ${alsoChanged.join(', ')}`);
|
|
@@ -146,8 +212,9 @@ const mergeOrReason = (options) => {
|
|
|
146
212
|
};
|
|
147
213
|
/**
|
|
148
214
|
* Merges the variant the user picked in a ready sketch into the product: copies each part it holds
|
|
149
|
-
* over the product's
|
|
150
|
-
*
|
|
215
|
+
* over the product's - a part the product takes from its base over the base's, unless the sketch was opened with
|
|
216
|
+
* `override`; `into-base` also removes the product copy and its `merged.json` entry - sets `note` (when given) and `madeBy` (the file's own plus the variant's authors) on the target, runs the check
|
|
217
|
+
* records each merged part's hash in `merged.json` and deletes the sketch. With `override`, a target the product only takes from its base is copied into the product first. When the check fails, the
|
|
151
218
|
* product's old files come back and the sketch stays. Each file in the variant's `assets/` goes into the product's `assets/`. A file of the sketch's `shared/` folder whose path the product's `shared/` holds
|
|
152
219
|
* replaces it there; the rest goes into the target's folder when the target imports it, with its `@shared/` imports made relative; any other part that imports it stops the merge. Otherwise the addressed comments on its variants, and those on the merged parts that have no sketch, are resolved, and the open ones on its variants are addressed, by `author` or the user. Refuses without a
|
|
153
220
|
* pick, and when a part the variant replaces changed in the product since the sketch's baseline. Answers with the merged part keys, or with why nothing was merged - and, when a rebase
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/merge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/merge.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,22 @@ import { ResolvedProduct } from '../resolve-product';
|
|
|
2
2
|
export declare const MERGED_FILE = "merged.json";
|
|
3
3
|
/** The content hash of each part, its folder and the assets it imports, as its last sketch merge left it, under the part key. */
|
|
4
4
|
export declare const readMerged: (productDir: string) => Record<string, string>;
|
|
5
|
-
type HashedProduct = Pick<ResolvedProduct, 'dir' | 'base'
|
|
5
|
+
type HashedProduct = Pick<ResolvedProduct, 'dir' | 'base'> & Partial<Pick<ResolvedProduct, 'config'>>;
|
|
6
6
|
/** Records the current content hash of each named part of the product as merged. */
|
|
7
7
|
export declare const recordMerged: (options: {
|
|
8
8
|
product: HashedProduct;
|
|
9
9
|
parts: string[];
|
|
10
10
|
}) => void;
|
|
11
|
+
/** Drops the named parts from the product's `merged.json`. */
|
|
12
|
+
export declare const forgetMerged: (options: {
|
|
13
|
+
productDir: string;
|
|
14
|
+
parts: string[];
|
|
15
|
+
}) => void;
|
|
16
|
+
/** The product folder that holds the part now: the product's own, else its base's. */
|
|
17
|
+
export declare const holderOf: (options: {
|
|
18
|
+
product: HashedProduct;
|
|
19
|
+
part: string;
|
|
20
|
+
}) => HashedProduct;
|
|
11
21
|
/** The recorded parts of the product, outside `except`, whose files still match their recorded hash, with that hash. */
|
|
12
22
|
export declare const unchangedMergedOf: (options: {
|
|
13
23
|
product: ResolvedProduct;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.acceptPart = exports.recordAllowedMerge = exports.recordAutoMerge = exports.readAccepted = exports.ACCEPTED_FILE = exports.changedOutsideSketchOf = exports.sketchedPartsOf = exports.rerecordChangedMerged = exports.unchangedMergedOf = exports.recordMerged = exports.readMerged = exports.MERGED_FILE = void 0;
|
|
3
|
+
exports.acceptPart = exports.recordAllowedMerge = exports.recordAutoMerge = exports.readAccepted = exports.ACCEPTED_FILE = exports.changedOutsideSketchOf = exports.sketchedPartsOf = exports.rerecordChangedMerged = exports.unchangedMergedOf = exports.holderOf = exports.forgetMerged = exports.recordMerged = exports.readMerged = exports.MERGED_FILE = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const product_1 = require("../product");
|
|
@@ -36,6 +36,25 @@ const recordMerged = (options) => {
|
|
|
36
36
|
(0, fs_1.writeFileSync)(mergedFileOf(productDir), `${JSON.stringify(sorted, null, 2)}\n`);
|
|
37
37
|
};
|
|
38
38
|
exports.recordMerged = recordMerged;
|
|
39
|
+
/** Drops the named parts from the product's `merged.json`. */
|
|
40
|
+
const forgetMerged = (options) => {
|
|
41
|
+
const { productDir, parts } = options;
|
|
42
|
+
const merged = (0, exports.readMerged)(productDir);
|
|
43
|
+
if (!parts.some((part) => part in merged))
|
|
44
|
+
return;
|
|
45
|
+
for (const part of parts)
|
|
46
|
+
delete merged[part];
|
|
47
|
+
(0, fs_1.writeFileSync)(mergedFileOf(productDir), `${JSON.stringify(merged, null, 2)}\n`);
|
|
48
|
+
};
|
|
49
|
+
exports.forgetMerged = forgetMerged;
|
|
50
|
+
/** The product folder that holds the part now: the product's own, else its base's. */
|
|
51
|
+
const holderOf = (options) => {
|
|
52
|
+
const { product, part } = options;
|
|
53
|
+
return !(0, fs_1.existsSync)((0, path_1.resolve)(product.dir, part)) && product.base && (0, fs_1.existsSync)((0, path_1.resolve)(product.base.dir, part))
|
|
54
|
+
? { dir: product.base.dir, config: product.base.config, base: null }
|
|
55
|
+
: product;
|
|
56
|
+
};
|
|
57
|
+
exports.holderOf = holderOf;
|
|
39
58
|
/** The recorded parts of the product, outside `except`, whose files still match their recorded hash, with that hash. */
|
|
40
59
|
const unchangedMergedOf = (options) => {
|
|
41
60
|
const { product, except } = options;
|
|
@@ -100,7 +119,8 @@ exports.readAccepted = readAccepted;
|
|
|
100
119
|
const logAcceptance = (productDir, entry) => (0, fs_1.writeFileSync)((0, path_1.resolve)(productDir, exports.ACCEPTED_FILE), `${JSON.stringify([...(0, exports.readAccepted)(productDir), entry], null, 2)}\n`);
|
|
101
120
|
/** Logs a sketch merged by itself because no state showed a visible change, as an `auto` entry in `accepted.json`. */
|
|
102
121
|
const recordAutoMerge = (options) => {
|
|
103
|
-
const {
|
|
122
|
+
const { part, by } = options;
|
|
123
|
+
const product = (0, exports.holderOf)(options);
|
|
104
124
|
logAcceptance(product.dir, {
|
|
105
125
|
part,
|
|
106
126
|
by,
|
|
@@ -113,7 +133,8 @@ const recordAutoMerge = (options) => {
|
|
|
113
133
|
exports.recordAutoMerge = recordAutoMerge;
|
|
114
134
|
/** Logs a sketch merged without a pick in Studio because a plan entry allows it, in `accepted.json`. */
|
|
115
135
|
const recordAllowedMerge = (options) => {
|
|
116
|
-
const {
|
|
136
|
+
const { part, by, planRef } = options;
|
|
137
|
+
const product = (0, exports.holderOf)(options);
|
|
117
138
|
logAcceptance(product.dir, {
|
|
118
139
|
part,
|
|
119
140
|
by,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merged-parts.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/merged-parts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"merged-parts.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/merged-parts.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,3 +14,9 @@ export declare const sketchShowsNoChange: (options: {
|
|
|
14
14
|
load: SketchPartLoader;
|
|
15
15
|
pictureOf: PictureOf;
|
|
16
16
|
}) => Promise<true | string>;
|
|
17
|
+
/** Why each target of each live variant of the sketch fails to load, one line each; `[]` when all of them load. */
|
|
18
|
+
export declare const variantLoadProblemsOf: (options: {
|
|
19
|
+
product: ResolvedProduct;
|
|
20
|
+
sketch: Sketch;
|
|
21
|
+
load: SketchPartLoader;
|
|
22
|
+
}) => Promise<string[]>;
|
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.sketchShowsNoChange = void 0;
|
|
12
|
+
exports.variantLoadProblemsOf = exports.sketchShowsNoChange = void 0;
|
|
13
13
|
const merge_compare_1 = require("../../merge-compare");
|
|
14
14
|
const list_system_1 = require("../list-system");
|
|
15
15
|
const product_1 = require("../product");
|
|
@@ -98,4 +98,28 @@ const sketchShowsNoChange = (options) => __awaiter(void 0, void 0, void 0, funct
|
|
|
98
98
|
return found.length === 0 ? true : found.join('; ');
|
|
99
99
|
});
|
|
100
100
|
exports.sketchShowsNoChange = sketchShowsNoChange;
|
|
101
|
+
/** Why each target of each live variant of the sketch fails to load, one line each; `[]` when all of them load. */
|
|
102
|
+
const variantLoadProblemsOf = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
103
|
+
var _a;
|
|
104
|
+
const { product, sketch, load } = options;
|
|
105
|
+
const live = sketch.variants.filter((variant) => !(0, sketch_1.rejectionOf)(sketch, variant));
|
|
106
|
+
const problems = [];
|
|
107
|
+
for (const variant of live) {
|
|
108
|
+
const parts = (0, overlay_1.overlaySketch)({ product, sketch, variant }).parts;
|
|
109
|
+
for (const target of sketch.targets) {
|
|
110
|
+
const file = (_a = parts.find((entry) => (0, resolve_product_1.partKeyOf)(entry) === target)) === null || _a === void 0 ? void 0 : _a.file;
|
|
111
|
+
if (!file)
|
|
112
|
+
continue;
|
|
113
|
+
const read = yield (0, list_system_1.readPartModule)({
|
|
114
|
+
part: { file },
|
|
115
|
+
product: product.name,
|
|
116
|
+
load: () => load({ file, product: product.name, sketch: { target: sketch.target, variant } }),
|
|
117
|
+
});
|
|
118
|
+
if (read.problem)
|
|
119
|
+
problems.push(`variant ${variant} ${target} does not load: ${read.problem}`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return problems;
|
|
123
|
+
});
|
|
124
|
+
exports.variantLoadProblemsOf = variantLoadProblemsOf;
|
|
101
125
|
//# sourceMappingURL=no-visible-change.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-visible-change.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/no-visible-change.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"no-visible-change.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/no-visible-change.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ const assets_1 = require("../assets");
|
|
|
7
7
|
const layers_1 = require("../layers");
|
|
8
8
|
const product_1 = require("../product");
|
|
9
9
|
const resolve_product_1 = require("../resolve-product");
|
|
10
|
+
const host_edit_1 = require("./host-edit");
|
|
10
11
|
const sketch_1 = require("./sketch");
|
|
11
12
|
const mayChange = (sketch, part) => sketch.targets.some((key) => {
|
|
12
13
|
const layer = key.split('/')[0];
|
|
@@ -28,14 +29,21 @@ const overlaySketch = (options) => {
|
|
|
28
29
|
const sketched = own.parts.map((file) => (Object.assign(Object.assign({}, file), { origin: baseKeys.has((0, resolve_product_1.partKeyOf)(file)) ? 'overridden' : 'product', source: (0, fs_1.readFileSync)(file.file, 'utf8'), cssSource: file.css && (0, fs_1.existsSync)(file.css) ? (0, fs_1.readFileSync)(file.css, 'utf8') : null })));
|
|
29
30
|
const keys = new Set(sketched.map(resolve_product_1.partKeyOf));
|
|
30
31
|
const parts = [...product.parts.filter((part) => !keys.has((0, resolve_product_1.partKeyOf)(part))), ...sketched].sort((a, b) => layers_1.LAYERS.indexOf(a.layer) - layers_1.LAYERS.indexOf(b.layer) || a.name.localeCompare(b.name));
|
|
32
|
+
const isImportOnlyHostEdit = (part) => {
|
|
33
|
+
const before = product.parts.find((candidate) => (0, resolve_product_1.partKeyOf)(candidate) === (0, resolve_product_1.partKeyOf)(part));
|
|
34
|
+
return (before !== undefined &&
|
|
35
|
+
before.cssSource === part.cssSource &&
|
|
36
|
+
(0, host_edit_1.importsAnyOf)(before.source, sketch.targets) &&
|
|
37
|
+
(0, host_edit_1.changesOnlyImports)(before.source, part.source));
|
|
38
|
+
};
|
|
31
39
|
const outside = sketched
|
|
32
|
-
.filter((part) => !mayChange(sketch, part))
|
|
40
|
+
.filter((part) => !mayChange(sketch, part) && !isImportOnlyHostEdit(part))
|
|
33
41
|
.map((part) => ({
|
|
34
42
|
rule: 'SKETCH',
|
|
35
43
|
file: part.file,
|
|
36
|
-
message: sketch.targets.length > 1
|
|
44
|
+
message: `${sketch.targets.length > 1
|
|
37
45
|
? `a sketch on ${sketch.targets.join(', ')} may change their layers and the layers below them, not ${(0, resolve_product_1.partKeyOf)(part)}`
|
|
38
|
-
: `a sketch on ${sketch.target} may change ${sketch.layer} and the layers below it, not ${(0, resolve_product_1.partKeyOf)(part)}`,
|
|
46
|
+
: `a sketch on ${sketch.target} may change ${sketch.layer} and the layers below it, not ${(0, resolve_product_1.partKeyOf)(part)}`}${(0, host_edit_1.importsAnyOf)(part.source, sketch.targets) ? ' - a host of it may change only its imports' : ''}`,
|
|
39
47
|
}));
|
|
40
48
|
return Object.assign(Object.assign({}, product), { parts, fixtures: (_a = (0, product_1.fixturesOf)(dir)) !== null && _a !== void 0 ? _a : product.fixtures, problems: [...product.problems, ...own.problems, ...outside], sketched: [...keys], sharedDir: (0, sketch_1.sharedDirOf)(sketch), variantSharedDir: (0, sketch_1.variantSharedDirOf)(sketch, variant), assetsDir: (0, path_1.resolve)(dir, assets_1.ASSETS_FOLDER) });
|
|
41
49
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/overlay.ts"],"names":[],"mappings":";;;AAAA,2BAA8C;AAC9C,+BAA+B;AAC/B,sCAA0C;AAC1C,sCAAsD;AACtD,wCAAqD;AAErD,wDAA8E;AAC9E,qCAAiF;AASjF,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,IAAsD,EAAE,EAAE,CAC3F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;IAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAU,CAAC;IAEzC,OAAO,GAAG,KAAK,IAAA,2BAAS,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,mBAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnG,CAAC,CAAC,CAAC;AAEL;;;;;;GAMG;AACI,MAAM,aAAa,GAAG,CAAC,OAI7B,EAAmB,EAAE;;IACpB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAA,qBAAW,EAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,2BAAS,CAAC,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAgB,EAAE,CAAC,iCAClD,IAAI,KACP,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAA,2BAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAChE,MAAM,EAAE,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EACvC,SAAS,EAAE,IAAI,CAAC,GAAG,IAAI,IAAA,eAAU,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,IACnF,CAAC,CAAC;IACJ,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,2BAAS,CAAC,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAA,2BAAS,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,IAAI,CAC7F,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,eAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,eAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5F,CAAC;IACF,MAAM,OAAO,GAAc,QAAQ;SAChC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"overlay.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/lib/design/system/sketch/overlay.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,11 @@ export declare const widthsOf: (source: string) => number[] | null;
|
|
|
29
29
|
* without running it. An empty list when it has none or they are not written as a literal list.
|
|
30
30
|
*/
|
|
31
31
|
export declare const interactionNamesOf: (source: string) => string[];
|
|
32
|
+
/**
|
|
33
|
+
* Whether a part file declares a control in `definePart({ controls: { … } })`, read without running it. A
|
|
34
|
+
* `controls` value that is not an object literal counts as declared, since it cannot be known.
|
|
35
|
+
*/
|
|
36
|
+
export declare const declaresControlsOf: (source: string) => boolean;
|
|
32
37
|
/**
|
|
33
38
|
* The motions a part file writes in `definePart({ motions: { … } })` with the `from` and `to` it gives as string
|
|
34
39
|
* literals, and the `motion` each literal rule in `rules` names, read without running it.
|
|
@@ -41,3 +46,34 @@ export declare const motionRefsOf: (source: string) => {
|
|
|
41
46
|
}[];
|
|
42
47
|
ruleMotions: string[];
|
|
43
48
|
};
|
|
49
|
+
/**
|
|
50
|
+
* A pair a part file writes in `definePart({ unreachable: [ … ] })`. `literal` is false when the entry or one of its
|
|
51
|
+
* fields is written as something else than a literal; a field that is missing or not a string literal is null.
|
|
52
|
+
*/
|
|
53
|
+
export type UnreachableSource = {
|
|
54
|
+
from: string | null;
|
|
55
|
+
to: string | null;
|
|
56
|
+
reason: string | null;
|
|
57
|
+
literal: boolean;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* The pairs a part file marks unreachable, read without running it: none without `unreachable`, null when it is not
|
|
61
|
+
* an array literal.
|
|
62
|
+
*/
|
|
63
|
+
export declare const unreachableOf: (source: string) => UnreachableSource[] | null;
|
|
64
|
+
/**
|
|
65
|
+
* What a part file writes in `definePart({ implements })`, read without running it: `none` without one, `unreadable`
|
|
66
|
+
* when it is not a string literal or a `{ route: '…' }` literal.
|
|
67
|
+
*/
|
|
68
|
+
export type PartLinkSource = {
|
|
69
|
+
kind: 'none';
|
|
70
|
+
} | {
|
|
71
|
+
kind: 'component';
|
|
72
|
+
path: string;
|
|
73
|
+
} | {
|
|
74
|
+
kind: 'route';
|
|
75
|
+
route: string;
|
|
76
|
+
} | {
|
|
77
|
+
kind: 'unreadable';
|
|
78
|
+
};
|
|
79
|
+
export declare const partLinkOf: (source: string) => PartLinkSource;
|
|
@@ -3,10 +3,11 @@ 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.motionRefsOf = exports.interactionNamesOf = exports.widthsOf = exports.hasBadWidths = exports.withMadeBy = exports.withNote = exports.noteOf = exports.madeByOf = exports.stateNamesOf = void 0;
|
|
6
|
+
exports.partLinkOf = exports.unreachableOf = exports.motionRefsOf = exports.declaresControlsOf = exports.interactionNamesOf = exports.widthsOf = exports.hasBadWidths = exports.withMadeBy = exports.withNote = exports.noteOf = exports.madeByOf = exports.stateNamesOf = void 0;
|
|
7
7
|
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
const ts_source_1 = require("../ts-source");
|
|
8
9
|
const definitionOf = (source) => {
|
|
9
|
-
const file =
|
|
10
|
+
const file = (0, ts_source_1.sourceFileOf)(source);
|
|
10
11
|
let found = null;
|
|
11
12
|
const visit = (node) => {
|
|
12
13
|
if (found)
|
|
@@ -154,6 +155,20 @@ const interactionNamesOf = (source) => {
|
|
|
154
155
|
return interactions.elements.flatMap((element) => typescript_1.default.isStringLiteral(element) || typescript_1.default.isNoSubstitutionTemplateLiteral(element) ? [element.text] : []);
|
|
155
156
|
};
|
|
156
157
|
exports.interactionNamesOf = interactionNamesOf;
|
|
158
|
+
/**
|
|
159
|
+
* Whether a part file declares a control in `definePart({ controls: { … } })`, read without running it. A
|
|
160
|
+
* `controls` value that is not an object literal counts as declared, since it cannot be known.
|
|
161
|
+
*/
|
|
162
|
+
const declaresControlsOf = (source) => {
|
|
163
|
+
const { definition } = definitionOf(source);
|
|
164
|
+
const property = definition === null || definition === void 0 ? void 0 : definition.properties.find((candidate) => candidate.name && nameOf(candidate.name) === 'controls');
|
|
165
|
+
if (!property)
|
|
166
|
+
return false;
|
|
167
|
+
return (!typescript_1.default.isPropertyAssignment(property) ||
|
|
168
|
+
!typescript_1.default.isObjectLiteralExpression(property.initializer) ||
|
|
169
|
+
property.initializer.properties.length > 0);
|
|
170
|
+
};
|
|
171
|
+
exports.declaresControlsOf = declaresControlsOf;
|
|
157
172
|
const literalOf = (node) => node && (typescript_1.default.isStringLiteral(node) || typescript_1.default.isNoSubstitutionTemplateLiteral(node)) ? node.text : null;
|
|
158
173
|
/**
|
|
159
174
|
* The motions a part file writes in `definePart({ motions: { … } })` with the `from` and `to` it gives as string
|
|
@@ -193,4 +208,43 @@ const motionRefsOf = (source) => {
|
|
|
193
208
|
};
|
|
194
209
|
};
|
|
195
210
|
exports.motionRefsOf = motionRefsOf;
|
|
211
|
+
const isStringLiteral = (node) => typescript_1.default.isStringLiteral(node) || typescript_1.default.isNoSubstitutionTemplateLiteral(node);
|
|
212
|
+
/**
|
|
213
|
+
* The pairs a part file marks unreachable, read without running it: none without `unreachable`, null when it is not
|
|
214
|
+
* an array literal.
|
|
215
|
+
*/
|
|
216
|
+
const unreachableOf = (source) => {
|
|
217
|
+
const { definition } = definitionOf(source);
|
|
218
|
+
const property = definition === null || definition === void 0 ? void 0 : definition.properties.find((candidate) => candidate.name && nameOf(candidate.name) === 'unreachable');
|
|
219
|
+
if (!property)
|
|
220
|
+
return [];
|
|
221
|
+
if (!typescript_1.default.isPropertyAssignment(property) || !typescript_1.default.isArrayLiteralExpression(property.initializer))
|
|
222
|
+
return null;
|
|
223
|
+
return property.initializer.elements.map((element) => {
|
|
224
|
+
if (!typescript_1.default.isObjectLiteralExpression(element))
|
|
225
|
+
return { from: null, to: null, reason: null, literal: false };
|
|
226
|
+
const fields = ['from', 'to', 'reason'].map((name) => { var _a; return (_a = propertyOf(element, name)) === null || _a === void 0 ? void 0 : _a.initializer; });
|
|
227
|
+
return {
|
|
228
|
+
from: literalOf(fields[0]),
|
|
229
|
+
to: literalOf(fields[1]),
|
|
230
|
+
reason: literalOf(fields[2]),
|
|
231
|
+
literal: element.properties.every(typescript_1.default.isPropertyAssignment) &&
|
|
232
|
+
fields.every((field) => field === undefined || isStringLiteral(field)),
|
|
233
|
+
};
|
|
234
|
+
});
|
|
235
|
+
};
|
|
236
|
+
exports.unreachableOf = unreachableOf;
|
|
237
|
+
const partLinkOf = (source) => {
|
|
238
|
+
var _a, _b;
|
|
239
|
+
const { definition } = definitionOf(source);
|
|
240
|
+
const link = definition ? (_a = propertyOf(definition, 'implements')) === null || _a === void 0 ? void 0 : _a.initializer : undefined;
|
|
241
|
+
if (!link)
|
|
242
|
+
return { kind: 'none' };
|
|
243
|
+
const path = literalOf(link);
|
|
244
|
+
if (path !== null)
|
|
245
|
+
return { kind: 'component', path };
|
|
246
|
+
const route = typescript_1.default.isObjectLiteralExpression(link) ? literalOf((_b = propertyOf(link, 'route')) === null || _b === void 0 ? void 0 : _b.initializer) : null;
|
|
247
|
+
return route === null ? { kind: 'unreadable' } : { kind: 'route', route };
|
|
248
|
+
};
|
|
249
|
+
exports.partLinkOf = partLinkOf;
|
|
196
250
|
//# sourceMappingURL=part-definition.js.map
|