@stapel/categories-react 0.1.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/CHANGELOG.md +1 -0
- package/MODULE.md +194 -0
- package/README.md +191 -0
- package/dist/api/categoriesApi.d.ts +121 -0
- package/dist/api/categoriesApi.d.ts.map +1 -0
- package/dist/api/categoriesApi.js +48 -0
- package/dist/api/categoriesApi.js.map +1 -0
- package/dist/api/generated/schema.d.ts +2321 -0
- package/dist/api/generated/schema.d.ts.map +1 -0
- package/dist/api/generated/schema.js +2 -0
- package/dist/api/generated/schema.js.map +1 -0
- package/dist/api/types.d.ts +92 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +2 -0
- package/dist/api/types.js.map +1 -0
- package/dist/catalog/labels.d.ts +103 -0
- package/dist/catalog/labels.d.ts.map +1 -0
- package/dist/catalog/labels.js +56 -0
- package/dist/catalog/labels.js.map +1 -0
- package/dist/catalog/pks.d.ts +25 -0
- package/dist/catalog/pks.d.ts.map +1 -0
- package/dist/catalog/pks.js +38 -0
- package/dist/catalog/pks.js.map +1 -0
- package/dist/catalog/sync.d.ts +103 -0
- package/dist/catalog/sync.d.ts.map +1 -0
- package/dist/catalog/sync.js +114 -0
- package/dist/catalog/sync.js.map +1 -0
- package/dist/catalog/tree.d.ts +119 -0
- package/dist/catalog/tree.d.ts.map +1 -0
- package/dist/catalog/tree.js +166 -0
- package/dist/catalog/tree.js.map +1 -0
- package/dist/default/CatalogPage.d.ts +16 -0
- package/dist/default/CatalogPage.d.ts.map +1 -0
- package/dist/default/CatalogPage.js +13 -0
- package/dist/default/CatalogPage.js.map +1 -0
- package/dist/default/CategoryBreadcrumbsBar.d.ts +20 -0
- package/dist/default/CategoryBreadcrumbsBar.d.ts.map +1 -0
- package/dist/default/CategoryBreadcrumbsBar.js +35 -0
- package/dist/default/CategoryBreadcrumbsBar.js.map +1 -0
- package/dist/default/CategoryCarouselStrip.d.ts +22 -0
- package/dist/default/CategoryCarouselStrip.d.ts.map +1 -0
- package/dist/default/CategoryCarouselStrip.js +24 -0
- package/dist/default/CategoryCarouselStrip.js.map +1 -0
- package/dist/default/CategoryFeatureList.d.ts +23 -0
- package/dist/default/CategoryFeatureList.d.ts.map +1 -0
- package/dist/default/CategoryFeatureList.js +28 -0
- package/dist/default/CategoryFeatureList.js.map +1 -0
- package/dist/default/CategoryPage.d.ts +43 -0
- package/dist/default/CategoryPage.d.ts.map +1 -0
- package/dist/default/CategoryPage.js +21 -0
- package/dist/default/CategoryPage.js.map +1 -0
- package/dist/default/CategoryPickerField.d.ts +26 -0
- package/dist/default/CategoryPickerField.d.ts.map +1 -0
- package/dist/default/CategoryPickerField.js +40 -0
- package/dist/default/CategoryPickerField.js.map +1 -0
- package/dist/default/CategoryTreePane.d.ts +28 -0
- package/dist/default/CategoryTreePane.d.ts.map +1 -0
- package/dist/default/CategoryTreePane.js +25 -0
- package/dist/default/CategoryTreePane.js.map +1 -0
- package/dist/default/ErrorAlert.d.ts +9 -0
- package/dist/default/ErrorAlert.d.ts.map +1 -0
- package/dist/default/ErrorAlert.js +27 -0
- package/dist/default/ErrorAlert.js.map +1 -0
- package/dist/default/index.d.ts +37 -0
- package/dist/default/index.d.ts.map +1 -0
- package/dist/default/index.js +28 -0
- package/dist/default/index.js.map +1 -0
- package/dist/default/theme.d.ts +25 -0
- package/dist/default/theme.d.ts.map +1 -0
- package/dist/default/theme.js +40 -0
- package/dist/default/theme.js.map +1 -0
- package/dist/default/types.d.ts +12 -0
- package/dist/default/types.d.ts.map +1 -0
- package/dist/default/types.js +2 -0
- package/dist/default/types.js.map +1 -0
- package/dist/headless/CategoriesProvider.d.ts +19 -0
- package/dist/headless/CategoriesProvider.d.ts.map +1 -0
- package/dist/headless/CategoriesProvider.js +15 -0
- package/dist/headless/CategoriesProvider.js.map +1 -0
- package/dist/headless/CategoryBreadcrumbs.d.ts +40 -0
- package/dist/headless/CategoryBreadcrumbs.d.ts.map +1 -0
- package/dist/headless/CategoryBreadcrumbs.js +42 -0
- package/dist/headless/CategoryBreadcrumbs.js.map +1 -0
- package/dist/headless/CategoryCarousel.d.ts +48 -0
- package/dist/headless/CategoryCarousel.d.ts.map +1 -0
- package/dist/headless/CategoryCarousel.js +34 -0
- package/dist/headless/CategoryCarousel.js.map +1 -0
- package/dist/headless/CategoryFeatures.d.ts +67 -0
- package/dist/headless/CategoryFeatures.d.ts.map +1 -0
- package/dist/headless/CategoryFeatures.js +46 -0
- package/dist/headless/CategoryFeatures.js.map +1 -0
- package/dist/headless/CategoryPicker.d.ts +69 -0
- package/dist/headless/CategoryPicker.d.ts.map +1 -0
- package/dist/headless/CategoryPicker.js +86 -0
- package/dist/headless/CategoryPicker.js.map +1 -0
- package/dist/headless/CategoryTree.d.ts +55 -0
- package/dist/headless/CategoryTree.d.ts.map +1 -0
- package/dist/headless/CategoryTree.js +51 -0
- package/dist/headless/CategoryTree.js.map +1 -0
- package/dist/i18n/errorsMap.d.ts +22 -0
- package/dist/i18n/errorsMap.d.ts.map +1 -0
- package/dist/i18n/errorsMap.js +31 -0
- package/dist/i18n/errorsMap.js.map +1 -0
- package/dist/i18n/es.d.ts +25 -0
- package/dist/i18n/es.d.ts.map +1 -0
- package/dist/i18n/es.js +74 -0
- package/dist/i18n/es.js.map +1 -0
- package/dist/i18n/generated/errors.es.gen.d.ts +16 -0
- package/dist/i18n/generated/errors.es.gen.d.ts.map +1 -0
- package/dist/i18n/generated/errors.es.gen.js +58 -0
- package/dist/i18n/generated/errors.es.gen.js.map +1 -0
- package/dist/i18n/generated/errors.gen.d.ts +407 -0
- package/dist/i18n/generated/errors.gen.d.ts.map +1 -0
- package/dist/i18n/generated/errors.gen.js +207 -0
- package/dist/i18n/generated/errors.gen.js.map +1 -0
- package/dist/i18n/generated/errors.ru.gen.d.ts +16 -0
- package/dist/i18n/generated/errors.ru.gen.d.ts.map +1 -0
- package/dist/i18n/generated/errors.ru.gen.js +58 -0
- package/dist/i18n/generated/errors.ru.gen.js.map +1 -0
- package/dist/i18n/keys.d.ts +89 -0
- package/dist/i18n/keys.d.ts.map +1 -0
- package/dist/i18n/keys.js +134 -0
- package/dist/i18n/keys.js.map +1 -0
- package/dist/i18n/ru.d.ts +41 -0
- package/dist/i18n/ru.d.ts.map +1 -0
- package/dist/i18n/ru.js +90 -0
- package/dist/i18n/ru.js.map +1 -0
- package/dist/index.d.ts +88 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +78 -0
- package/dist/index.js.map +1 -0
- package/dist/model/catalogStore.d.ts +23 -0
- package/dist/model/catalogStore.d.ts.map +1 -0
- package/dist/model/catalogStore.js +85 -0
- package/dist/model/catalogStore.js.map +1 -0
- package/dist/model/catalogSync.d.ts +49 -0
- package/dist/model/catalogSync.d.ts.map +1 -0
- package/dist/model/catalogSync.js +64 -0
- package/dist/model/catalogSync.js.map +1 -0
- package/dist/model/context.d.ts +11 -0
- package/dist/model/context.d.ts.map +1 -0
- package/dist/model/context.js +16 -0
- package/dist/model/context.js.map +1 -0
- package/dist/model/queries.d.ts +124 -0
- package/dist/model/queries.d.ts.map +1 -0
- package/dist/model/queries.js +147 -0
- package/dist/model/queries.js.map +1 -0
- package/dist/model/queryKeys.d.ts +30 -0
- package/dist/model/queryKeys.d.ts.map +1 -0
- package/dist/model/queryKeys.js +16 -0
- package/dist/model/queryKeys.js.map +1 -0
- package/dist/model/runtime.d.ts +31 -0
- package/dist/model/runtime.d.ts.map +1 -0
- package/dist/model/runtime.js +6 -0
- package/dist/model/runtime.js.map +1 -0
- package/dist/nav/manifest.d.ts +31 -0
- package/dist/nav/manifest.d.ts.map +1 -0
- package/dist/nav/manifest.js +37 -0
- package/dist/nav/manifest.js.map +1 -0
- package/llms.txt +125 -0
- package/manifest.json +918 -0
- package/nav-manifest.json +44 -0
- package/package.json +119 -0
- package/src/analytics/generated/events.json +7 -0
- package/src/api/categoriesApi.ts +179 -0
- package/src/api/generated/schema.ts +2323 -0
- package/src/api/types.ts +99 -0
- package/src/catalog/labels.ts +129 -0
- package/src/catalog/pks.ts +35 -0
- package/src/catalog/sync.ts +169 -0
- package/src/catalog/tree.ts +242 -0
- package/src/default/CatalogPage.tsx +40 -0
- package/src/default/CategoryBreadcrumbsBar.tsx +93 -0
- package/src/default/CategoryCarouselStrip.tsx +102 -0
- package/src/default/CategoryFeatureList.tsx +125 -0
- package/src/default/CategoryPage.tsx +114 -0
- package/src/default/CategoryPickerField.tsx +173 -0
- package/src/default/CategoryTreePane.tsx +134 -0
- package/src/default/ErrorAlert.tsx +46 -0
- package/src/default/index.ts +36 -0
- package/src/default/theme.tsx +67 -0
- package/src/default/types.ts +12 -0
- package/src/headless/CategoriesProvider.tsx +20 -0
- package/src/headless/CategoryBreadcrumbs.tsx +78 -0
- package/src/headless/CategoryCarousel.tsx +80 -0
- package/src/headless/CategoryFeatures.tsx +100 -0
- package/src/headless/CategoryPicker.tsx +173 -0
- package/src/headless/CategoryTree.tsx +115 -0
- package/src/i18n/errorsMap.ts +46 -0
- package/src/i18n/es.ts +92 -0
- package/src/i18n/generated/errors.es.gen.ts +64 -0
- package/src/i18n/generated/errors.gen.ts +238 -0
- package/src/i18n/generated/errors.json +495 -0
- package/src/i18n/generated/errors.ru.gen.ts +64 -0
- package/src/i18n/keys.ts +156 -0
- package/src/i18n/ru.ts +110 -0
- package/src/index.ts +191 -0
- package/src/model/catalogStore.ts +102 -0
- package/src/model/catalogSync.ts +115 -0
- package/src/model/context.tsx +28 -0
- package/src/model/queries.ts +226 -0
- package/src/model/queryKeys.ts +50 -0
- package/src/model/runtime.ts +39 -0
- package/src/nav/manifest.ts +66 -0
- package/tsconfig.json +26 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/generated/schema.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,KAAK;IAClB,gCAAgC,EAAE;QAC9B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,mCAAmC,CAAC,CAAC;QACrD,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;;;;;;WAUG;QACH,IAAI,EAAE,UAAU,CAAC,qCAAqC,CAAC,CAAC;QACxD,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qCAAqC,EAAE;QACnC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;;;;;;WAUG;QACH,GAAG,EAAE,UAAU,CAAC,uCAAuC,CAAC,CAAC;QACzD;;;;;;;;;;WAUG;QACH,GAAG,EAAE,UAAU,CAAC,qCAAqC,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;;;;;;;;WAUG;QACH,MAAM,EAAE,UAAU,CAAC,sCAAsC,CAAC,CAAC;QAC3D,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;;;;;;;;WAUG;QACH,KAAK,EAAE,UAAU,CAAC,6CAA6C,CAAC,CAAC;QACjE,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,4CAA4C,CAAC,CAAC;QAC9D,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sDAAsD,EAAE;QACpD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,oDAAoD,CAAC,CAAC;QACtE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,oDAAoD,EAAE;QAClD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,sDAAsD,CAAC,CAAC;QACxE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,0DAA0D,EAAE;QACxD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,0DAA0D,CAAC,CAAC;QAC7E,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,0DAA0D,EAAE;QACxD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,0DAA0D,CAAC,CAAC;QAC7E,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,4CAA4C,CAAC,CAAC;QAC9D,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,8CAA8C,CAAC,CAAC;QACjE,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sDAAsD,EAAE;QACpD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,wDAAwD,CAAC,CAAC;QAC1E,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,kDAAkD,EAAE;QAChD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,kDAAkD,CAAC,CAAC;QACrE,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,mDAAmD,CAAC,CAAC;QACtE,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,yCAAyC,EAAE;QACvC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,8CAA8C,CAAC,CAAC;QACjE,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,yCAAyC,EAAE;QACvC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,4CAA4C,CAAC,CAAC;QAC9D,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,0CAA0C,EAAE;QACxC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;;;;;;;;;WAaG;QACH,GAAG,EAAE,UAAU,CAAC,iDAAiD,CAAC,CAAC;QACnE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,yCAAyC,EAAE;QACvC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,gDAAgD,CAAC,CAAC;QAClE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,iDAAiD,EAAE;QAC/C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;WAKG;QACH,GAAG,EAAE,UAAU,CAAC,0BAA0B,CAAC,CAAC;QAC5C,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,8BAA8B,EAAE;QAC5B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,iCAAiC,CAAC,CAAC;QACnD,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,mCAAmC,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,mCAAmC,EAAE;QACjC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,qCAAqC,CAAC,CAAC;QACvD;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,mCAAmC,CAAC,CAAC;QACrD,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;;;;;;;;;;;;;;;;;;;WAqBG;QACH,MAAM,EAAE,UAAU,CAAC,oCAAoC,CAAC,CAAC;QACzD,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;;WAIG;QACH,KAAK,EAAE,UAAU,CAAC,2CAA2C,CAAC,CAAC;QAC/D,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,gDAAgD,EAAE;QAC9C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,gDAAgD,CAAC,CAAC;QACnE,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,uCAAuC,EAAE;QACrC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,4CAA4C,CAAC,CAAC;QAC/D,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,wCAAwC,EAAE;QACtC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;;;;;;;;;WAaG;QACH,GAAG,EAAE,UAAU,CAAC,+CAA+C,CAAC,CAAC;QACjE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,uCAAuC,EAAE;QACrC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE,UAAU,CAAC,8CAA8C,CAAC,CAAC;QAChE,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;CACL;AACD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7C,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE;QACL;;;;;;;;;WASG;QACH,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAClF;;;;;;;;;WASG;QACH,oBAAoB,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAC5F,iEAAiE;QACjE,UAAU,EAAE;YACR;;;eAGG;YACH,IAAI,EAAE,YAAY,CAAC;YACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC9B,CAAC;QACF,uDAAuD;QACvD,OAAO,EAAE;YACL;;;eAGG;YACH,IAAI,EAAE,SAAS,CAAC;YAChB,KAAK,CAAC,EAAE,OAAO,CAAC;SACnB,CAAC;QACF,+DAA+D;QAC/D,kBAAkB,EAAE;YAChB,sDAAsD;YACtD,WAAW,EAAE,MAAM,EAAE,CAAC;SACzB,CAAC;QACF,sFAAsF;QACtF,QAAQ,EAAE;YACN,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,uFAAuF;YACvF,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,yFAAyF;YACzF,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iEAAiE;YACjE,gBAAgB,CAAC,EAAE,OAAO,CAAC;YAC3B,mDAAmD;YACnD,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;YAC5B,+DAA+D;YAC/D,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;YAClC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;SACrB,CAAC;QACF,+EAA+E;QAC/E,YAAY,EAAE;YACV,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,uFAAuF;YACvF,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,yFAAyF;YACzF,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;YAC5B,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,0DAA0D;QAC1D,mBAAmB,EAAE;YACjB,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC;SAC1D,CAAC;QACF,4DAA4D;QAC5D,eAAe,EAAE;YACb,sDAAsD;YACtD,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACnB;;;;;;;;eAQG;YACH,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;YAC9C,gDAAgD;YAChD,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,gDAAgD;YAChD,IAAI,CAAC,EAAE,MAAM,CAAC;YACd;;;eAGG;YACH,YAAY,EAAE,OAAO,CAAC;YACtB,gDAAgD;YAChD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,wDAAwD;YACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;QACF;;;;;;;WAOG;QACH,WAAW,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;QAC5D,0EAA0E;QAC1E,qBAAqB,EAAE;YACnB;;;eAGG;YACH,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACzB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,qBAAqB;YACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,qBAAqB;YACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACvB,CAAC;QACF,gEAAgE;QAChE,kBAAkB,EAAE;YAChB;;;eAGG;YACH,IAAI,EAAE,MAAM,CAAC;YACb,qBAAqB;YACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACxB,CAAC;QACF,8DAA8D;QAC9D,UAAU,EAAE;YACR;;;eAGG;YACH,IAAI,EAAE,YAAY,CAAC;YACnB,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YACnD,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,EAAE,OAAO,CAAC;YACtB,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;YACnB,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC/B,CAAC;QACF,oDAAoD;QACpD,OAAO,EAAE;YACL;;;eAGG;YACH,IAAI,EAAE,SAAS,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACzB,CAAC;QACF;;;;;;;;;;;;;;;;;WAiBG;QACH,SAAS,EAAE,eAAe,GAAG,eAAe,GAAG,gBAAgB,GAAG,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,aAAa,GAAG,iBAAiB,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,eAAe,CAAC;QAC3T,uEAAuE;QACvE,OAAO,EAAE;YACL,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;YACtE,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;;;;eAMG;YACH,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACtD,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;YAClC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;YACpC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;SACpC,CAAC;QACF,+EAA+E;QAC/E,WAAW,EAAE;YACT,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;YAClC,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;YACpC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;YACnC,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;YACpC,wBAAwB;YACxB,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;YACtC,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;YACnC,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;;;;eAMG;YACH,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACtD,8EAA8E;YAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC7B,CAAC;QACF,4FAA4F;QAC5F,cAAc,EAAE;YACZ,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;YACtE,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;;;;eAMG;YACH,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;SACzD,CAAC;QACF,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAC5a,kBAAkB,EAAE;YAChB,+CAA+C;YAC/C,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;YAC7D;;;eAGG;YACH,SAAS,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,sFAAsF;QACtF,mBAAmB,EAAE;YACjB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,MAAM,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;YAClC,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;YACpC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;YACnC,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;YACpC,wBAAwB;YACxB,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;YACtC,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY;YACZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,mBAAmB;YACnB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;YACjC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;YACnC,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;;;;eAMG;YACH,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACtD,8EAA8E;YAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC7B,CAAC;QACF,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;QAC3Y,wEAAwE;QACxE,kBAAkB,EAAE;YAChB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACvD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,aAAa,EAAE,MAAM,CAAC;SACzB,CAAC;QACF,wDAAwD;QACxD,kBAAkB,EAAE;YAChB,gBAAgB;YAChB,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,+CAA+C;QAC/C,0BAA0B,EAAE;YACxB;;;;;eAKG;YACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;SACxB,CAAC;QACF;;;;;;WAMG;QACH,oBAAoB,EAAE;YAClB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACnB,gBAAgB;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,gBAAgB;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACrB,gBAAgB;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YAChD,qBAAqB;YACrB,SAAS,EAAE,OAAO,CAAC;YACnB,qBAAqB;YACrB,aAAa,EAAE,OAAO,CAAC;YACvB,qBAAqB;YACrB,aAAa,EAAE,OAAO,CAAC;YACvB;;;;;;;eAOG;YACH,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mCAAmC,CAAC,CAAC;YACtE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,iBAAiB;YACjB,WAAW,EAAE,MAAM,CAAC;SACvB,CAAC;QACF;;;;;WAKG;QACH,iCAAiC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;QAC5D,sDAAsD;QACtD,iBAAiB,EAAE;YACf,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YAC5C,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACvD,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAChC,CAAC;QACF,iEAAiE;QACjE,kBAAkB,EAAE;YAChB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC5D,uBAAuB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5D,gBAAgB;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,wDAAwD;QACxD,sBAAsB,EAAE;YACpB,KAAK,EAAE,MAAM,CAAC;YACd,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACnE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YAC5C,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;YAC1C,cAAc,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;SAC5D,CAAC;QACF,2DAA2D;QAC3D,uBAAuB,EAAE;YACrB,EAAE,CAAC,EAAE,OAAO,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YAC5C,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC;YACxF,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAClC,MAAM,CAAC,EAAE;gBACL,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,GAAG,IAAI,CAAC;YACT,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;SAC9B,CAAC;QACF,+DAA+D;QAC/D,WAAW,EAAE;YACT;;;eAGG;YACH,IAAI,EAAE,aAAa,CAAC;YACpB,qBAAqB;YACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,qBAAqB;YACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC/B,CAAC;QACF,qDAAqD;QACrD,QAAQ,EAAE;YACN;;;eAGG;YACH,IAAI,EAAE,UAAU,CAAC;YACjB,qBAAqB;YACrB,KAAK,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,gEAAgE;QAChE,YAAY,EAAE;YACV;;;eAGG;YACH,IAAI,EAAE,cAAc,CAAC;YACrB,KAAK,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;SAC9C,CAAC;QACF,sDAAsD;QACtD,SAAS,EAAE;YACP;;;eAGG;YACH,IAAI,EAAE,WAAW,CAAC;YAClB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACzB,CAAC;QACF,mEAAmE;QACnE,cAAc,EAAE;YACZ;;;eAGG;YACH,IAAI,EAAE,gBAAgB,CAAC;YACvB,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpD,WAAW,CAAC,EAAE,OAAO,CAAC;SACzB,CAAC;QACF,yDAAyD;QACzD,WAAW,EAAE;YACT,KAAK,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;YACtD;;;eAGG;YACH,IAAI,EAAE,aAAa,CAAC;SACvB,CAAC;QACF,cAAc,EAAE;YACZ,MAAM,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACzB,CAAC;QACF,mDAAmD;QACnD,aAAa,EAAE;YACX,MAAM,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SACzB,CAAC;QACF,kBAAkB,EAAE;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC9B,QAAQ,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC;SAC5D,CAAC;QACF,6EAA6E;QAC7E,wBAAwB,EAAE;YACtB;;;eAGG;YACH,IAAI,EAAE,0BAA0B,CAAC;YACjC,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;YACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;SAClC,CAAC;QACF,mEAAmE;QACnE,qBAAqB,EAAE;YACnB;;;eAGG;YACH,IAAI,EAAE,uBAAuB,CAAC;YAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;SACpB,CAAC;QACF,iEAAiE;QACjE,SAAS,EAAE;YACP;;;eAGG;YACH,IAAI,EAAE,WAAW,CAAC;YAClB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC;QACF,uDAAuD;QACvD,MAAM,EAAE;YACJ;;;eAGG;YACH,IAAI,EAAE,QAAQ,CAAC;YACf,KAAK,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,+DAA+D;QAC/D,WAAW,EAAE;YACT,mDAAmD;YACnD,QAAQ,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,sBAAsB;QACtB,QAAQ,EAAE,IAAI,CAAC;QACf,qBAAqB,EAAE;YACnB,UAAU,EAAE;gBACR,uCAAuC;gBACvC,IAAI,EAAE,MAAM,CAAC;gBACb,4CAA4C;gBAC5C,SAAS,EAAE,MAAM,CAAC;gBAClB,yCAAyC;gBACzC,WAAW,EAAE,MAAM,CAAC;gBACpB,yCAAyC;gBACzC,WAAW,EAAE,MAAM,CAAC;gBACpB,gDAAgD;gBAChD,QAAQ,EAAE,OAAO,CAAC;gBAClB,oDAAoD;gBACpD,YAAY,EAAE,OAAO,CAAC;aACzB,CAAC;YACF,SAAS,EAAE;gBACP,wDAAwD;gBACxD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,wDAAwD;gBACxD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,wDAAwD;gBACxD,UAAU,EAAE,MAAM,CAAC;gBACnB,gEAAgE;gBAChE,WAAW,EAAE,MAAM,EAAE,CAAC;aACzB,CAAC;YACF,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;SAChD,CAAC;QACF,2BAA2B,EAAE;YACzB,UAAU,EAAE;gBACR,uCAAuC;gBACvC,IAAI,EAAE,MAAM,CAAC;gBACb,4CAA4C;gBAC5C,SAAS,EAAE,MAAM,CAAC;gBAClB,yCAAyC;gBACzC,WAAW,EAAE,MAAM,CAAC;gBACpB,yCAAyC;gBACzC,WAAW,EAAE,MAAM,CAAC;gBACpB,gDAAgD;gBAChD,QAAQ,EAAE,OAAO,CAAC;gBAClB,oDAAoD;gBACpD,YAAY,EAAE,OAAO,CAAC;aACzB,CAAC;YACF,SAAS,EAAE;gBACP,wDAAwD;gBACxD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,wDAAwD;gBACxD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,wDAAwD;gBACxD,UAAU,EAAE,MAAM,CAAC;gBACnB,gEAAgE;gBAChE,WAAW,EAAE,MAAM,EAAE,CAAC;aACzB,CAAC;YACF,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;SACtD,CAAC;QACF,sFAAsF;QACtF,eAAe,EAAE;YACb,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;YACrB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,uFAAuF;YACvF,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,yFAAyF;YACzF,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iEAAiE;YACjE,gBAAgB,CAAC,EAAE,OAAO,CAAC;YAC3B,mDAAmD;YACnD,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;YAC7B,+DAA+D;YAC/D,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;YACnC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;YAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;SACrB,CAAC;QACF,sFAAsF;QACtF,0BAA0B,EAAE;YACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;YACrB,MAAM,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,oBAAoB;YACpB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;YACnC,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;YACrC,mBAAmB;YACnB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;YAClC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;YACpC,YAAY;YACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B,sBAAsB;YACtB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;YACrC,wBAAwB;YACxB,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;YACvC,YAAY;YACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B,YAAY;YACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY;YACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAC3B,mBAAmB;YACnB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;YAClC,qBAAqB;YACrB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;YACpC,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;;;;eAMG;YACH,SAAS,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACtD,8EAA8E;YAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,aAAa;YACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC7B,CAAC;QACF;;;;;;WAMG;QACH,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;QACtD,gEAAgE;QAChE,YAAY,EAAE;YACV;;;eAGG;YACH,IAAI,EAAE,cAAc,CAAC;YACrB,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;YAClD,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;YAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;SAClC,CAAC;QACF,sDAAsD;QACtD,SAAS,EAAE;YACP;;;eAGG;YACH,IAAI,EAAE,WAAW,CAAC;YAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;SACpB,CAAC;QACF,YAAY,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACrB,OAAO,CAAC,EAAE,OAAO,CAAC;SACrB,CAAC;QACF;;;;WAIG;QACH,UAAU,EAAE,IAAI,GAAG,mBAAmB,CAAC;QACvC,gEAAgE;QAChE,YAAY,EAAE;YACV;;;eAGG;YACH,IAAI,EAAE,cAAc,CAAC;YACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;YAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;QACF,sDAAsD;QACtD,SAAS,EAAE;YACP;;;eAGG;YACH,IAAI,EAAE,WAAW,CAAC;YAClB,KAAK,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF;;;;WAIG;QACH,SAAS,EAAE,GAAG,GAAG,GAAG,CAAC;QACrB;;;;;WAKG;QACH,gBAAgB,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;QAC3C;;;WAGG;QACH,WAAW,EAAE,kBAAkB,CAAC;QAChC;;;WAGG;QACH,WAAW,EAAE,MAAM,CAAC;QACpB;;;WAGG;QACH,WAAW,EAAE,QAAQ,CAAC;QACtB;;;WAGG;QACH,WAAW,EAAE,WAAW,CAAC;QACzB;;;WAGG;QACH,WAAW,EAAE,qBAAqB,CAAC;QACnC;;;WAGG;QACH,WAAW,EAAE,QAAQ,CAAC;QACtB;;;WAGG;QACH,WAAW,EAAE,QAAQ,CAAC;QACtB;;;WAGG;QACH,WAAW,EAAE,KAAK,CAAC;QACnB;;;WAGG;QACH,WAAW,EAAE,OAAO,CAAC;QACrB;;;WAGG;QACH,WAAW,EAAE,MAAM,CAAC;QACpB;;;;;WAKG;QACH,WAAW,EAAE,UAAU,GAAG,YAAY,GAAG,OAAO,CAAC;QACjD,qDAAqD;QACrD,gBAAgB,EAAE;YACd;;;;;;;eAOG;YACH,QAAQ,EAAE,MAAM,EAAE,CAAC;SACtB,CAAC;QACF,iEAAiE;QACjE,kBAAkB,EAAE;YAChB,yFAAyF;YACzF,QAAQ,EAAE;gBACN,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;aACtD,CAAC;SACL,CAAC;QACF,yDAAyD;QACzD,qBAAqB,EAAE;YACnB,KAAK,EAAE,OAAO,CAAC;YACf,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,EAAE,CAAC;SAC/D,CAAC;KACL,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,aAAa,EAAE,KAAK,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;IACf,SAAS,EAAE,KAAK,CAAC;CACpB;AACD,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1C,MAAM,WAAW,UAAU;IACvB,iCAAiC,EAAE;QAC/B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,yEAAyE;gBACzE,eAAe,CAAC,EAAE,OAAO,CAAC;gBAC1B,gHAAgH;gBAChH,YAAY,CAAC,EAAE,MAAM,CAAC;gBACtB,6HAA6H;gBAC7H,YAAY,CAAC,EAAE,MAAM,CAAC;gBACtB,2CAA2C;gBAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,qEAAqE;gBACrE,SAAS,CAAC,EAAE,MAAM,CAAC;aACtB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;iBACtE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,mCAAmC,EAAE;QACjC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACtD,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACvE,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;aAC5D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,qCAAqC,EAAE;QACnC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,mCAAmC,EAAE;QACjC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACtD,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACvE,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;aAC5D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,oCAAoC,EAAE;QAClC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,2CAA2C,EAAE;QACzC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBAC7D,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBAC9E,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;aACnE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,0CAA0C,EAAE;QACxC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,kDAAkD,EAAE;QAChD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,oDAAoD,EAAE;QAClD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,wDAAwD,EAAE;QACtD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACjF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;aACtE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,wDAAwD,EAAE;QACtD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACjF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;aACtE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;iBAC3E,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,0CAA0C,EAAE;QACxC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;iBACjE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,4CAA4C,EAAE;QAC1C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACtD,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;gBACvE,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;aAC5D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;iBACjE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,sDAAsD,EAAE;QACpD,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;iBACtE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gDAAgD,EAAE;QAC9C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,qEAAqE;gBACrE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACjF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;aACtE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;iBACtE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,iDAAiD,EAAE;QAC/C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBACjE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAClF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;aACvE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;qBAC1B,CAAC;iBACL,CAAC;aACL,CAAC;YACF,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;qBAC1B,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,4CAA4C,EAAE;QAC1C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC5D,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7E,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;aAClE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;YACF,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;qBAC1B,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,0CAA0C,EAAE;QACxC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,iDAAiD,EAAE;QAC/C,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,6FAA6F;gBAC7F,QAAQ,EAAE,MAAM,CAAC;aACpB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;iBAC5D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,wBAAwB,EAAE;QACtB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;qBAC1B,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,+BAA+B,EAAE;QAC7B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,yEAAyE;gBACzE,eAAe,CAAC,EAAE,OAAO,CAAC;gBAC1B,gHAAgH;gBAChH,YAAY,CAAC,EAAE,MAAM,CAAC;gBACtB,6HAA6H;gBAC7H,YAAY,CAAC,EAAE,MAAM,CAAC;gBACtB,2CAA2C;gBAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,qEAAqE;gBACrE,SAAS,CAAC,EAAE,MAAM,CAAC;aACtB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,6BAA6B,CAAC,CAAC;iBAC5E,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,iCAAiC,EAAE;QAC/B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBACjE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAClF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;aACvE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,mCAAmC,EAAE;QACjC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,oEAAoE;gBACpE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,iCAAiC,EAAE;QAC/B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,oEAAoE;gBACpE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBACjE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAClF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;aACvE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,kCAAkC,EAAE;QAChC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,oEAAoE;gBACpE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,yCAAyC,EAAE;QACvC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,oEAAoE;gBACpE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;gBACxE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;gBACzF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;aAC9E,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,8CAA8C,EAAE;QAC5C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,oEAAoE;gBACpE,EAAE,EAAE,MAAM,CAAC;aACd,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChE,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACjF,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;aACtE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,0CAA0C,EAAE;QACxC,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3D,mCAAmC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC5E,qBAAqB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;aACjE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;YACF,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;qBAC1B,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,+CAA+C,EAAE;QAC7C,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,6FAA6F;gBAC7F,QAAQ,EAAE,MAAM,CAAC;aACpB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,4CAA4C,EAAE;QAC1C,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;iBAC5D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/api/generated/schema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The wire shapes of `stapel-categories`, taken from the generated schema
|
|
3
|
+
* wherever the generated schema is TRUE, and hand-mirrored — with the reason
|
|
4
|
+
* written down — in the one place it is not.
|
|
5
|
+
*
|
|
6
|
+
* ── The one place the generated types are wrong: `config.type` ─────────────
|
|
7
|
+
*
|
|
8
|
+
* `FeatureCompact.config` is `{"allOf": [{"$ref": "FeatureConfig"}]}`, and
|
|
9
|
+
* `FeatureConfig` is a `oneOf` over ten config schemas carrying
|
|
10
|
+
* `discriminator: {propertyName: "type", mapping: {"null": ConvertibleUnitConfig}}`
|
|
11
|
+
* (stapel-categories `docs/schema.json`). That mapping is malformed — it has
|
|
12
|
+
* ONE entry, keyed `"null"`, instead of the ten type slugs — so
|
|
13
|
+
* openapi-typescript does two things to the generated surface:
|
|
14
|
+
*
|
|
15
|
+
* 1. it strips the discriminator from every use site, emitting
|
|
16
|
+
* `Omit<components["schemas"]["FeatureConfig"], "type">`; and
|
|
17
|
+
* 2. it re-adds a SYNTHETIC discriminant on each member, so the generated
|
|
18
|
+
* `IntConfig` declares `type: "IntConfig"` where the wire sends
|
|
19
|
+
* `type: "int"` (see `generated/schema.ts`, "discriminator enum property
|
|
20
|
+
* added by openapi-typescript").
|
|
21
|
+
*
|
|
22
|
+
* A pair that typed features off the generated union would therefore hand
|
|
23
|
+
* `@stapel/attributes-react` a `config` with no `type` at all, and any
|
|
24
|
+
* narrowing written against it would compare the value to a string the server
|
|
25
|
+
* never sends. So the features surface is typed through attributes-react's
|
|
26
|
+
* hand-mirrored `FeatureDef` / `FeatureConfig` (`attributes-react/src/types.ts`,
|
|
27
|
+
* itself checked against the engine's generated golden corpus) — the same
|
|
28
|
+
* shapes the value editors, the mirror and the formatter already switch on.
|
|
29
|
+
* Everything else here comes from the generated schema untouched.
|
|
30
|
+
*
|
|
31
|
+
* The upstream ask is recorded rather than worked around twice: emit the ten
|
|
32
|
+
* `type` slugs in `discriminator.mapping`, and both of the above disappear.
|
|
33
|
+
*/
|
|
34
|
+
import type { FeatureConfig, FeatureDef } from "@stapel/attributes-react";
|
|
35
|
+
import type { components } from "./generated/schema.js";
|
|
36
|
+
export type Schemas = components["schemas"];
|
|
37
|
+
/**
|
|
38
|
+
* One category row, exactly as the list / children / carousel endpoints send
|
|
39
|
+
* it (`CategorySerializer`).
|
|
40
|
+
*
|
|
41
|
+
* Three fields decide what a storefront may do with it, and each is a trap if
|
|
42
|
+
* read casually:
|
|
43
|
+
*
|
|
44
|
+
* - `name` is a **translation key**, not a label, whenever `translatable` is
|
|
45
|
+
* true — see `catalog/labels.ts`. Nothing on this endpoint resolves it.
|
|
46
|
+
* - `tn_ancestors_pks` / `tn_children_pks` are django-treenode's
|
|
47
|
+
* COMMA-JOINED PK STRINGS (`treenode/utils.py: PKS_SEPARATOR = ","`), typed
|
|
48
|
+
* `string` here because that is what arrives — `""` for a root. Parse them
|
|
49
|
+
* with `parseTreenodePks`, never with `JSON.parse` and never by assuming an
|
|
50
|
+
* array.
|
|
51
|
+
* - `deleted` is a TOMBSTONE flag, not an absence: a soft-deleted row is still
|
|
52
|
+
* served (the list endpoint's `include_deleted` defaults to **true**), which
|
|
53
|
+
* is exactly what makes the delta protocol work and exactly what shows a
|
|
54
|
+
* deleted category in a menu if nobody filters.
|
|
55
|
+
*/
|
|
56
|
+
export type Category = Schemas["Category"];
|
|
57
|
+
/** The `{pagination, revisions, results}` envelope of `RevisionPagination`. */
|
|
58
|
+
export type CategoryPage = Schemas["PaginatedCategoryList"];
|
|
59
|
+
/** `revisions` — the delta-sync bookkeeping half of the envelope. */
|
|
60
|
+
export type CategoryRevisions = CategoryPage["revisions"];
|
|
61
|
+
/** `GET /categories/revision/` — `{revision}`, the table's current maximum. */
|
|
62
|
+
export type MaxRevision = Schemas["MaxRevision"];
|
|
63
|
+
/**
|
|
64
|
+
* One resolved feature of a category (own + inherited, deduplicated by slug,
|
|
65
|
+
* in the category's own order first).
|
|
66
|
+
*
|
|
67
|
+
* Structurally `FeatureCompact`, but typed as attributes-react's `FeatureDef`
|
|
68
|
+
* for the discriminator reason at the top of this file. The two agree field
|
|
69
|
+
* for field; only `config` differs, and only in the direction of the truth.
|
|
70
|
+
*
|
|
71
|
+
* `config` arrives **verbatim**, NOT through `get_config_with_defaults()`
|
|
72
|
+
* (`FeatureCompactSerializer.get_config`) — an absent key means "the type's
|
|
73
|
+
* default", never "off". attributes-react owns those defaults; this pair does
|
|
74
|
+
* not re-state them.
|
|
75
|
+
*/
|
|
76
|
+
export type CategoryFeature = FeatureDef;
|
|
77
|
+
export type { FeatureConfig };
|
|
78
|
+
/** Query parameters of `GET /categories/api/v1/categories/`. */
|
|
79
|
+
export interface CategoryListParams {
|
|
80
|
+
/** Exclusive lower bound: rows with `revision > minRevision`. Omit for a
|
|
81
|
+
* full sync. `0` is NOT the same as omitting it — it skips unsynced legacy
|
|
82
|
+
* rows whose revision is still 0. */
|
|
83
|
+
readonly minRevision?: number;
|
|
84
|
+
/** Inclusive upper bound. The pair pins it across a multi-page walk so a
|
|
85
|
+
* write landing mid-walk cannot shift page boundaries under the reader. */
|
|
86
|
+
readonly maxRevision?: number;
|
|
87
|
+
/** Default on the server is **true**. */
|
|
88
|
+
readonly includeDeleted?: boolean;
|
|
89
|
+
readonly page?: number;
|
|
90
|
+
readonly pageSize?: number;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AAE5C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,+EAA+E;AAC/E,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAE5D,qEAAqE;AACrE,MAAM,MAAM,iBAAiB,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;AAE1D,+EAA+E;AAC/E,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEjD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC;AAEzC,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,gEAAgE;AAChE,MAAM,WAAW,kBAAkB;IACjC;;yCAEqC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;+EAC2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NAMES ARE TRANSLATION KEYS. NOTHING ON THE WIRE RESOLVES THEM.
|
|
3
|
+
*
|
|
4
|
+
* This is the fact a storefront most needs stated plainly, so it is stated
|
|
5
|
+
* here and mirrored honestly rather than papered over.
|
|
6
|
+
*
|
|
7
|
+
* `stapel-categories` stores keys, never a catalogue: "This module stores
|
|
8
|
+
* translation **keys** (e.g. `category.electronics`); it never owns a
|
|
9
|
+
* translation catalog" (`translation.py`). Rendering runs through a
|
|
10
|
+
* `DISPLAY_TRANSLATOR` seam whose default is the identity function, and — this
|
|
11
|
+
* is the part that decides the client's behaviour — **no serializer calls it**.
|
|
12
|
+
* `translate()` has exactly two call sites in the module, `Category.__str__`
|
|
13
|
+
* and the admin's memoized feature label (`models.py`, `translation.py`); the
|
|
14
|
+
* REST layer serializes `name` straight off the model. So:
|
|
15
|
+
*
|
|
16
|
+
* GET /categories/api/v1/categories/ → { "name": "category.electronics" }
|
|
17
|
+
*
|
|
18
|
+
* even on a deployment that has configured a real translator. There is no
|
|
19
|
+
* `?lang=`, no `Accept-Language` handling, and no second endpoint that returns
|
|
20
|
+
* resolved labels: `GET /categories/translation-keys/` is `IsServiceRequest`
|
|
21
|
+
* and returns the KEYS with admin refs — it is the extraction feed for
|
|
22
|
+
* translators, the opposite direction.
|
|
23
|
+
*
|
|
24
|
+
* ── Which strings are keys ─────────────────────────────────────────────────
|
|
25
|
+
*
|
|
26
|
+
* The wire says so per row, and the pair reads the flag instead of guessing:
|
|
27
|
+
*
|
|
28
|
+
* - a category's `name` is a key **iff `translatable` is true** (default
|
|
29
|
+
* `true`; the field's own help text is "If True, category name is a
|
|
30
|
+
* translation key").
|
|
31
|
+
* - a feature's `name` is a key iff its `translate` mode is `"all"` or
|
|
32
|
+
* `"title"`; `"none"` means the stored string IS the label.
|
|
33
|
+
* - a feature's option labels and its `placeholder`/`prefix`/`postfix`
|
|
34
|
+
* config strings are keys only under `translate: "all"`, and only while
|
|
35
|
+
* `config.translatable_options` is not false
|
|
36
|
+
* (`translation_keys.py: _extract_option_keys_as_list`).
|
|
37
|
+
*
|
|
38
|
+
* ── What this pair does about it ───────────────────────────────────────────
|
|
39
|
+
*
|
|
40
|
+
* It resolves through the HOST's i18n engine — the same `useT` every other key
|
|
41
|
+
* in the fleet goes through — and it does NOT ship a catalogue: category names
|
|
42
|
+
* are a deployment's content, not a library's chrome, so `category.electronics`
|
|
43
|
+
* belongs in the host's bundle beside its own copy, not in
|
|
44
|
+
* `@stapel/categories-react/i18n/ru`.
|
|
45
|
+
*
|
|
46
|
+
* And when the key does not resolve, the key is shown. That is deliberate.
|
|
47
|
+
* The alternative — falling back to the slug, or to a prettified
|
|
48
|
+
* `"category.electronics" → "Electronics"` — invents a label the operator
|
|
49
|
+
* never approved and hides a missing translation behind something that looks
|
|
50
|
+
* finished. A visible `category.electronics` gets fixed; a plausible-looking
|
|
51
|
+
* "Electronics" ships for a year in the wrong language.
|
|
52
|
+
*/
|
|
53
|
+
import type { Category, CategoryFeature } from "../api/types.js";
|
|
54
|
+
/**
|
|
55
|
+
* How a display string reached the screen — the honest answer, carried instead
|
|
56
|
+
* of being flattened into a string.
|
|
57
|
+
*
|
|
58
|
+
* `"key"` the value is a translation key; run it through i18n.
|
|
59
|
+
* `"literal"` the row opted out of translation; the value is the label.
|
|
60
|
+
*/
|
|
61
|
+
export type CategoryLabelKind = "key" | "literal";
|
|
62
|
+
export interface CategoryLabel {
|
|
63
|
+
readonly kind: CategoryLabelKind;
|
|
64
|
+
/** The key to translate, or the literal to print. */
|
|
65
|
+
readonly value: string;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* A category's display string and what to do with it.
|
|
69
|
+
*
|
|
70
|
+
* `translatable` is optional in the schema and defaults to `true` on the model,
|
|
71
|
+
* so an absent flag means KEY. Guessing "literal" for an absent flag is the
|
|
72
|
+
* wrong-way-round failure: it prints `category.electronics` at a visitor on a
|
|
73
|
+
* fully translated deployment.
|
|
74
|
+
*/
|
|
75
|
+
export declare function categoryLabel(category: Category): CategoryLabel;
|
|
76
|
+
/**
|
|
77
|
+
* A feature's display string and what to do with it.
|
|
78
|
+
*
|
|
79
|
+
* `translate: "none"` is the only mode that makes the name a literal;
|
|
80
|
+
* `"title"` and `"all"` both translate it, and the difference between them is
|
|
81
|
+
* about the feature's OPTIONS, which are attributes-react's business, not
|
|
82
|
+
* this function's. An absent mode means `"all"` (the model default).
|
|
83
|
+
*/
|
|
84
|
+
export declare function featureLabel(feature: CategoryFeature): CategoryLabel;
|
|
85
|
+
/**
|
|
86
|
+
* Are this feature's option labels translation keys?
|
|
87
|
+
*
|
|
88
|
+
* Only under `translate: "all"`, and only while the config has not opted out
|
|
89
|
+
* with `translatable_options: false`. A consumer that labels facet values (the
|
|
90
|
+
* search pair does) needs both halves of that: translating an opted-out option
|
|
91
|
+
* shows the raw key, and NOT translating an opted-in one shows the raw key
|
|
92
|
+
* too — same symptom, opposite fix.
|
|
93
|
+
*/
|
|
94
|
+
export declare function featureOptionsAreKeys(feature: CategoryFeature): boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Resolve a label with a translator, without pretending about misses.
|
|
97
|
+
*
|
|
98
|
+
* `translate` is the host's `t` (core's `useT()`); i18n engines return the key
|
|
99
|
+
* itself for a miss, which is exactly the behaviour this pair wants and
|
|
100
|
+
* documents above.
|
|
101
|
+
*/
|
|
102
|
+
export declare function renderCategoryLabel(label: CategoryLabel, translate: (key: string) => string): string;
|
|
103
|
+
//# sourceMappingURL=labels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/catalog/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEjE;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,SAAS,CAAC;AAElD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,CAK/D;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,aAAa,CAOpE;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAIvE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GACjC,MAAM,CAER"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A category's display string and what to do with it.
|
|
3
|
+
*
|
|
4
|
+
* `translatable` is optional in the schema and defaults to `true` on the model,
|
|
5
|
+
* so an absent flag means KEY. Guessing "literal" for an absent flag is the
|
|
6
|
+
* wrong-way-round failure: it prints `category.electronics` at a visitor on a
|
|
7
|
+
* fully translated deployment.
|
|
8
|
+
*/
|
|
9
|
+
export function categoryLabel(category) {
|
|
10
|
+
return {
|
|
11
|
+
kind: category.translatable === false ? "literal" : "key",
|
|
12
|
+
value: category.name,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A feature's display string and what to do with it.
|
|
17
|
+
*
|
|
18
|
+
* `translate: "none"` is the only mode that makes the name a literal;
|
|
19
|
+
* `"title"` and `"all"` both translate it, and the difference between them is
|
|
20
|
+
* about the feature's OPTIONS, which are attributes-react's business, not
|
|
21
|
+
* this function's. An absent mode means `"all"` (the model default).
|
|
22
|
+
*/
|
|
23
|
+
export function featureLabel(feature) {
|
|
24
|
+
return {
|
|
25
|
+
kind: feature.translate === "none" ? "literal" : "key",
|
|
26
|
+
// `name` falls back to `slug` server-side (`FeatureDef.__post_init__`);
|
|
27
|
+
// mirror that rather than rendering an empty label.
|
|
28
|
+
value: feature.name ?? feature.slug,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Are this feature's option labels translation keys?
|
|
33
|
+
*
|
|
34
|
+
* Only under `translate: "all"`, and only while the config has not opted out
|
|
35
|
+
* with `translatable_options: false`. A consumer that labels facet values (the
|
|
36
|
+
* search pair does) needs both halves of that: translating an opted-out option
|
|
37
|
+
* shows the raw key, and NOT translating an opted-in one shows the raw key
|
|
38
|
+
* too — same symptom, opposite fix.
|
|
39
|
+
*/
|
|
40
|
+
export function featureOptionsAreKeys(feature) {
|
|
41
|
+
if ((feature.translate ?? "all") !== "all")
|
|
42
|
+
return false;
|
|
43
|
+
const config = feature.config;
|
|
44
|
+
return config?.["translatable_options"] !== false;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Resolve a label with a translator, without pretending about misses.
|
|
48
|
+
*
|
|
49
|
+
* `translate` is the host's `t` (core's `useT()`); i18n engines return the key
|
|
50
|
+
* itself for a miss, which is exactly the behaviour this pair wants and
|
|
51
|
+
* documents above.
|
|
52
|
+
*/
|
|
53
|
+
export function renderCategoryLabel(label, translate) {
|
|
54
|
+
return label.kind === "key" ? translate(label.value) : label.value;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=labels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../src/catalog/labels.ts"],"names":[],"mappings":"AAqEA;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,QAAkB;IAC9C,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;QACzD,KAAK,EAAE,QAAQ,CAAC,IAAI;KACrB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,OAAwB;IACnD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;QACtD,wEAAwE;QACxE,oDAAoD;QACpD,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI;KACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAwB;IAC5D,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,OAAO,MAAM,EAAE,CAAC,sBAAsB,CAAC,KAAK,KAAK,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAoB,EACpB,SAAkC;IAElC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* django-treenode's ancestry columns, parsed.
|
|
3
|
+
*
|
|
4
|
+
* `tn_ancestors_pks`, `tn_children_pks`, `tn_descendants_pks` and
|
|
5
|
+
* `tn_siblings_pks` are `TextField`s holding a COMMA-JOINED list of primary
|
|
6
|
+
* keys (`treenode/utils.py`: `PKS_SEPARATOR = ","`, `join_pks`, `split_pks`),
|
|
7
|
+
* and drf-spectacular therefore types them `string` in the schema. The spec
|
|
8
|
+
* (§4.3) describes them as if they were arrays; on the wire they are `"1,7,12"`
|
|
9
|
+
* and `""`.
|
|
10
|
+
*
|
|
11
|
+
* Root-first ordering is a property of how treenode writes the column
|
|
12
|
+
* (`update_tree` walks down from the root), and the whole breadcrumb depends
|
|
13
|
+
* on it — so it is asserted in `test/tree.test.ts` against a real fixture
|
|
14
|
+
* rather than assumed here.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Parse a treenode pks column into numeric ids, root-first.
|
|
18
|
+
*
|
|
19
|
+
* Empty string → `[]` (a root has no ancestors; a leaf has no children).
|
|
20
|
+
* Non-numeric fragments are dropped rather than turned into `NaN`: a `NaN`
|
|
21
|
+
* silently fails every `===` against a real id, which reads as "the parent is
|
|
22
|
+
* missing" — the same wrong answer, two hours later.
|
|
23
|
+
*/
|
|
24
|
+
export declare function parseTreenodePks(column: string | null | undefined): readonly number[];
|
|
25
|
+
//# sourceMappingURL=pks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pks.d.ts","sourceRoot":"","sources":["../../src/catalog/pks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,MAAM,EAAE,CAUrF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* django-treenode's ancestry columns, parsed.
|
|
3
|
+
*
|
|
4
|
+
* `tn_ancestors_pks`, `tn_children_pks`, `tn_descendants_pks` and
|
|
5
|
+
* `tn_siblings_pks` are `TextField`s holding a COMMA-JOINED list of primary
|
|
6
|
+
* keys (`treenode/utils.py`: `PKS_SEPARATOR = ","`, `join_pks`, `split_pks`),
|
|
7
|
+
* and drf-spectacular therefore types them `string` in the schema. The spec
|
|
8
|
+
* (§4.3) describes them as if they were arrays; on the wire they are `"1,7,12"`
|
|
9
|
+
* and `""`.
|
|
10
|
+
*
|
|
11
|
+
* Root-first ordering is a property of how treenode writes the column
|
|
12
|
+
* (`update_tree` walks down from the root), and the whole breadcrumb depends
|
|
13
|
+
* on it — so it is asserted in `test/tree.test.ts` against a real fixture
|
|
14
|
+
* rather than assumed here.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Parse a treenode pks column into numeric ids, root-first.
|
|
18
|
+
*
|
|
19
|
+
* Empty string → `[]` (a root has no ancestors; a leaf has no children).
|
|
20
|
+
* Non-numeric fragments are dropped rather than turned into `NaN`: a `NaN`
|
|
21
|
+
* silently fails every `===` against a real id, which reads as "the parent is
|
|
22
|
+
* missing" — the same wrong answer, two hours later.
|
|
23
|
+
*/
|
|
24
|
+
export function parseTreenodePks(column) {
|
|
25
|
+
if (column === null || column === undefined || column === "")
|
|
26
|
+
return [];
|
|
27
|
+
const out = [];
|
|
28
|
+
for (const part of column.split(",")) {
|
|
29
|
+
const trimmed = part.trim();
|
|
30
|
+
if (trimmed === "")
|
|
31
|
+
continue;
|
|
32
|
+
const value = Number(trimmed);
|
|
33
|
+
if (Number.isInteger(value))
|
|
34
|
+
out.push(value);
|
|
35
|
+
}
|
|
36
|
+
return out;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=pks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pks.js","sourceRoot":"","sources":["../../src/catalog/pks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAiC;IAChE,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IACxE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,EAAE;YAAE,SAAS;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The delta protocol, as pure state transitions.
|
|
3
|
+
*
|
|
4
|
+
* `stapel-categories` documents the flow on the viewset itself (`views.py`,
|
|
5
|
+
* `CategoryViewSet` docstring): full `GET /categories/` → store
|
|
6
|
+
* `revisions.global_max` → later `GET /categories/?min_revision=<stored>` →
|
|
7
|
+
* drop the rows that come back `deleted: true`. The spec's verdict (§4.3) is
|
|
8
|
+
* that the result lives in `createRepository()` rather than being refetched
|
|
9
|
+
* per page, because without it every storefront page pulls the whole
|
|
10
|
+
* catalogue.
|
|
11
|
+
*
|
|
12
|
+
* Three things the documented flow does not say, all of which change the code:
|
|
13
|
+
*
|
|
14
|
+
* 1. **`revisions.deleted_ids` is the authoritative tombstone channel**, not
|
|
15
|
+
* the `deleted: true` rows. The rows are PAGINATED — a tombstone can land
|
|
16
|
+
* on page 3 of a walk that stopped at page 2 — while `deleted_ids` is
|
|
17
|
+
* computed unpaginated over `deleted=True AND revision > min_revision`
|
|
18
|
+
* (`stapel_core/django/api/revision.py`). It is also a snapshot of the
|
|
19
|
+
* CURRENT flag, so a category deleted and then restored is simply absent
|
|
20
|
+
* from it. Both channels are applied; the list is the one that is complete.
|
|
21
|
+
* On a FULL sync `deleted_ids` is `[]` by construction (the server only
|
|
22
|
+
* computes it when `min_revision` was sent), which is why dropping
|
|
23
|
+
* `deleted: true` rows still matters.
|
|
24
|
+
*
|
|
25
|
+
* 2. **A multi-page walk must pin its upper bound.** Pages are ordered by
|
|
26
|
+
* `revision` and filtered at request time; a write landing between page 1
|
|
27
|
+
* and page 2 shifts every subsequent page boundary, and the walk silently
|
|
28
|
+
* skips a row. `max_revision` exists for exactly this and the documented
|
|
29
|
+
* flow never mentions it: `nextPageRequest` pins the window to the
|
|
30
|
+
* `global_max` observed on the FIRST page and stores that as the new
|
|
31
|
+
* cursor. Anything written during the walk is picked up by the next delta.
|
|
32
|
+
*
|
|
33
|
+
* 3. **`revisions.global_max` is a property of the TABLE, not of the page** —
|
|
34
|
+
* it is `Max(revision)` over the whole model, so it is already the right
|
|
35
|
+
* cursor even when the page came back empty.
|
|
36
|
+
*/
|
|
37
|
+
import type { Category, CategoryPage } from "../api/types.js";
|
|
38
|
+
import type { CategoryListParams } from "../api/types.js";
|
|
39
|
+
/** The persisted catalogue: rows plus the cursor they are current as of. */
|
|
40
|
+
export interface CategorySnapshot {
|
|
41
|
+
/** Storage-format marker. A snapshot written by an older shape is discarded
|
|
42
|
+
* rather than migrated — it is a cache, and a full resync costs one request. */
|
|
43
|
+
readonly version: 1;
|
|
44
|
+
/** `revisions.global_max` as of the last completed sync. */
|
|
45
|
+
readonly cursor: number;
|
|
46
|
+
/** Live rows, tombstones already applied. Order is not meaningful. */
|
|
47
|
+
readonly rows: readonly Category[];
|
|
48
|
+
}
|
|
49
|
+
/** An empty snapshot — the state before the first sync. */
|
|
50
|
+
export declare const EMPTY_SNAPSHOT: CategorySnapshot;
|
|
51
|
+
/** A snapshot with no rows has never synced, whatever its cursor says. */
|
|
52
|
+
export declare function isEmptySnapshot(snapshot: CategorySnapshot): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Accept a value read back from persistence, or reject it.
|
|
55
|
+
*
|
|
56
|
+
* A repository read can hand back anything: a snapshot written by a previous
|
|
57
|
+
* version of this pair, a half-written value, `undefined` after a cleared
|
|
58
|
+
* origin. Every one of those must degrade to "no snapshot" — a cache that
|
|
59
|
+
* throws on read is worse than no cache.
|
|
60
|
+
*/
|
|
61
|
+
export declare function parseSnapshot(value: unknown): CategorySnapshot | undefined;
|
|
62
|
+
/**
|
|
63
|
+
* The request that starts a sync from `snapshot`.
|
|
64
|
+
*
|
|
65
|
+
* A cold start asks for everything with `include_deleted: false` — nothing is
|
|
66
|
+
* cached, so a tombstone has nothing to evict and the payload is smaller. A
|
|
67
|
+
* warm start asks for the delta with `include_deleted: true`, because there
|
|
68
|
+
* the tombstones are the point.
|
|
69
|
+
*/
|
|
70
|
+
export declare function firstPageRequest(snapshot: CategorySnapshot): CategoryListParams;
|
|
71
|
+
/**
|
|
72
|
+
* The request for the next page of an in-flight walk, or `undefined` when the
|
|
73
|
+
* walk is done.
|
|
74
|
+
*
|
|
75
|
+
* `maxRevision` pins the window to what the first page reported, so the walk
|
|
76
|
+
* reads one consistent snapshot of the table instead of a moving one.
|
|
77
|
+
*/
|
|
78
|
+
export declare function nextPageRequest(previous: CategoryListParams, page: CategoryPage): CategoryListParams | undefined;
|
|
79
|
+
/**
|
|
80
|
+
* Fold one page into an accumulator.
|
|
81
|
+
*
|
|
82
|
+
* There is one merge rule, and the FULL/DELTA distinction lives in what the
|
|
83
|
+
* caller starts from, not in a flag here: a delta folds into the stored
|
|
84
|
+
* snapshot, a full sync folds into {@link EMPTY_SNAPSHOT}. That is the whole
|
|
85
|
+
* difference — a row the server no longer lists is gone from a full listing
|
|
86
|
+
* precisely because it was never folded in. Expressing it as a flag on the
|
|
87
|
+
* merge invites the two silent failures instead: a delta treated as full
|
|
88
|
+
* empties the catalogue, a full treated as delta resurrects rows deleted while
|
|
89
|
+
* the client was away.
|
|
90
|
+
*
|
|
91
|
+
* The new snapshot is not published until the walk COMPLETES (see
|
|
92
|
+
* `model/catalogSync.ts`), so a walk that fails halfway leaves the previous
|
|
93
|
+
* catalogue on screen rather than a truncated one.
|
|
94
|
+
*
|
|
95
|
+
* The cursor only ever moves FORWARD, and never past `cursorLimit`:
|
|
96
|
+
* `global_max` is the table's live maximum, which can already exceed the
|
|
97
|
+
* window a walk pinned with `max_revision`. Taking it verbatim would record
|
|
98
|
+
* having read rows the walk never asked for.
|
|
99
|
+
*/
|
|
100
|
+
export declare function applyCategoryPage(accumulator: CategorySnapshot, page: CategoryPage, options?: {
|
|
101
|
+
readonly cursorLimit?: number;
|
|
102
|
+
}): CategorySnapshot;
|
|
103
|
+
//# sourceMappingURL=sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/catalog/sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B;oFACgF;IAChF,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,sEAAsE;IACtE,QAAQ,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,CAAC;CACpC;AAED,2DAA2D;AAC3D,eAAO,MAAM,cAAc,EAAE,gBAI5B,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAEnE;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAiB1E;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,kBAAkB,CAK/E;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,YAAY,GACjB,kBAAkB,GAAG,SAAS,CAOhC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,gBAAgB,EAC7B,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE;IAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9C,gBAAgB,CAoBlB"}
|