@wootsup/yt-builder-mcp 1.11.0 → 1.12.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 (189) hide show
  1. package/README.md +10 -10
  2. package/bin/yt-builder-mcp.js +1 -1
  3. package/dist/auth.d.ts +1 -1
  4. package/dist/auth.js +1 -1
  5. package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
  6. package/dist/catalog/tool-catalog-markdown.js +13 -1
  7. package/dist/catalog/tool-catalog-markdown.js.map +1 -1
  8. package/dist/cli/doctor-command.d.ts.map +1 -1
  9. package/dist/cli/doctor-command.js +22 -2
  10. package/dist/cli/doctor-command.js.map +1 -1
  11. package/dist/client.d.ts +3 -3
  12. package/dist/client.js +1 -1
  13. package/dist/client.js.map +1 -1
  14. package/dist/clients/index.d.ts +1 -1
  15. package/dist/clients/index.js +1 -1
  16. package/dist/diagnostics/ca-reexec.js +2 -2
  17. package/dist/diagnostics/diagnose-network-error.d.ts +1 -1
  18. package/dist/diagnostics/doctor.d.ts +34 -2
  19. package/dist/diagnostics/doctor.d.ts.map +1 -1
  20. package/dist/diagnostics/doctor.js +63 -2
  21. package/dist/diagnostics/doctor.js.map +1 -1
  22. package/dist/diagnostics/startup-self-probe.js +1 -1
  23. package/dist/gateway/advanced-read-tool.js +1 -1
  24. package/dist/gateway/advanced-read-tool.js.map +1 -1
  25. package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
  26. package/dist/gateway/advanced-tool/discovery.js +12 -1
  27. package/dist/gateway/advanced-tool/discovery.js.map +1 -1
  28. package/dist/gateway/essentials.d.ts +4 -4
  29. package/dist/gateway/essentials.d.ts.map +1 -1
  30. package/dist/gateway/essentials.js +12 -7
  31. package/dist/gateway/essentials.js.map +1 -1
  32. package/dist/install-skill.js +1 -1
  33. package/dist/net/extra-headers.d.ts +1 -1
  34. package/dist/net/extra-headers.js +1 -1
  35. package/dist/net/internal-host.js +2 -2
  36. package/dist/net/proxy-dispatcher.js +1 -1
  37. package/dist/net/proxy-dispatcher.js.map +1 -1
  38. package/dist/net/site-basic-auth.d.ts +2 -2
  39. package/dist/net/site-basic-auth.js +2 -2
  40. package/dist/proxy/bridge.d.ts +2 -2
  41. package/dist/proxy/bridge.js +3 -3
  42. package/dist/proxy/bridge.js.map +1 -1
  43. package/dist/setup-cli.d.ts +2 -2
  44. package/dist/setup-cli.js +2 -2
  45. package/dist/setup-cli.js.map +1 -1
  46. package/dist/setup-npx-spec.d.ts +1 -1
  47. package/dist/setup-npx-spec.js +1 -1
  48. package/dist/setup-wizard-handshake.js +1 -1
  49. package/dist/setup-wizard-types.d.ts +1 -1
  50. package/dist/setup-wizard.js +3 -3
  51. package/dist/setup-wizard.js.map +1 -1
  52. package/dist/sites/client-pool.d.ts +1 -1
  53. package/dist/sites/client-pool.js +1 -1
  54. package/dist/sites/tools/sites-list.d.ts.map +1 -1
  55. package/dist/sites/tools/sites-list.js +4 -2
  56. package/dist/sites/tools/sites-list.js.map +1 -1
  57. package/dist/sites/tools/sites-test.js +1 -1
  58. package/dist/sites/tools/sites-test.js.map +1 -1
  59. package/dist/sites/tools/use-site.js +2 -2
  60. package/dist/sites/tools/use-site.js.map +1 -1
  61. package/dist/tools/budgeted-table.d.ts +21 -0
  62. package/dist/tools/budgeted-table.d.ts.map +1 -0
  63. package/dist/tools/budgeted-table.js +137 -0
  64. package/dist/tools/budgeted-table.js.map +1 -0
  65. package/dist/tools/elements/builders.d.ts.map +1 -1
  66. package/dist/tools/elements/builders.js +48 -24
  67. package/dist/tools/elements/builders.js.map +1 -1
  68. package/dist/tools/elements/handlers-write.d.ts +19 -0
  69. package/dist/tools/elements/handlers-write.d.ts.map +1 -1
  70. package/dist/tools/elements/handlers-write.js +100 -3
  71. package/dist/tools/elements/handlers-write.js.map +1 -1
  72. package/dist/tools/elements/handlers.d.ts +13 -8
  73. package/dist/tools/elements/handlers.d.ts.map +1 -1
  74. package/dist/tools/elements/handlers.js +28 -18
  75. package/dist/tools/elements/handlers.js.map +1 -1
  76. package/dist/tools/elements/schema-validation.d.ts +129 -7
  77. package/dist/tools/elements/schema-validation.d.ts.map +1 -1
  78. package/dist/tools/elements/schema-validation.js +459 -23
  79. package/dist/tools/elements/schema-validation.js.map +1 -1
  80. package/dist/tools/format/elements-format.d.ts.map +1 -1
  81. package/dist/tools/format/elements-format.js +56 -12
  82. package/dist/tools/format/elements-format.js.map +1 -1
  83. package/dist/tools/format/health-format.d.ts +16 -0
  84. package/dist/tools/format/health-format.d.ts.map +1 -1
  85. package/dist/tools/format/health-format.js +9 -0
  86. package/dist/tools/format/health-format.js.map +1 -1
  87. package/dist/tools/format/inspection-format.d.ts +7 -0
  88. package/dist/tools/format/inspection-format.d.ts.map +1 -1
  89. package/dist/tools/format/inspection-format.js +18 -0
  90. package/dist/tools/format/inspection-format.js.map +1 -1
  91. package/dist/tools/format/pages-format.d.ts +1 -1
  92. package/dist/tools/format/pages-format.d.ts.map +1 -1
  93. package/dist/tools/format/pages-format.js +7 -0
  94. package/dist/tools/format/pages-format.js.map +1 -1
  95. package/dist/tools/health.d.ts.map +1 -1
  96. package/dist/tools/health.js +67 -6
  97. package/dist/tools/health.js.map +1 -1
  98. package/dist/tools/index.d.ts.map +1 -1
  99. package/dist/tools/index.js +7 -0
  100. package/dist/tools/index.js.map +1 -1
  101. package/dist/tools/inspection.d.ts +34 -0
  102. package/dist/tools/inspection.d.ts.map +1 -1
  103. package/dist/tools/inspection.js +600 -65
  104. package/dist/tools/inspection.js.map +1 -1
  105. package/dist/tools/library.d.ts +6 -2
  106. package/dist/tools/library.d.ts.map +1 -1
  107. package/dist/tools/library.js +36 -21
  108. package/dist/tools/library.js.map +1 -1
  109. package/dist/tools/local-content/builders.js +4 -4
  110. package/dist/tools/local-content/builders.js.map +1 -1
  111. package/dist/tools/local-content/handlers.d.ts +3 -1
  112. package/dist/tools/local-content/handlers.d.ts.map +1 -1
  113. package/dist/tools/local-content/handlers.js +8 -4
  114. package/dist/tools/local-content/handlers.js.map +1 -1
  115. package/dist/tools/multi-items/builders.d.ts.map +1 -1
  116. package/dist/tools/multi-items/builders.js +2 -4
  117. package/dist/tools/multi-items/builders.js.map +1 -1
  118. package/dist/tools/navigation/builders.d.ts +18 -0
  119. package/dist/tools/navigation/builders.d.ts.map +1 -0
  120. package/dist/tools/navigation/builders.js +47 -0
  121. package/dist/tools/navigation/builders.js.map +1 -0
  122. package/dist/tools/navigation/handlers.d.ts +30 -0
  123. package/dist/tools/navigation/handlers.d.ts.map +1 -0
  124. package/dist/tools/navigation/handlers.js +41 -0
  125. package/dist/tools/navigation/handlers.js.map +1 -0
  126. package/dist/tools/navigation/index.d.ts +15 -0
  127. package/dist/tools/navigation/index.d.ts.map +1 -0
  128. package/dist/tools/navigation/index.js +14 -0
  129. package/dist/tools/navigation/index.js.map +1 -0
  130. package/dist/tools/navigation/schemas.d.ts +46 -0
  131. package/dist/tools/navigation/schemas.d.ts.map +1 -0
  132. package/dist/tools/navigation/schemas.js +41 -0
  133. package/dist/tools/navigation/schemas.js.map +1 -0
  134. package/dist/tools/pages/builders.d.ts.map +1 -1
  135. package/dist/tools/pages/builders.js +148 -49
  136. package/dist/tools/pages/builders.js.map +1 -1
  137. package/dist/tools/pages/handlers-audit.d.ts +14 -3
  138. package/dist/tools/pages/handlers-audit.d.ts.map +1 -1
  139. package/dist/tools/pages/handlers-audit.js +11 -1
  140. package/dist/tools/pages/handlers-audit.js.map +1 -1
  141. package/dist/tools/pages/handlers-read.d.ts +43 -5
  142. package/dist/tools/pages/handlers-read.d.ts.map +1 -1
  143. package/dist/tools/pages/handlers-read.js +176 -44
  144. package/dist/tools/pages/handlers-read.js.map +1 -1
  145. package/dist/tools/pages/handlers-write.d.ts +2 -2
  146. package/dist/tools/pages/handlers-write.d.ts.map +1 -1
  147. package/dist/tools/pages/handlers-write.js +3 -2
  148. package/dist/tools/pages/handlers-write.js.map +1 -1
  149. package/dist/tools/pages/header-transparency.d.ts +64 -0
  150. package/dist/tools/pages/header-transparency.d.ts.map +1 -0
  151. package/dist/tools/pages/header-transparency.js +119 -0
  152. package/dist/tools/pages/header-transparency.js.map +1 -0
  153. package/dist/tools/pages/schemas.d.ts +95 -9
  154. package/dist/tools/pages/schemas.d.ts.map +1 -1
  155. package/dist/tools/pages/schemas.js +201 -19
  156. package/dist/tools/pages/schemas.js.map +1 -1
  157. package/dist/tools/response-budget.d.ts +77 -0
  158. package/dist/tools/response-budget.d.ts.map +1 -0
  159. package/dist/tools/response-budget.js +134 -0
  160. package/dist/tools/response-budget.js.map +1 -0
  161. package/dist/tools/shared-schemas.d.ts +23 -0
  162. package/dist/tools/shared-schemas.d.ts.map +1 -1
  163. package/dist/tools/shared-schemas.js +28 -0
  164. package/dist/tools/shared-schemas.js.map +1 -1
  165. package/dist/tools/sources/builders.d.ts.map +1 -1
  166. package/dist/tools/sources/builders.js +13 -15
  167. package/dist/tools/sources/builders.js.map +1 -1
  168. package/dist/tools/sources/handlers-bind.d.ts +3 -3
  169. package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
  170. package/dist/tools/sources/handlers-bind.js +4 -2
  171. package/dist/tools/sources/handlers-bind.js.map +1 -1
  172. package/dist/tools/sources/handlers.d.ts +4 -2
  173. package/dist/tools/sources/handlers.d.ts.map +1 -1
  174. package/dist/tools/sources/handlers.js +11 -7
  175. package/dist/tools/sources/handlers.js.map +1 -1
  176. package/dist/tools/sparse-fields.d.ts +49 -8
  177. package/dist/tools/sparse-fields.d.ts.map +1 -1
  178. package/dist/tools/sparse-fields.js +90 -10
  179. package/dist/tools/sparse-fields.js.map +1 -1
  180. package/dist/tools/sublayout/builders.d.ts.map +1 -1
  181. package/dist/tools/sublayout/builders.js +1 -2
  182. package/dist/tools/sublayout/builders.js.map +1 -1
  183. package/dist/tools/tool-builder/results.d.ts +19 -6
  184. package/dist/tools/tool-builder/results.d.ts.map +1 -1
  185. package/dist/tools/tool-builder/results.js +19 -6
  186. package/dist/tools/tool-builder/results.js.map +1 -1
  187. package/manifest.json +1 -1
  188. package/package.json +2 -2
  189. package/skills/yt-builder-mcp/SKILL.md +1202 -83
@@ -5,7 +5,7 @@
5
5
  * `./handlers-write.ts` only catch a small fixed set of known mistakes. An
6
6
  * unknown prop key that is NOT in those tables slips through, the PHP backend
7
7
  * silently drops it, and the element renders empty with no signal to the agent
8
- * (Glöckle B3).
8
+ * (customer B3).
9
9
  *
10
10
  * This module adds a LIVE cross-check against the element-type's real schema:
11
11
  * the authoritative prop keys are `fields[].name` from
@@ -66,18 +66,49 @@ export declare function nearestFieldName(key: string, fields: readonly string[])
66
66
  */
67
67
  export declare function suggestFieldNames(key: string, fields: readonly string[]): string[];
68
68
  /**
69
- * Pull `fields[].name` out of the element-type schema response. Mirrors the
70
- * envelope handling in `../inspection.ts`: the type schema nests under
71
- * `schema`, with a top-level fallback for older backends.
69
+ * Ordering-red-border fix (2026-07-25) the full per-field wire shape, as
70
+ * opposed to `extractSchemaFieldNames`' bare name list. `enum`/`default` were
71
+ * previously fetched by every caller (via `fields[].name` extraction) and then
72
+ * DISCARDED — this is what `element_add`'s required-enum default-seeding and
73
+ * explicit-invalid-enum-value hard-reject (`seedRequiredEnumDefaults` /
74
+ * `validateEnumPropValues`, below) need to do their job.
75
+ */
76
+ export interface SchemaField {
77
+ readonly name: string;
78
+ readonly type?: string;
79
+ /** Normalised to `list<string>` server-side (`Inspector::extractEnum`); absent when the field has no dropdown/select options. */
80
+ readonly enum?: readonly string[];
81
+ /** `mixed` server-side; absent when the field declares no schema default. */
82
+ readonly default?: unknown;
83
+ }
84
+ /**
85
+ * Pull the full `fields[]` list out of the element-type schema response.
86
+ * Mirrors the envelope handling in `../inspection.ts`: the type schema nests
87
+ * under `schema`, with a top-level fallback for older backends.
88
+ *
89
+ * @returns the field list (possibly empty), or `null` when the response
90
+ * carries no `fields` array at all (unknown schema shape → treat as unknown).
91
+ */
92
+ export declare function extractSchemaFields(data: unknown): SchemaField[] | null;
93
+ /**
94
+ * Pull `fields[].name` out of the element-type schema response. Thin
95
+ * name-only projection of {@link extractSchemaFields} — kept as its own
96
+ * export because every EXISTING caller/test only needs the name list.
72
97
  *
73
98
  * @returns the field-name list (possibly empty), or `null` when the response
74
99
  * carries no `fields` array at all (unknown schema shape → treat as unknown).
75
100
  */
76
101
  export declare function extractSchemaFieldNames(data: unknown): string[] | null;
77
102
  /**
78
- * Best-effort fetch of an element-type's real prop keys. ANY failure (network,
79
- * non-2xx, unknown shape) resolves to `null` so the caller falls through to the
80
- * prior behaviour — a schema fetch must never break the write.
103
+ * Best-effort fetch of an element-type's full field schema. ANY failure
104
+ * (network, non-2xx, unknown shape) resolves to `null` so the caller falls
105
+ * through to the prior behaviour — a schema fetch must never break the write.
106
+ */
107
+ export declare function fetchSchemaFields(client: RestClient, elementType: string): Promise<SchemaField[] | null>;
108
+ /**
109
+ * Best-effort fetch of an element-type's real prop keys. Name-only
110
+ * projection of {@link fetchSchemaFields} — kept as its own export for
111
+ * existing callers that only need the key list.
81
112
  */
82
113
  export declare function fetchSchemaFieldNames(client: RestClient, elementType: string): Promise<string[] | null>;
83
114
  /**
@@ -92,5 +123,96 @@ export declare function validatePropsAgainstLiveSchema(opts: {
92
123
  readonly elementType: string;
93
124
  readonly props: Record<string, unknown> | undefined;
94
125
  readonly reservedKeys: ReadonlySet<string>;
126
+ /**
127
+ * Ordering-red-border fix (2026-07-25): reuse an ALREADY-fetched live
128
+ * schema (e.g. `element_add`'s default-seeding fetches it anyway) instead
129
+ * of a second network round-trip for the SAME element_type. `undefined`
130
+ * (the omitted default) preserves the original behaviour — this function
131
+ * fetches for itself. Passing `null` explicitly means "already fetched
132
+ * and it failed / was uncertain" and short-circuits to the same
133
+ * fall-through as a failed fetch, with no network call.
134
+ */
135
+ readonly fields?: readonly SchemaField[] | null;
95
136
  }): Promise<ToolResult | null>;
137
+ /**
138
+ * A field is "required" in the same sense the PHP-side `UiInvariantValidator`
139
+ * uses for its `required_field_empty` violation: it is enum-constrained (a
140
+ * non-empty `enum` list) and that list does NOT contain `''` — an optional
141
+ * select always lists `''` as its "nothing selected" member.
142
+ */
143
+ export declare function isRequiredEnumField(field: SchemaField): boolean;
144
+ /**
145
+ * Seed every REQUIRED enum field (see {@link isRequiredEnumField}) that
146
+ * declares a non-empty schema `default` and is ABSENT from `props` with that
147
+ * default — mirroring what YOOtheme's own native element-creation
148
+ * initialises. A field the caller already supplied a key for (any value,
149
+ * including one later hard-rejected by {@link validateEnumPropValues}) is
150
+ * never touched: the caller's own value ALWAYS wins, no coercion, ever. An
151
+ * element type with no schema default for a field gets nothing invented for
152
+ * it — the seed set only ever pulls from real schema data.
153
+ *
154
+ * Returns `props` UNCHANGED (same reference, possibly `undefined`) when
155
+ * there is nothing to seed, so a no-op call never allocates a new object.
156
+ */
157
+ export declare function seedRequiredEnumDefaults(fields: readonly SchemaField[], props: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
158
+ /**
159
+ * Hard-reject a prop VALUE the caller explicitly supplied for a KNOWN
160
+ * enum-constrained field when that value is not one of the field's declared
161
+ * `enum` members. `validatePropsAgainstLiveSchema` only ever checks that a
162
+ * prop KEY is known — this is the VALUE half, scoped to element_add's create
163
+ * path only (see the section banner above for why).
164
+ *
165
+ * An empty value (`''` / `null` / `undefined`) is deliberately NOT judged
166
+ * here — persisting an empty value on a required field is a DIFFERENT
167
+ * violation (`required_field_empty`) the PHP write guard already owns; this
168
+ * function only judges a genuinely non-empty value against enum membership.
169
+ * A non-scalar value (a dynamic-binding shape) is skipped — it cannot be
170
+ * safely compared against a string enum and is not this function's concern.
171
+ *
172
+ * Returns `null` (pass) whenever the field is unknown to the given `fields`
173
+ * list or is not enum-constrained — this is a value check layered ON TOP of
174
+ * the key check, never a whitelist on its own.
175
+ */
176
+ export declare function validateEnumPropValues(opts: {
177
+ readonly elementType: string;
178
+ readonly fields: readonly SchemaField[];
179
+ readonly props: Record<string, unknown> | undefined;
180
+ readonly reservedKeys: ReadonlySet<string>;
181
+ }): ToolResult | null;
182
+ /** A non-blocking note attached to a SUCCESSFUL write. */
183
+ export interface HeaderTransparencyWarning {
184
+ readonly code: string;
185
+ readonly message: string;
186
+ }
187
+ export interface HeaderTransparencyGuardOutcome {
188
+ /** A hard reject (class A), or `null` when the write may proceed. */
189
+ readonly rejection: ToolResult | null;
190
+ /**
191
+ * The props to actually send — the SAME reference when nothing was seeded,
192
+ * so a no-op call never allocates and a byte-identical body is preserved.
193
+ */
194
+ readonly props: Record<string, unknown> | undefined;
195
+ readonly warnings: readonly HeaderTransparencyWarning[];
196
+ }
197
+ /**
198
+ * Guard a props write against the transparent-header failure modes.
199
+ *
200
+ * Pure: takes the write's own payload (plus its merge/unset semantics) and
201
+ * returns a rejection, the props to send, and any warnings. No I/O — it never
202
+ * needs the element type either, because the three props are namespaced and
203
+ * exist on `section` alone.
204
+ */
205
+ export declare function guardHeaderTransparencyWrite(opts: {
206
+ readonly props: Record<string, unknown> | undefined;
207
+ /** `true` = server-side deep merge; anything else = full replace (the default). */
208
+ readonly merge?: boolean;
209
+ readonly unset?: readonly string[];
210
+ readonly elementPath: string;
211
+ }): HeaderTransparencyGuardOutcome;
212
+ /**
213
+ * Merge client-side warnings into a REST response body so a successful write
214
+ * still carries them. A non-object body (or an empty warning list) is returned
215
+ * untouched, so nothing that has no place to put them is reshaped.
216
+ */
217
+ export declare function withHeaderTransparencyWarnings(data: unknown, warnings: readonly HeaderTransparencyWarning[]): unknown;
96
218
  //# sourceMappingURL=schema-validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-validation.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/schema-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAElE;;;;;;;;;GASG;AACH,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAErF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBxD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,GAAG,SAAS,CAkBpB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAC7B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,EAAE,CAmBV;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAiBtE;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACvC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAS1B;AAED;;;;;;GAMG;AACH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE;IACvD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9C,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAiE7B"}
1
+ {"version":3,"file":"schema-validation.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/schema-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE9E;;;;;;;;;GASG;AACH,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAErF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBxD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,GAAG,SAAS,CAkBpB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAC7B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,EAAE,CAmBV;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,iIAAiI;IACjI,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,EAAE,GAAG,IAAI,CAuCvE;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAGtE;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACnC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,CAS/B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACvC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAG1B;AAED;;;;;;GAMG;AACH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE;IACvD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3C;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAAC;CACnD,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAkE7B;AA0BD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAE/D;AAOD;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,SAAS,WAAW,EAAE,EAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC3C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAUrC;AAsBD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9C,GAAG,UAAU,GAAG,IAAI,CAiCpB;AAkGD,0DAA0D;AAC1D,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,QAAQ,EAAE,SAAS,yBAAyB,EAAE,CAAC;CAC3D;AAiFD;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,mFAAmF;IACnF,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC,GAAG,8BAA8B,CAmHjC;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,SAAS,yBAAyB,EAAE,GAC/C,OAAO,CAQT"}