@cratis/components.conformance 0.0.0 → 4.0.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.
Files changed (68) hide show
  1. package/CONFORMANCE.md +64 -0
  2. package/LICENSE +21 -0
  3. package/README.md +119 -1
  4. package/dist/AdapterPackageMetadata.d.ts +28 -0
  5. package/dist/AdapterPackageMetadata.d.ts.map +1 -0
  6. package/dist/AdapterPackageMetadata.js +4 -0
  7. package/dist/AdapterPackageMetadata.js.map +1 -0
  8. package/dist/ConformanceCheck.d.ts +13 -0
  9. package/dist/ConformanceCheck.d.ts.map +1 -0
  10. package/dist/ConformanceCheck.js +4 -0
  11. package/dist/ConformanceCheck.js.map +1 -0
  12. package/dist/ConformanceFamily.d.ts +12 -0
  13. package/dist/ConformanceFamily.d.ts.map +1 -0
  14. package/dist/ConformanceFamily.js +15 -0
  15. package/dist/ConformanceFamily.js.map +1 -0
  16. package/dist/ConformanceLibrary.d.ts +19 -0
  17. package/dist/ConformanceLibrary.d.ts.map +1 -0
  18. package/dist/ConformanceLibrary.js +4 -0
  19. package/dist/ConformanceLibrary.js.map +1 -0
  20. package/dist/ConformanceLimitation.d.ts +6 -0
  21. package/dist/ConformanceLimitation.d.ts.map +1 -0
  22. package/dist/ConformanceLimitation.js +4 -0
  23. package/dist/ConformanceLimitation.js.map +1 -0
  24. package/dist/ConformanceOptions.d.ts +19 -0
  25. package/dist/ConformanceOptions.d.ts.map +1 -0
  26. package/dist/ConformanceOptions.js +4 -0
  27. package/dist/ConformanceOptions.js.map +1 -0
  28. package/dist/ConformanceReport.d.ts +13 -0
  29. package/dist/ConformanceReport.d.ts.map +1 -0
  30. package/dist/ConformanceReport.js +4 -0
  31. package/dist/ConformanceReport.js.map +1 -0
  32. package/dist/ConformanceSkipRequest.d.ts +7 -0
  33. package/dist/ConformanceSkipRequest.d.ts.map +1 -0
  34. package/dist/ConformanceSkipRequest.js +4 -0
  35. package/dist/ConformanceSkipRequest.js.map +1 -0
  36. package/dist/ConformanceStatus.d.ts +7 -0
  37. package/dist/ConformanceStatus.d.ts.map +1 -0
  38. package/dist/ConformanceStatus.js +10 -0
  39. package/dist/ConformanceStatus.js.map +1 -0
  40. package/dist/ConformanceSummary.d.ts +8 -0
  41. package/dist/ConformanceSummary.d.ts.map +1 -0
  42. package/dist/ConformanceSummary.js +4 -0
  43. package/dist/ConformanceSummary.js.map +1 -0
  44. package/dist/index.d.ts +12 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +6 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/internal/SlotProfile.d.ts +20 -0
  49. package/dist/internal/SlotProfile.d.ts.map +1 -0
  50. package/dist/internal/SlotProfile.js +4 -0
  51. package/dist/internal/SlotProfile.js.map +1 -0
  52. package/dist/internal/metadata.d.ts +9 -0
  53. package/dist/internal/metadata.d.ts.map +1 -0
  54. package/dist/internal/metadata.js +196 -0
  55. package/dist/internal/metadata.js.map +1 -0
  56. package/dist/internal/reactNormalization.d.ts +12 -0
  57. package/dist/internal/reactNormalization.d.ts.map +1 -0
  58. package/dist/internal/reactNormalization.js +45 -0
  59. package/dist/internal/reactNormalization.js.map +1 -0
  60. package/dist/internal/slotProfiles.d.ts +4 -0
  61. package/dist/internal/slotProfiles.d.ts.map +1 -0
  62. package/dist/internal/slotProfiles.js +608 -0
  63. package/dist/internal/slotProfiles.js.map +1 -0
  64. package/dist/runConformance.d.ts +13 -0
  65. package/dist/runConformance.d.ts.map +1 -0
  66. package/dist/runConformance.js +504 -0
  67. package/dist/runConformance.js.map +1 -0
  68. package/package.json +55 -4
package/CONFORMANCE.md ADDED
@@ -0,0 +1,64 @@
1
+ <!-- Copyright (c) Cratis. All rights reserved. -->
2
+ <!-- Licensed under the MIT license. See LICENSE file in the project root for full license information. -->
3
+
4
+ # Conformance evidence boundary
5
+
6
+ `runConformance()` returns evidence for the exact library manifest, package metadata, DOM
7
+ implementation, dependency versions, and execution environment supplied to that call. A passing
8
+ report does **not** claim universal accessibility, browser, visual, assistive-technology, framework,
9
+ or production conformance.
10
+
11
+ The automated families are:
12
+
13
+ - package metadata schema constraints, runtime consistency, and capability over-declaration;
14
+ - all fourteen ABI v1 slot declarations, stable parts/states, pt markers, and exact native roots;
15
+ - bounded native form/callback behavior and one interactive semantic root per declared ownership selector;
16
+ - internal React-boundary normalization fixtures (props, styles, refs, events, cleanup, StrictMode);
17
+ - DOM-free deterministic server rendering, slot-local output distinction, hydration, and bounded overlay absence/presence;
18
+ - axe WCAG A/AA scans plus a real slot rendered inside bounded RTL, forced-color-adjust, and reduced-transition DOM hosts;
19
+ - a separate packed-package gate covering every emitted declaration, runtime entry loading, and strict Bundler/NodeNext consumer compilation.
20
+
21
+ A requested skip is accepted only when the relevant declaration is `unsupported`/`emulated`, or the
22
+ request names a capability the library does not claim. An unjustified skip is a failure. Adapters
23
+ whose upstream provider remains application-owned may supply an outer `wrapper` fixture; the runner
24
+ uses it for the exercised environment but never configures or transports credentials.
25
+
26
+ ## Private plain-DOM falsification fixture
27
+
28
+ The repository includes a private, test-only plain-DOM renderer under
29
+ `for_plain_dom_renderer/`. It is not a workspace, package, published entry point, or source of
30
+ runtime code. It independently implements the nine stable presentation slots using public ABI and
31
+ component prop contracts only; it does not import the Components-owned Core implementations.
32
+
33
+ The declared `stable-presentation/v1` profile and its schema-valid static metadata point to the
34
+ actual private source fixture and exported manifest. The generated report must contain zero
35
+ failures and zero skips and remains the authoritative check inventory. The bounded run observes:
36
+
37
+ - exact semantic native elements and forwarded refs for every ref-capable slot;
38
+ - native submit, form-value, and reset behavior;
39
+ - one `ChangeHandler` callback carrying `source: 'user'` and the originating native `Event`;
40
+ - every documented stable part and canonical state, plus every declared `pt` route; and
41
+ - deterministic SSR/hydration, axe WCAG A/AA, and the runner's bounded environmental hosts.
42
+
43
+ Within this nine-slot profile, no renderer ABI widening or Core change was required. This finding is
44
+ limited to the public contracts and automated environment exercised here; it does not upgrade the
45
+ general evidence boundary or the limitations below.
46
+
47
+ ## Explicit limitations
48
+
49
+ - axe is automated DOM analysis and cannot replace manual keyboard, screen-reader, magnification,
50
+ voice-control, or other assistive-technology review.
51
+ - jsdom does not establish behavior across browser engines, devices, touch/pointer combinations, or
52
+ operating-system accessibility modes.
53
+ - forced-color-adjust and reduced-transition host fixtures prove that a real slot renders under
54
+ those bounded DOM inputs, not that a browser activated forced-colors/reduced-motion media modes,
55
+ visual contrast, or the absence of all motion. Repository Storybook light/dark axe runs remain a
56
+ separate gate.
57
+ - ownership checks count declared interactive semantic roots. They do not instrument a vendor's
58
+ internal focus trap, dismissal listener, or scroll lock.
59
+ - slot-local SSR output checks do not establish concurrent-request isolation across processes or
60
+ application server runtimes.
61
+ - renderer-vendor focus, collection, and overlay behavior outside the fourteen public slots is not
62
+ exercised.
63
+ - adapter package licensing, security, performance, and upstream support policy remain the adapter
64
+ author's responsibility.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Cratis
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,121 @@
1
+ <!-- Copyright (c) Cratis. All rights reserved. -->
2
+ <!-- Licensed under the MIT license. See LICENSE file in the project root for full license information. -->
3
+
1
4
  # @cratis/components.conformance
2
5
 
3
- Reserved for the Cratis Components release workflow.
6
+ Development-only verification for authors of `@cratis/components` renderer adapters. Ordinary
7
+ applications do not install this package. Adapter authors use it to prove a renderer manifest
8
+ against the Components behavior, parts, state, SSR, and accessibility contract.
9
+
10
+ The package shares the Components repository release version while renderer ABI major `1` remains a
11
+ separate protocol version. It is neither an application runtime dependency nor an adapter discovery
12
+ mechanism.
13
+
14
+ > **Publication status:** The install example targets the owner-authorized 4.0.0 npm release. When
15
+ > reading this README from repository source before that release, verify availability with
16
+ > `npm view @cratis/components.conformance@4.0.0 version`; source contributors use the workspace
17
+ > commands below.
18
+
19
+ ## Requirements
20
+
21
+ - Node.js 23 or newer.
22
+ - `@cratis/components >=4 <5`.
23
+ - React and ReactDOM 19.
24
+ - A DOM test environment. The runner defaults to `globalThis.document`; plain Node without a
25
+ supplied `Document` deliberately fails the `runtime.domAvailable` check.
26
+
27
+ Install it only in an adapter project:
28
+
29
+ ```sh
30
+ npm install --save-dev \
31
+ @cratis/components.conformance@^4 \
32
+ @cratis/components@^4 \
33
+ react@^19 react-dom@^19
34
+ ```
35
+
36
+ ## Run it in a DOM test
37
+
38
+ This Vitest example uses jsdom explicitly and passes its `document` to make the environment
39
+ requirement visible:
40
+
41
+ ```tsx
42
+ // @vitest-environment jsdom
43
+
44
+ import { expect, it } from 'vitest';
45
+ import {
46
+ ConformanceStatus,
47
+ runConformance,
48
+ type ConformanceReport,
49
+ } from '@cratis/components.conformance';
50
+ import { myLibrary } from '@example/components-adapter';
51
+ import packageJson from '@example/components-adapter/package.json' with { type: 'json' };
52
+
53
+ it('conforms to its declared renderer profile', async () => {
54
+ const report: ConformanceReport = await runConformance(myLibrary, {
55
+ metadata: packageJson.cratis,
56
+ document,
57
+ axe: true,
58
+ });
59
+
60
+ const failures = report.checks.filter(
61
+ (check) => check.status === ConformanceStatus.Failed,
62
+ );
63
+
64
+ expect(
65
+ failures,
66
+ failures.map((check) => `${check.id}: ${check.message}`).join('\n'),
67
+ ).toEqual([]);
68
+ expect(report.passed).toBe(true);
69
+ });
70
+ ```
71
+
72
+ An adapter that requires an application-owned outer provider passes it through `wrapper`. The
73
+ wrapper receives `children`; it is the correct place for a vendor theme, cache, or licensed provider.
74
+ Credentials and license keys must remain application-owned and must not enter adapter metadata.
75
+
76
+ ## Options
77
+
78
+ | Option | Purpose |
79
+ | ---------- | ------------------------------------------------------------------------------------------------------------------------- |
80
+ | `metadata` | The adapter package's static `package.json#cratis` metadata. Runtime and static declarations must agree. |
81
+ | `document` | DOM document for runtime checks. Defaults to `globalThis.document`. |
82
+ | `axe` | Enables axe-core evidence. Defaults to `true`. |
83
+ | `wrapper` | Optional application-owned provider mounted around runtime fixtures. |
84
+ | `skips` | Explicit `ConformanceSkipRequest[]`. A skip is accepted only when declared fidelity or a missing capability justifies it. |
85
+
86
+ Do not use skips to make a failing implementation green. Every skip names a check and, when
87
+ applicable, a slot or missing capability. The returned report records accepted omissions as
88
+ limitations.
89
+
90
+ ## Report and public types
91
+
92
+ `runConformance()` returns a `ConformanceReport` containing:
93
+
94
+ - `passed` plus a `ConformanceSummary` of passed, failed, and skipped checks;
95
+ - individual `ConformanceCheck` records with family, status, slot, message, evidence, and skip basis;
96
+ - explicit `ConformanceLimitation` records describing what the report does not establish.
97
+
98
+ The package also exports:
99
+
100
+ - `AdapterPackageMetadata` for the public adapter schema shape;
101
+ - `ConformanceLibrary`, the renderer-library structure accepted by the runner;
102
+ - `ConformanceFamily` and `ConformanceStatus` enums;
103
+ - `ConformanceOptions`, `ConformanceSkipRequest`, `ConformanceCheck`, `ConformanceSummary`,
104
+ `ConformanceLimitation`, and `ConformanceReport` types.
105
+
106
+ The stable `stable-presentation/v1` profile covers exactly nine primitive slots. The broader
107
+ fourteen-slot inventory remains experimental. Checks cover static/runtime metadata consistency,
108
+ stable parts and canonical states, pass-through routing, native elements and refs, bounded form and
109
+ callback behavior, behavior ownership, SSR/hydration, axe, RTL/forced-color/reduced-motion inputs,
110
+ and skip discipline. See [CONFORMANCE.md](./CONFORMANCE.md) for the precise evidence boundary.
111
+
112
+ ## Repository commands
113
+
114
+ ```sh
115
+ yarn workspace @cratis/components.conformance build
116
+ yarn workspace @cratis/components.conformance test
117
+ yarn workspace @cratis/components.conformance verify-package
118
+ ```
119
+
120
+ `verify-package` packs the real archive, rejects tests/cache files and forbidden declaration types,
121
+ and compiles an external consumer under both Bundler and NodeNext with `skipLibCheck: false`.
@@ -0,0 +1,28 @@
1
+ /** Static `package.json#cratis` metadata validated against the public adapter schema. */
2
+ export interface AdapterPackageMetadata {
3
+ readonly kind: 'ui-adapter';
4
+ readonly id: string;
5
+ readonly displayName: string;
6
+ readonly abi: string;
7
+ readonly level: 'full' | 'primitive' | 'behavior' | 'portal' | 'theme';
8
+ readonly profile: string;
9
+ readonly category: string;
10
+ readonly entry: string;
11
+ readonly export: string;
12
+ readonly slots: readonly string[];
13
+ readonly modes: Readonly<Record<string, 'presentation' | 'atomic'>>;
14
+ readonly capabilities: readonly string[];
15
+ readonly ssr: 'safe' | 'client-only' | 'hydration-risk';
16
+ readonly a11y: {
17
+ readonly axeProfile: 'wcag21a' | 'wcag21aa' | 'wcag22a' | 'wcag22aa';
18
+ readonly evidence: string;
19
+ };
20
+ readonly license: {
21
+ readonly spdx: string;
22
+ readonly requiresKey: boolean;
23
+ readonly keyEnv?: string;
24
+ readonly url?: string;
25
+ };
26
+ readonly upstream: Readonly<Record<string, string>>;
27
+ }
28
+ //# sourceMappingURL=AdapterPackageMetadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdapterPackageMetadata.d.ts","sourceRoot":"","sources":["../src/AdapterPackageMetadata.ts"],"names":[],"mappings":"AAGA,yFAAyF;AACzF,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,gBAAgB,CAAC;IACxD,QAAQ,CAAC,IAAI,EAAE;QACX,QAAQ,CAAC,UAAU,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;QACrE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QACd,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACvD"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=AdapterPackageMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdapterPackageMetadata.js","sourceRoot":"","sources":["../src/AdapterPackageMetadata.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,13 @@
1
+ import type { ConformanceFamily } from './ConformanceFamily.js';
2
+ import type { ConformanceStatus } from './ConformanceStatus.js';
3
+ /** Result of one bounded, reproducible conformance assertion. */
4
+ export interface ConformanceCheck {
5
+ readonly id: string;
6
+ readonly family: ConformanceFamily;
7
+ readonly status: ConformanceStatus;
8
+ readonly slotId?: string;
9
+ readonly message: string;
10
+ readonly evidence?: Readonly<Record<string, unknown>>;
11
+ readonly skipBasis?: 'unsupported-fidelity' | 'emulated-fidelity' | 'missing-capability';
12
+ }
13
+ //# sourceMappingURL=ConformanceCheck.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceCheck.d.ts","sourceRoot":"","sources":["../src/ConformanceCheck.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,GAAG,mBAAmB,GAAG,oBAAoB,CAAC;CAC5F"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceCheck.js","sourceRoot":"","sources":["../src/ConformanceCheck.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,12 @@
1
+ /** Evidence families emitted by the renderer conformance runner. */
2
+ export declare enum ConformanceFamily {
3
+ Manifest = "manifest",
4
+ Contract = "contract",
5
+ Behavior = "behavior",
6
+ BehaviorOwnership = "behaviorOwnership",
7
+ ReactNormalization = "reactNormalization",
8
+ ServerRendering = "ssr",
9
+ Accessibility = "a11y",
10
+ TypePurity = "typePurity"
11
+ }
12
+ //# sourceMappingURL=ConformanceFamily.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceFamily.d.ts","sourceRoot":"","sources":["../src/ConformanceFamily.ts"],"names":[],"mappings":"AAGA,oEAAoE;AACpE,oBAAY,iBAAiB;IACzB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,iBAAiB,sBAAsB;IACvC,kBAAkB,uBAAuB;IACzC,eAAe,QAAQ;IACvB,aAAa,SAAS;IACtB,UAAU,eAAe;CAC5B"}
@@ -0,0 +1,15 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ /** Evidence families emitted by the renderer conformance runner. */
4
+ export var ConformanceFamily;
5
+ (function (ConformanceFamily) {
6
+ ConformanceFamily["Manifest"] = "manifest";
7
+ ConformanceFamily["Contract"] = "contract";
8
+ ConformanceFamily["Behavior"] = "behavior";
9
+ ConformanceFamily["BehaviorOwnership"] = "behaviorOwnership";
10
+ ConformanceFamily["ReactNormalization"] = "reactNormalization";
11
+ ConformanceFamily["ServerRendering"] = "ssr";
12
+ ConformanceFamily["Accessibility"] = "a11y";
13
+ ConformanceFamily["TypePurity"] = "typePurity";
14
+ })(ConformanceFamily || (ConformanceFamily = {}));
15
+ //# sourceMappingURL=ConformanceFamily.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceFamily.js","sourceRoot":"","sources":["../src/ConformanceFamily.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,oEAAoE;AACpE,MAAM,CAAN,IAAY,iBASX;AATD,WAAY,iBAAiB;IACzB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;IACrB,4DAAuC,CAAA;IACvC,8DAAyC,CAAA;IACzC,4CAAuB,CAAA;IACvB,2CAAsB,CAAA;IACtB,8CAAyB,CAAA;AAC7B,CAAC,EATW,iBAAiB,KAAjB,iBAAiB,QAS5B"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Public structural view accepted by the conformance runner.
3
+ *
4
+ * `unstable_UiLibrary` satisfies this shape without leaking Components component or renderer-vendor
5
+ * declarations through the conformance package's separately packaged public types.
6
+ */
7
+ export interface ConformanceLibrary {
8
+ readonly id: string;
9
+ readonly displayName: string;
10
+ readonly abi: number;
11
+ readonly level: 'full' | 'primitive' | 'behavior' | 'portal' | 'theme';
12
+ readonly profile: string;
13
+ readonly profileSlots?: readonly string[];
14
+ readonly capabilities: readonly string[];
15
+ readonly slots: object;
16
+ readonly Provider?: unknown;
17
+ readonly preflight?: unknown;
18
+ }
19
+ //# sourceMappingURL=ConformanceLibrary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceLibrary.d.ts","sourceRoot":"","sources":["../src/ConformanceLibrary.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAChC"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceLibrary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceLibrary.js","sourceRoot":"","sources":["../src/ConformanceLibrary.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,6 @@
1
+ /** Explicit boundary on what a programmatic conformance report establishes. */
2
+ export interface ConformanceLimitation {
3
+ readonly id: string;
4
+ readonly message: string;
5
+ }
6
+ //# sourceMappingURL=ConformanceLimitation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceLimitation.d.ts","sourceRoot":"","sources":["../src/ConformanceLimitation.ts"],"names":[],"mappings":"AAGA,+EAA+E;AAC/E,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceLimitation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceLimitation.js","sourceRoot":"","sources":["../src/ConformanceLimitation.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,19 @@
1
+ import type { ComponentType, ReactNode } from 'react';
2
+ import type { AdapterPackageMetadata } from './AdapterPackageMetadata.js';
3
+ import type { ConformanceSkipRequest } from './ConformanceSkipRequest.js';
4
+ /** Options for a bounded conformance run. */
5
+ export interface ConformanceOptions {
6
+ /** Static `package.json#cratis` metadata for runtime/static consistency checks. */
7
+ readonly metadata?: AdapterPackageMetadata | Readonly<Record<string, unknown>>;
8
+ /** DOM document used for runtime checks. Defaults to `globalThis.document`. */
9
+ readonly document?: Document;
10
+ /** Enables axe-core evidence. Defaults to `true`. */
11
+ readonly axe?: boolean;
12
+ /** Optional application-owned outer provider required by a vendor renderer. */
13
+ readonly wrapper?: ComponentType<{
14
+ readonly children: ReactNode;
15
+ }>;
16
+ /** Explicit omissions, accepted only when fidelity/capability declarations justify them. */
17
+ readonly skips?: readonly ConformanceSkipRequest[];
18
+ }
19
+ //# sourceMappingURL=ConformanceOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceOptions.d.ts","sourceRoot":"","sources":["../src/ConformanceOptions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,6CAA6C;AAC7C,MAAM,WAAW,kBAAkB;IAC/B,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/E,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B,qDAAqD;IACrD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IACnE,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACtD"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceOptions.js","sourceRoot":"","sources":["../src/ConformanceOptions.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,13 @@
1
+ import type { ConformanceCheck } from './ConformanceCheck.js';
2
+ import type { ConformanceLimitation } from './ConformanceLimitation.js';
3
+ import type { ConformanceSummary } from './ConformanceSummary.js';
4
+ /** Bounded evidence returned for one renderer library. */
5
+ export interface ConformanceReport {
6
+ readonly adapterId: string;
7
+ readonly abi: number;
8
+ readonly passed: boolean;
9
+ readonly summary: ConformanceSummary;
10
+ readonly checks: readonly ConformanceCheck[];
11
+ readonly limitations: readonly ConformanceLimitation[];
12
+ }
13
+ //# sourceMappingURL=ConformanceReport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceReport.d.ts","sourceRoot":"","sources":["../src/ConformanceReport.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,0DAA0D;AAC1D,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAC1D"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceReport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceReport.js","sourceRoot":"","sources":["../src/ConformanceReport.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,7 @@
1
+ /** Explicit request to omit one check when the manifest truthfully declares the reason. */
2
+ export interface ConformanceSkipRequest {
3
+ readonly checkId: string;
4
+ readonly slotId?: string;
5
+ readonly missingCapability?: string;
6
+ }
7
+ //# sourceMappingURL=ConformanceSkipRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceSkipRequest.d.ts","sourceRoot":"","sources":["../src/ConformanceSkipRequest.ts"],"names":[],"mappings":"AAGA,2FAA2F;AAC3F,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACvC"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceSkipRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceSkipRequest.js","sourceRoot":"","sources":["../src/ConformanceSkipRequest.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,7 @@
1
+ /** Result status for one bounded conformance check. */
2
+ export declare enum ConformanceStatus {
3
+ Passed = "passed",
4
+ Failed = "failed",
5
+ Skipped = "skipped"
6
+ }
7
+ //# sourceMappingURL=ConformanceStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceStatus.d.ts","sourceRoot":"","sources":["../src/ConformanceStatus.ts"],"names":[],"mappings":"AAGA,uDAAuD;AACvD,oBAAY,iBAAiB;IACzB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;CACtB"}
@@ -0,0 +1,10 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ /** Result status for one bounded conformance check. */
4
+ export var ConformanceStatus;
5
+ (function (ConformanceStatus) {
6
+ ConformanceStatus["Passed"] = "passed";
7
+ ConformanceStatus["Failed"] = "failed";
8
+ ConformanceStatus["Skipped"] = "skipped";
9
+ })(ConformanceStatus || (ConformanceStatus = {}));
10
+ //# sourceMappingURL=ConformanceStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceStatus.js","sourceRoot":"","sources":["../src/ConformanceStatus.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,uDAAuD;AACvD,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,sCAAiB,CAAA;IACjB,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;AACvB,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B"}
@@ -0,0 +1,8 @@
1
+ /** Aggregate counts for one conformance run. */
2
+ export interface ConformanceSummary {
3
+ readonly total: number;
4
+ readonly passed: number;
5
+ readonly failed: number;
6
+ readonly skipped: number;
7
+ }
8
+ //# sourceMappingURL=ConformanceSummary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceSummary.d.ts","sourceRoot":"","sources":["../src/ConformanceSummary.ts"],"names":[],"mappings":"AAGA,gDAAgD;AAChD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=ConformanceSummary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConformanceSummary.js","sourceRoot":"","sources":["../src/ConformanceSummary.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,12 @@
1
+ export type { AdapterPackageMetadata } from './AdapterPackageMetadata.js';
2
+ export type { ConformanceCheck } from './ConformanceCheck.js';
3
+ export { ConformanceFamily } from './ConformanceFamily.js';
4
+ export type { ConformanceLibrary } from './ConformanceLibrary.js';
5
+ export type { ConformanceLimitation } from './ConformanceLimitation.js';
6
+ export type { ConformanceOptions } from './ConformanceOptions.js';
7
+ export type { ConformanceReport } from './ConformanceReport.js';
8
+ export type { ConformanceSkipRequest } from './ConformanceSkipRequest.js';
9
+ export { ConformanceStatus } from './ConformanceStatus.js';
10
+ export type { ConformanceSummary } from './ConformanceSummary.js';
11
+ export { runConformance } from './runConformance.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export { ConformanceFamily } from './ConformanceFamily.js';
4
+ export { ConformanceStatus } from './ConformanceStatus.js';
5
+ export { runConformance } from './runConformance.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAIrG,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAM3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { RefObject } from 'react';
2
+ import type { unstable_SlotId } from '@cratis/components/renderer';
3
+ import type { CratisPartsManifest } from '@cratis/components/types';
4
+ /** Internal fixture for one public renderer slot. */
5
+ export interface SlotProfile {
6
+ readonly slotId: unstable_SlotId;
7
+ readonly partsKey: keyof CratisPartsManifest;
8
+ readonly createProps: () => Readonly<Record<string, unknown>>;
9
+ readonly createStateProps?: () => Readonly<Record<string, unknown>>;
10
+ readonly createPartVariants?: () => readonly Readonly<Record<string, unknown>>[];
11
+ readonly conditionallyAbsentParts?: readonly string[];
12
+ readonly ptKeys: readonly string[];
13
+ readonly nativeSelector: string;
14
+ readonly nativeTag: string;
15
+ readonly refCapable: boolean;
16
+ readonly ownershipSelectors: readonly string[];
17
+ readonly activate?: (document: Document, container: HTMLElement) => Promise<void>;
18
+ readonly exercise?: (document: Document, container: HTMLElement, ref: RefObject<Element | null>) => Promise<Readonly<Record<string, unknown>>>;
19
+ }
20
+ //# sourceMappingURL=SlotProfile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotProfile.d.ts","sourceRoot":"","sources":["../../src/internal/SlotProfile.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,qDAAqD;AACrD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;IACjF,QAAQ,CAAC,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAChB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,WAAW,EACtB,GAAG,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,KAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CACnD"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=SlotProfile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotProfile.js","sourceRoot":"","sources":["../../src/internal/SlotProfile.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,9 @@
1
+ import type { unstable_UiLibrary } from '@cratis/components/renderer';
2
+ import type { AdapterPackageMetadata } from '../AdapterPackageMetadata.js';
3
+ /** Validates package metadata against the actual published adapter schema. */
4
+ export declare const validateMetadata: (value: unknown) => readonly string[];
5
+ /** Compares static package metadata to the immutable runtime manifest. */
6
+ export declare const compareMetadata: (metadata: AdapterPackageMetadata | Readonly<Record<string, unknown>>, library: unstable_UiLibrary) => readonly string[];
7
+ /** Rejects capability claims that this bounded harness cannot support with the declared slots. */
8
+ export declare const overDeclaredCapabilities: (library: unstable_UiLibrary) => readonly string[];
9
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/internal/metadata.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAoL3E,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,SAAS,MAAM,EACzB,CAAC;AAEzC,0EAA0E;AAC1E,eAAO,MAAM,eAAe,GACxB,UAAU,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpE,SAAS,kBAAkB,KAC5B,SAAS,MAAM,EAoCjB,CAAC;AAEF,kGAAkG;AAClG,eAAO,MAAM,wBAAwB,GACjC,SAAS,kBAAkB,KAC5B,SAAS,MAAM,EAmCjB,CAAC"}