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,13 +1,21 @@
|
|
|
1
|
+
import { CogentaError } from '@cogenta/core';
|
|
1
2
|
import { createContentStore, defineCollection, f, validateCollectionSet, } from '@cogenta/schema';
|
|
2
|
-
import {
|
|
3
|
+
import { avatarArt, coverArt, heroArt } from '../demo-art/compositions.js';
|
|
4
|
+
import { definePageCollection, richTextParagraph, SEO_FIELDS, toBlockZoneEntry, } from './content-pack.js';
|
|
5
|
+
import { STARTING_SKINS } from './starting-skins.js';
|
|
3
6
|
/**
|
|
4
|
-
* The `restaurant` blueprint
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* The `restaurant` blueprint (L25 task A0b/Phase 1): a `menu_item`
|
|
8
|
+
* collection — grouped by `category` rather than a separate category
|
|
9
|
+
* collection, the same restraint `store`'s `product` and `magazine`'s
|
|
10
|
+
* `article` already use — plus a genuinely rich single-page home that
|
|
11
|
+
* `@cogenta/theme-restaurant` renders as a real, priced, grouped menu
|
|
12
|
+
* (never a card grid: contract B is frozen, a "menu" block would need an
|
|
13
|
+
* RFC — `docs/lots/L25-templates-pro.md` "pièges connus").
|
|
14
|
+
*
|
|
15
|
+
* Rewritten in full for L25 (its L9-task-8 predecessor seeded three home
|
|
16
|
+
* blocks and no visuals at all): twelve dishes across four categories, a
|
|
17
|
+
* real hero/gallery/testimonial/hours composition, real menus and site
|
|
18
|
+
* settings, and `@cogenta/theme-restaurant` as the default theme.
|
|
11
19
|
*/
|
|
12
20
|
export const menuItem = defineCollection({
|
|
13
21
|
name: 'menu_item',
|
|
@@ -18,7 +26,12 @@ export const menuItem = defineCollection({
|
|
|
18
26
|
slug: f.slug({ from: 'name', unique: true }),
|
|
19
27
|
description: f.text({ max: 300, multiline: true }),
|
|
20
28
|
price: f.number({ required: true, min: 0 }),
|
|
21
|
-
category: f.select({
|
|
29
|
+
category: f.select({
|
|
30
|
+
options: ['Starters', 'Mains', 'Desserts', 'Drinks'],
|
|
31
|
+
required: true,
|
|
32
|
+
}),
|
|
33
|
+
photo: f.media({ accept: ['image'] }),
|
|
34
|
+
...SEO_FIELDS,
|
|
22
35
|
},
|
|
23
36
|
indexes: [['slug'], ['category']],
|
|
24
37
|
permissions: {
|
|
@@ -35,146 +48,355 @@ export const RESTAURANT_DEMO_MENU_ITEMS = [
|
|
|
35
48
|
{
|
|
36
49
|
name: 'Roasted beet salad',
|
|
37
50
|
slug: 'roasted-beet-salad',
|
|
38
|
-
description: 'Beets, goat cheese, walnuts
|
|
51
|
+
description: 'Beets from the Tuesday market stalls, roasted slowly, with whipped goat cheese, toasted walnuts and a citrus dressing sharpened with a little sherry vinegar.',
|
|
39
52
|
price: 9.5,
|
|
40
53
|
category: 'Starters',
|
|
41
54
|
},
|
|
42
55
|
{
|
|
43
56
|
name: 'Soup of the day',
|
|
44
57
|
slug: 'soup-of-the-day',
|
|
45
|
-
description: '
|
|
58
|
+
description: 'Whatever the stalls had this morning, simmered down to something simple — ask the server which vegetable won today.',
|
|
46
59
|
price: 7,
|
|
47
60
|
category: 'Starters',
|
|
48
61
|
},
|
|
62
|
+
{
|
|
63
|
+
name: 'Charred octopus',
|
|
64
|
+
slug: 'charred-octopus',
|
|
65
|
+
description: 'Octopus charred hard over the grill for a smoky edge, smoked paprika, a potato purée finished with a thread of olive oil and a squeeze of lemon.',
|
|
66
|
+
price: 13,
|
|
67
|
+
category: 'Starters',
|
|
68
|
+
},
|
|
49
69
|
{
|
|
50
70
|
name: 'Pan-seared trout',
|
|
51
71
|
slug: 'pan-seared-trout',
|
|
52
|
-
description: '
|
|
72
|
+
description: 'Trout from the Saône, pan-seared skin-side down until it crackles, brown butter, capers, and whatever root vegetables the market had that week.',
|
|
53
73
|
price: 22,
|
|
54
74
|
category: 'Mains',
|
|
55
75
|
},
|
|
56
76
|
{
|
|
57
77
|
name: 'Wild mushroom risotto',
|
|
58
78
|
slug: 'wild-mushroom-risotto',
|
|
59
|
-
description: 'Arborio rice
|
|
79
|
+
description: 'Arborio rice cooked slowly with a mix of wild mushrooms bought that week, finished with parmesan and a knob of butter off the heat.',
|
|
60
80
|
price: 18,
|
|
61
81
|
category: 'Mains',
|
|
62
82
|
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Slow-roast duck leg',
|
|
85
|
+
slug: 'slow-roast-duck-leg',
|
|
86
|
+
description: 'Duck leg confit overnight in its own fat, braised red cabbage with apple, and a juniper and red wine jus.',
|
|
87
|
+
price: 26,
|
|
88
|
+
category: 'Mains',
|
|
89
|
+
},
|
|
63
90
|
{
|
|
64
91
|
name: 'Chocolate tart',
|
|
65
92
|
slug: 'chocolate-tart',
|
|
66
|
-
description: 'Dark chocolate
|
|
93
|
+
description: 'Dark chocolate ganache set in a short, buttery pastry crust, with a pinch of sea salt to cut the sweetness.',
|
|
67
94
|
price: 8,
|
|
68
95
|
category: 'Desserts',
|
|
69
96
|
},
|
|
97
|
+
{
|
|
98
|
+
name: 'Poached pear',
|
|
99
|
+
slug: 'poached-pear',
|
|
100
|
+
description: 'A whole pear poached slowly in red wine and cinnamon, served with a spoon of mascarpone cream.',
|
|
101
|
+
price: 7.5,
|
|
102
|
+
category: 'Desserts',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: 'Crème brûlée',
|
|
106
|
+
slug: 'creme-brulee',
|
|
107
|
+
description: 'Vanilla bean custard set overnight, with a caramelised sugar crust cracked at the table.',
|
|
108
|
+
price: 7,
|
|
109
|
+
category: 'Desserts',
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
name: 'House red, glass',
|
|
113
|
+
slug: 'house-red-glass',
|
|
114
|
+
description: 'A Rhône blend poured straight from the barrel — ask which producer is pouring this month.',
|
|
115
|
+
price: 6,
|
|
116
|
+
category: 'Drinks',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'House white, glass',
|
|
120
|
+
slug: 'house-white-glass',
|
|
121
|
+
description: 'Crisp and dry, chilled to the glass, changes with what is drinking well this season.',
|
|
122
|
+
price: 6,
|
|
123
|
+
category: 'Drinks',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name: 'Sparkling water',
|
|
127
|
+
slug: 'sparkling-water',
|
|
128
|
+
description: 'Still or sparkling, brought to the table in a shared bottle.',
|
|
129
|
+
price: 3,
|
|
130
|
+
category: 'Drinks',
|
|
131
|
+
},
|
|
70
132
|
];
|
|
71
133
|
const BLOCK_VERSION = '1.0.0';
|
|
72
|
-
function
|
|
73
|
-
|
|
74
|
-
_key: key
|
|
75
|
-
_type: '
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
134
|
+
function proseBlock(key, paragraphs) {
|
|
135
|
+
const body = paragraphs.map((text, index) => ({
|
|
136
|
+
_key: `${key}-p${index}`,
|
|
137
|
+
_type: 'block',
|
|
138
|
+
style: 'normal',
|
|
139
|
+
children: [{ _key: `${key}-p${index}-s`, _type: 'span', text, marks: [] }],
|
|
140
|
+
markDefs: [],
|
|
141
|
+
}));
|
|
142
|
+
return { _key: key, _type: 'prose', _version: BLOCK_VERSION, body };
|
|
143
|
+
}
|
|
144
|
+
/** A bullet list of opening-hours rows — contract A's rich text has no table node, so a simple list is the honest, structured equivalent (fiche L25, "no HTML in a block", R3). */
|
|
145
|
+
function hoursAnswer(key, rows) {
|
|
146
|
+
return rows.map((text, index) => ({
|
|
147
|
+
_key: `${key}-r${index}`,
|
|
148
|
+
_type: 'block',
|
|
149
|
+
style: 'normal',
|
|
150
|
+
listItem: 'bullet',
|
|
151
|
+
level: 1,
|
|
152
|
+
children: [{ _key: `${key}-r${index}-s`, _type: 'span', text, marks: [] }],
|
|
153
|
+
markDefs: [],
|
|
154
|
+
}));
|
|
87
155
|
}
|
|
88
156
|
/**
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
157
|
+
* The home page's nine blocks (L25 Annexe brief): hero, "Our story",
|
|
158
|
+
* the priced menu, a gallery, the numbers, a testimonial, hours &
|
|
159
|
+
* location, a map, and the closing call to action. Every block's `_key`
|
|
160
|
+
* doubles as a real DOM anchor (`@cogenta/theme-restaurant`'s
|
|
161
|
+
* `renderPage`) — the header/footer menus below link straight into them,
|
|
162
|
+
* so the site reads as one considered page rather than a maze of empty
|
|
163
|
+
* stubs.
|
|
164
|
+
*
|
|
165
|
+
* A function of `media` (`SeedContext.media`), not a static const: the
|
|
166
|
+
* hero/gallery/testimonial media fields need ids `seedDemoMedia` only
|
|
167
|
+
* knows at scaffold time.
|
|
93
168
|
*/
|
|
94
|
-
export
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
},
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
169
|
+
export function buildRestaurantHomeBlocks(media) {
|
|
170
|
+
const galleryItems = [1, 2, 3, 4, 5, 6]
|
|
171
|
+
.map((n) => media[`gallery-${n}`])
|
|
172
|
+
.filter((id) => id !== undefined)
|
|
173
|
+
.map((id, index) => ({ _key: `home-gallery-${index}`, media: id }));
|
|
174
|
+
return [
|
|
175
|
+
{
|
|
176
|
+
_key: 'home-hero',
|
|
177
|
+
_type: 'hero',
|
|
178
|
+
_version: BLOCK_VERSION,
|
|
179
|
+
eyebrow: 'Est. 1994 · Lyon',
|
|
180
|
+
title: 'Amaranthe',
|
|
181
|
+
subtitle: 'Seasonal cooking, two streets from the market, since 1994.',
|
|
182
|
+
...(media.hero === undefined ? {} : { media: media.hero }),
|
|
183
|
+
actions: [
|
|
184
|
+
{ label: 'Reserve a table', target: { href: '/#home-cta' }, emphasis: 'primary' },
|
|
185
|
+
{ label: 'View the menu', target: { href: '/#home-menu' } },
|
|
186
|
+
],
|
|
187
|
+
},
|
|
188
|
+
proseBlock('home-story', [
|
|
189
|
+
'Amaranthe opened in 1994, two streets from the market, with a kitchen built around what the stalls had that morning rather than a fixed idea of what a restaurant menu should say.',
|
|
190
|
+
"The idea was simple, and at the time unfashionable: no set menu printed a season in advance, no dish held hostage to a supplier's contract. Three chefs walk to the market before the ovens are even lit, buy what looks right, and write the day's menu on the way back.",
|
|
191
|
+
"Thirty years on, the room still seats thirty-two, the walk to the market is still five minutes, and the menu is still written after buying, never before. A handful of dishes — the crème brûlée, the duck confit — have stayed close to their first version for a reason: some things, once right, don't need reinventing.",
|
|
192
|
+
"What changes is what's on the plate. A hard frost one October meant three weeks of nothing but root vegetables, and no apology for it; a good mushroom season means the risotto changes weekly. The market decides the menu, not the other way around, and that is still the only rule in the kitchen.",
|
|
193
|
+
]),
|
|
194
|
+
{
|
|
195
|
+
_key: 'home-menu',
|
|
196
|
+
_type: 'collectionList',
|
|
197
|
+
_version: BLOCK_VERSION,
|
|
198
|
+
title: 'The menu',
|
|
199
|
+
collection: 'menu_item',
|
|
200
|
+
sort: { field: 'createdAt', direction: 'asc' },
|
|
201
|
+
limit: 12,
|
|
202
|
+
layout: 'grid',
|
|
203
|
+
},
|
|
204
|
+
// A `gallery` needs at least one item (contract B) — with no media
|
|
205
|
+
// seeded (`buildRestaurantHomeBlocks({})`, exercised directly by
|
|
206
|
+
// `blueprint-demo-blocks.test.ts`) the block is left out entirely
|
|
207
|
+
// rather than emitted empty and invalid.
|
|
208
|
+
...(galleryItems.length === 0
|
|
209
|
+
? []
|
|
210
|
+
: [
|
|
211
|
+
{
|
|
212
|
+
_key: 'home-gallery',
|
|
213
|
+
_type: 'gallery',
|
|
214
|
+
_version: BLOCK_VERSION,
|
|
215
|
+
layout: 'masonry',
|
|
216
|
+
items: galleryItems,
|
|
217
|
+
},
|
|
218
|
+
]),
|
|
219
|
+
{
|
|
220
|
+
_key: 'home-stats',
|
|
221
|
+
_type: 'stats',
|
|
222
|
+
_version: BLOCK_VERSION,
|
|
223
|
+
items: [
|
|
224
|
+
{ _key: 'home-stats-1', value: '1994', label: 'Serving since' },
|
|
225
|
+
{ _key: 'home-stats-2', value: '3', label: 'Chefs' },
|
|
226
|
+
{ _key: 'home-stats-3', value: '32', label: 'Seats' },
|
|
227
|
+
{ _key: 'home-stats-4', value: '1', label: 'Michelin mention' },
|
|
228
|
+
],
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
_key: 'home-testimonial',
|
|
232
|
+
_type: 'testimonial',
|
|
233
|
+
_version: BLOCK_VERSION,
|
|
234
|
+
quote: richTextParagraph('home-testimonial-quote', 'A quietly confident kitchen — the kind of unhurried evening we keep coming back for.'),
|
|
235
|
+
attribution: {
|
|
236
|
+
name: 'M. Bernard',
|
|
237
|
+
role: 'Guestbook, 2026',
|
|
238
|
+
...(media.avatar === undefined ? {} : { avatar: media.avatar }),
|
|
143
239
|
},
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
_key: 'home-hours',
|
|
243
|
+
_type: 'accordion',
|
|
244
|
+
_version: BLOCK_VERSION,
|
|
245
|
+
title: 'Hours & location',
|
|
246
|
+
items: [
|
|
247
|
+
{
|
|
248
|
+
_key: 'home-hours-1',
|
|
249
|
+
question: 'Opening hours',
|
|
250
|
+
answer: hoursAnswer('home-hours-1', [
|
|
251
|
+
'Tuesday – Thursday: 18:00–22:30',
|
|
252
|
+
'Friday – Saturday: 18:00–23:00',
|
|
253
|
+
'Sunday: 12:00–15:00',
|
|
254
|
+
'Closed Monday',
|
|
255
|
+
]),
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
_key: 'home-hours-2',
|
|
259
|
+
question: 'Address',
|
|
260
|
+
answer: richTextParagraph('home-hours-2-a', '12 Rue du Marché, 69001 Lyon.'),
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
_key: 'home-hours-3',
|
|
264
|
+
question: 'Parking',
|
|
265
|
+
answer: richTextParagraph('home-hours-3-a', 'No dedicated parking. The Presqu’île car park is a five-minute walk and free after 19:00.'),
|
|
266
|
+
},
|
|
267
|
+
],
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
_key: 'home-map',
|
|
271
|
+
_type: 'embed',
|
|
272
|
+
_version: BLOCK_VERSION,
|
|
273
|
+
provider: 'other',
|
|
274
|
+
url: 'https://www.openstreetmap.org/?mlat=45.767&mlon=4.834#map=16/45.767/4.834',
|
|
275
|
+
ratio: '16:9',
|
|
276
|
+
consentRequired: true,
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
_key: 'home-cta',
|
|
280
|
+
_type: 'cta',
|
|
281
|
+
_version: BLOCK_VERSION,
|
|
282
|
+
title: 'Book now',
|
|
283
|
+
text: 'Reservations recommended on weekends.',
|
|
284
|
+
actions: [
|
|
285
|
+
{
|
|
286
|
+
label: 'Book now',
|
|
287
|
+
target: { href: 'mailto:reservations@amaranthe.example' },
|
|
288
|
+
emphasis: 'primary',
|
|
289
|
+
},
|
|
290
|
+
{ label: 'Call us', target: { href: 'tel:+33472000000' } },
|
|
291
|
+
],
|
|
292
|
+
},
|
|
293
|
+
];
|
|
294
|
+
}
|
|
295
|
+
export function buildRestaurantDemoPages(media) {
|
|
296
|
+
return [
|
|
297
|
+
{ title: 'Home', slug: 'home', blocks: buildRestaurantHomeBlocks(media) },
|
|
298
|
+
{
|
|
299
|
+
title: 'Privacy',
|
|
300
|
+
slug: 'privacy',
|
|
301
|
+
blocks: [
|
|
302
|
+
proseBlock('privacy-body', [
|
|
303
|
+
'Amaranthe collects only what a reservation needs: a name, a phone number, and a party size. Nothing is sold, shared, or used for anything beyond confirming your table.',
|
|
304
|
+
'That information is kept only as long as it takes to seat you — reservation records are cleared at the end of each service, not archived into a mailing list you never asked to join.',
|
|
305
|
+
'This site sets no tracking cookies and runs no advertising. If you have a question about what we hold, or want it removed sooner, ask any member of staff or write to reservations@amaranthe.example.',
|
|
306
|
+
]),
|
|
307
|
+
],
|
|
308
|
+
},
|
|
309
|
+
];
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* `restaurant`'s own starting skin (`starting-skins.js`) — asserted
|
|
313
|
+
* present with a real check, not a `!`, since `STARTING_SKINS` is keyed by
|
|
314
|
+
* blueprint id and TypeScript cannot see that this particular key is
|
|
315
|
+
* always populated.
|
|
316
|
+
*/
|
|
317
|
+
function restaurantPalette() {
|
|
318
|
+
const skin = STARTING_SKINS.restaurant;
|
|
319
|
+
if (skin === undefined) {
|
|
320
|
+
throw new CogentaError({
|
|
321
|
+
code: 'BLUEPRINT_REGISTRY_CORRUPT',
|
|
322
|
+
message: 'STARTING_SKINS.restaurant is missing.',
|
|
323
|
+
hint: 'The "restaurant" entry must stay declared in starting-skins.ts for this blueprint to render its demo art.',
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
return skin.color;
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Procedural demo visuals (L25 D1): a warm, elegant hero backdrop, one
|
|
330
|
+
* cover photo per dish (`coverArt`, keyed by slug so `seedRestaurantDemoContent`
|
|
331
|
+
* can look each one up without caring what id the media store assigned
|
|
332
|
+
* it), six gallery images, and one avatar for the guestbook testimonial.
|
|
333
|
+
*/
|
|
334
|
+
/** Bundled photography (`assets/photos/restaurant/`), keyed by the same slug `RESTAURANT_DEMO_MENU_ITEMS` uses — two slugs (`house-red-glass`/`house-white-glass`) shortened for the filename, the rest identical. */
|
|
335
|
+
const RESTAURANT_DISH_PHOTOS = {
|
|
336
|
+
'roasted-beet-salad': 'restaurant/roasted-beet-salad.jpg',
|
|
337
|
+
'soup-of-the-day': 'restaurant/soup-of-the-day.jpg',
|
|
338
|
+
'charred-octopus': 'restaurant/charred-octopus.jpg',
|
|
339
|
+
'pan-seared-trout': 'restaurant/pan-seared-trout.jpg',
|
|
340
|
+
'wild-mushroom-risotto': 'restaurant/wild-mushroom-risotto.jpg',
|
|
341
|
+
'slow-roast-duck-leg': 'restaurant/slow-roast-duck-leg.jpg',
|
|
342
|
+
'chocolate-tart': 'restaurant/chocolate-tart.jpg',
|
|
343
|
+
'poached-pear': 'restaurant/poached-pear.jpg',
|
|
344
|
+
'creme-brulee': 'restaurant/creme-brulee.jpg',
|
|
345
|
+
'house-red-glass': 'restaurant/house-red.jpg',
|
|
346
|
+
'house-white-glass': 'restaurant/house-white.jpg',
|
|
347
|
+
'sparkling-water': 'restaurant/sparkling-water.jpg',
|
|
348
|
+
};
|
|
349
|
+
export const RESTAURANT_MEDIA_SPECS = [
|
|
350
|
+
{
|
|
351
|
+
name: 'hero',
|
|
352
|
+
spec: heroArt(restaurantPalette(), 'radial', 7),
|
|
353
|
+
alt: 'The dining room, warm evening light',
|
|
354
|
+
photo: 'restaurant/hero.jpg',
|
|
355
|
+
},
|
|
356
|
+
...RESTAURANT_DEMO_MENU_ITEMS.map((demo, index) => {
|
|
357
|
+
const photo = RESTAURANT_DISH_PHOTOS[demo.slug];
|
|
358
|
+
return {
|
|
359
|
+
name: `dish-${demo.slug}`,
|
|
360
|
+
spec: coverArt(restaurantPalette(), 100 + index),
|
|
361
|
+
alt: `${demo.name}, plated`,
|
|
362
|
+
...(photo === undefined ? {} : { photo }),
|
|
363
|
+
};
|
|
364
|
+
}),
|
|
365
|
+
...[1, 2, 3, 4, 5, 6].map((n) => ({
|
|
366
|
+
name: `gallery-${n}`,
|
|
367
|
+
spec: coverArt(restaurantPalette(), 200 + n),
|
|
368
|
+
alt: 'The dining room, an abstract composition',
|
|
369
|
+
})),
|
|
370
|
+
{
|
|
371
|
+
name: 'avatar',
|
|
372
|
+
spec: avatarArt(restaurantPalette(), 301),
|
|
373
|
+
alt: 'An abstract avatar composition, standing in for a guest photo',
|
|
176
374
|
},
|
|
177
375
|
];
|
|
376
|
+
/** Header/footer navigation and the header "Reserve" button (L25 D4) — every link an in-page anchor into the home page's own blocks, except the real "Privacy" page. */
|
|
377
|
+
export const RESTAURANT_MENUS = {
|
|
378
|
+
header: [
|
|
379
|
+
{ label: 'Menu', url: '/#home-menu' },
|
|
380
|
+
{ label: 'Our story', url: '/#home-story' },
|
|
381
|
+
{ label: 'Gallery', url: '/#home-gallery' },
|
|
382
|
+
{ label: 'Contact', url: '/#home-hours' },
|
|
383
|
+
],
|
|
384
|
+
footer: [
|
|
385
|
+
{ label: 'Menu', url: '/#home-menu' },
|
|
386
|
+
{ label: 'Reservations', url: '/#home-cta' },
|
|
387
|
+
{ label: 'Privacy', url: '/privacy' },
|
|
388
|
+
],
|
|
389
|
+
headerAction: { label: 'Reserve', url: '/#home-cta' },
|
|
390
|
+
};
|
|
391
|
+
export const RESTAURANT_SITE_SETTINGS = {
|
|
392
|
+
'general.tagline': 'Seasonal cooking, since 1994.',
|
|
393
|
+
'general.socialLinks': [
|
|
394
|
+
{ label: 'Instagram', url: 'https://instagram.com/example' },
|
|
395
|
+
{ label: 'Facebook', url: 'https://facebook.com/example' },
|
|
396
|
+
{ label: 'Reviews', url: 'https://example.com/reviews' },
|
|
397
|
+
],
|
|
398
|
+
'general.footerNote': 'Amaranthe · 12 Rue du Marché, 69001 Lyon · +33 4 72 00 00 00',
|
|
399
|
+
};
|
|
178
400
|
export const RESTAURANT_RECOMMENDED_AGENTS = [
|
|
179
401
|
{
|
|
180
402
|
name: 'seoAgent',
|
|
@@ -189,12 +411,18 @@ export const RESTAURANT_RECOMMENDED_AGENTS = [
|
|
|
189
411
|
];
|
|
190
412
|
/**
|
|
191
413
|
* Inserts the `restaurant` blueprint's demo content through the real
|
|
192
|
-
* `ContentStore` — never mocked (house rule).
|
|
414
|
+
* `ContentStore` — never mocked (house rule). Each dish's `photo` and the
|
|
415
|
+
* home page's hero/gallery/testimonial media come from `ctx.media`
|
|
416
|
+
* (`seedDemoMedia`/`RESTAURANT_MEDIA_SPECS`) — absent (a caller that never
|
|
417
|
+
* ran `seedDemoMedia`) simply leaves those fields unset, since none of
|
|
418
|
+
* them is `required` on its collection/block.
|
|
193
419
|
*/
|
|
194
|
-
async function seedRestaurantDemoContent(
|
|
420
|
+
async function seedRestaurantDemoContent(ctx) {
|
|
421
|
+
const { db, defaultLocale, adminId, media } = ctx;
|
|
195
422
|
const menuItemStore = createContentStore({ db, collection: menuItem, defaultLocale });
|
|
196
423
|
const pageStore = createContentStore({ db, collection: page, defaultLocale });
|
|
197
424
|
for (const demo of RESTAURANT_DEMO_MENU_ITEMS) {
|
|
425
|
+
const photo = media[`dish-${demo.slug}`];
|
|
198
426
|
await menuItemStore.create({
|
|
199
427
|
status: 'published',
|
|
200
428
|
createdBy: adminId,
|
|
@@ -204,10 +432,11 @@ async function seedRestaurantDemoContent(db, defaultLocale, adminId) {
|
|
|
204
432
|
description: demo.description,
|
|
205
433
|
price: demo.price,
|
|
206
434
|
category: demo.category,
|
|
435
|
+
...(photo === undefined ? {} : { photo }),
|
|
207
436
|
},
|
|
208
437
|
});
|
|
209
438
|
}
|
|
210
|
-
for (const demo of
|
|
439
|
+
for (const demo of buildRestaurantDemoPages(media)) {
|
|
211
440
|
await pageStore.create({
|
|
212
441
|
status: 'published',
|
|
213
442
|
createdBy: adminId,
|
|
@@ -220,5 +449,9 @@ export const restaurantContentPack = {
|
|
|
220
449
|
collections: RESTAURANT_COLLECTIONS,
|
|
221
450
|
recommendedAgents: RESTAURANT_RECOMMENDED_AGENTS,
|
|
222
451
|
seedDemoContent: seedRestaurantDemoContent,
|
|
452
|
+
defaultTheme: '@cogenta/theme-restaurant',
|
|
453
|
+
menus: RESTAURANT_MENUS,
|
|
454
|
+
siteSettings: RESTAURANT_SITE_SETTINGS,
|
|
455
|
+
mediaSpecs: RESTAURANT_MEDIA_SPECS,
|
|
223
456
|
};
|
|
224
457
|
//# sourceMappingURL=restaurant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restaurant.js","sourceRoot":"","sources":["../../src/blueprints/restaurant.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"restaurant.js","sourceRoot":"","sources":["../../src/blueprints/restaurant.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,EAChB,CAAC,EACD,qBAAqB,GACtB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAgB,MAAM,6BAA6B,CAAA;AACxF,OAAO,EAEL,oBAAoB,EAEpB,iBAAiB,EACjB,UAAU,EAEV,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD;;;;;;;;;;;;;GAaG;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,gBAAgB,CAAC;IACvC,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE;IACvD,OAAO,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE;IACnC,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAC1C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC5C,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAClD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC;YACpD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QACrC,GAAG,UAAU;KACd;IACD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACjC,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,QAAQ,CAAC;QAChB,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE,CAAC,OAAO,CAAC;KAClB;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;AAElD,MAAM,CAAC,MAAM,sBAAsB,GAAoC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AAEvF,qBAAqB,CAAC,sBAAsB,CAAC,CAAA;AAU7C,MAAM,CAAC,MAAM,0BAA0B,GAAsC;IAC3E;QACE,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,+JAA+J;QACjK,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,qHAAqH;QACvH,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,kJAAkJ;QACpJ,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iJAAiJ;QACnJ,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,qIAAqI;QACvI,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,2GAA2G;QAC7G,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,6GAA6G;QAC/G,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,gGAAgG;QAClG,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,0FAA0F;QAC5F,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,2FAA2F;QAC7F,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,sFAAsF;QACxF,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,8DAA8D;QAC3E,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,QAAQ;KACnB;CACF,CAAA;AAED,MAAM,aAAa,GAAG,OAAO,CAAA;AAE7B,SAAS,UAAU,CAAC,GAAW,EAAE,UAA6B;IAC5D,MAAM,IAAI,GAAqB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,IAAI,EAAE,GAAG,GAAG,KAAK,KAAK,EAAE;QACxB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,KAAK,KAAK,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC1E,QAAQ,EAAE,EAAE;KACb,CAAC,CAAC,CAAA;IACH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAqB,CAAA;AACxF,CAAC;AAED,mLAAmL;AACnL,SAAS,WAAW,CAAC,GAAW,EAAE,IAAuB;IACvD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,EAAE,GAAG,GAAG,KAAK,KAAK,EAAE;QACxB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,KAAK,KAAK,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC1E,QAAQ,EAAE,EAAE;KACb,CAAC,CAAC,CAAA;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAuC;IAEvC,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;SACjC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC;SAC9C,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IAErE,OAAO;QACL;YACE,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,aAAa;YACvB,OAAO,EAAE,kBAAkB;YAC3B,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,4DAA4D;YACtE,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1D,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;gBACjF,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;aAC5D;SACiB;QACpB,UAAU,CAAC,YAAY,EAAE;YACvB,oLAAoL;YACpL,2QAA2Q;YAC3Q,6TAA6T;YAC7T,wSAAwS;SACzS,CAAC;QACF;YACE,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,gBAAgB;YACvB,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,UAAU;YACjB,UAAU,EAAE,WAAW;YACvB,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE;YAC9C,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,MAAM;SACf;QACD,mEAAmE;QACnE,iEAAiE;QACjE,kEAAkE;QAClE,yCAAyC;QACzC,GAAG,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAC3B,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,aAAa;oBACvB,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,YAAY;iBACD;aACrB,CAAC;QACN;YACE,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE;gBAC/D,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE;gBACpD,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBACrD,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE;aAChE;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,iBAAiB,CACtB,wBAAwB,EACxB,sFAAsF,CACvF;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,iBAAiB;gBACvB,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;aAChE;SACiB;QACpB;YACE,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,kBAAkB;YACzB,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,eAAe;oBACzB,MAAM,EAAE,WAAW,CAAC,cAAc,EAAE;wBAClC,iCAAiC;wBACjC,gCAAgC;wBAChC,qBAAqB;wBACrB,eAAe;qBAChB,CAAC;iBACH;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,+BAA+B,CAAC;iBAC7E;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,iBAAiB,CACvB,gBAAgB,EAChB,2FAA2F,CAC5F;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,aAAa;YACvB,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,2EAA2E;YAChF,KAAK,EAAE,MAAM;YACb,eAAe,EAAE,IAAI;SACtB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,uCAAuC;YAC7C,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,UAAU;oBACjB,MAAM,EAAE,EAAE,IAAI,EAAE,uCAAuC,EAAE;oBACzD,QAAQ,EAAE,SAAS;iBACpB;gBACD,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE;aAC3D;SACF;KACF,CAAA;AACH,CAAC;AAQD,MAAM,UAAU,wBAAwB,CACtC,KAAuC;IAEvC,OAAO;QACL,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,CAAC,KAAK,CAAC,EAAE;QACzE;YACE,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAS;YACf,MAAM,EAAE;gBACN,UAAU,CAAC,cAAc,EAAE;oBACzB,yKAAyK;oBACzK,uLAAuL;oBACvL,uMAAuM;iBACxM,CAAC;aACH;SACF;KACF,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,cAAc,CAAC,UAAU,CAAA;IACtC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,YAAY,CAAC;YACrB,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,uCAAuC;YAChD,IAAI,EAAE,2GAA2G;SAClH,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAA;AACnB,CAAC;AAED;;;;;GAKG;AACH,sNAAsN;AACtN,MAAM,sBAAsB,GAAqC;IAC/D,oBAAoB,EAAE,mCAAmC;IACzD,iBAAiB,EAAE,gCAAgC;IACnD,iBAAiB,EAAE,gCAAgC;IACnD,kBAAkB,EAAE,iCAAiC;IACrD,uBAAuB,EAAE,sCAAsC;IAC/D,qBAAqB,EAAE,oCAAoC;IAC3D,gBAAgB,EAAE,+BAA+B;IACjD,cAAc,EAAE,6BAA6B;IAC7C,cAAc,EAAE,6BAA6B;IAC7C,iBAAiB,EAAE,0BAA0B;IAC7C,mBAAmB,EAAE,4BAA4B;IACjD,iBAAiB,EAAE,gCAAgC;CACpD,CAAA;AAED,MAAM,CAAC,MAAM,sBAAsB,GAA6B;IAC9D;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/C,GAAG,EAAE,qCAAqC;QAC1C,KAAK,EAAE,qBAAqB;KAC7B;IACD,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAiB,EAAE;QAC/D,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/C,OAAO;YACL,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;YACzB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,EAAE,EAAE,GAAG,GAAG,KAAK,CAAC;YAChD,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,UAAU;YAC3B,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;SAC1C,CAAA;IACH,CAAC,CAAC;IACF,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CACvB,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC;QACrB,IAAI,EAAE,WAAW,CAAC,EAAE;QACpB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,CAAC;QAC5C,GAAG,EAAE,0CAA0C;KAChD,CAAC,CACH;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,SAAS,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC;QACzC,GAAG,EAAE,+DAA+D;KACrE;CACF,CAAA;AAED,wKAAwK;AACxK,MAAM,CAAC,MAAM,gBAAgB,GAAmB;IAC9C,MAAM,EAAE;QACN,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE;QACrC,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,cAAc,EAAE;QAC3C,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,gBAAgB,EAAE;QAC3C,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,cAAc,EAAE;KAC1C;IACD,MAAM,EAAE;QACN,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE;QACrC,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE;QAC5C,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE;KACtC;IACD,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE;CACtD,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAsC;IACzE,iBAAiB,EAAE,+BAA+B;IAClD,qBAAqB,EAAE;QACrB,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,+BAA+B,EAAE;QAC5D,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,8BAA8B,EAAE;QAC1D,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,6BAA6B,EAAE;KACzD;IACD,oBAAoB,EAAE,8DAA8D;CACrF,CAAA;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAoC;IAC5E;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,yBAAyB;QAClC,MAAM,EAAE,sFAAsF;KAC/F;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,yBAAyB;QAClC,MAAM,EAAE,wEAAwE;KACjF;CACF,CAAA;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,yBAAyB,CAAC,GAAgB;IACvD,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;IACjD,MAAM,aAAa,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAA;IACrF,MAAM,SAAS,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;IAE7E,KAAK,MAAM,IAAI,IAAI,0BAA0B,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACxC,MAAM,aAAa,CAAC,MAAM,CAAC;YACzB,MAAM,EAAE,WAAW;YACnB,SAAS,EAAE,OAAO;YAClB,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;aAC1C;SACF,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,MAAM,SAAS,CAAC,MAAM,CAAC;YACrB,MAAM,EAAE,WAAW;YACnB,SAAS,EAAE,OAAO;YAClB,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YAC9C,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;SACtD,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAyB;IACzD,WAAW,EAAE,sBAAsB;IACnC,iBAAiB,EAAE,6BAA6B;IAChD,eAAe,EAAE,yBAAyB;IAC1C,YAAY,EAAE,2BAA2B;IACzC,KAAK,EAAE,gBAAgB;IACvB,YAAY,EAAE,wBAAwB;IACtC,UAAU,EAAE,sBAAsB;CACnC,CAAA"}
|