create-cogenta 0.2.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/blueprint-defaults.d.ts.map +1 -1
- package/dist/blueprint-defaults.js +6 -0
- package/dist/blueprint-defaults.js.map +1 -1
- package/dist/blueprints/assets/photos/association/community-cleanup.jpg +0 -0
- package/dist/blueprints/assets/photos/association/fundraising-dinner.jpg +0 -0
- package/dist/blueprints/assets/photos/association/garden-planting.jpg +0 -0
- package/dist/blueprints/assets/photos/association/harvest-food-drive.jpg +0 -0
- package/dist/blueprints/assets/photos/association/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/association/volunteer-orientation.jpg +0 -0
- package/dist/blueprints/assets/photos/association/winter-coat-collection.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/blog-runs-itself.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/desk-setup.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/editing.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/notebooks.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/plain-text-editor.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/reading-nonfiction.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/small-tool.jpg +0 -0
- package/dist/blueprints/assets/photos/blog/writing-schedule.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/business-2.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/business-3.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/business.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/culture-2.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/culture-3.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/culture.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/news-2.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/news-3.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/news.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/opinion-2.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/opinion-3.jpg +0 -0
- package/dist/blueprints/assets/photos/magazine/opinion.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/adatum-publishing.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/contoso-mobile-app.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/fabrikam-annual-report.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/litware-signage.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/northwind-rebrand.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/proseware-launch.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/tailspin-streaming.jpg +0 -0
- package/dist/blueprints/assets/photos/portfolio/wingtip-wayfinding.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/charred-octopus.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/chocolate-tart.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/creme-brulee.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/house-red.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/house-white.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/pan-seared-trout.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/poached-pear.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/roasted-beet-salad.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/slow-roast-duck-leg.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/soup-of-the-day.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/sparkling-water.jpg +0 -0
- package/dist/blueprints/assets/photos/restaurant/wild-mushroom-risotto.jpg +0 -0
- package/dist/blueprints/assets/photos/saas/avatar-1.jpg +0 -0
- package/dist/blueprints/assets/photos/saas/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/store/camp-blanket.jpg +0 -0
- package/dist/blueprints/assets/photos/store/canvas-tote.jpg +0 -0
- package/dist/blueprints/assets/photos/store/cast-iron-skillet.jpg +0 -0
- package/dist/blueprints/assets/photos/store/ceramic-pour-over-set.jpg +0 -0
- package/dist/blueprints/assets/photos/store/enamel-mug.jpg +0 -0
- package/dist/blueprints/assets/photos/store/everyday-tee.jpg +0 -0
- package/dist/blueprints/assets/photos/store/field-jacket.jpg +0 -0
- package/dist/blueprints/assets/photos/store/hero.jpg +0 -0
- package/dist/blueprints/assets/photos/store/leather-card-holder.jpg +0 -0
- package/dist/blueprints/assets/photos/store/linen-table-runner.jpg +0 -0
- package/dist/blueprints/assets/photos/store/trail-tote.jpg +0 -0
- package/dist/blueprints/assets/photos/store/wool-beanie.jpg +0 -0
- package/dist/blueprints/assets/photos/store/wool-overshirt.jpg +0 -0
- package/dist/blueprints/assets/photos/vitrine/avatar-1.jpg +0 -0
- package/dist/blueprints/assets/photos/vitrine/avatar-2.jpg +0 -0
- package/dist/blueprints/assets/photos/vitrine/avatar-3.jpg +0 -0
- package/dist/blueprints/assets/photos/vitrine/dashboard.jpg +0 -0
- package/dist/blueprints/assets/photos/vitrine/hero.jpg +0 -0
- package/dist/blueprints/association.d.ts +93 -15
- package/dist/blueprints/association.d.ts.map +1 -1
- package/dist/blueprints/association.js +637 -130
- package/dist/blueprints/association.js.map +1 -1
- package/dist/blueprints/blog.d.ts +81 -94
- package/dist/blueprints/blog.d.ts.map +1 -1
- package/dist/blueprints/blog.js +513 -177
- package/dist/blueprints/blog.js.map +1 -1
- package/dist/blueprints/content-pack.d.ts +83 -2
- package/dist/blueprints/content-pack.d.ts.map +1 -1
- package/dist/blueprints/content-pack.js +54 -1
- package/dist/blueprints/content-pack.js.map +1 -1
- package/dist/blueprints/content-packs.d.ts +4 -3
- package/dist/blueprints/content-packs.d.ts.map +1 -1
- package/dist/blueprints/content-packs.js +6 -3
- package/dist/blueprints/content-packs.js.map +1 -1
- package/dist/blueprints/demo-media.d.ts +39 -0
- package/dist/blueprints/demo-media.d.ts.map +1 -0
- package/dist/blueprints/demo-media.js +30 -0
- package/dist/blueprints/demo-media.js.map +1 -0
- package/dist/blueprints/documentation.d.ts +78 -15
- package/dist/blueprints/documentation.d.ts.map +1 -1
- package/dist/blueprints/documentation.js +585 -104
- package/dist/blueprints/documentation.js.map +1 -1
- package/dist/blueprints/magazine.d.ts +81 -15
- package/dist/blueprints/magazine.d.ts.map +1 -1
- package/dist/blueprints/magazine.js +431 -85
- package/dist/blueprints/magazine.js.map +1 -1
- package/dist/blueprints/menus.d.ts +25 -0
- package/dist/blueprints/menus.d.ts.map +1 -0
- package/dist/blueprints/menus.js +33 -0
- package/dist/blueprints/menus.js.map +1 -0
- package/dist/blueprints/photo-assets.d.ts +3 -0
- package/dist/blueprints/photo-assets.d.ts.map +1 -0
- package/dist/blueprints/photo-assets.js +33 -0
- package/dist/blueprints/photo-assets.js.map +1 -0
- package/dist/blueprints/portfolio.d.ts +81 -13
- package/dist/blueprints/portfolio.d.ts.map +1 -1
- package/dist/blueprints/portfolio.js +605 -102
- package/dist/blueprints/portfolio.js.map +1 -1
- package/dist/blueprints/registry.d.ts +3 -1
- package/dist/blueprints/registry.d.ts.map +1 -1
- package/dist/blueprints/registry.js +4 -1
- package/dist/blueprints/registry.js.map +1 -1
- package/dist/blueprints/restaurant.d.ts +65 -20
- package/dist/blueprints/restaurant.d.ts.map +1 -1
- package/dist/blueprints/restaurant.js +350 -117
- package/dist/blueprints/restaurant.js.map +1 -1
- package/dist/blueprints/saas.d.ts +81 -14
- package/dist/blueprints/saas.d.ts.map +1 -1
- package/dist/blueprints/saas.js +469 -132
- package/dist/blueprints/saas.js.map +1 -1
- package/dist/blueprints/site-settings-seed.d.ts +17 -0
- package/dist/blueprints/site-settings-seed.d.ts.map +1 -0
- package/dist/blueprints/site-settings-seed.js +45 -0
- package/dist/blueprints/site-settings-seed.js.map +1 -0
- package/dist/blueprints/starting-skins.d.ts +19 -0
- package/dist/blueprints/starting-skins.d.ts.map +1 -0
- package/dist/blueprints/starting-skins.js +301 -0
- package/dist/blueprints/starting-skins.js.map +1 -0
- package/dist/blueprints/store.d.ts +173 -0
- package/dist/blueprints/store.d.ts.map +1 -0
- package/dist/blueprints/store.js +643 -0
- package/dist/blueprints/store.js.map +1 -0
- package/dist/blueprints/vitrine.d.ts +94 -16
- package/dist/blueprints/vitrine.d.ts.map +1 -1
- package/dist/blueprints/vitrine.js +421 -142
- package/dist/blueprints/vitrine.js.map +1 -1
- package/dist/demo-art/compositions.d.ts +48 -0
- package/dist/demo-art/compositions.d.ts.map +1 -0
- package/dist/demo-art/compositions.js +690 -0
- package/dist/demo-art/compositions.js.map +1 -0
- package/dist/demo-art/index.d.ts +8 -0
- package/dist/demo-art/index.d.ts.map +1 -0
- package/dist/demo-art/index.js +5 -0
- package/dist/demo-art/index.js.map +1 -0
- package/dist/demo-art/oklch.d.ts +39 -0
- package/dist/demo-art/oklch.d.ts.map +1 -0
- package/dist/demo-art/oklch.js +79 -0
- package/dist/demo-art/oklch.js.map +1 -0
- package/dist/demo-art/png.d.ts +24 -0
- package/dist/demo-art/png.d.ts.map +1 -0
- package/dist/demo-art/png.js +110 -0
- package/dist/demo-art/png.js.map +1 -0
- package/dist/demo-art/render.d.ts +228 -0
- package/dist/demo-art/render.d.ts.map +1 -0
- package/dist/demo-art/render.js +478 -0
- package/dist/demo-art/render.js.map +1 -0
- package/dist/llm-setup.d.ts +10 -1
- package/dist/llm-setup.d.ts.map +1 -1
- package/dist/llm-setup.js +12 -2
- package/dist/llm-setup.js.map +1 -1
- package/dist/playground-reset.d.ts.map +1 -1
- package/dist/playground-reset.js +22 -4
- package/dist/playground-reset.js.map +1 -1
- package/dist/prompts.d.ts +12 -0
- package/dist/prompts.d.ts.map +1 -1
- package/dist/prompts.js +32 -0
- package/dist/prompts.js.map +1 -1
- package/dist/recap.d.ts.map +1 -1
- package/dist/recap.js +6 -0
- package/dist/recap.js.map +1 -1
- package/dist/scaffold.d.ts +22 -2
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +185 -23
- package/dist/scaffold.js.map +1 -1
- package/dist/wizard.d.ts.map +1 -1
- package/dist/wizard.js +4 -1
- package/dist/wizard.js.map +1 -1
- package/package.json +14 -11
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import type { VocabularyBlock } from '@cogenta/blocks';
|
|
2
2
|
import { type CollectionDefinition } from '@cogenta/schema';
|
|
3
3
|
import { type BlueprintContentPack, type RecommendedAgentHint } from './content-pack.js';
|
|
4
|
+
import type { DemoMediaSpec } from './demo-media.js';
|
|
5
|
+
import type { BlueprintMenus } from './menus.js';
|
|
4
6
|
/**
|
|
5
|
-
* The `saas` blueprint's content model (
|
|
7
|
+
* The `saas` blueprint's content model (L25, "templates pro"): a marketing
|
|
6
8
|
* site for a software product — a `feature` collection routed so it can be
|
|
7
|
-
* listed live
|
|
8
|
-
* Deliberately no `pricingPlan` collection or billing model:
|
|
9
|
-
* on a real SaaS site are usually a handful of numbers with no
|
|
10
|
-
* lifecycle (no author, no publish date, no individual page), so
|
|
11
|
-
* page-authored content on the `pricing` page below rather than a
|
|
12
|
-
* collection invented to hold three rows.
|
|
9
|
+
* listed live and linked to from the home page, exactly like `vitrine`'s
|
|
10
|
+
* `service`. Deliberately no `pricingPlan` collection or billing model:
|
|
11
|
+
* pricing tiers on a real SaaS site are usually a handful of numbers with no
|
|
12
|
+
* independent lifecycle (no author, no publish date, no individual page), so
|
|
13
|
+
* they are page-authored content on the `pricing` page below rather than a
|
|
14
|
+
* second collection invented to hold three rows.
|
|
15
|
+
*
|
|
16
|
+
* `icon` (a symbol name `@cogenta/theme-kit`'s `renderIcon` recognises) and
|
|
17
|
+
* `coverImage` (contract D `theme@1.4`'s `entryImage`) are what let
|
|
18
|
+
* `theme-saas`'s `collectionList` show a feature the same way its
|
|
19
|
+
* `featureGrid` does — an icon chip first, a photo only as the fallback.
|
|
13
20
|
*/
|
|
14
21
|
export declare const feature: {
|
|
15
22
|
readonly name: "feature";
|
|
@@ -21,18 +28,48 @@ export declare const feature: {
|
|
|
21
28
|
readonly pattern: "/features/:slug";
|
|
22
29
|
};
|
|
23
30
|
readonly fields: {
|
|
24
|
-
|
|
31
|
+
readonly seoTitle: import("@cogenta/schema").FieldDefinition & {
|
|
25
32
|
readonly kind: "text";
|
|
26
33
|
readonly options: Readonly<Record<string, unknown>>;
|
|
27
34
|
};
|
|
28
|
-
|
|
35
|
+
readonly seoDescription: import("@cogenta/schema").FieldDefinition & {
|
|
36
|
+
readonly kind: "text";
|
|
37
|
+
readonly options: Readonly<Record<string, unknown>>;
|
|
38
|
+
};
|
|
39
|
+
readonly seoImage: import("@cogenta/schema").FieldDefinition & {
|
|
40
|
+
readonly kind: "media";
|
|
41
|
+
readonly options: {
|
|
42
|
+
accept: readonly ("audio" | "file" | "image" | "video")[];
|
|
43
|
+
many: boolean;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
readonly seoNoindex: import("@cogenta/schema").FieldDefinition & {
|
|
47
|
+
readonly kind: "boolean";
|
|
48
|
+
readonly options: {};
|
|
49
|
+
};
|
|
50
|
+
readonly name: import("@cogenta/schema").FieldDefinition & {
|
|
51
|
+
readonly kind: "text";
|
|
52
|
+
readonly options: Readonly<Record<string, unknown>>;
|
|
53
|
+
};
|
|
54
|
+
readonly slug: import("@cogenta/schema").FieldDefinition & {
|
|
29
55
|
readonly kind: "slug";
|
|
30
56
|
readonly options: Readonly<Record<string, unknown>>;
|
|
31
57
|
};
|
|
32
|
-
description: import("@cogenta/schema").FieldDefinition & {
|
|
58
|
+
readonly description: import("@cogenta/schema").FieldDefinition & {
|
|
33
59
|
readonly kind: "text";
|
|
34
60
|
readonly options: Readonly<Record<string, unknown>>;
|
|
35
61
|
};
|
|
62
|
+
readonly icon: import("@cogenta/schema").FieldDefinition & {
|
|
63
|
+
readonly kind: "text";
|
|
64
|
+
readonly options: Readonly<Record<string, unknown>>;
|
|
65
|
+
};
|
|
66
|
+
readonly coverImage: import("@cogenta/schema").FieldDefinition & {
|
|
67
|
+
readonly kind: "media";
|
|
68
|
+
readonly options: {
|
|
69
|
+
accept: readonly ("audio" | "file" | "image" | "video")[];
|
|
70
|
+
many: boolean;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
36
73
|
};
|
|
37
74
|
readonly indexes: readonly [readonly ["slug"]];
|
|
38
75
|
readonly permissions: {
|
|
@@ -48,7 +85,14 @@ export interface SaasDemoFeature {
|
|
|
48
85
|
readonly name: string;
|
|
49
86
|
readonly slug: string;
|
|
50
87
|
readonly description: string;
|
|
88
|
+
readonly icon: string;
|
|
51
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Six real product capabilities, each with the icon `featureGrid` (home
|
|
92
|
+
* page) and this same entry's own `icon` field both point at — a
|
|
93
|
+
* `collectionList` of `feature` and the home page's `featureGrid` read as
|
|
94
|
+
* one system rather than two unrelated sections.
|
|
95
|
+
*/
|
|
52
96
|
export declare const SAAS_DEMO_FEATURES: readonly SaasDemoFeature[];
|
|
53
97
|
export interface SaasDemoPage {
|
|
54
98
|
readonly title: string;
|
|
@@ -56,11 +100,34 @@ export interface SaasDemoPage {
|
|
|
56
100
|
readonly blocks: readonly VocabularyBlock[];
|
|
57
101
|
}
|
|
58
102
|
/**
|
|
59
|
-
* `home` (
|
|
60
|
-
*
|
|
61
|
-
*
|
|
103
|
+
* `home` (ten blocks, the Linear/Stripe/Vercel composition the L25 brief
|
|
104
|
+
* asks for: hero → trust strip → features → product shot → numbers →
|
|
105
|
+
* social proof → pricing → questions → final call to action), `pricing`
|
|
106
|
+
* (its own hero, the same pricing table, and a billing-specific FAQ), and
|
|
107
|
+
* `about` (a short mission statement plus a second, distinct voice of
|
|
108
|
+
* social proof).
|
|
109
|
+
*
|
|
110
|
+
* A function of `media`/`featureIds` (`SeedContext.media`, and the ids
|
|
111
|
+
* `seedSaasDemoContent` assigns its own features before this runs), not a
|
|
112
|
+
* static const: the hero's `media`, the product shot, the trust strip's
|
|
113
|
+
* logos and both testimonials' avatars all need ids only the scaffold
|
|
114
|
+
* knows at seed time, and the feature grid links to each feature's own
|
|
115
|
+
* real page.
|
|
62
116
|
*/
|
|
63
|
-
export declare
|
|
117
|
+
export declare function buildSaasDemoPages(media: Readonly<Record<string, string>>, featureIdBySlug: ReadonlyMap<string, string>): readonly SaasDemoPage[];
|
|
64
118
|
export declare const SAAS_RECOMMENDED_AGENTS: readonly RecommendedAgentHint[];
|
|
119
|
+
/**
|
|
120
|
+
* Procedural visuals this blueprint seeds (L25): a mesh-gradient hero
|
|
121
|
+
* backdrop, a wide product screenshot stand-in, six neutral client logos
|
|
122
|
+
* for the trust strip, one avatar per testimonial (L26: the "about" page's
|
|
123
|
+
* testimonial went unillustrated before this — a second, distinct avatar
|
|
124
|
+
* fixes that rather than reusing the home page's), and one cover photo per
|
|
125
|
+
* demo feature — all from the same starting-skin palette
|
|
126
|
+
* (`starting-skins.js`) this blueprint already ships.
|
|
127
|
+
*/
|
|
128
|
+
export declare const SAAS_MEDIA_SPECS: readonly DemoMediaSpec[];
|
|
129
|
+
/** Header/footer navigation and the header call-to-action button (L25, D4). */
|
|
130
|
+
export declare const SAAS_MENUS: BlueprintMenus;
|
|
131
|
+
export declare const SAAS_SITE_SETTINGS: Readonly<Record<string, unknown>>;
|
|
65
132
|
export declare const saasContentPack: BlueprintContentPack;
|
|
66
133
|
//# sourceMappingURL=saas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saas.d.ts","sourceRoot":"","sources":["../../src/blueprints/saas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EACL,KAAK,oBAAoB,EAK1B,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"saas.d.ts","sourceRoot":"","sources":["../../src/blueprints/saas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EACL,KAAK,oBAAoB,EAK1B,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAK1B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAGhD;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlB,CAAA;AAEF,eAAO,MAAM,IAAI,sBAAiC,CAAA;AAElD,eAAO,MAAM,gBAAgB,EAAE,SAAS,oBAAoB,EAAoB,CAAA;AAIhF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EA2CxD,CAAA;AAyBD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAA;CAC5C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACvC,eAAe,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3C,SAAS,YAAY,EAAE,CA6NzB;AAmFD,eAAO,MAAM,uBAAuB,EAAE,SAAS,oBAAoB,EAWlE,CAAA;AAsBD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,aAAa,EAyCpD,CAAA;AAED,+EAA+E;AAC/E,eAAO,MAAM,UAAU,EAAE,cAcxB,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQhE,CAAA;AAwCD,eAAO,MAAM,eAAe,EAAE,oBAQ7B,CAAA"}
|