@ethlete/cli 3.0.0-next.22 → 3.0.0-next.24

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 (154) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/design/contrast.ts +49 -0
  3. package/design/define-call.ts +5 -8
  4. package/design/define-part.ts +63 -1
  5. package/design/morph.ts +67 -0
  6. package/design/motion-runtime.ts +200 -0
  7. package/design/web/env.d.ts +6 -2
  8. package/design/web/frame.ts +39 -1
  9. package/package.json +2 -1
  10. package/playwright/failure-reporter.d.ts +2 -0
  11. package/playwright/failure-reporter.js +1 -0
  12. package/src/lib/design/changed-parts.d.ts +4 -4
  13. package/src/lib/design/changed-parts.js +10 -6
  14. package/src/lib/design/changed-parts.js.map +1 -1
  15. package/src/lib/design/check.js +1 -1
  16. package/src/lib/design/check.js.map +1 -1
  17. package/src/lib/design/contact-sheet.d.ts +39 -8
  18. package/src/lib/design/contact-sheet.js +131 -21
  19. package/src/lib/design/contact-sheet.js.map +1 -1
  20. package/src/lib/design/design-command.js +22 -2
  21. package/src/lib/design/design-command.js.map +1 -1
  22. package/src/lib/design/generated-stylesheets.d.ts +15 -0
  23. package/src/lib/design/generated-stylesheets.js +52 -0
  24. package/src/lib/design/generated-stylesheets.js.map +1 -0
  25. package/src/lib/design/inbox-command.d.ts +1 -0
  26. package/src/lib/design/inbox-command.js +15 -0
  27. package/src/lib/design/inbox-command.js.map +1 -1
  28. package/src/lib/design/merge-compare.d.ts +10 -0
  29. package/src/lib/design/merge-compare.js +17 -4
  30. package/src/lib/design/merge-compare.js.map +1 -1
  31. package/src/lib/design/paths.d.ts +11 -0
  32. package/src/lib/design/paths.js.map +1 -1
  33. package/src/lib/design/render.d.ts +3 -1
  34. package/src/lib/design/render.js +17 -1
  35. package/src/lib/design/render.js.map +1 -1
  36. package/src/lib/design/serve.js +317 -254
  37. package/src/lib/design/serve.js.map +1 -1
  38. package/src/lib/design/shot-command.d.ts +25 -0
  39. package/src/lib/design/shot-command.js +162 -62
  40. package/src/lib/design/shot-command.js.map +1 -1
  41. package/src/lib/design/shot.d.ts +14 -4
  42. package/src/lib/design/shot.js +71 -50
  43. package/src/lib/design/shot.js.map +1 -1
  44. package/src/lib/design/sketch-command.d.ts +7 -1
  45. package/src/lib/design/sketch-command.js +108 -31
  46. package/src/lib/design/sketch-command.js.map +1 -1
  47. package/src/lib/design/sketch-stylesheets.d.ts +7 -0
  48. package/src/lib/design/sketch-stylesheets.js +63 -0
  49. package/src/lib/design/sketch-stylesheets.js.map +1 -0
  50. package/src/lib/design/studio-api.d.ts +20 -7
  51. package/src/lib/design/studio-api.js +99 -28
  52. package/src/lib/design/studio-api.js.map +1 -1
  53. package/src/lib/design/system/check-system.js +8 -0
  54. package/src/lib/design/system/check-system.js.map +1 -1
  55. package/src/lib/design/system/comments/comment.d.ts +18 -1
  56. package/src/lib/design/system/comments/comment.js +35 -1
  57. package/src/lib/design/system/comments/comment.js.map +1 -1
  58. package/src/lib/design/system/comments/complete.js +4 -2
  59. package/src/lib/design/system/comments/complete.js.map +1 -1
  60. package/src/lib/design/system/complete-command.d.ts +9 -0
  61. package/src/lib/design/system/complete-command.js +64 -0
  62. package/src/lib/design/system/complete-command.js.map +1 -0
  63. package/src/lib/design/system/complete.d.ts +73 -0
  64. package/src/lib/design/system/complete.js +655 -0
  65. package/src/lib/design/system/complete.js.map +1 -0
  66. package/src/lib/design/system/contrast-check.d.ts +26 -0
  67. package/src/lib/design/system/contrast-check.js +153 -0
  68. package/src/lib/design/system/contrast-check.js.map +1 -0
  69. package/src/lib/design/system/imports.d.ts +28 -3
  70. package/src/lib/design/system/imports.js +84 -7
  71. package/src/lib/design/system/imports.js.map +1 -1
  72. package/src/lib/design/system/list-system.d.ts +11 -0
  73. package/src/lib/design/system/list-system.js +17 -1
  74. package/src/lib/design/system/list-system.js.map +1 -1
  75. package/src/lib/design/system/product-stylesheets.d.ts +3 -0
  76. package/src/lib/design/system/product-stylesheets.js +40 -0
  77. package/src/lib/design/system/product-stylesheets.js.map +1 -0
  78. package/src/lib/design/system/render-check.js +11 -3
  79. package/src/lib/design/system/render-check.js.map +1 -1
  80. package/src/lib/design/system/rules/canonical-class.d.ts +9 -0
  81. package/src/lib/design/system/rules/canonical-class.js +132 -0
  82. package/src/lib/design/system/rules/canonical-class.js.map +1 -0
  83. package/src/lib/design/system/rules/inline-svg.d.ts +7 -0
  84. package/src/lib/design/system/rules/inline-svg.js +28 -0
  85. package/src/lib/design/system/rules/inline-svg.js.map +1 -0
  86. package/src/lib/design/system/rules/motion.d.ts +4 -0
  87. package/src/lib/design/system/rules/motion.js +46 -2
  88. package/src/lib/design/system/rules/motion.js.map +1 -1
  89. package/src/lib/design/system/rules/utility-css.d.ts +11 -0
  90. package/src/lib/design/system/rules/utility-css.js +290 -0
  91. package/src/lib/design/system/rules/utility-css.js.map +1 -0
  92. package/src/lib/design/system/sketch/baseline.d.ts +3 -2
  93. package/src/lib/design/system/sketch/baseline.js +10 -4
  94. package/src/lib/design/system/sketch/baseline.js.map +1 -1
  95. package/src/lib/design/system/sketch/merge-preview.d.ts +4 -2
  96. package/src/lib/design/system/sketch/merge-preview.js +20 -3
  97. package/src/lib/design/system/sketch/merge-preview.js.map +1 -1
  98. package/src/lib/design/system/sketch/merge-shared.d.ts +42 -6
  99. package/src/lib/design/system/sketch/merge-shared.js +122 -24
  100. package/src/lib/design/system/sketch/merge-shared.js.map +1 -1
  101. package/src/lib/design/system/sketch/merge.d.ts +3 -3
  102. package/src/lib/design/system/sketch/merge.js +57 -29
  103. package/src/lib/design/system/sketch/merge.js.map +1 -1
  104. package/src/lib/design/system/sketch/merged-parts.d.ts +7 -0
  105. package/src/lib/design/system/sketch/merged-parts.js +13 -1
  106. package/src/lib/design/system/sketch/merged-parts.js.map +1 -1
  107. package/src/lib/design/system/sketch/no-visible-change.d.ts +4 -3
  108. package/src/lib/design/system/sketch/no-visible-change.js +50 -19
  109. package/src/lib/design/system/sketch/no-visible-change.js.map +1 -1
  110. package/src/lib/design/system/sketch/overlay.js +7 -2
  111. package/src/lib/design/system/sketch/overlay.js.map +1 -1
  112. package/src/lib/design/system/sketch/part-definition.d.ts +12 -0
  113. package/src/lib/design/system/sketch/part-definition.js +40 -1
  114. package/src/lib/design/system/sketch/part-definition.js.map +1 -1
  115. package/src/lib/design/system/sketch/sketch.d.ts +63 -12
  116. package/src/lib/design/system/sketch/sketch.js +165 -36
  117. package/src/lib/design/system/sketch/sketch.js.map +1 -1
  118. package/src/lib/design/system/sketch/unchanged-states.d.ts +11 -5
  119. package/src/lib/design/system/sketch/unchanged-states.js +39 -25
  120. package/src/lib/design/system/sketch/unchanged-states.js.map +1 -1
  121. package/src/lib/design/system/system-modules.d.ts +5 -1
  122. package/src/lib/design/system/system-modules.js +26 -8
  123. package/src/lib/design/system/system-modules.js.map +1 -1
  124. package/src/lib/design/system/system-tsconfig.js +2 -1
  125. package/src/lib/design/system/system-tsconfig.js.map +1 -1
  126. package/src/lib/design/thumb.d.ts +6 -2
  127. package/src/lib/design/thumb.js +36 -15
  128. package/src/lib/design/thumb.js.map +1 -1
  129. package/src/lib/design/typecheck.d.ts +2 -0
  130. package/src/lib/design/typecheck.js +19 -2
  131. package/src/lib/design/typecheck.js.map +1 -1
  132. package/src/lib/design/variant-diff.d.ts +24 -6
  133. package/src/lib/design/variant-diff.js +26 -10
  134. package/src/lib/design/variant-diff.js.map +1 -1
  135. package/src/lib/design/warm-pages.d.ts +20 -0
  136. package/src/lib/design/warm-pages.js +78 -0
  137. package/src/lib/design/warm-pages.js.map +1 -0
  138. package/src/lib/playwright/failure-reporter.d.ts +35 -0
  139. package/src/lib/playwright/failure-reporter.js +66 -0
  140. package/src/lib/playwright/failure-reporter.js.map +1 -0
  141. package/src/lib/update/commits.d.ts +9 -0
  142. package/src/lib/update/commits.js +15 -1
  143. package/src/lib/update/commits.js.map +1 -1
  144. package/src/lib/update/migration-manifest.d.ts +6 -0
  145. package/src/lib/update/migration-manifest.js +7 -0
  146. package/src/lib/update/migration-manifest.js.map +1 -1
  147. package/src/lib/update/migrations-command.js +1 -0
  148. package/src/lib/update/migrations-command.js.map +1 -1
  149. package/src/lib/update/run-migrations.d.ts +22 -0
  150. package/src/lib/update/run-migrations.js +60 -1
  151. package/src/lib/update/run-migrations.js.map +1 -1
  152. package/src/lib/update/update-command.d.ts +10 -0
  153. package/src/lib/update/update-command.js +28 -2
  154. package/src/lib/update/update-command.js.map +1 -1
@@ -20,7 +20,7 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  return t;
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.designSketch = exports.sketchFlagHelpOf = exports.SKETCH_USAGE = void 0;
23
+ exports.designSketch = exports.verdictLinesOf = exports.sketchFlagHelpOf = exports.SKETCH_USAGE = void 0;
24
24
  const path_1 = require("path");
25
25
  const assets_1 = require("./system/assets");
26
26
  const comment_1 = require("./system/comments/comment");
@@ -36,7 +36,7 @@ const render_check_1 = require("./system/render-check");
36
36
  const merge_preview_1 = require("./system/sketch/merge-preview");
37
37
  const sketch_1 = require("./system/sketch/sketch");
38
38
  exports.SKETCH_USAGE = [
39
- 'sketch new <layer>/<name> --variants a,b --by <model id> [--like <layer>/<name>[:<variant>]] [--round <title>] [--note <text>] [--variant-note <variant>=<text>]… [--product <name>]',
39
+ 'sketch new <layer>/<name> [<layer>/<name>…] --variants a,b --by <model id> [--like <layer>/<name>[:<variant>]] [--round <title>] [--note <text>] [--variant-note <variant>=<text>]… [--product <name>]',
40
40
  'sketch variant <layer>/<name> <variant>[,<variant>…] --from <variant> --by <model id> [--round <title> --note <why the running round lost> [--round-note <what the new round shows>]] [--product <name>]',
41
41
  'sketch round <layer>/<name> <round> [--title <text>] [--note <text>] [--drops <state,state>] --by <model id> [--product <name>]',
42
42
  'sketch list [--product <name>] [--json]',
@@ -45,8 +45,10 @@ exports.SKETCH_USAGE = [
45
45
  'sketch check [<layer>/<name>] [--fix] [--product <name>]',
46
46
  'sketch preview <layer>/<name> <variant> [--product <name>] [--json]',
47
47
  'sketch rebase <layer>/<name> --by <model id> [--product <name>]',
48
- 'sketch merge <layer>/<name> [--note <reason>] --by <model id> [--product <name>]',
48
+ 'sketch merge <layer>/<name> [--note <reason>] [--variant <key> --allowed-by <plan ref>] --by <model id> [--product <name>]',
49
49
  'sketch discard <layer>/<name> --by <model id> [--product <name>]',
50
+ 'sketch reject <layer>/<name> --variant <key> [--reason <text>] --by <model id | designer> [--product <name>]',
51
+ 'sketch reopen <layer>/<name> --variant <key> [--reason <text>] --by <model id | designer> [--product <name>]',
50
52
  ];
51
53
  const FLAG_HELP = {
52
54
  '--variants': 'the variant folders to open, a comma list: a,b,c',
@@ -58,12 +60,15 @@ const FLAG_HELP = {
58
60
  '--from': 'the variant to copy',
59
61
  '--title': 'the new title of the round',
60
62
  '--drops': 'the states the round drops on purpose, a comma list',
61
- '--variant': 'the variant the report is about',
63
+ '--variant': 'the variant the command is about; on merge, the only live variant of a sketch with no pick',
64
+ '--allowed-by': 'the plan entry that lets the merge go without a pick in Studio; logged in accepted.json, needs --variant',
65
+ '--reason': 'why; on reject of a variant that is rejected already it sets the reason of that rejection; stored with who wrote it',
62
66
  '--done': 'end the live report of the variant',
63
67
  '--product': 'the product; needed only when config.json declares more than one and no other product has the sketch',
64
68
  '--json': 'print JSON',
65
69
  '--fix': "write the variants in the checkout's Prettier format first",
66
70
  };
71
+ const VERDICT_BY_HELP = "a model id records the verdict as the agent's; --by designer records it as the designer's - only when the designer said it at this terminal";
67
72
  const NOTE_HELP = {
68
73
  new: 'what the first round shows',
69
74
  variant: 'why the running round lost; needed with --round',
@@ -73,11 +78,13 @@ const NOTE_HELP = {
73
78
  /** One line per flag the usage line names, for `sketch <command> --help`. */
74
79
  const sketchFlagHelpOf = (usage) => {
75
80
  var _a, _b;
76
- const help = Object.assign(Object.assign({}, FLAG_HELP), { '--note': NOTE_HELP[(_a = usage.split(' ')[1]) !== null && _a !== void 0 ? _a : ''] });
81
+ const command = (_a = usage.split(' ')[1]) !== null && _a !== void 0 ? _a : '';
82
+ const help = Object.assign(Object.assign(Object.assign({}, FLAG_HELP), { '--note': NOTE_HELP[command] }), (VERDICTS.has(command) ? { '--by': VERDICT_BY_HELP } : {}));
77
83
  return [...new Set((_b = usage.match(/--[a-z-]+/gu)) !== null && _b !== void 0 ? _b : [])].flatMap((flag) => help[flag] === undefined ? [] : [` ${flag.padEnd(16)}${help[flag]}`]);
78
84
  };
79
85
  exports.sketchFlagHelpOf = sketchFlagHelpOf;
80
- const WRITES = new Set(['new', 'variant', 'round', 'report', 'ready', 'rebase', 'merge', 'discard']);
86
+ const VERDICTS = new Set(['reject', 'reopen']);
87
+ const WRITES = new Set(['new', 'variant', 'round', 'report', 'ready', 'rebase', 'merge', 'discard', ...VERDICTS]);
81
88
  const fail = (message) => {
82
89
  console.error(message);
83
90
  return 1;
@@ -127,28 +134,32 @@ const withSketch = (context, run) => {
127
134
  };
128
135
  const partFileOf = (options) => {
129
136
  var _a;
130
- const { root, sketch, variant } = options;
131
- const name = (_a = sketch.target.split('/').pop()) !== null && _a !== void 0 ? _a : '';
132
- return (0, path_1.relative)(root, (0, path_1.resolve)(sketch.dir, variant, sketch.target, `${name}.ts`));
137
+ const { root, sketch, variant, part } = options;
138
+ const name = (_a = part.split('/').pop()) !== null && _a !== void 0 ? _a : '';
139
+ return (0, path_1.relative)(root, (0, path_1.resolve)(sketch.dir, variant, part, `${name}.ts`));
133
140
  };
134
141
  const variantLineOf = (options) => {
135
142
  const { root, sketch, variant } = options;
136
- return ` ${variant}: ${partFileOf(options)} assets: ${(0, path_1.relative)(root, (0, path_1.resolve)(sketch.dir, variant, assets_1.ASSETS_FOLDER))}/`;
143
+ const files = sketch.targets.map((part) => partFileOf(Object.assign(Object.assign({}, options), { part }))).join(', ');
144
+ return ` ${variant}: ${files} assets: ${(0, path_1.relative)(root, (0, path_1.resolve)(sketch.dir, variant, assets_1.ASSETS_FOLDER))}/`;
137
145
  };
138
146
  const created = (context) => {
139
- var _a, _b, _c, _d;
147
+ var _a, _b, _c, _d, _e;
140
148
  const { target, config, args } = context;
141
149
  const product = (0, cli_args_1.oneProductOf)({ target, config, asked: args.values['--product'] });
142
150
  if (typeof product === 'string')
143
151
  return fail(product);
144
- const parsed = (0, sketch_1.parseTarget)(args.positional[0]);
145
- if (typeof parsed === 'string')
146
- return fail(parsed);
147
- const variants = ((_a = args.values['--variants']) !== null && _a !== void 0 ? _a : '').split(',').filter((variant) => variant !== '');
148
- const notes = variantNotesOf((_b = args.repeated['--variant-note']) !== null && _b !== void 0 ? _b : [], variants);
152
+ const [parsed, ...others] = (args.positional.length > 0 ? args.positional : [undefined]).map(sketch_1.parseTarget);
153
+ const unknown = [parsed, ...others].find((entry) => typeof entry === 'string');
154
+ if (typeof unknown === 'string')
155
+ return fail(unknown);
156
+ if (parsed === undefined || typeof parsed === 'string')
157
+ return fail((_a = exports.SKETCH_USAGE[0]) !== null && _a !== void 0 ? _a : '');
158
+ const variants = ((_b = args.values['--variants']) !== null && _b !== void 0 ? _b : '').split(',').filter((variant) => variant !== '');
159
+ const notes = variantNotesOf((_c = args.repeated['--variant-note']) !== null && _c !== void 0 ? _c : [], variants);
149
160
  if (typeof notes === 'string')
150
161
  return fail(notes);
151
- if (args.values['--round'] !== undefined && ((_c = args.values['--note']) !== null && _c !== void 0 ? _c : '').trim() === '')
162
+ if (args.values['--round'] !== undefined && ((_d = args.values['--note']) !== null && _d !== void 0 ? _d : '').trim() === '')
152
163
  return fail(`--round needs --note "<what the round shows>" - sketch ready refuses a round without a note`);
153
164
  const asked = args.values['--like'];
154
165
  const like = asked === undefined ? undefined : (0, sketch_1.sketchSourceOf)({ product, like: asked });
@@ -157,17 +168,18 @@ const created = (context) => {
157
168
  const sketch = (0, sketch_1.createSketch)({
158
169
  product,
159
170
  sketch: parsed,
171
+ others: others.filter((entry) => typeof entry !== 'string'),
160
172
  variants,
161
173
  roundTitle: args.values['--round'],
162
174
  roundNote: args.values['--note'],
163
- author: (_d = (0, cli_args_1.authorOf)(args)) !== null && _d !== void 0 ? _d : undefined,
175
+ author: (_e = (0, cli_args_1.authorOf)(args)) !== null && _e !== void 0 ? _e : undefined,
164
176
  like,
165
177
  variantNotes: notes,
166
178
  });
167
179
  if (typeof sketch === 'string')
168
180
  return fail(sketch);
169
181
  (0, check_format_1.formatSketch)({ target, sketch, variants: sketch.variants });
170
- console.log(`${sketch.target} in progress: ${(0, path_1.relative)(target, sketch.dir)} with ${sketch.variants.join(', ')}`);
182
+ console.log(`${sketch.targets.join(', ')} in progress: ${(0, path_1.relative)(target, sketch.dir)} with ${sketch.variants.join(', ')}`);
171
183
  for (const variant of sketch.variants)
172
184
  console.log(variantLineOf({ root: target, sketch, variant }));
173
185
  const shared = (0, sketch_1.sourceFilesIn)((0, sketch_1.sharedDirOf)(sketch));
@@ -297,7 +309,8 @@ const listed = (context) => {
297
309
  ? `, picked ${sketch.decision.variant}`
298
310
  : ', discard asked'
299
311
  : '';
300
- console.log(`${sketch.product} ${sketch.target} ${sketch.status} ${sketch.variants.join(', ')}${decided}`);
312
+ const rejected = sketch.variants.filter((variant) => (0, sketch_1.rejectionOf)(sketch, variant));
313
+ console.log(`${sketch.product} ${sketch.target} ${sketch.status} ${sketch.variants.join(', ')}${decided}${rejected.length > 0 ? `, rejected ${rejected.join(', ')}` : ''}`);
301
314
  for (const round of sketch.rounds) {
302
315
  const variants = sketch.variants.filter((variant) => { var _a; return ((_a = sketch.variantInfo[variant]) === null || _a === void 0 ? void 0 : _a.round) === round.key; });
303
316
  console.log(` ${round.key} ${round.title} ${variants.join(', ')}${round.note === '' ? '' : ` - ${round.note}`}${round.lost ? ` - lost: ${round.lost}` : ''}`);
@@ -360,7 +373,12 @@ const autoMerged = (options) => __awaiter(void 0, void 0, void 0, function* () {
360
373
  const { context, product, sketch, again } = options;
361
374
  if (!again)
362
375
  console.log(`${sketch.target} is ready`);
363
- if (!product.parts.some((part) => (0, resolve_product_1.partKeyOf)(part) === sketch.target)) {
376
+ for (const variant of sketch.variants.filter((candidate) => !(0, sketch_1.rejectionOf)(sketch, candidate))) {
377
+ const { shared } = (0, merge_preview_1.mergePreviewOf)({ product, sketch, variant });
378
+ if (shared.length > 0)
379
+ console.log(`variant ${variant}: a shared/ edit reaches ${shared.join(', ')}`);
380
+ }
381
+ if (!sketch.targets.every((key) => product.parts.some((part) => (0, resolve_product_1.partKeyOf)(part) === key))) {
364
382
  console.log('auto-merge skipped: new part, the user merges');
365
383
  return again ? fail(`${sketch.target} is ready, not in progress`) : 0;
366
384
  }
@@ -370,7 +388,7 @@ const autoMerged = (options) => __awaiter(void 0, void 0, void 0, function* () {
370
388
  return again ? fail(`${sketch.target} is ready, not in progress`) : 0;
371
389
  }
372
390
  const author = (_a = (0, cli_args_1.authorOf)(context.args)) !== null && _a !== void 0 ? _a : undefined;
373
- const variant = (_b = sketch.variants[0]) !== null && _b !== void 0 ? _b : '';
391
+ const variant = (_b = sketch.variants.find((candidate) => !(0, sketch_1.rejectionOf)(sketch, candidate))) !== null && _b !== void 0 ? _b : '';
374
392
  const decided = (0, sketch_1.decideSketch)({ sketch, decision: { kind: 'pick', variant } });
375
393
  if (typeof decided === 'string')
376
394
  return fail(decided);
@@ -379,8 +397,9 @@ const autoMerged = (options) => __awaiter(void 0, void 0, void 0, function* () {
379
397
  console.warn(`${sketch.target} shows no visible change but did not merge: ${result.reason}`);
380
398
  return 0;
381
399
  }
382
- (0, merged_parts_1.recordAutoMerge)({ product, part: sketch.target, by: author !== null && author !== void 0 ? author : 'user' });
383
- console.log(`No visible change in any state: merged ${sketch.target} automatically.`);
400
+ for (const part of sketch.targets)
401
+ (0, merged_parts_1.recordAutoMerge)({ product, part, by: author !== null && author !== void 0 ? author : 'user' });
402
+ console.log(`No visible change in any state: merged ${sketch.targets.join(', ')} automatically.`);
384
403
  return 0;
385
404
  });
386
405
  const markedReady = (context, { product, sketch }) => {
@@ -431,7 +450,7 @@ const checked = (context) => __awaiter(void 0, void 0, void 0, function* () {
431
450
  ...problems,
432
451
  ...(0, check_format_1.formatProblemsOf)({ target, sketch, variant }),
433
452
  ...(typed.kind === 'failed' ? [{ rule: 'TYPE-ERROR', file: sketch.dir, message: `\n${typed.output}` }] : []),
434
- ...(typed.kind === 'unavailable' ? [{ rule: 'TYPE-ERROR', file: sketch.dir, message: typed.message }] : []),
453
+ ...(typed.kind === 'unavailable' ? [{ rule: 'NO-TYPE-CHECKER', file: sketch.dir, message: typed.message }] : []),
435
454
  ];
436
455
  for (const problem of all) {
437
456
  console.error(`${sketch.target} ${variant}: ${problem.rule} ${(0, path_1.relative)(target, problem.file)}: ${problem.message}`);
@@ -489,26 +508,44 @@ const previewed = (context) => withSketch(context, ({ product, sketch }) => {
489
508
  }
490
509
  else {
491
510
  console.log(`changes: ${preview.changed.join(', ')}`);
511
+ if (preview.shared.length > 0)
512
+ console.log(`a shared/ edit reaches: ${preview.shared.join(', ')}`);
492
513
  console.log(`shows: ${preview.affected.join(', ') || 'no other element or page'}`);
493
514
  }
494
515
  return 0;
495
516
  });
517
+ const allowedMergeOf = (options) => {
518
+ const { sketch, variant } = options;
519
+ const live = sketch.variants.filter((candidate) => !(0, sketch_1.rejectionOf)(sketch, candidate));
520
+ if (live.length !== 1 || live[0] !== variant)
521
+ return `${sketch.target} has ${live.length} live variants (${live.join(', ') || 'none'}), not only "${variant}" - the user picks in Studio`;
522
+ return (0, sketch_1.decideSketch)({ sketch, decision: { kind: 'pick', variant } });
523
+ };
496
524
  const merged = (context) => withSketch(context, ({ product, sketch }) => {
497
- var _a, _b;
498
- const note = context.args.values['--note'];
525
+ var _a, _b, _c, _d;
526
+ const { '--note': note, '--variant': flagVariant, '--allowed-by': planRef } = context.args.values;
499
527
  if (context.args.positional.length > 1)
500
528
  return fail(`usage: sketch merge <layer>/<name> [--note <reason>] - it merges the variant the user picked`);
529
+ if ((flagVariant === undefined) !== (planRef === undefined))
530
+ return fail('--variant and --allowed-by go together: name the only live variant and the plan that allows the merge');
531
+ const allowed = flagVariant !== undefined && planRef !== undefined && ((_a = sketch.decision) === null || _a === void 0 ? void 0 : _a.kind) !== 'pick';
532
+ const decidedSketch = allowed ? allowedMergeOf({ sketch, variant: flagVariant }) : sketch;
533
+ if (typeof decidedSketch === 'string')
534
+ return fail(decidedSketch);
501
535
  const result = (0, merge_1.mergeSketch)({
502
536
  target: context.target,
503
537
  config: context.config,
504
538
  product,
505
- sketch,
539
+ sketch: decidedSketch,
506
540
  note,
507
- author: (_a = (0, cli_args_1.authorOf)(context.args)) !== null && _a !== void 0 ? _a : undefined,
541
+ author: (_b = (0, cli_args_1.authorOf)(context.args)) !== null && _b !== void 0 ? _b : undefined,
508
542
  });
509
543
  if (!Array.isArray(result))
510
544
  return fail(result.reason);
511
- const variant = ((_b = sketch.decision) === null || _b === void 0 ? void 0 : _b.kind) === 'pick' ? sketch.decision.variant : '';
545
+ if (allowed)
546
+ for (const part of sketch.targets)
547
+ (0, merged_parts_1.recordAllowedMerge)({ product, part, by: (_c = (0, cli_args_1.authorOf)(context.args)) !== null && _c !== void 0 ? _c : 'user', planRef: planRef.trim() });
548
+ const variant = ((_d = decidedSketch.decision) === null || _d === void 0 ? void 0 : _d.kind) === 'pick' ? decidedSketch.decision.variant : '';
512
549
  console.log(`merged ${sketch.target} variant ${variant} into ${product.name}: ${result.join(', ')}`);
513
550
  return 0;
514
551
  });
@@ -520,6 +557,39 @@ const discarded = (context) => withSketch(context, ({ sketch }) => {
520
557
  console.log(`discarded the sketch on ${sketch.target}`);
521
558
  return 0;
522
559
  });
560
+ const verdictOriginOf = (by, of) => of && of !== by ? ` (reason by the ${of})` : '';
561
+ /** The verdicts a variant had, oldest first, and whether it is rejected now. */
562
+ const verdictLinesOf = (sketch, variant) => {
563
+ var _a, _b;
564
+ const history = (_b = (_a = sketch.rejections) === null || _a === void 0 ? void 0 : _a[variant]) !== null && _b !== void 0 ? _b : [];
565
+ const lines = history.flatMap((rejection) => [
566
+ ` rejected by the ${rejection.by} at ${rejection.decidedAt}${verdictOriginOf(rejection.by, rejection.reasonBy)}${rejection.reason ? `: ${rejection.reason}` : ''}`,
567
+ ...(rejection.reopened
568
+ ? [
569
+ ` reopened by the ${rejection.reopened.by} at ${rejection.reopened.decidedAt}${rejection.reopened.reason ? `: ${rejection.reopened.reason}` : ''}`,
570
+ ]
571
+ : []),
572
+ ]);
573
+ return [`${sketch.target} variant ${variant}: ${(0, sketch_1.rejectionOf)(sketch, variant) ? 'rejected' : 'live'}`, ...lines];
574
+ };
575
+ exports.verdictLinesOf = verdictLinesOf;
576
+ const judged = (kind) => (context) => withSketch(context, ({ sketch }) => {
577
+ var _a;
578
+ const { positional, values } = context.args;
579
+ const variant = values['--variant'];
580
+ const reason = ((_a = values['--reason']) === null || _a === void 0 ? void 0 : _a.trim()) || undefined;
581
+ const by = (0, cli_args_1.authorOf)(context.args) === 'designer' ? 'designer' : 'agent';
582
+ if (positional.length !== 1 || !variant)
583
+ return fail(`usage: sketch ${kind} <layer>/<name> --variant <key> [--reason <text>] --by <model id | designer> [--product <name>]`);
584
+ const decision = kind === 'reject' && reason && (0, sketch_1.rejectionOf)(sketch, variant)
585
+ ? { kind: 'reason', variant, reason, by }
586
+ : Object.assign(Object.assign({ kind, variant }, (reason ? { reason } : {})), { by });
587
+ const decided = (0, sketch_1.decideSketch)({ sketch, decision });
588
+ if (typeof decided === 'string')
589
+ return fail(decided);
590
+ (0, exports.verdictLinesOf)(decided, variant).forEach((line) => console.log(line));
591
+ return 0;
592
+ });
523
593
  const COMMANDS = {
524
594
  new: created,
525
595
  variant: varied,
@@ -532,8 +602,13 @@ const COMMANDS = {
532
602
  rebase: rebased,
533
603
  merge: merged,
534
604
  discard: discarded,
605
+ reject: judged('reject'),
606
+ reopen: judged('reopen'),
535
607
  };
536
- /** `et design sketch <command> …` opens, adds variants to, reports on, readies, checks, previews, rebases, merges and discards sketches. */
608
+ /**
609
+ * `et design sketch <command> …` opens, adds variants to, reports on, readies, checks, previews, rebases, merges and
610
+ * discards sketches, and rejects and reopens their variants.
611
+ */
537
612
  const designSketch = (options) => {
538
613
  const { target, argv, invocation } = options;
539
614
  const [command = '', ...rest] = argv;
@@ -551,6 +626,8 @@ const designSketch = (options) => {
551
626
  '--like',
552
627
  '--drops',
553
628
  '--variant-note',
629
+ '--reason',
630
+ '--allowed-by',
554
631
  ]);
555
632
  const unauthored = typeof args !== 'string' && WRITES.has(command) && (0, cli_args_1.authorOf)(args) === null;
556
633
  if (!run || typeof args === 'string' || unauthored) {
@@ -1 +1 @@
1
- {"version":3,"file":"sketch-command.js","sourceRoot":"","sources":["../../../../../libs/cli/src/lib/design/sketch-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sketch-command.js","sourceRoot":"","sources":["../../../../../libs/cli/src/lib/design/sketch-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Plugin } from 'postcss';
2
+ /**
3
+ * A PostCSS plugin that swaps the rules each stylesheet inlined through an `@import` of a file `replacementsOf`
4
+ * maps, called with the stylesheet's module id, for the rules of the file it maps to. It must run after the
5
+ * `@import`s are inlined and before Tailwind compiles the sheet.
6
+ */
7
+ export declare const sketchStylesheetsPlugin: (replacementsOf: (id: string) => Map<string, string> | Promise<Map<string, string>>) => Plugin;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.sketchStylesheetsPlugin = void 0;
13
+ const fs_1 = require("fs");
14
+ const path_1 = require("path");
15
+ const PLUGIN = 'ethlete-sketch-stylesheets';
16
+ /**
17
+ * A PostCSS plugin that swaps the rules each stylesheet inlined through an `@import` of a file `replacementsOf`
18
+ * maps, called with the stylesheet's module id, for the rules of the file it maps to. It must run after the
19
+ * `@import`s are inlined and before Tailwind compiles the sheet.
20
+ */
21
+ const sketchStylesheetsPlugin = (replacementsOf) => ({
22
+ postcssPlugin: PLUGIN,
23
+ Once: (root_1, _a) => __awaiter(void 0, [root_1, _a], void 0, function* (root, { result, postcss }) {
24
+ var _b, _c;
25
+ const from = result.opts.from;
26
+ const replacements = from ? yield replacementsOf(from) : new Map();
27
+ if (!from || replacements.size === 0)
28
+ return;
29
+ const fileOf = (node) => {
30
+ var _a;
31
+ const file = (_a = node.source) === null || _a === void 0 ? void 0 : _a.input.file;
32
+ return file ? (0, path_1.resolve)(file) : null;
33
+ };
34
+ // postcss-import wraps a file imported with `layer()`, `supports()` or a media query in at-rules it builds
35
+ // with that file's source; only a parsed at-rule has `raws.afterName`.
36
+ const isWrapper = (node) => node.type === 'atrule' && node.raws.afterName === undefined;
37
+ const runs = new Map();
38
+ const parents = new Map();
39
+ root.walk((node) => {
40
+ var _a, _b;
41
+ const file = fileOf(node);
42
+ if (!file || !replacements.has(file) || isWrapper(node) || !node.parent)
43
+ return;
44
+ if (fileOf(node.parent) === file && !isWrapper(node.parent))
45
+ return;
46
+ const parent = node.parent;
47
+ const id = (_a = parents.get(parent)) !== null && _a !== void 0 ? _a : parents.size;
48
+ parents.set(parent, id);
49
+ const run = (_b = runs.get(`${id} ${file}`)) !== null && _b !== void 0 ? _b : { file, nodes: [] };
50
+ run.nodes.push(node);
51
+ runs.set(`${id} ${file}`, run);
52
+ });
53
+ for (const { file, nodes } of runs.values()) {
54
+ const replacement = (_b = replacements.get(file)) !== null && _b !== void 0 ? _b : file;
55
+ const parsed = postcss.parse((0, fs_1.readFileSync)(replacement, 'utf8'), { from: replacement });
56
+ (_c = nodes[0]) === null || _c === void 0 ? void 0 : _c.before(parsed.nodes);
57
+ nodes.forEach((node) => node.remove());
58
+ result.messages.push({ type: 'dependency', plugin: PLUGIN, file: replacement, parent: from });
59
+ }
60
+ }),
61
+ });
62
+ exports.sketchStylesheetsPlugin = sketchStylesheetsPlugin;
63
+ //# sourceMappingURL=sketch-stylesheets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sketch-stylesheets.js","sourceRoot":"","sources":["../../../../../libs/cli/src/lib/design/sketch-stylesheets.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare const SKETCHES_PATH = "/__design/sketches";
6
6
  export declare const SKETCH_PREVIEW_PATH = "/__design/sketch-preview";
7
7
  export declare const SKETCH_COMPARE_PATH = "/__design/sketch-compare";
8
8
  export declare const SKETCH_DIFF_PATH = "/__design/sketch-diff";
9
+ export declare const SKETCH_CROP_PATH = "/__design/sketch-crop";
9
10
  export declare const SKETCH_DECISION_PATH = "/__design/sketch-decision";
10
11
  export declare const SKETCH_MERGE_PATH = "/__design/sketch-merge";
11
12
  export declare const SKETCH_DISCARD_PATH = "/__design/sketch-discard";
@@ -42,10 +43,13 @@ type Asked = {
42
43
  boxOf?: BoxOf;
43
44
  };
44
45
  /**
45
- * The open sketches of `?product=`, each with its variants, status, decision, the rule problems of every
46
- * variant, the states, widths and interactions of the target as each variant draws it (`targets`), with the states it
47
- * draws the same as the product now (`unchanged`), and the live report
48
- * of the agent (`report`, `null` when none runs).
46
+ * The open sketches of `?product=`, each with its target parts (`targetParts`, the first one first), variants, status,
47
+ * decision, the rule problems of every variant, the states, widths and interactions of each target part as each variant
48
+ * draws it (`targets`, one entry per part and variant, tagged with `part`, the first part's entries first), with the states it
49
+ * draws the same as the product now (`unchanged`), the states it adds and drops and its part note when that differs
50
+ * from the product's (`changes`), and the live report
51
+ * of the agent (`report`, `null` when none runs). `?unchanged=no` leaves `unchanged` empty and skips the pixel comparison, which
52
+ * is the slow part of a cold call.
49
53
  */
50
54
  export declare const sketchesAnswer: (asked: Asked) => Answer | Promise<Answer>;
51
55
  /** `?product=&sketch=<layer>/<name>&variant=`: the parts a merge of that variant changes and the elements and pages that show them. */
@@ -57,11 +61,20 @@ export declare const sketchPreviewAnswer: (asked: Asked) => Answer | Promise<Ans
57
61
  */
58
62
  export declare const sketchCompareAnswer: (asked: Asked) => Answer | Promise<Answer>;
59
63
  /**
60
- * `?product=&sketch=&variant=&size=`: per state of the sketched part, the box of the pixels the variant changes
61
- * against the product now, at rest, in the theme of `surface` and `color`.
64
+ * `?product=&sketch=&variant=&size=` with optional `part=` (a target part, the first by default): per state of that
65
+ * part, the box of the pixels the variant changes against the product now, at rest, in the theme of `surface` and `color`.
62
66
  */
63
67
  export declare const sketchDiffAnswer: (asked: Asked) => Answer | Promise<Answer>;
64
- /** POST `?product=&sketch=`, body `{ kind: 'pick', variant, comment? }` or `{ kind: 'discard', comment? }`: writes the decision into sketch.json. */
68
+ /**
69
+ * `?product=&sketch=&variants=a,b&size=`: `{ area }`, the one crop around every pixel the variants change in any state
70
+ * against the product now, at rest, and the frame it sits in; `area` is `null` when no pixel changes.
71
+ */
72
+ export declare const sketchCropAnswer: (asked: Asked) => Answer | Promise<Answer>;
73
+ /**
74
+ * POST `?product=&sketch=`, body `{ kind: 'pick', variant, comment? }`, `{ kind: 'discard', comment? }`, or a verdict
75
+ * by the designer on one variant: `{ kind: 'reject' | 'reopen', variant, reason? }` or `{ kind: 'reason', variant, reason }`.
76
+ * Writes it into sketch.json.
77
+ */
65
78
  export declare const sketchDecisionAnswer: (asked: Asked) => Answer | Promise<Answer>;
66
79
  /**
67
80
  * POST `?product=&sketch=`, body `{ note? }`: merges the picked variant into the product, as `et design sketch merge` does.