@flyingrobots/bijou 5.0.0 → 7.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 (111) hide show
  1. package/README.md +62 -0
  2. package/dist/core/active-binding-collection.d.ts +49 -0
  3. package/dist/core/active-binding-collection.d.ts.map +1 -0
  4. package/dist/core/active-binding-collection.js +264 -0
  5. package/dist/core/active-binding-collection.js.map +1 -0
  6. package/dist/core/app-shell-composition.d.ts +44 -0
  7. package/dist/core/app-shell-composition.d.ts.map +1 -0
  8. package/dist/core/app-shell-composition.js +123 -0
  9. package/dist/core/app-shell-composition.js.map +1 -0
  10. package/dist/core/binding-frame-update.d.ts +18 -0
  11. package/dist/core/binding-frame-update.d.ts.map +1 -0
  12. package/dist/core/binding-frame-update.js +133 -0
  13. package/dist/core/binding-frame-update.js.map +1 -0
  14. package/dist/core/binding-lifecycle.d.ts +65 -0
  15. package/dist/core/binding-lifecycle.d.ts.map +1 -0
  16. package/dist/core/binding-lifecycle.js +357 -0
  17. package/dist/core/binding-lifecycle.js.map +1 -0
  18. package/dist/core/binding.d.ts +192 -0
  19. package/dist/core/binding.d.ts.map +1 -0
  20. package/dist/core/binding.js +587 -0
  21. package/dist/core/binding.js.map +1 -0
  22. package/dist/core/block-metadata.d.ts +113 -0
  23. package/dist/core/block-metadata.d.ts.map +1 -0
  24. package/dist/core/block-metadata.js +376 -0
  25. package/dist/core/block-metadata.js.map +1 -0
  26. package/dist/core/block-tree-render.d.ts +17 -0
  27. package/dist/core/block-tree-render.d.ts.map +1 -0
  28. package/dist/core/block-tree-render.js +186 -0
  29. package/dist/core/block-tree-render.js.map +1 -0
  30. package/dist/core/component-metadata.d.ts +63 -0
  31. package/dist/core/component-metadata.d.ts.map +1 -0
  32. package/dist/core/component-metadata.js +158 -0
  33. package/dist/core/component-metadata.js.map +1 -0
  34. package/dist/core/components/dag-edges.d.ts +9 -3
  35. package/dist/core/components/dag-edges.d.ts.map +1 -1
  36. package/dist/core/components/dag-edges.js +41 -10
  37. package/dist/core/components/dag-edges.js.map +1 -1
  38. package/dist/core/components/dag-render.d.ts +1 -1
  39. package/dist/core/components/dag-render.d.ts.map +1 -1
  40. package/dist/core/components/dag-render.js +193 -72
  41. package/dist/core/components/dag-render.js.map +1 -1
  42. package/dist/core/components/dag-source.d.ts +4 -0
  43. package/dist/core/components/dag-source.d.ts.map +1 -1
  44. package/dist/core/components/dag-source.js +10 -0
  45. package/dist/core/components/dag-source.js.map +1 -1
  46. package/dist/core/components/dag.d.ts +13 -0
  47. package/dist/core/components/dag.d.ts.map +1 -1
  48. package/dist/core/components/dag.js.map +1 -1
  49. package/dist/core/components/index.d.ts +2 -2
  50. package/dist/core/components/index.d.ts.map +1 -1
  51. package/dist/core/components/index.js.map +1 -1
  52. package/dist/core/components/table-v3.d.ts +1 -1
  53. package/dist/core/components/table-v3.d.ts.map +1 -1
  54. package/dist/core/components/table-v3.js +136 -21
  55. package/dist/core/components/table-v3.js.map +1 -1
  56. package/dist/core/components/table.d.ts +36 -6
  57. package/dist/core/components/table.d.ts.map +1 -1
  58. package/dist/core/components/table.js +530 -74
  59. package/dist/core/components/table.js.map +1 -1
  60. package/dist/core/fixture-promotion.d.ts +33 -0
  61. package/dist/core/fixture-promotion.d.ts.map +1 -0
  62. package/dist/core/fixture-promotion.js +62 -0
  63. package/dist/core/fixture-promotion.js.map +1 -0
  64. package/dist/core/layout/envelope.d.ts +174 -0
  65. package/dist/core/layout/envelope.d.ts.map +1 -0
  66. package/dist/core/layout/envelope.js +336 -0
  67. package/dist/core/layout/envelope.js.map +1 -0
  68. package/dist/core/mode-lowering.d.ts +48 -0
  69. package/dist/core/mode-lowering.d.ts.map +1 -0
  70. package/dist/core/mode-lowering.js +176 -0
  71. package/dist/core/mode-lowering.js.map +1 -0
  72. package/dist/core/schema-block.d.ts +63 -0
  73. package/dist/core/schema-block.d.ts.map +1 -0
  74. package/dist/core/schema-block.js +361 -0
  75. package/dist/core/schema-block.js.map +1 -0
  76. package/dist/core/selection.d.ts +127 -0
  77. package/dist/core/selection.d.ts.map +1 -0
  78. package/dist/core/selection.js +350 -0
  79. package/dist/core/selection.js.map +1 -0
  80. package/dist/core/standard-blocks.d.ts +264 -0
  81. package/dist/core/standard-blocks.d.ts.map +1 -0
  82. package/dist/core/standard-blocks.js +2518 -0
  83. package/dist/core/standard-blocks.js.map +1 -0
  84. package/dist/core/story-capture.d.ts +48 -0
  85. package/dist/core/story-capture.d.ts.map +1 -0
  86. package/dist/core/story-capture.js +64 -0
  87. package/dist/core/story-capture.js.map +1 -0
  88. package/dist/core/text/wrap.d.ts.map +1 -1
  89. package/dist/core/text/wrap.js +37 -20
  90. package/dist/core/text/wrap.js.map +1 -1
  91. package/dist/core/theme/doctor.d.ts +37 -0
  92. package/dist/core/theme/doctor.d.ts.map +1 -0
  93. package/dist/core/theme/doctor.js +175 -0
  94. package/dist/core/theme/doctor.js.map +1 -0
  95. package/dist/core/theme/dtcg.d.ts.map +1 -1
  96. package/dist/core/theme/dtcg.js +10 -1
  97. package/dist/core/theme/dtcg.js.map +1 -1
  98. package/dist/core/theme/index.d.ts +2 -0
  99. package/dist/core/theme/index.d.ts.map +1 -1
  100. package/dist/core/theme/index.js +2 -0
  101. package/dist/core/theme/index.js.map +1 -1
  102. package/dist/core/theme/presets.d.ts.map +1 -1
  103. package/dist/core/theme/presets.js +4 -0
  104. package/dist/core/theme/presets.js.map +1 -1
  105. package/dist/core/theme/tokens.d.ts +1 -1
  106. package/dist/core/theme/tokens.d.ts.map +1 -1
  107. package/dist/index.d.ts +17 -2
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +17 -0
  110. package/dist/index.js.map +1 -1
  111. package/package.json +2 -2
@@ -0,0 +1,192 @@
1
+ import type { ModeLoweringFact } from './mode-lowering.js';
2
+ declare const DATA_REQUIREMENT_BRAND: unique symbol;
3
+ declare const DATA_PROVIDER_BRAND: unique symbol;
4
+ declare const VIEW_DATA_CONTRACT_BRAND: unique symbol;
5
+ declare const BINDING_SNAPSHOT_BRAND: unique symbol;
6
+ declare const PROVIDER_SCOPE_ENTRY_BRAND: unique symbol;
7
+ declare const PROVIDER_SCOPE_BRAND: unique symbol;
8
+ declare const PROVIDER_RESOLUTION_BRAND: unique symbol;
9
+ declare const COMMAND_INTENT_BRAND: unique symbol;
10
+ declare const COMMAND_INTENT_PAYLOAD: unique symbol;
11
+ export type ProviderId = string;
12
+ export type RequirementId = string;
13
+ export type CommandIntentId = string;
14
+ export type BindingStatus = 'ready' | 'loading' | 'empty' | 'stale' | 'error';
15
+ export type BindingIssueSeverity = 'info' | 'warning' | 'error';
16
+ export type ProviderResolutionStatus = 'resolved' | 'missing-optional' | 'missing-required';
17
+ export type BindingFact = ModeLoweringFact;
18
+ export type DeepReadonly<T> = T extends readonly (infer Item)[] ? readonly DeepReadonly<Item>[] : T extends object ? {
19
+ readonly [Key in keyof T]: DeepReadonly<T[Key]>;
20
+ } : T;
21
+ export interface BindingIssue {
22
+ readonly severity: BindingIssueSeverity;
23
+ readonly code: string;
24
+ readonly message: string;
25
+ readonly path?: string;
26
+ }
27
+ export interface DataRequirementInput {
28
+ readonly id: string;
29
+ readonly resource: string;
30
+ readonly label?: string;
31
+ readonly description?: string;
32
+ readonly optional?: boolean;
33
+ readonly facts?: readonly BindingFact[];
34
+ }
35
+ export interface DataRequirement {
36
+ readonly [DATA_REQUIREMENT_BRAND]: true;
37
+ readonly id: RequirementId;
38
+ readonly resource: string;
39
+ readonly label?: string;
40
+ readonly description?: string;
41
+ readonly optional?: boolean;
42
+ readonly facts: readonly BindingFact[];
43
+ }
44
+ export interface DataProviderInput {
45
+ readonly id: string;
46
+ readonly resource: string;
47
+ readonly label?: string;
48
+ readonly description?: string;
49
+ readonly facts?: readonly BindingFact[];
50
+ }
51
+ export interface DataProvider {
52
+ readonly [DATA_PROVIDER_BRAND]: true;
53
+ readonly id: ProviderId;
54
+ readonly resource: string;
55
+ readonly label?: string;
56
+ readonly description?: string;
57
+ readonly facts: readonly BindingFact[];
58
+ }
59
+ export interface ViewDataRequirementEntry {
60
+ readonly name: string;
61
+ readonly requirement: DataRequirement;
62
+ }
63
+ export interface ViewDataInput {
64
+ readonly id?: string;
65
+ readonly label?: string;
66
+ readonly description?: string;
67
+ readonly requirements: readonly ViewDataRequirementEntry[];
68
+ readonly facts?: readonly BindingFact[];
69
+ }
70
+ export interface ProviderScopeEntry {
71
+ readonly [PROVIDER_SCOPE_ENTRY_BRAND]: true;
72
+ readonly resource: string;
73
+ readonly provider: DataProvider;
74
+ }
75
+ export interface ProviderScopeOptions {
76
+ readonly id?: string;
77
+ readonly label?: string;
78
+ readonly description?: string;
79
+ readonly facts?: readonly BindingFact[];
80
+ }
81
+ export interface ProviderResolution {
82
+ readonly [PROVIDER_RESOLUTION_BRAND]: true;
83
+ readonly requirementId: RequirementId;
84
+ readonly resource: string;
85
+ readonly optional: boolean;
86
+ readonly status: ProviderResolutionStatus;
87
+ readonly scopeId?: string;
88
+ readonly providerId?: ProviderId;
89
+ readonly issues: readonly BindingIssue[];
90
+ readonly facts: readonly BindingFact[];
91
+ }
92
+ export interface BindingSnapshotInput<Data = unknown> {
93
+ readonly providerId: string;
94
+ readonly requirementId: string;
95
+ readonly version: number;
96
+ readonly status: BindingStatus;
97
+ readonly data?: Data;
98
+ readonly issues?: readonly BindingIssue[];
99
+ readonly facts?: readonly BindingFact[];
100
+ }
101
+ export interface BindingSnapshot<Data = unknown> {
102
+ readonly [BINDING_SNAPSHOT_BRAND]: true;
103
+ readonly providerId: ProviderId;
104
+ readonly requirementId: RequirementId;
105
+ readonly version: number;
106
+ readonly status: BindingStatus;
107
+ readonly data?: DeepReadonly<Data>;
108
+ readonly issues: readonly BindingIssue[];
109
+ readonly facts: readonly BindingFact[];
110
+ }
111
+ export interface BindingFrameFromSnapshotsInput {
112
+ readonly resolutions: readonly ProviderResolution[];
113
+ readonly snapshots: readonly BindingSnapshot[];
114
+ }
115
+ export interface BindingFrameAssembly {
116
+ readonly frame: BindingFrame;
117
+ readonly issues: readonly BindingIssue[];
118
+ readonly facts: readonly BindingFact[];
119
+ }
120
+ export interface CommandIntentOptions {
121
+ readonly label?: string;
122
+ readonly description?: string;
123
+ readonly facts?: readonly BindingFact[];
124
+ }
125
+ export interface CommandIntent<Payload = unknown> {
126
+ readonly [COMMAND_INTENT_BRAND]: true;
127
+ readonly [COMMAND_INTENT_PAYLOAD]?: Payload;
128
+ readonly id: CommandIntentId;
129
+ readonly label?: string;
130
+ readonly description?: string;
131
+ readonly facts: readonly BindingFact[];
132
+ }
133
+ export declare class ViewDataContract {
134
+ #private;
135
+ readonly [VIEW_DATA_CONTRACT_BRAND] = true;
136
+ readonly id?: string;
137
+ readonly label?: string;
138
+ readonly description?: string;
139
+ readonly facts: readonly BindingFact[];
140
+ constructor(input: ViewDataInput);
141
+ names(): readonly string[];
142
+ requirementIds(): readonly RequirementId[];
143
+ entries(): readonly ViewDataRequirementEntry[];
144
+ requirements(): readonly DataRequirement[];
145
+ entry(name: string): ViewDataRequirementEntry | undefined;
146
+ requirement(name: string): DataRequirement | undefined;
147
+ }
148
+ export declare class ProviderScope {
149
+ #private;
150
+ readonly [PROVIDER_SCOPE_BRAND] = true;
151
+ readonly id?: string;
152
+ readonly label?: string;
153
+ readonly description?: string;
154
+ readonly facts: readonly BindingFact[];
155
+ constructor(entries: readonly ProviderScopeEntry[], options?: ProviderScopeOptions);
156
+ resources(): readonly string[];
157
+ providers(): readonly DataProvider[];
158
+ providerIds(): readonly ProviderId[];
159
+ has(resource: string): boolean;
160
+ get(resource: string): DataProvider | undefined;
161
+ }
162
+ export declare class BindingFrame {
163
+ #private;
164
+ constructor(snapshots: readonly BindingSnapshot[]);
165
+ ids(): readonly RequirementId[];
166
+ snapshot<Data = unknown>(requirementId: RequirementId): BindingSnapshot<Data> | undefined;
167
+ get<Data = unknown>(requirementId: RequirementId): DeepReadonly<Data> | undefined;
168
+ require<Data = unknown>(requirementId: RequirementId): DeepReadonly<Data>;
169
+ status(requirementId: RequirementId): BindingStatus | undefined;
170
+ issues(requirementId: RequirementId): readonly BindingIssue[];
171
+ facts(requirementId: RequirementId): readonly BindingFact[];
172
+ }
173
+ export declare function defineDataRequirement(input: DataRequirementInput): DataRequirement;
174
+ export declare function isDataRequirement(value: unknown): value is DataRequirement;
175
+ export declare function defineViewData(input: ViewDataInput): ViewDataContract;
176
+ export declare function isViewDataContract(value: unknown): value is ViewDataContract;
177
+ export declare function defineDataProvider(input: DataProviderInput): DataProvider;
178
+ export declare function provide(provider: DataProvider): ProviderScopeEntry;
179
+ export declare function providerScope(entries: readonly ProviderScopeEntry[], options?: ProviderScopeOptions): ProviderScope;
180
+ export declare function resolveProviderRequirement(requirement: DataRequirement, scope: ProviderScope): ProviderResolution;
181
+ export declare function resolveProviderRequirements(requirements: readonly DataRequirement[], scope: ProviderScope): readonly ProviderResolution[];
182
+ export declare function bindingSnapshot<Data = unknown>(input: BindingSnapshotInput<Data>): BindingSnapshot<Data>;
183
+ export declare function bindingFrame(snapshots: readonly BindingSnapshot[]): BindingFrame;
184
+ export declare function bindingFrameFromSnapshots(input: BindingFrameFromSnapshotsInput): BindingFrameAssembly;
185
+ export declare function commandIntent<Payload = unknown>(id: string, options?: CommandIntentOptions): CommandIntent<Payload>;
186
+ export declare function isBindingSnapshot(value: unknown): value is BindingSnapshot;
187
+ export declare function isDataProvider(value: unknown): value is DataProvider;
188
+ export declare function isProviderScope(value: unknown): value is ProviderScope;
189
+ export declare function isCommandIntent(value: unknown): value is CommandIntent;
190
+ export declare function isProviderResolution(value: unknown): value is ProviderResolution;
191
+ export {};
192
+ //# sourceMappingURL=binding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/core/binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,QAAA,MAAM,sBAAsB,EAAE,OAAO,MAAkC,CAAC;AACxE,QAAA,MAAM,mBAAmB,EAAE,OAAO,MAA+B,CAAC;AAClE,QAAA,MAAM,wBAAwB,EAAE,OAAO,MAAmC,CAAC;AAC3E,QAAA,MAAM,sBAAsB,EAAE,OAAO,MAAkC,CAAC;AACxE,QAAA,MAAM,0BAA0B,EAAE,OAAO,MAAqC,CAAC;AAC/E,QAAA,MAAM,oBAAoB,EAAE,OAAO,MAAgC,CAAC;AACpE,QAAA,MAAM,yBAAyB,EAAE,OAAO,MAAqC,CAAC;AAC9E,QAAA,MAAM,oBAAoB,EAAE,OAAO,MAAgC,CAAC;AACpE,QAAA,MAAM,sBAAsB,EAAE,OAAO,MAAuC,CAAC;AAE7E,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AAErC,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAE9E,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhE,MAAM,MAAM,wBAAwB,GAAG,UAAU,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAE5F,MAAM,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAE3C,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,GAC3D,SAAS,YAAY,CAAC,IAAI,CAAC,EAAE,GAC7B,CAAC,SAAS,MAAM,GACd;IAAE,QAAQ,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAAE,GACnD,CAAC,CAAC;AAER,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,CAAC,0BAA0B,CAAC,EAAE,IAAI,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC;IAC3C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,oBAAoB,CAAC,IAAI,GAAG,OAAO;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,eAAe,CAAC,IAAI,GAAG,OAAO;IAC7C,QAAQ,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,aAAa,CAAC,OAAO,GAAG,OAAO;IAC9C,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC;IACtC,QAAQ,CAAC,CAAC,sBAAsB,CAAC,CAAC,EAAE,OAAO,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAiBD,qBAAa,gBAAgB;;IAC3B,QAAQ,CAAC,CAAC,wBAAwB,CAAC,QAAQ;IAG3C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;gBAE3B,KAAK,EAAE,aAAa;IAqChC,KAAK,IAAI,SAAS,MAAM,EAAE;IAI1B,cAAc,IAAI,SAAS,aAAa,EAAE;IAI1C,OAAO,IAAI,SAAS,wBAAwB,EAAE;IAI9C,YAAY,IAAI,SAAS,eAAe,EAAE;IAI1C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IAUzD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;CAGvD;AAED,qBAAa,aAAa;;IACxB,QAAQ,CAAC,CAAC,oBAAoB,CAAC,QAAQ;IAGvC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;gBAE3B,OAAO,EAAE,SAAS,kBAAkB,EAAE,EAAE,OAAO,GAAE,oBAAyB;IA+BtF,SAAS,IAAI,SAAS,MAAM,EAAE;IAI9B,SAAS,IAAI,SAAS,YAAY,EAAE;IAIpC,WAAW,IAAI,SAAS,UAAU,EAAE;IAIpC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9B,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;CAShD;AAED,qBAAa,YAAY;;gBAGX,SAAS,EAAE,SAAS,eAAe,EAAE;IAqBjD,GAAG,IAAI,SAAS,aAAa,EAAE;IAI/B,QAAQ,CAAC,IAAI,GAAG,OAAO,EAAE,aAAa,EAAE,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,SAAS;IAYzF,GAAG,CAAC,IAAI,GAAG,OAAO,EAAE,aAAa,EAAE,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,SAAS;IAIjF,OAAO,CAAC,IAAI,GAAG,OAAO,EAAE,aAAa,EAAE,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC;IAiBzE,MAAM,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa,GAAG,SAAS;IAI/D,MAAM,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,YAAY,EAAE;IAI7D,KAAK,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,WAAW,EAAE;CAG5D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,eAAe,CAoBlF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAM1E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAErE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAM5E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CAmBzE;AAED,wBAAgB,OAAO,CAAC,QAAQ,EAAE,YAAY,GAAG,kBAAkB,CAYlE;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,SAAS,kBAAkB,EAAE,EACtC,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAEf;AAED,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,eAAe,EAC5B,KAAK,EAAE,aAAa,GACnB,kBAAkB,CA4CpB;AAED,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,SAAS,eAAe,EAAE,EACxC,KAAK,EAAE,aAAa,GACnB,SAAS,kBAAkB,EAAE,CAI/B;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAG,OAAO,EAC5C,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,GAChC,eAAe,CAAC,IAAI,CAAC,CA8BvB;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,GAAG,YAAY,CAEhF;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,8BAA8B,GAAG,oBAAoB,CA2ErG;AAED,wBAAgB,aAAa,CAAC,OAAO,GAAG,OAAO,EAC7C,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAAC,OAAO,CAAC,CAcxB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAM1E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAMpE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAMtE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAMtE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAMhF"}