@refrakt-md/runes 0.30.1 → 0.32.0
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/dist/config.d.ts.map +1 -1
- package/dist/config.js +82 -27
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/index.d.ts +86 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +46 -2
- package/dist/lib/index.js.map +1 -1
- package/dist/reference.d.ts +10 -0
- package/dist/reference.d.ts.map +1 -1
- package/dist/reference.js +42 -3
- package/dist/reference.js.map +1 -1
- package/dist/schema-universals.d.ts +43 -0
- package/dist/schema-universals.d.ts.map +1 -0
- package/dist/schema-universals.js +39 -0
- package/dist/schema-universals.js.map +1 -0
- package/dist/tags/accordion.d.ts +8 -0
- package/dist/tags/accordion.d.ts.map +1 -1
- package/dist/tags/accordion.js +11 -0
- package/dist/tags/accordion.js.map +1 -1
- package/dist/tags/annotate.d.ts +3 -0
- package/dist/tags/annotate.d.ts.map +1 -1
- package/dist/tags/annotate.js +6 -0
- package/dist/tags/annotate.js.map +1 -1
- package/dist/tags/badge.d.ts.map +1 -1
- package/dist/tags/badge.js +3 -0
- package/dist/tags/badge.js.map +1 -1
- package/dist/tags/bg.d.ts.map +1 -1
- package/dist/tags/bg.js +3 -0
- package/dist/tags/bg.js.map +1 -1
- package/dist/tags/blog.d.ts +6 -0
- package/dist/tags/blog.d.ts.map +1 -1
- package/dist/tags/blog.js +6 -0
- package/dist/tags/blog.js.map +1 -1
- package/dist/tags/budget.d.ts +5 -0
- package/dist/tags/budget.d.ts.map +1 -1
- package/dist/tags/budget.js +5 -0
- package/dist/tags/budget.js.map +1 -1
- package/dist/tags/card.d.ts +4 -0
- package/dist/tags/card.d.ts.map +1 -1
- package/dist/tags/card.js +12 -0
- package/dist/tags/card.js.map +1 -1
- package/dist/tags/codegroup.d.ts +3 -0
- package/dist/tags/codegroup.d.ts.map +1 -1
- package/dist/tags/codegroup.js +5 -0
- package/dist/tags/codegroup.js.map +1 -1
- package/dist/tags/datatable.d.ts +3 -0
- package/dist/tags/datatable.d.ts.map +1 -1
- package/dist/tags/datatable.js +5 -0
- package/dist/tags/datatable.js.map +1 -1
- package/dist/tags/drawer.d.ts +5 -0
- package/dist/tags/drawer.d.ts.map +1 -1
- package/dist/tags/drawer.js +6 -0
- package/dist/tags/drawer.js.map +1 -1
- package/dist/tags/expand.d.ts.map +1 -1
- package/dist/tags/expand.js +3 -0
- package/dist/tags/expand.js.map +1 -1
- package/dist/tags/figure.d.ts +4 -0
- package/dist/tags/figure.d.ts.map +1 -1
- package/dist/tags/figure.js +7 -0
- package/dist/tags/figure.js.map +1 -1
- package/dist/tags/form.d.ts +3 -0
- package/dist/tags/form.d.ts.map +1 -1
- package/dist/tags/form.js +5 -0
- package/dist/tags/form.js.map +1 -1
- package/dist/tags/hint.d.ts +3 -0
- package/dist/tags/hint.d.ts.map +1 -1
- package/dist/tags/hint.js +5 -0
- package/dist/tags/hint.js.map +1 -1
- package/dist/tags/icon.d.ts +10 -0
- package/dist/tags/icon.d.ts.map +1 -1
- package/dist/tags/icon.js +13 -0
- package/dist/tags/icon.js.map +1 -1
- package/dist/tags/mediatext.d.ts +7 -0
- package/dist/tags/mediatext.d.ts.map +1 -1
- package/dist/tags/mediatext.js +8 -0
- package/dist/tags/mediatext.js.map +1 -1
- package/dist/tags/pullquote.d.ts +3 -0
- package/dist/tags/pullquote.d.ts.map +1 -1
- package/dist/tags/pullquote.js +6 -0
- package/dist/tags/pullquote.js.map +1 -1
- package/dist/tags/reveal.d.ts +5 -0
- package/dist/tags/reveal.d.ts.map +1 -1
- package/dist/tags/reveal.js +5 -0
- package/dist/tags/reveal.js.map +1 -1
- package/dist/tags/section.d.ts +5 -0
- package/dist/tags/section.d.ts.map +1 -1
- package/dist/tags/section.js +5 -0
- package/dist/tags/section.js.map +1 -1
- package/dist/tags/showcase.d.ts +4 -0
- package/dist/tags/showcase.d.ts.map +1 -1
- package/dist/tags/showcase.js +7 -0
- package/dist/tags/showcase.js.map +1 -1
- package/dist/tags/sidenote.d.ts +3 -0
- package/dist/tags/sidenote.d.ts.map +1 -1
- package/dist/tags/sidenote.js +6 -0
- package/dist/tags/sidenote.js.map +1 -1
- package/dist/tags/tabs.d.ts +5 -0
- package/dist/tags/tabs.d.ts.map +1 -1
- package/dist/tags/tabs.js +5 -0
- package/dist/tags/tabs.js.map +1 -1
- package/dist/tags/textblock.d.ts +3 -0
- package/dist/tags/textblock.d.ts.map +1 -1
- package/dist/tags/textblock.js +6 -0
- package/dist/tags/textblock.js.map +1 -1
- package/dist/tags/tint.d.ts.map +1 -1
- package/dist/tags/tint.js +3 -0
- package/dist/tags/tint.js.map +1 -1
- package/dist/tags/xref.d.ts.map +1 -1
- package/dist/tags/xref.js +3 -0
- package/dist/tags/xref.js.map +1 -1
- package/dist/universal-attributes.d.ts +90 -0
- package/dist/universal-attributes.d.ts.map +1 -0
- package/dist/universal-attributes.js +107 -0
- package/dist/universal-attributes.js.map +1 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textblock.js","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"textblock.js","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"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"}
|
package/dist/tags/tint.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tint.d.ts","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,MAAM,EAAuB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"tint.d.ts","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,MAAM,EAAuB,MAAM,kBAAkB,CAAC;AAI1E,6BAA6B;AAC7B,eAAO,MAAM,WAAW,gFAAiF,CAAC;AAC1G,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAsDnD;;;;;GAKG;AACH,eAAO,MAAM,IAAI,EAAE,MAoClB,CAAC"}
|
package/dist/tags/tint.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import Markdoc from '@markdoc/markdoc';
|
|
2
|
+
import { declareUniversalPosture } from '../lib/index.js';
|
|
2
3
|
const { Tag } = Markdoc;
|
|
3
4
|
/** The 6 tint token names */
|
|
4
5
|
export const TINT_TOKENS = ['background', 'surface', 'primary', 'secondary', 'accent', 'border'];
|
|
@@ -85,4 +86,6 @@ export const tint = {
|
|
|
85
86
|
return new Tag('div', { 'data-tint-source': true }, metas);
|
|
86
87
|
},
|
|
87
88
|
};
|
|
89
|
+
// SPEC-125 Phase 3 — supplies a tint to its parent rather than carrying one; `{% tint tint=… %}` is circular.
|
|
90
|
+
declareUniversalPosture(tint, 'configurator');
|
|
88
91
|
//# sourceMappingURL=tint.js.map
|
package/dist/tags/tint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tint.js","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tint.js","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"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"}
|
package/dist/tags/xref.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xref.d.ts","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"xref.d.ts","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI7D,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,EAAE,MA4ClB,CAAC"}
|
package/dist/tags/xref.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import Markdoc from '@markdoc/markdoc';
|
|
2
|
+
import { declareUniversalPosture } from '../lib/index.js';
|
|
2
3
|
const { Tag } = Markdoc;
|
|
3
4
|
/** Sentinel attribute value used to identify xref placeholders in the renderable tree */
|
|
4
5
|
export const XREF_RUNE_MARKER = 'xref';
|
|
@@ -60,4 +61,6 @@ export const xref = {
|
|
|
60
61
|
return new Tag('span', attrs, [label || id]);
|
|
61
62
|
},
|
|
62
63
|
};
|
|
64
|
+
// SPEC-125 Phase 3 — an inline link; the block axes have nothing to act on.
|
|
65
|
+
declareUniversalPosture(xref, 'inline');
|
|
63
66
|
//# sourceMappingURL=xref.js.map
|
package/dist/tags/xref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xref.js","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAExB,yFAAyF;AACzF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,IAAI,GAAW;IAC3B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE;QACX,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,8BAA8B;SAC3C;QACD,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,6CAA6C;SAC1D;QACD,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,qCAAqC;SAClD;QACD,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC,QAAQ,CAAC;YACnB,WAAW,EAAE,mQAAmQ;SAChR;KACD;IACD,SAAS,CAAC,IAAU,EAAE,MAAc;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAiB,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAA2B,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAA0B,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAA6B,CAAC;QAE9D,MAAM,KAAK,GAA2B;YACrC,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,EAAE;SAClB,CAAC;QAEF,IAAI,KAAK;YAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC;QAC5C,IAAI,IAAI;YAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO;YAAE,KAAK,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC;QAElD,6DAA6D;QAC7D,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD,CAAC"}
|
|
1
|
+
{"version":3,"file":"xref.js","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAExB,yFAAyF;AACzF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,IAAI,GAAW;IAC3B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE;QACX,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,8BAA8B;SAC3C;QACD,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,6CAA6C;SAC1D;QACD,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,qCAAqC;SAClD;QACD,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC,QAAQ,CAAC;YACnB,WAAW,EAAE,mQAAmQ;SAChR;KACD;IACD,SAAS,CAAC,IAAU,EAAE,MAAc;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAiB,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAA2B,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAA0B,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAA6B,CAAC;QAE9D,MAAM,KAAK,GAA2B;YACrC,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,EAAE;SAClB,CAAC;QAEF,IAAI,KAAK;YAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC;QAC5C,IAAI,IAAI;YAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO;YAAE,KAAK,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC;QAElD,6DAA6D;QAC7D,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD,CAAC;AAEF,4EAA4E;AAC5E,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { RuneStructure } from './lib/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Which universal attributes a rune may carry — SPEC-125 Phase 3.
|
|
4
|
+
*
|
|
5
|
+
* `createContentModelSchema` used to merge all ~37 universal attributes onto
|
|
6
|
+
* every rune unconditionally. Several of them are inert on most runes: `reading`
|
|
7
|
+
* and `dropcap` need a `body` section role, `prominence` a header-ish one,
|
|
8
|
+
* `frame` a media surface, the cover `scrim*` family a `media-position`
|
|
9
|
+
* modifier. Authoring tools read the schema, so they promised every attribute
|
|
10
|
+
* everywhere, and the engine dropped the inapplicable ones — three of them in
|
|
11
|
+
* total silence.
|
|
12
|
+
*
|
|
13
|
+
* **Availability is derived from the same registry the structure contract uses.**
|
|
14
|
+
* `generateStructureContract` builds its `unavailable` map by calling
|
|
15
|
+
* `UniversalAxisFacet.describeForRune`; so does this. The two derivations are
|
|
16
|
+
* one call, not two implementations that must be kept in step — which is the
|
|
17
|
+
* only way "the contract and the schemas agree" survives the next axis.
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* Which universal attributes each axis owns.
|
|
21
|
+
*
|
|
22
|
+
* The axis registry's `contract.inputs` cannot serve here: for the `meta`-source
|
|
23
|
+
* axes those are engine-side `data-field` names (`bg-src`, `tint-bg`), not the
|
|
24
|
+
* author-facing attributes a schema declares. This map is the author-facing
|
|
25
|
+
* half, and `universal-attributes.test.ts` holds it to covering
|
|
26
|
+
* `UNIVERSAL_ATTRIBUTE_NAMES` exactly — every attribute owned by one axis, no
|
|
27
|
+
* attribute owned by none.
|
|
28
|
+
*/
|
|
29
|
+
export declare const AXIS_ATTRIBUTES: Readonly<Record<string, readonly string[]>>;
|
|
30
|
+
/**
|
|
31
|
+
* Why a rune carries no universal attributes at all.
|
|
32
|
+
*
|
|
33
|
+
* Stated rather than inferred. Six runes have hand-written schemas and so have
|
|
34
|
+
* never carried universal attributes, and the split is mostly principled — but
|
|
35
|
+
* "it happens not to use `createContentModelSchema`" is not a reason, it is an
|
|
36
|
+
* implementation detail that a reader cannot distinguish from an oversight.
|
|
37
|
+
*
|
|
38
|
+
* - `auto` — the default. Structural applicability decides, axis by axis.
|
|
39
|
+
* - `inline` — the rune renders an inline span. Block axes have nothing to act
|
|
40
|
+
* on, so none apply.
|
|
41
|
+
* - `configurator` — the rune *supplies* an axis value to its parent rather than
|
|
42
|
+
* carrying one. `{% tint %}` with its own `tint=` is circular.
|
|
43
|
+
* - `none` — no universal attributes, for a reason that is neither of the above.
|
|
44
|
+
*
|
|
45
|
+
* The six, assessed:
|
|
46
|
+
*
|
|
47
|
+
* | Rune | Posture | Recorded | Assessment |
|
|
48
|
+
* |---|---|---|---|
|
|
49
|
+
* | `badge` | `inline` | `coreConfig.Badge` | correct — an inline span |
|
|
50
|
+
* | `tint`, `bg` | `configurator` | `coreConfig.Tint` / `.Bg` | correct — they supply the axis |
|
|
51
|
+
* | `icon` | `inline` in substance | `tags/icon.ts` | correct — no `data-rune`, so no `RuneConfig` to hold the field |
|
|
52
|
+
* | `xref` | `inline` in substance | `tags/xref.ts` (`inline: true`) | correct — resolves to an inline link |
|
|
53
|
+
* | `expand` | `none` | `coreConfig.Expand` | **legacy, not principled** — see the note there |
|
|
54
|
+
*
|
|
55
|
+
* `expand` is the one that reads as an accident: it is a block-level disclosure,
|
|
56
|
+
* so the block axes would all mean something on it. Giving it those axes means
|
|
57
|
+
* migrating it to `createContentModelSchema`, which WORK-534 scopes out; `none`
|
|
58
|
+
* records the gap rather than letting it pass as a decision.
|
|
59
|
+
*/
|
|
60
|
+
export type UniversalAttributePosture = 'auto' | 'inline' | 'configurator' | 'none';
|
|
61
|
+
/** The prose behind a non-`auto` posture, for tooling that explains itself.
|
|
62
|
+
* Re-exported from the transform registry rather than restated, so the schema
|
|
63
|
+
* layer and the structure contract give the same reason. */
|
|
64
|
+
export declare const POSTURE_REASONS: Readonly<Record<"inline" | "configurator" | "none", string>>;
|
|
65
|
+
export interface UniversalAttributeInput {
|
|
66
|
+
/** Defaults to `auto`. */
|
|
67
|
+
posture?: UniversalAttributePosture;
|
|
68
|
+
/** The rune's own join tables, as declared in its tag module (WORK-533). */
|
|
69
|
+
structure?: RuneStructure;
|
|
70
|
+
/** The rune's declared author attributes. `cover` and `content-place` gate on
|
|
71
|
+
* the rune declaring a `media-position` / `content-place` *modifier*, and
|
|
72
|
+
* those modifiers are read from author attributes the schema declares
|
|
73
|
+
* anyway — which is why `modifiers` did not need to move out of config. */
|
|
74
|
+
declaredAttributes?: Iterable<string>;
|
|
75
|
+
}
|
|
76
|
+
export interface UniversalAttributeAvailability {
|
|
77
|
+
/** Universal attribute names this rune may carry. */
|
|
78
|
+
available: ReadonlySet<string>;
|
|
79
|
+
/** Axis → why it is unavailable here. Same strings the structure contract
|
|
80
|
+
* records, because they come from the same call. */
|
|
81
|
+
unavailable: ReadonlyMap<string, string>;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Resolve which universal attributes apply to one rune.
|
|
85
|
+
*
|
|
86
|
+
* A non-`auto` posture short-circuits: nothing structural is consulted, because
|
|
87
|
+
* the reason is about the rune's kind rather than its anatomy.
|
|
88
|
+
*/
|
|
89
|
+
export declare function resolveUniversalAttributes(input?: UniversalAttributeInput): UniversalAttributeAvailability;
|
|
90
|
+
//# sourceMappingURL=universal-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"universal-attributes.d.ts","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CA4BvE,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,QAAQ,GAAG,cAAc,GAAG,MAAM,CAAC;AAEpF;;6DAE6D;AAC7D,eAAO,MAAM,eAAe,8DAA4B,CAAC;AAEzD,MAAM,WAAW,uBAAuB;IACvC,0BAA0B;IAC1B,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B;;;gFAG4E;IAC5E,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,8BAA8B;IAC9C,qDAAqD;IACrD,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B;yDACqD;IACrD,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACzC,KAAK,GAAE,uBAA4B,GACjC,8BAA8B,CAwChC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { UNIVERSAL_AXIS_FACETS, UNIVERSAL_POSTURE_REASONS } from '@refrakt-md/transform';
|
|
2
|
+
/**
|
|
3
|
+
* Which universal attributes a rune may carry — SPEC-125 Phase 3.
|
|
4
|
+
*
|
|
5
|
+
* `createContentModelSchema` used to merge all ~37 universal attributes onto
|
|
6
|
+
* every rune unconditionally. Several of them are inert on most runes: `reading`
|
|
7
|
+
* and `dropcap` need a `body` section role, `prominence` a header-ish one,
|
|
8
|
+
* `frame` a media surface, the cover `scrim*` family a `media-position`
|
|
9
|
+
* modifier. Authoring tools read the schema, so they promised every attribute
|
|
10
|
+
* everywhere, and the engine dropped the inapplicable ones — three of them in
|
|
11
|
+
* total silence.
|
|
12
|
+
*
|
|
13
|
+
* **Availability is derived from the same registry the structure contract uses.**
|
|
14
|
+
* `generateStructureContract` builds its `unavailable` map by calling
|
|
15
|
+
* `UniversalAxisFacet.describeForRune`; so does this. The two derivations are
|
|
16
|
+
* one call, not two implementations that must be kept in step — which is the
|
|
17
|
+
* only way "the contract and the schemas agree" survives the next axis.
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* Which universal attributes each axis owns.
|
|
21
|
+
*
|
|
22
|
+
* The axis registry's `contract.inputs` cannot serve here: for the `meta`-source
|
|
23
|
+
* axes those are engine-side `data-field` names (`bg-src`, `tint-bg`), not the
|
|
24
|
+
* author-facing attributes a schema declares. This map is the author-facing
|
|
25
|
+
* half, and `universal-attributes.test.ts` holds it to covering
|
|
26
|
+
* `UNIVERSAL_ATTRIBUTE_NAMES` exactly — every attribute owned by one axis, no
|
|
27
|
+
* attribute owned by none.
|
|
28
|
+
*/
|
|
29
|
+
export const AXIS_ATTRIBUTES = {
|
|
30
|
+
tint: ['tint', 'tint-mode'],
|
|
31
|
+
// The `scrim*` family belongs to `bg`, not to `cover`. The background layer
|
|
32
|
+
// builds the scrim on any rune — `bgAxis.contract.inputs` lists all five, and
|
|
33
|
+
// `bg` is available everywhere — while `cover` merely *reroutes* it to the
|
|
34
|
+
// media well when a rune enters cover mode. Filing them under `cover` (which
|
|
35
|
+
// is gated on a `media-position` modifier) narrowed a working attribute off
|
|
36
|
+
// 82 of 83 runes; see WORK-536.
|
|
37
|
+
bg: [
|
|
38
|
+
'bg', 'bg-gradient', 'bg-from', 'bg-to', 'bg-via', 'bg-gradient-type',
|
|
39
|
+
'scrim', 'scrim-type', 'scrim-strength', 'scrim-blur', 'scrim-tone',
|
|
40
|
+
],
|
|
41
|
+
width: ['width'],
|
|
42
|
+
spacing: ['spacing'],
|
|
43
|
+
inset: ['inset'],
|
|
44
|
+
elevation: ['elevation'],
|
|
45
|
+
prominence: ['prominence'],
|
|
46
|
+
reading: ['reading'],
|
|
47
|
+
dropcap: ['dropcap'],
|
|
48
|
+
motion: ['reveal', 'stagger'],
|
|
49
|
+
frame: [
|
|
50
|
+
'frame', 'frame-aspect', 'frame-displace', 'frame-displace-mode', 'frame-offset',
|
|
51
|
+
'frame-oversize', 'frame-place', 'frame-anchor', 'frame-overflow', 'frame-shadow',
|
|
52
|
+
],
|
|
53
|
+
substrate: ['substrate', 'substrate-size', 'substrate-opacity', 'substrate-fill', 'substrate-target'],
|
|
54
|
+
// `cover` owns no author-facing attribute of its own — like `density`,
|
|
55
|
+
// `content-measure` and `content-place`, it can still be reported unavailable
|
|
56
|
+
// on a rune, it simply removes nothing from the schema.
|
|
57
|
+
};
|
|
58
|
+
/** The prose behind a non-`auto` posture, for tooling that explains itself.
|
|
59
|
+
* Re-exported from the transform registry rather than restated, so the schema
|
|
60
|
+
* layer and the structure contract give the same reason. */
|
|
61
|
+
export const POSTURE_REASONS = UNIVERSAL_POSTURE_REASONS;
|
|
62
|
+
/**
|
|
63
|
+
* Resolve which universal attributes apply to one rune.
|
|
64
|
+
*
|
|
65
|
+
* A non-`auto` posture short-circuits: nothing structural is consulted, because
|
|
66
|
+
* the reason is about the rune's kind rather than its anatomy.
|
|
67
|
+
*/
|
|
68
|
+
export function resolveUniversalAttributes(input = {}) {
|
|
69
|
+
const posture = input.posture ?? 'auto';
|
|
70
|
+
if (posture !== 'auto') {
|
|
71
|
+
const reason = POSTURE_REASONS[posture];
|
|
72
|
+
return {
|
|
73
|
+
available: new Set(),
|
|
74
|
+
unavailable: new Map(Object.keys(AXIS_ATTRIBUTES).map((axis) => [axis, reason])),
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
// A config-shaped view of what the schema knows. The gates read exactly these
|
|
78
|
+
// four fields; `block` is required by the type and unused by every gate.
|
|
79
|
+
const asConfig = {
|
|
80
|
+
block: '',
|
|
81
|
+
sections: input.structure?.sections,
|
|
82
|
+
mediaSlots: input.structure?.mediaSlots,
|
|
83
|
+
frameTarget: input.structure?.frameTarget,
|
|
84
|
+
// SPEC-125 Phase 4 — `reading` and `dropcap` gate on a declared content
|
|
85
|
+
// capability rather than on the `body` section role, which was only ever
|
|
86
|
+
// a proxy for it.
|
|
87
|
+
provides: input.structure?.provides,
|
|
88
|
+
modifiers: Object.fromEntries([...(input.declaredAttributes ?? [])].map((name) => [name, { source: 'attribute' }])),
|
|
89
|
+
};
|
|
90
|
+
const unavailable = new Map();
|
|
91
|
+
for (const facet of UNIVERSAL_AXIS_FACETS) {
|
|
92
|
+
const described = facet.describeForRune(asConfig, '');
|
|
93
|
+
if (typeof described === 'string')
|
|
94
|
+
unavailable.set(facet.axis, described);
|
|
95
|
+
}
|
|
96
|
+
const available = new Set();
|
|
97
|
+
for (const [axis, names] of Object.entries(AXIS_ATTRIBUTES)) {
|
|
98
|
+
if (unavailable.has(axis))
|
|
99
|
+
continue;
|
|
100
|
+
for (const name of names)
|
|
101
|
+
available.add(name);
|
|
102
|
+
}
|
|
103
|
+
// Axes with no author-facing attributes (density, content-measure,
|
|
104
|
+
// content-place) can still be unavailable; they simply remove nothing here.
|
|
105
|
+
return { available, unavailable };
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=universal-attributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"universal-attributes.js","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@refrakt-md/runes",
|
|
3
3
|
"description": "Semantic Markdoc runes for refrakt.md",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.32.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"generate-translations": "node scripts/generate-translations.mjs"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@refrakt-md/types": "0.
|
|
36
|
-
"@refrakt-md/transform": "0.
|
|
35
|
+
"@refrakt-md/types": "0.32.0",
|
|
36
|
+
"@refrakt-md/transform": "0.32.0",
|
|
37
37
|
"@markdoc/markdoc": "0.4.0",
|
|
38
38
|
"reflect-metadata": "^0.2.0",
|
|
39
39
|
"fast-xml-parser": "4.5.1",
|