@meltemi/diagrams-model 1.10.0 → 1.10.18

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 (61) hide show
  1. package/dist/c4.d.ts.map +1 -1
  2. package/dist/c4.js +7 -0
  3. package/dist/c4.js.map +1 -1
  4. package/dist/diagram-types.d.ts.map +1 -1
  5. package/dist/diagram-types.js +6 -0
  6. package/dist/diagram-types.js.map +1 -1
  7. package/dist/diff.d.ts +1 -1
  8. package/dist/diff.d.ts.map +1 -1
  9. package/dist/diff.js +23 -0
  10. package/dist/diff.js.map +1 -1
  11. package/dist/flow.d.ts +60 -10
  12. package/dist/flow.d.ts.map +1 -1
  13. package/dist/flow.js +405 -67
  14. package/dist/flow.js.map +1 -1
  15. package/dist/index.d.ts +3 -3
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +3 -3
  18. package/dist/index.js.map +1 -1
  19. package/dist/json.d.ts +29 -0
  20. package/dist/json.d.ts.map +1 -1
  21. package/dist/json.js +19 -1
  22. package/dist/json.js.map +1 -1
  23. package/dist/messages/changes.d.ts +1 -0
  24. package/dist/messages/changes.d.ts.map +1 -1
  25. package/dist/messages/changes.js +2 -0
  26. package/dist/messages/changes.js.map +1 -1
  27. package/dist/messages/en.d.ts +67 -3
  28. package/dist/messages/en.d.ts.map +1 -1
  29. package/dist/messages/en.js +77 -9
  30. package/dist/messages/en.js.map +1 -1
  31. package/dist/messages/es.d.ts.map +1 -1
  32. package/dist/messages/es.js +45 -8
  33. package/dist/messages/es.js.map +1 -1
  34. package/dist/messages/index.d.ts +36 -2
  35. package/dist/messages/index.d.ts.map +1 -1
  36. package/dist/outline.d.ts +2 -2
  37. package/dist/outline.d.ts.map +1 -1
  38. package/dist/outline.js +9 -3
  39. package/dist/outline.js.map +1 -1
  40. package/dist/scenario.d.ts +15 -2
  41. package/dist/scenario.d.ts.map +1 -1
  42. package/dist/scenario.js +37 -1
  43. package/dist/scenario.js.map +1 -1
  44. package/dist/schema.d.ts +82 -11
  45. package/dist/schema.d.ts.map +1 -1
  46. package/dist/schema.js +106 -7
  47. package/dist/schema.js.map +1 -1
  48. package/dist/sequence.d.ts.map +1 -1
  49. package/dist/sequence.js +252 -12
  50. package/dist/sequence.js.map +1 -1
  51. package/dist/story.d.ts +8 -0
  52. package/dist/story.d.ts.map +1 -1
  53. package/dist/story.js +39 -12
  54. package/dist/story.js.map +1 -1
  55. package/dist/style-values.d.ts +9 -0
  56. package/dist/style-values.d.ts.map +1 -1
  57. package/dist/style-values.js +82 -27
  58. package/dist/style-values.js.map +1 -1
  59. package/dist/types.d.ts +94 -9
  60. package/dist/types.d.ts.map +1 -1
  61. package/package.json +8 -3
@@ -1 +1 @@
1
- {"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"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"}
package/dist/story.d.ts CHANGED
@@ -15,4 +15,12 @@ export declare function analyzeStory(node: StoryBlock, id: Token, lines: LineInd
15
15
  * Every id of a view that did not resolve is taken as an element.
16
16
  */
17
17
  export declare function storyTargetKind(id: string, diagram: FlowDiagram | null): TargetKind | null;
18
+ /** What `draw` replays: a pen stroke, a free line or a named relation. */
19
+ export type DrawTargetKind = "pen" | "line" | "relation";
20
+ /**
21
+ * What a target of `draw` names in a view, drawn from its first point to its last: a pen, a free
22
+ * line or a named relation; null for anything else, which `draw` refuses. Story targets keep the
23
+ * kind `storyTargetKind` gives them (`element` for pens and lines).
24
+ */
25
+ export declare function drawTargetKind(id: string, diagram: FlowDiagram): DrawTargetKind | null;
18
26
  //# sourceMappingURL=story.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,SAAS,EAGd,KAAK,UAAU,EACf,KAAK,KAAK,EAEX,MAAM,4BAA4B,CAAC;AAKpC,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EAGf,eAAe,EAQf,UAAU,EACX,MAAM,YAAY,CAAC;AAYpB,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IACnD,mFAAmF;IACnF,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,IAAI,MAAM,EAAE,CAAC;CACnB;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAC1B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,KAAK,EACT,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,aAAa,GACtB,eAAe,CAqcjB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAQ1F"}
1
+ {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,SAAS,EAGd,KAAK,UAAU,EACf,KAAK,KAAK,EAEX,MAAM,4BAA4B,CAAC;AAKpC,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EAGf,eAAe,EAQf,UAAU,EACX,MAAM,YAAY,CAAC;AAYpB,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IACnD,mFAAmF;IACnF,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,IAAI,MAAM,EAAE,CAAC;CACnB;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAC1B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,KAAK,EACT,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,aAAa,GACtB,eAAe,CA8djB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAQ1F;AAED,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,cAAc,GAAG,IAAI,CAKtF"}
package/dist/story.js CHANGED
@@ -4,7 +4,7 @@ import { closePaths } from "./model.js";
4
4
  import { STORY_DEFAULT_TIMES, STORY_MAX_TIME, STORY_TRANSITIONS } from "./schema.js";
5
5
  import { headerHasError, singleIdent, spanOf } from "./style-values.js";
6
6
  /** Actions that name targets. */
7
- const TARGETED = new Set(["reveal", "hide", "highlight", "focus", "camera", "trace"]);
7
+ const TARGETED = new Set(["reveal", "hide", "highlight", "focus", "camera", "trace", "draw"]);
8
8
  const ACTIONS = new Set([...TARGETED, "hold", "parallel"]);
9
9
  /** Compiles one `story` block: scenes, actions, absolute times, targets and the story rules. */
10
10
  export function analyzeStory(node, id, lines, bag, resolver) {
@@ -296,6 +296,12 @@ export function analyzeStory(node, id, lines, bag, resolver) {
296
296
  error("story.invalid-target", messages().diagnostics.story.traceTarget(ref.text, found === "element"), spanOf(ref));
297
297
  continue;
298
298
  }
299
+ // `draw` replays pens, free lines and named relations; a view not resolved is not checked.
300
+ if (kind === "draw" && sceneView.diagram && !drawTargetKind(ref.text, sceneView.diagram)) {
301
+ const element = sceneView.diagram.elementsById.get(ref.text);
302
+ error("story.invalid-target", messages().diagnostics.story.drawTarget(ref.text, element?.kind ?? null), spanOf(ref));
303
+ continue;
304
+ }
299
305
  const target = { id: ref.text, kind: found, range: range(spanOf(ref)) };
300
306
  targets.push(target);
301
307
  if (sceneView.diagram) {
@@ -338,15 +344,22 @@ export function analyzeStory(node, id, lines, bag, resolver) {
338
344
  return action;
339
345
  }
340
346
  function checkChannels(action, sceneView) {
341
- const channel = action.kind === "reveal" || action.kind === "hide"
342
- ? "visibility"
343
- : action.kind === "highlight" || action.kind === "trace"
344
- ? action.kind
345
- : action.kind === "focus" || action.kind === "camera"
346
- ? action.kind
347
- : null;
348
- if (!channel)
349
- return;
347
+ // A drawn target appears as it is drawn, on the channel of a trace.
348
+ const channels = action.kind === "reveal" || action.kind === "hide"
349
+ ? ["visibility"]
350
+ : action.kind === "draw"
351
+ ? ["visibility", "trace"]
352
+ : action.kind === "highlight" || action.kind === "trace"
353
+ ? [action.kind]
354
+ : action.kind === "focus" || action.kind === "camera"
355
+ ? [action.kind]
356
+ : [];
357
+ // One conflict per target and action, however many of its channels clash (`draw p, p`).
358
+ const reported = new Set();
359
+ for (const channel of channels)
360
+ checkChannel(action, sceneView, channel, reported);
361
+ }
362
+ function checkChannel(action, sceneView, channel, reported) {
350
363
  const keys = channel === "focus" || channel === "camera"
351
364
  ? [`${channel}:${sceneView.name}`]
352
365
  : action.targets.map((t) => `${channel}:${sceneView.name}:${t.id}`);
@@ -357,12 +370,14 @@ export function analyzeStory(node, id, lines, bag, resolver) {
357
370
  const clash = list.find((i) => action.durationMs === 0 && i.end === i.start
358
371
  ? i.start === action.startMs
359
372
  : action.startMs < i.end && i.start < end);
360
- if (clash) {
373
+ const target = key.split(":").pop();
374
+ if (clash && !reported.has(target)) {
375
+ reported.add(target);
361
376
  const m = messages();
362
377
  bag.add({
363
378
  code: "story.conflict",
364
379
  severity: "error",
365
- message: m.diagnostics.story.conflict(action.kind, channel, key.split(":").pop()),
380
+ message: m.diagnostics.story.conflict(action.kind, channel, target),
366
381
  span,
367
382
  related: [{ message: m.related.earlierAction, span: clash.at }],
368
383
  hints: [m.hints.story.conflict],
@@ -403,4 +418,16 @@ export function storyTargetKind(id, diagram) {
403
418
  return "event";
404
419
  return null;
405
420
  }
421
+ /**
422
+ * What a target of `draw` names in a view, drawn from its first point to its last: a pen, a free
423
+ * line or a named relation; null for anything else, which `draw` refuses. Story targets keep the
424
+ * kind `storyTargetKind` gives them (`element` for pens and lines).
425
+ */
426
+ export function drawTargetKind(id, diagram) {
427
+ const element = diagram.elementsById.get(id);
428
+ if (element)
429
+ return element.kind === "pen" || element.kind === "line" ? element.kind : null;
430
+ const relation = diagram.relationsByKey.get(id);
431
+ return relation && relation.id === id ? "relation" : null;
432
+ }
406
433
  //# sourceMappingURL=story.js.map
package/dist/story.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"story.js","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"story.js","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,10 @@ export declare function describeArg(arg: Arg): string;
38
38
  export declare function describeSpec(spec: ValueSpec): string;
39
39
  /** Checks one argument against a value spec. `classes` is read by `readClasses`. */
40
40
  export declare function checkArg(arg: Arg, spec: ValueSpec, name: string): ValueResult;
41
+ /** The form of a sequence tag, as messages name it. */
42
+ export declare const TAG_FORM = "`tag \"Text\"`";
43
+ /** Whether a text may be a tag: one line, not empty. */
44
+ export declare function isTagText(text: string): boolean;
41
45
  /**
42
46
  * Whether a URL may be written into an export: `http:`, `https:` and `mailto:` URLs, and relative
43
47
  * ones; never another scheme, such as `javascript:` or `file:`, nor control characters.
@@ -60,6 +64,11 @@ export interface PropertyBlock {
60
64
  }
61
65
  /** The hint for a property used on a target it does not apply to. */
62
66
  export declare function targetHint(name: string): string;
67
+ /**
68
+ * The first value of the statement of a block whose keyword is `keyword` (a token of
69
+ * `PropertyBlock.tokens`), for a diagnostic on the value rather than on the property.
70
+ */
71
+ export declare function argumentOf(block: Block, keyword: Token): Arg | undefined;
63
72
  /**
64
73
  * Reads `name value` statements from a block against a property table. `unknownHint` gives the
65
74
  * hint of an unknown statement, in the interface language, when one is reported; `owner` names the
@@ -1 +1 @@
1
- {"version":3,"file":"style-values.d.ts","sourceRoot":"","sources":["../src/style-values.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"style-values.d.ts","sourceRoot":"","sources":["../src/style-values.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { isToken, } from "@meltemi/diagrams-language";
2
2
  import { messages } from "./messages/index.js";
3
- import { ALL_ELEMENT_KINDS, ELEMENT_ONLY_PROPERTIES, FREE_ELEMENT_KINDS, FREE_PROFILE, RELATION_ONLY_PROPERTIES, RULE_KINDS, STYLE_PROPERTIES, THEME_COLOR_TOKENS, isFreeStyleProperty, profileTakesShape, takesShape, profileTakesRotation, takesRotation, } from "./schema.js";
3
+ import { ALL_ELEMENT_KINDS, ELEMENT_ONLY_PROPERTIES, FLOW_PROFILE, FREE_ELEMENT_KINDS, FREE_PROFILE, PEN_PROPERTIES, PEN_REFUSED_PROPERTIES, PEN_WIDTH_RANGE, RELATION_ONLY_PROPERTIES, RULE_KINDS, SEQUENCE_PROFILE, STICKY_PROPERTIES, STICKY_REFUSED_PROPERTIES, TEXTLESS_KINDS, TEXT_PROPERTIES, STYLE_PROPERTIES, THEME_COLOR_TOKENS, isFreeStyleProperty, profileTakesShape, takesShape, profileTakesRotation, takesRotation, } from "./schema.js";
4
4
  /** The hint that lists the color tokens, in the interface language. */
5
5
  function colorTokenHint() {
6
6
  return messages().hints.values.colorTokens(THEME_COLOR_TOKENS);
@@ -47,7 +47,7 @@ export function describeSpec(spec) {
47
47
  case "enum":
48
48
  return words.oneOf(spec.values);
49
49
  case "string":
50
- return words.string;
50
+ return spec.nonEmpty ? words.fontStack : words.string;
51
51
  case "color":
52
52
  return spec.tokens ? words.colorOrToken : words.color;
53
53
  case "icon":
@@ -74,6 +74,8 @@ export function describeSpec(spec) {
74
74
  return words.link;
75
75
  case "url":
76
76
  return words.url;
77
+ case "tag":
78
+ return words.tag;
77
79
  }
78
80
  }
79
81
  /** A number without a unit or with `px`. */
@@ -95,8 +97,14 @@ export function checkArg(arg, spec, name) {
95
97
  return fail(m.diagnostics.values.invalidEnum(describeArg(arg), name, spec.values));
96
98
  }
97
99
  case "string":
98
- if (arg.kind === "StringLiteral")
100
+ if (arg.kind === "StringLiteral" && (!spec.nonEmpty || arg.value.trim() !== "")) {
99
101
  return { ok: true, value: arg.value };
102
+ }
103
+ if (spec.nonEmpty) {
104
+ return fail(m.diagnostics.values.expects(name, m.words.spec.fontStack), [
105
+ m.hints.example(`${name} "Roboto"`),
106
+ ]);
107
+ }
100
108
  return fail(m.diagnostics.common.expectsString(name), [m.hints.example(`${name} "text"`)]);
101
109
  case "color": {
102
110
  if (arg.kind === "StringLiteral" && arg.value.trim() !== "") {
@@ -197,8 +205,21 @@ export function checkArg(arg, spec, name) {
197
205
  if (arg.kind === "StringLiteral" && isSafeUrl(arg.value))
198
206
  return { ok: true, value: arg.value };
199
207
  return fail(expects(), [m.hints.values.url]);
208
+ case "tag":
209
+ if (arg.kind !== "StringLiteral") {
210
+ return fail(m.diagnostics.common.expected(TAG_FORM), [m.hints.example('tag "PKCE"')]);
211
+ }
212
+ if (!isTagText(arg.value))
213
+ return fail(m.diagnostics.sequence.tagOneLine);
214
+ return { ok: true, value: arg.value };
200
215
  }
201
216
  }
217
+ /** The form of a sequence tag, as messages name it. */
218
+ export const TAG_FORM = '`tag "Text"`';
219
+ /** Whether a text may be a tag: one line, not empty. */
220
+ export function isTagText(text) {
221
+ return text.trim() !== "" && !/[\r\n]/.test(text);
222
+ }
202
223
  /**
203
224
  * Whether a URL may be written into an export: `http:`, `https:` and `mailto:` URLs, and relative
204
225
  * ones; never another scheme, such as `javascript:` or `file:`, nor control characters.
@@ -267,10 +288,25 @@ export function readStatementValue(stmt, spec, name, report) {
267
288
  /** The hint for a property used on a target it does not apply to. */
268
289
  export function targetHint(name) {
269
290
  const hints = messages().hints.values;
291
+ if (name === "opacity")
292
+ return hints.opacityTargets;
293
+ if (TEXT_PROPERTIES.includes(name))
294
+ return hints.textTargets;
270
295
  return ELEMENT_ONLY_PROPERTIES.includes(name)
271
296
  ? hints.appliesToElements(name)
272
297
  : hints.appliesToRelations(name);
273
298
  }
299
+ /**
300
+ * The first value of the statement of a block whose keyword is `keyword` (a token of
301
+ * `PropertyBlock.tokens`), for a diagnostic on the value rather than on the property.
302
+ */
303
+ export function argumentOf(block, keyword) {
304
+ for (const stmt of block.statements) {
305
+ if (stmt.kind === "KeywordStatement" && stmt.keyword === keyword)
306
+ return stmt.args[0];
307
+ }
308
+ return undefined;
309
+ }
274
310
  /**
275
311
  * Reads `name value` statements from a block against a property table. `unknownHint` gives the
276
312
  * hint of an unknown statement, in the interface language, when one is reported; `owner` names the
@@ -356,7 +392,7 @@ export function refuseFreeProperties(values, tokens, report) {
356
392
  continue;
357
393
  const m = messages();
358
394
  report("prop.invalid-value", m.diagnostics.values.freeOnly(name), token, {
359
- hints: [m.hints.values.freeProperties],
395
+ hints: [name === "opacity" ? m.hints.values.freeOpacity : m.hints.values.freeProperties],
360
396
  });
361
397
  delete values[name];
362
398
  }
@@ -367,24 +403,36 @@ function ruleKindFits(kind, profile) {
367
403
  }
368
404
  /** The profiles whose rules take a kind, for the message of a misplaced rule. */
369
405
  function profilesOfKind(kind) {
370
- return ["flow", "free", "sequence"].filter((name) => ({
371
- flow: ["node", "decision", "data", "group", "note", "tag", "relation"],
372
- free: ["box", "text", "icon", "image", "group", "relation"],
373
- sequence: [
374
- "participant",
375
- "actor",
376
- "boundary",
377
- "control",
378
- "entity",
379
- "database",
380
- "collections",
381
- "queue",
382
- "group",
383
- "relation",
384
- "note",
385
- "fragment",
386
- ],
387
- })[name].includes(kind));
406
+ return [FLOW_PROFILE, FREE_PROFILE, SEQUENCE_PROFILE]
407
+ .filter((profile) => profile.ruleKinds.includes(kind))
408
+ .map((profile) => profile.name);
409
+ }
410
+ /**
411
+ * The style properties a `rule <kind>` refuses besides `shape` and `rotation`: a relation's rule
412
+ * refuses the element properties, a line's none (it takes a relation's properties), a pen's and a
413
+ * sticky's what they do not take, and every other kind's the relation properties.
414
+ */
415
+ function ruleRefuses(kind) {
416
+ if (kind === "relation")
417
+ return ELEMENT_ONLY_PROPERTIES;
418
+ if (kind === "line")
419
+ return [];
420
+ if (kind === "pen")
421
+ return PEN_REFUSED_PROPERTIES;
422
+ if (kind === "sticky")
423
+ return STICKY_REFUSED_PROPERTIES;
424
+ if (TEXTLESS_KINDS.includes(kind))
425
+ return [...RELATION_ONLY_PROPERTIES, ...TEXT_PROPERTIES];
426
+ return RELATION_ONLY_PROPERTIES;
427
+ }
428
+ /** The hint of a property a `rule <kind>` refuses: what the kind takes, or where the property goes. */
429
+ function ruleRefusalHint(kind, name) {
430
+ const hints = messages().hints.values;
431
+ if (kind === "pen")
432
+ return hints.penProperties(PEN_PROPERTIES);
433
+ if (kind === "sticky")
434
+ return hints.stickyProperties(STICKY_PROPERTIES);
435
+ return targetHint(name);
388
436
  }
389
437
  /**
390
438
  * Collects the `class <id> { }` and `rule <kind> { }` statements of a diagram or theme block:
@@ -518,11 +566,18 @@ export class StyleDefinitions {
518
566
  delete properties[name];
519
567
  continue;
520
568
  }
521
- const misplaced = kind === "relation"
522
- ? ELEMENT_ONLY_PROPERTIES.includes(name)
523
- : RELATION_ONLY_PROPERTIES.includes(name);
524
- if (misplaced) {
525
- this.report("prop.invalid-value", messages().diagnostics.values.ruleNotFor(name, kind), token, { hints: [targetHint(name)] });
569
+ if (ruleRefuses(kind).includes(name)) {
570
+ const m = messages();
571
+ this.report("prop.invalid-value", m.diagnostics.values.ruleNotFor(name, kind), token, {
572
+ hints: [ruleRefusalHint(kind, name)],
573
+ });
574
+ delete properties[name];
575
+ continue;
576
+ }
577
+ // A pen is drawn one pixel wide at least.
578
+ if (kind === "pen" && name === "width" && properties.width === 0) {
579
+ const m = messages();
580
+ this.report("prop.invalid-value", m.diagnostics.values.expects("width", describeSpec({ kind: "number", ...PEN_WIDTH_RANGE })), argumentOf(stmt.block, token) ?? token, { hints: [m.hints.values.penWidth] });
526
581
  delete properties[name];
527
582
  continue;
528
583
  }