@almadar/std 16.228.0 → 16.229.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/behaviors/behaviors-registry.json +97602 -98073
  2. package/behaviors/lolo/infra/atoms/std-notify-on-event.lolo +2 -2
  3. package/behaviors/lolo/ui/core/atoms/std-book-reader.lolo +316 -0
  4. package/behaviors/lolo/ui/core/atoms/std-card-grid.lolo +172 -0
  5. package/behaviors/lolo/ui/core/atoms/std-hero.lolo +247 -0
  6. package/behaviors/lolo/ui/core/atoms/std-media-section.lolo +154 -0
  7. package/behaviors/lolo/ui/core/atoms/std-pricing.lolo +177 -0
  8. package/behaviors/lolo/ui/core/atoms/std-prose.lolo +85 -0
  9. package/behaviors/lolo/ui/core/atoms/std-site-footer.lolo +159 -0
  10. package/behaviors/lolo/ui/core/atoms/std-site-header.lolo +131 -0
  11. package/behaviors/lolo/ui/core/atoms/std-stat-band.lolo +83 -0
  12. package/behaviors/lolo/ui/core/atoms/std-stats.lolo +4 -5
  13. package/behaviors/lolo/ui/core/atoms/std-steps.lolo +124 -0
  14. package/behaviors/lolo/ui/core/atoms/ui-box.lolo +5 -0
  15. package/behaviors/lolo/ui/core/atoms/ui-button.lolo +6 -1
  16. package/behaviors/lolo/ui/core/atoms/ui-image.lolo +64 -0
  17. package/behaviors/lolo/ui/{marketing/atoms → core/molecules}/ui-animated-counter.lolo +11 -6
  18. package/behaviors/lolo/ui/core/organisms/ui-chat-bar.lolo +5 -0
  19. package/behaviors/lolo/ui/game/atoms/ui-canvas-2d.lolo +1 -1
  20. package/behaviors/lolo-behavior-contracts.json +1 -1
  21. package/behaviors/registry/factory-signatures.json +1 -1
  22. package/behaviors/registry/infra/atoms/std-notify-on-event.orb +45 -9
  23. package/behaviors/registry/ui/core/atoms/std-book-reader.orb +1269 -0
  24. package/behaviors/registry/ui/core/atoms/std-card-grid.orb +826 -0
  25. package/behaviors/registry/ui/core/atoms/std-hero.orb +811 -0
  26. package/behaviors/registry/ui/core/atoms/std-media-section.orb +740 -0
  27. package/behaviors/registry/ui/core/atoms/std-pricing.orb +751 -0
  28. package/behaviors/registry/ui/core/atoms/std-prose.orb +264 -0
  29. package/behaviors/registry/ui/core/atoms/std-site-footer.orb +589 -0
  30. package/behaviors/registry/ui/core/atoms/std-site-header.orb +530 -0
  31. package/behaviors/registry/ui/core/atoms/std-stat-band.orb +311 -0
  32. package/behaviors/registry/ui/core/atoms/std-stats.orb +4 -5
  33. package/behaviors/registry/ui/core/atoms/std-steps.orb +532 -0
  34. package/behaviors/registry/ui/{marketing → core}/atoms/ui-animated-graphic.orb +20 -20
  35. package/behaviors/registry/ui/{marketing → core}/atoms/ui-animated-reveal.orb +20 -20
  36. package/behaviors/registry/ui/core/atoms/ui-box.orb +7 -0
  37. package/behaviors/registry/ui/core/atoms/ui-button.orb +9 -1
  38. package/behaviors/registry/ui/core/atoms/ui-image.orb +231 -0
  39. package/behaviors/registry/ui/{marketing → core}/atoms/ui-pattern-tile.orb +20 -20
  40. package/behaviors/registry/ui/{marketing/atoms → core/molecules}/ui-animated-counter.orb +33 -26
  41. package/behaviors/registry/ui/{marketing/atoms → core/molecules}/ui-feature-card.orb +20 -20
  42. package/behaviors/registry/ui/{marketing/atoms → core/molecules}/ui-geometric-pattern.orb +20 -20
  43. package/behaviors/registry/ui/core/organisms/ui-chat-bar.orb +7 -0
  44. package/behaviors/registry/ui/{marketing → core}/templates/ui-auth-layout.orb +20 -20
  45. package/behaviors/registry/ui/game/atoms/ui-canvas-2d.orb +1 -1
  46. package/behaviors/signatures.lolo +1070 -2984
  47. package/canonical-operators.json +3 -3
  48. package/dist/behaviors/exports-reader.js +3818 -10339
  49. package/dist/behaviors/functions/index.d.ts +3965 -6984
  50. package/dist/behaviors/functions/index.js +3786 -10195
  51. package/dist/behaviors/index.d.ts +1 -1
  52. package/dist/behaviors/index.js +3819 -10340
  53. package/dist/behaviors/query.js +3818 -10339
  54. package/dist/behaviors-embeddings.hash.json +3 -3
  55. package/dist/behaviors-embeddings.json +77 -237
  56. package/dist/behaviors-registry.json +97602 -98073
  57. package/dist/index.d.ts +1 -1
  58. package/dist/index.js +3821 -10342
  59. package/dist/knob-embeddings.hash.json +3 -3
  60. package/dist/knob-embeddings.json +352 -1212
  61. package/dist/modules/core.js +2 -2
  62. package/dist/modules/index.js +2 -2
  63. package/dist/registry/factory-signatures.json +1 -1
  64. package/dist/registry.js +2 -2
  65. package/i18n/ar.json +8 -4
  66. package/i18n/en.json +4 -0
  67. package/i18n/sl.json +8 -4
  68. package/package.json +4 -6
  69. package/behaviors/lolo/ui/marketing/atoms/std-marketing-article.lolo +0 -31
  70. package/behaviors/lolo/ui/marketing/atoms/std-marketing-cta.lolo +0 -93
  71. package/behaviors/lolo/ui/marketing/atoms/std-marketing-features.lolo +0 -83
  72. package/behaviors/lolo/ui/marketing/atoms/std-marketing-footer.lolo +0 -72
  73. package/behaviors/lolo/ui/marketing/atoms/std-marketing-hero.lolo +0 -131
  74. package/behaviors/lolo/ui/marketing/atoms/std-marketing-nav.lolo +0 -86
  75. package/behaviors/lolo/ui/marketing/atoms/std-marketing-pricing.lolo +0 -85
  76. package/behaviors/lolo/ui/marketing/atoms/std-marketing-showcase.lolo +0 -87
  77. package/behaviors/lolo/ui/marketing/atoms/std-marketing-split.lolo +0 -50
  78. package/behaviors/lolo/ui/marketing/atoms/std-marketing-stats.lolo +0 -43
  79. package/behaviors/lolo/ui/marketing/atoms/std-marketing-steps.lolo +0 -48
  80. package/behaviors/lolo/ui/marketing/atoms/std-marketing-team.lolo +0 -51
  81. package/behaviors/lolo/ui/marketing/atoms/ui-article-section.lolo +0 -44
  82. package/behaviors/lolo/ui/marketing/atoms/ui-case-study-card.lolo +0 -60
  83. package/behaviors/lolo/ui/marketing/atoms/ui-community-links.lolo +0 -67
  84. package/behaviors/lolo/ui/marketing/atoms/ui-content-section.lolo +0 -44
  85. package/behaviors/lolo/ui/marketing/atoms/ui-cta-banner.lolo +0 -68
  86. package/behaviors/lolo/ui/marketing/atoms/ui-hero-section.lolo +0 -112
  87. package/behaviors/lolo/ui/marketing/atoms/ui-install-box.lolo +0 -39
  88. package/behaviors/lolo/ui/marketing/atoms/ui-marketing-footer.lolo +0 -58
  89. package/behaviors/lolo/ui/marketing/atoms/ui-marketing-stat-card.lolo +0 -45
  90. package/behaviors/lolo/ui/marketing/atoms/ui-pricing-card.lolo +0 -70
  91. package/behaviors/lolo/ui/marketing/atoms/ui-pricing-grid.lolo +0 -49
  92. package/behaviors/lolo/ui/marketing/atoms/ui-pull-quote.lolo +0 -34
  93. package/behaviors/lolo/ui/marketing/atoms/ui-service-catalog.lolo +0 -40
  94. package/behaviors/lolo/ui/marketing/atoms/ui-showcase-card.lolo +0 -64
  95. package/behaviors/lolo/ui/marketing/atoms/ui-split-section.lolo +0 -69
  96. package/behaviors/lolo/ui/marketing/atoms/ui-stats-grid.lolo +0 -44
  97. package/behaviors/lolo/ui/marketing/atoms/ui-step-flow.lolo +0 -51
  98. package/behaviors/lolo/ui/marketing/atoms/ui-tag-cloud.lolo +0 -45
  99. package/behaviors/lolo/ui/marketing/atoms/ui-team-card.lolo +0 -54
  100. package/behaviors/lolo/ui/marketing/organisms/ui-book-chapter-view.lolo +0 -63
  101. package/behaviors/lolo/ui/marketing/organisms/ui-book-cover-page.lolo +0 -54
  102. package/behaviors/lolo/ui/marketing/organisms/ui-book-nav-bar.lolo +0 -49
  103. package/behaviors/lolo/ui/marketing/organisms/ui-book-table-of-contents.lolo +0 -70
  104. package/behaviors/lolo/ui/marketing/organisms/ui-book-viewer.lolo +0 -161
  105. package/behaviors/lolo/ui/marketing/organisms/ui-case-study-organism.lolo +0 -153
  106. package/behaviors/lolo/ui/marketing/organisms/ui-feature-grid-organism.lolo +0 -159
  107. package/behaviors/lolo/ui/marketing/organisms/ui-hero-organism.lolo +0 -162
  108. package/behaviors/lolo/ui/marketing/organisms/ui-pricing-organism.lolo +0 -155
  109. package/behaviors/lolo/ui/marketing/organisms/ui-showcase-organism.lolo +0 -164
  110. package/behaviors/lolo/ui/marketing/organisms/ui-stats-organism.lolo +0 -142
  111. package/behaviors/lolo/ui/marketing/organisms/ui-step-flow-organism.lolo +0 -165
  112. package/behaviors/lolo/ui/marketing/organisms/ui-team-organism.lolo +0 -152
  113. package/behaviors/lolo/ui/marketing/templates/ui-about-page-template.lolo +0 -105
  114. package/behaviors/lolo/ui/marketing/templates/ui-feature-detail-page-template.lolo +0 -93
  115. package/behaviors/lolo/ui/marketing/templates/ui-landing-page-template.lolo +0 -144
  116. package/behaviors/lolo/ui/marketing/templates/ui-pricing-page-template.lolo +0 -89
  117. package/behaviors/registry/ui/marketing/atoms/std-marketing-article.orb +0 -121
  118. package/behaviors/registry/ui/marketing/atoms/std-marketing-cta.orb +0 -360
  119. package/behaviors/registry/ui/marketing/atoms/std-marketing-features.orb +0 -305
  120. package/behaviors/registry/ui/marketing/atoms/std-marketing-footer.orb +0 -265
  121. package/behaviors/registry/ui/marketing/atoms/std-marketing-hero.orb +0 -424
  122. package/behaviors/registry/ui/marketing/atoms/std-marketing-nav.orb +0 -288
  123. package/behaviors/registry/ui/marketing/atoms/std-marketing-pricing.orb +0 -366
  124. package/behaviors/registry/ui/marketing/atoms/std-marketing-showcase.orb +0 -415
  125. package/behaviors/registry/ui/marketing/atoms/std-marketing-split.orb +0 -152
  126. package/behaviors/registry/ui/marketing/atoms/std-marketing-stats.orb +0 -151
  127. package/behaviors/registry/ui/marketing/atoms/std-marketing-steps.orb +0 -221
  128. package/behaviors/registry/ui/marketing/atoms/std-marketing-team.orb +0 -239
  129. package/behaviors/registry/ui/marketing/atoms/ui-article-section.orb +0 -176
  130. package/behaviors/registry/ui/marketing/atoms/ui-case-study-card.orb +0 -195
  131. package/behaviors/registry/ui/marketing/atoms/ui-community-links.orb +0 -254
  132. package/behaviors/registry/ui/marketing/atoms/ui-content-section.orb +0 -182
  133. package/behaviors/registry/ui/marketing/atoms/ui-cta-banner.orb +0 -254
  134. package/behaviors/registry/ui/marketing/atoms/ui-hero-section.orb +0 -345
  135. package/behaviors/registry/ui/marketing/atoms/ui-install-box.orb +0 -163
  136. package/behaviors/registry/ui/marketing/atoms/ui-marketing-footer.orb +0 -298
  137. package/behaviors/registry/ui/marketing/atoms/ui-marketing-stat-card.orb +0 -177
  138. package/behaviors/registry/ui/marketing/atoms/ui-pricing-card.orb +0 -237
  139. package/behaviors/registry/ui/marketing/atoms/ui-pricing-grid.orb +0 -313
  140. package/behaviors/registry/ui/marketing/atoms/ui-pull-quote.orb +0 -156
  141. package/behaviors/registry/ui/marketing/atoms/ui-service-catalog.orb +0 -205
  142. package/behaviors/registry/ui/marketing/atoms/ui-showcase-card.orb +0 -221
  143. package/behaviors/registry/ui/marketing/atoms/ui-split-section.orb +0 -239
  144. package/behaviors/registry/ui/marketing/atoms/ui-stats-grid.orb +0 -202
  145. package/behaviors/registry/ui/marketing/atoms/ui-step-flow.orb +0 -236
  146. package/behaviors/registry/ui/marketing/atoms/ui-tag-cloud.orb +0 -217
  147. package/behaviors/registry/ui/marketing/atoms/ui-team-card.orb +0 -186
  148. package/behaviors/registry/ui/marketing/organisms/ui-book-chapter-view.orb +0 -277
  149. package/behaviors/registry/ui/marketing/organisms/ui-book-cover-page.orb +0 -190
  150. package/behaviors/registry/ui/marketing/organisms/ui-book-nav-bar.orb +0 -183
  151. package/behaviors/registry/ui/marketing/organisms/ui-book-table-of-contents.orb +0 -286
  152. package/behaviors/registry/ui/marketing/organisms/ui-book-viewer.orb +0 -553
  153. package/behaviors/registry/ui/marketing/organisms/ui-case-study-organism.orb +0 -507
  154. package/behaviors/registry/ui/marketing/organisms/ui-feature-grid-organism.orb +0 -504
  155. package/behaviors/registry/ui/marketing/organisms/ui-hero-organism.orb +0 -635
  156. package/behaviors/registry/ui/marketing/organisms/ui-pricing-organism.orb +0 -539
  157. package/behaviors/registry/ui/marketing/organisms/ui-showcase-organism.orb +0 -542
  158. package/behaviors/registry/ui/marketing/organisms/ui-stats-organism.orb +0 -447
  159. package/behaviors/registry/ui/marketing/organisms/ui-step-flow-organism.orb +0 -505
  160. package/behaviors/registry/ui/marketing/organisms/ui-team-organism.orb +0 -494
  161. package/behaviors/registry/ui/marketing/templates/ui-about-page-template.orb +0 -752
  162. package/behaviors/registry/ui/marketing/templates/ui-feature-detail-page-template.orb +0 -638
  163. package/behaviors/registry/ui/marketing/templates/ui-landing-page-template.orb +0 -1028
  164. package/behaviors/registry/ui/marketing/templates/ui-pricing-page-template.orb +0 -603
  165. /package/behaviors/lolo/ui/{marketing → core}/atoms/ui-animated-graphic.lolo +0 -0
  166. /package/behaviors/lolo/ui/{marketing → core}/atoms/ui-animated-reveal.lolo +0 -0
  167. /package/behaviors/lolo/ui/{marketing → core}/atoms/ui-pattern-tile.lolo +0 -0
  168. /package/behaviors/lolo/ui/{marketing/atoms → core/molecules}/ui-feature-card.lolo +0 -0
  169. /package/behaviors/lolo/ui/{marketing/atoms → core/molecules}/ui-geometric-pattern.lolo +0 -0
  170. /package/behaviors/lolo/ui/{marketing → core}/templates/ui-auth-layout.lolo +0 -0
@@ -0,0 +1,589 @@
1
+ {
2
+ "description": "std-site-footer — the footer at the bottom of a public site: brand name and tagline, columns of links, and a bottom row with the copyright line and legal links. Links follow `href` (in-app path, #anchor, or absolute URL) and each click emits FOOTER_LINK_CLICKED. Pick for marketing sites, docs portals and product websites.",
3
+ "ledger": {
4
+ "entries": {
5
+ "ent_01M3B9EHQKGT374WHV2W6SXRHD": {
6
+ "bakedName": "SiteFooterView",
7
+ "curName": "SiteFooterView",
8
+ "id": "ent_01M3B9EHQKGT374WHV2W6SXRHD",
9
+ "kind": "entity",
10
+ "owner": "workspace",
11
+ "renames": []
12
+ },
13
+ "evt_01M3B9EHQK3TT2094WDET3Q83K": {
14
+ "bakedName": "FOOTER_LINK",
15
+ "curName": "FOOTER_LINK",
16
+ "id": "evt_01M3B9EHQK3TT2094WDET3Q83K",
17
+ "kind": "event",
18
+ "owner": "workspace",
19
+ "parent": "trt_01M3B9EHQKPYTXSY4R6MRR138S",
20
+ "renames": []
21
+ },
22
+ "evt_01M3B9EHQK3V0GBJRAM2EZP0WR": {
23
+ "bakedName": "FOOTER_LINK_CLICKED",
24
+ "curName": "FOOTER_LINK_CLICKED",
25
+ "id": "evt_01M3B9EHQK3V0GBJRAM2EZP0WR",
26
+ "kind": "event",
27
+ "owner": "workspace",
28
+ "parent": "trt_01M3B9EHQKPYTXSY4R6MRR138S",
29
+ "renames": []
30
+ },
31
+ "evt_01M3B9EHQKBKHW7MAP4MZGNDTB": {
32
+ "bakedName": "INIT",
33
+ "curName": "INIT",
34
+ "id": "evt_01M3B9EHQKBKHW7MAP4MZGNDTB",
35
+ "kind": "event",
36
+ "owner": "workspace",
37
+ "parent": "trt_01M3B9EHQKPYTXSY4R6MRR138S",
38
+ "renames": []
39
+ },
40
+ "orb_01M3B9EHQKN6WZS00H3BN8FNDX": {
41
+ "bakedName": "SiteFooterOrbital",
42
+ "curName": "SiteFooterOrbital",
43
+ "id": "orb_01M3B9EHQKN6WZS00H3BN8FNDX",
44
+ "kind": "orbital",
45
+ "owner": "workspace",
46
+ "renames": []
47
+ },
48
+ "pag_01M3B9EHQKRK3MCXYGGY1T3APH": {
49
+ "bakedName": "SiteFooterPage",
50
+ "curName": "SiteFooterPage",
51
+ "id": "pag_01M3B9EHQKRK3MCXYGGY1T3APH",
52
+ "kind": "page",
53
+ "owner": "workspace",
54
+ "renames": []
55
+ },
56
+ "trt_01M3B9EHQKPYTXSY4R6MRR138S": {
57
+ "bakedName": "SiteFooterRender",
58
+ "curName": "SiteFooterRender",
59
+ "id": "trt_01M3B9EHQKPYTXSY4R6MRR138S",
60
+ "kind": "trait",
61
+ "owner": "workspace",
62
+ "renames": []
63
+ }
64
+ },
65
+ "schemaVersion": 1
66
+ },
67
+ "name": "std-site-footer",
68
+ "orbitals": [
69
+ {
70
+ "entity": {
71
+ "fields": [
72
+ {
73
+ "name": "id",
74
+ "required": true,
75
+ "type": "string"
76
+ }
77
+ ],
78
+ "id": "ent_01M3B9EHQKGT374WHV2W6SXRHD",
79
+ "name": "SiteFooterView",
80
+ "persistence": "runtime"
81
+ },
82
+ "id": "orb_01M3B9EHQKN6WZS00H3BN8FNDX",
83
+ "name": "SiteFooterOrbital",
84
+ "pages": [
85
+ {
86
+ "id": "pag_01M3B9EHQKRK3MCXYGGY1T3APH",
87
+ "name": "SiteFooterPage",
88
+ "path": "/site-footer",
89
+ "traits": [
90
+ {
91
+ "ref": "SiteFooterRender",
92
+ "refId": "trt_01M3B9EHQKPYTXSY4R6MRR138S"
93
+ }
94
+ ]
95
+ }
96
+ ],
97
+ "traits": [
98
+ {
99
+ "category": "interaction",
100
+ "config": {
101
+ "brandName": {
102
+ "default": "Almadar",
103
+ "label": "Brand name",
104
+ "synonyms": "company, product name, logo text",
105
+ "tier": "presentation",
106
+ "type": "string"
107
+ },
108
+ "columns": {
109
+ "default": [
110
+ {
111
+ "links": [
112
+ {
113
+ "href": "/features",
114
+ "label": "Features"
115
+ },
116
+ {
117
+ "href": "/pricing",
118
+ "label": "Pricing"
119
+ }
120
+ ],
121
+ "title": "Product"
122
+ },
123
+ {
124
+ "links": [
125
+ {
126
+ "href": "/about",
127
+ "label": "About"
128
+ },
129
+ {
130
+ "href": "/blog",
131
+ "label": "Blog"
132
+ }
133
+ ],
134
+ "title": "Company"
135
+ }
136
+ ],
137
+ "description": "Each column: a title and its links (label + href)",
138
+ "items": {
139
+ "properties": {
140
+ "links": {
141
+ "items": {
142
+ "properties": {
143
+ "href": {
144
+ "name": "href",
145
+ "required": true,
146
+ "type": "string"
147
+ },
148
+ "label": {
149
+ "name": "label",
150
+ "required": true,
151
+ "type": "string"
152
+ }
153
+ },
154
+ "type": "object"
155
+ },
156
+ "name": "links",
157
+ "required": false,
158
+ "type": "array"
159
+ },
160
+ "title": {
161
+ "name": "title",
162
+ "required": true,
163
+ "type": "string"
164
+ }
165
+ },
166
+ "type": "object"
167
+ },
168
+ "label": "Link columns",
169
+ "synonyms": "sitemap, footer menu, footer navigation",
170
+ "tier": "presentation",
171
+ "type": "[FooterColumn]"
172
+ },
173
+ "copyright": {
174
+ "default": "© Almadar",
175
+ "label": "Copyright line",
176
+ "tier": "presentation",
177
+ "type": "string"
178
+ },
179
+ "legalLinks": {
180
+ "default": [],
181
+ "description": "Links in the bottom row, e.g. Privacy and Terms",
182
+ "items": {
183
+ "properties": {
184
+ "href": {
185
+ "name": "href",
186
+ "required": true,
187
+ "type": "string"
188
+ },
189
+ "label": {
190
+ "name": "label",
191
+ "required": true,
192
+ "type": "string"
193
+ }
194
+ },
195
+ "type": "object"
196
+ },
197
+ "label": "Legal links",
198
+ "tier": "presentation",
199
+ "type": "[FooterLink]"
200
+ },
201
+ "tagline": {
202
+ "default": "",
203
+ "description": "One line under the brand name; empty hides it",
204
+ "label": "Tagline",
205
+ "tier": "presentation",
206
+ "type": "string"
207
+ }
208
+ },
209
+ "effectRow": [
210
+ {
211
+ "kind": "emit",
212
+ "resource": "FOOTER_LINK_CLICKED"
213
+ },
214
+ {
215
+ "kind": "render-ui",
216
+ "resource": "main"
217
+ }
218
+ ],
219
+ "emits": [
220
+ {
221
+ "description": "A footer link was clicked; carries its label and href.",
222
+ "event": "FOOTER_LINK_CLICKED",
223
+ "eventId": "evt_01M3B9EHQK3V0GBJRAM2EZP0WR",
224
+ "payloadSchema": [
225
+ {
226
+ "name": "label",
227
+ "type": "string"
228
+ },
229
+ {
230
+ "name": "href",
231
+ "type": "string"
232
+ }
233
+ ],
234
+ "scope": "external",
235
+ "tier": "domain"
236
+ }
237
+ ],
238
+ "entityContract": {
239
+ "provides": [],
240
+ "requires": []
241
+ },
242
+ "entityRebindable": true,
243
+ "entityRefIds": {
244
+ "SiteFooterView": "ent_01M3B9EHQKGT374WHV2W6SXRHD"
245
+ },
246
+ "id": "trt_01M3B9EHQKPYTXSY4R6MRR138S",
247
+ "linkedEntity": "SiteFooterView",
248
+ "linkedEntityId": "ent_01M3B9EHQKGT374WHV2W6SXRHD",
249
+ "name": "SiteFooterRender",
250
+ "scope": "instance",
251
+ "stateMachine": {
252
+ "events": [
253
+ {
254
+ "id": "evt_01M3B9EHQKBKHW7MAP4MZGNDTB",
255
+ "key": "INIT",
256
+ "name": "Initialize"
257
+ },
258
+ {
259
+ "description": "Footer link click.",
260
+ "id": "evt_01M3B9EHQK3TT2094WDET3Q83K",
261
+ "key": "FOOTER_LINK",
262
+ "name": "Footer Link",
263
+ "payloadSchema": [
264
+ {
265
+ "name": "label",
266
+ "type": "string"
267
+ },
268
+ {
269
+ "name": "href",
270
+ "type": "string"
271
+ }
272
+ ],
273
+ "tier": "internal"
274
+ },
275
+ {
276
+ "description": "A footer link was clicked; carries its label and href.",
277
+ "id": "evt_01M3B9EHQK3V0GBJRAM2EZP0WR",
278
+ "key": "FOOTER_LINK_CLICKED",
279
+ "name": "Footer Link Clicked",
280
+ "payloadSchema": [
281
+ {
282
+ "name": "label",
283
+ "type": "string"
284
+ },
285
+ {
286
+ "name": "href",
287
+ "type": "string"
288
+ }
289
+ ],
290
+ "tier": "domain"
291
+ }
292
+ ],
293
+ "states": [
294
+ {
295
+ "isInitial": true,
296
+ "name": "idle"
297
+ }
298
+ ],
299
+ "transitions": [
300
+ {
301
+ "effects": [
302
+ [
303
+ "render-ui",
304
+ "main",
305
+ {
306
+ "border": true,
307
+ "children": [
308
+ {
309
+ "children": [
310
+ {
311
+ "children": [
312
+ {
313
+ "children": [
314
+ {
315
+ "children": [
316
+ {
317
+ "content": "@config.brandName",
318
+ "type": "typography",
319
+ "variant": "h5",
320
+ "weight": "bold"
321
+ },
322
+ {
323
+ "className": [
324
+ "if",
325
+ [
326
+ "==",
327
+ "@config.tagline",
328
+ ""
329
+ ],
330
+ "hidden",
331
+ "max-w-xs text-pretty"
332
+ ],
333
+ "color": "muted",
334
+ "content": "@config.tagline",
335
+ "type": "typography",
336
+ "variant": "body2"
337
+ }
338
+ ],
339
+ "direction": "vertical",
340
+ "gap": "sm",
341
+ "type": "stack"
342
+ },
343
+ {
344
+ "children": [
345
+ "array/map",
346
+ "@config.columns",
347
+ [
348
+ "fn",
349
+ "column",
350
+ {
351
+ "children": [
352
+ {
353
+ "content": [
354
+ "object/get",
355
+ "@column",
356
+ "title",
357
+ ""
358
+ ],
359
+ "type": "typography",
360
+ "variant": "label",
361
+ "weight": "semibold"
362
+ },
363
+ {
364
+ "align": "start",
365
+ "children": [
366
+ "array/map",
367
+ [
368
+ "object/get",
369
+ "@column",
370
+ "links",
371
+ []
372
+ ],
373
+ [
374
+ "fn",
375
+ "entry",
376
+ {
377
+ "action": "FOOTER_LINK",
378
+ "actionPayload": {
379
+ "href": [
380
+ "object/get",
381
+ "@entry",
382
+ "href",
383
+ ""
384
+ ],
385
+ "label": [
386
+ "object/get",
387
+ "@entry",
388
+ "label",
389
+ ""
390
+ ]
391
+ },
392
+ "href": [
393
+ "object/get",
394
+ "@entry",
395
+ "href",
396
+ ""
397
+ ],
398
+ "label": [
399
+ "object/get",
400
+ "@entry",
401
+ "label",
402
+ ""
403
+ ],
404
+ "type": "button",
405
+ "variant": "link"
406
+ }
407
+ ]
408
+ ],
409
+ "direction": "vertical",
410
+ "gap": "xs",
411
+ "type": "stack"
412
+ }
413
+ ],
414
+ "direction": "vertical",
415
+ "gap": "sm",
416
+ "type": "stack"
417
+ }
418
+ ]
419
+ ],
420
+ "cols": [
421
+ "math/min",
422
+ [
423
+ "math/max",
424
+ [
425
+ "array/len",
426
+ "@config.columns"
427
+ ],
428
+ 1.0
429
+ ],
430
+ 4.0
431
+ ],
432
+ "gap": "lg",
433
+ "type": "simple-grid"
434
+ }
435
+ ],
436
+ "gap": "xl",
437
+ "ratio": "1:2",
438
+ "type": "split"
439
+ },
440
+ {
441
+ "type": "divider"
442
+ },
443
+ {
444
+ "align": "center",
445
+ "children": [
446
+ {
447
+ "color": "muted",
448
+ "content": "@config.copyright",
449
+ "type": "typography",
450
+ "variant": "caption"
451
+ },
452
+ {
453
+ "children": [
454
+ "array/map",
455
+ "@config.legalLinks",
456
+ [
457
+ "fn",
458
+ "entry",
459
+ {
460
+ "action": "FOOTER_LINK",
461
+ "actionPayload": {
462
+ "href": [
463
+ "object/get",
464
+ "@entry",
465
+ "href",
466
+ ""
467
+ ],
468
+ "label": [
469
+ "object/get",
470
+ "@entry",
471
+ "label",
472
+ ""
473
+ ]
474
+ },
475
+ "href": [
476
+ "object/get",
477
+ "@entry",
478
+ "href",
479
+ ""
480
+ ],
481
+ "label": [
482
+ "object/get",
483
+ "@entry",
484
+ "label",
485
+ ""
486
+ ],
487
+ "type": "button",
488
+ "variant": "link"
489
+ }
490
+ ]
491
+ ],
492
+ "direction": "horizontal",
493
+ "gap": "md",
494
+ "type": "stack",
495
+ "wrap": true
496
+ }
497
+ ],
498
+ "direction": "horizontal",
499
+ "gap": "md",
500
+ "justify": "between",
501
+ "type": "stack",
502
+ "wrap": true
503
+ }
504
+ ],
505
+ "direction": "vertical",
506
+ "gap": "xl",
507
+ "type": "stack"
508
+ }
509
+ ],
510
+ "maxWidth": "xl",
511
+ "padding": "lg",
512
+ "size": "xl",
513
+ "type": "container"
514
+ }
515
+ ],
516
+ "className": "border-x-0 border-b-0",
517
+ "fullWidth": true,
518
+ "paddingY": "xl",
519
+ "type": "box"
520
+ }
521
+ ]
522
+ ],
523
+ "event": "INIT",
524
+ "eventId": "evt_01M3B9EHQKBKHW7MAP4MZGNDTB",
525
+ "from": "idle",
526
+ "to": "idle"
527
+ },
528
+ {
529
+ "effects": [
530
+ [
531
+ "emit",
532
+ "FOOTER_LINK_CLICKED",
533
+ {
534
+ "href": "@payload.href",
535
+ "label": "@payload.label"
536
+ }
537
+ ]
538
+ ],
539
+ "event": "FOOTER_LINK",
540
+ "eventId": "evt_01M3B9EHQK3TT2094WDET3Q83K",
541
+ "from": "idle",
542
+ "to": "idle"
543
+ }
544
+ ]
545
+ }
546
+ }
547
+ ],
548
+ "types": {
549
+ "FooterColumn": [
550
+ {
551
+ "name": "title",
552
+ "required": true,
553
+ "type": "string"
554
+ },
555
+ {
556
+ "name": "links",
557
+ "properties": [
558
+ {
559
+ "name": "label",
560
+ "required": true,
561
+ "type": "string"
562
+ },
563
+ {
564
+ "name": "href",
565
+ "required": true,
566
+ "type": "string"
567
+ }
568
+ ],
569
+ "type": "[object]"
570
+ }
571
+ ],
572
+ "FooterLink": [
573
+ {
574
+ "name": "label",
575
+ "required": true,
576
+ "type": "string"
577
+ },
578
+ {
579
+ "name": "href",
580
+ "required": true,
581
+ "type": "string"
582
+ }
583
+ ]
584
+ }
585
+ }
586
+ ],
587
+ "schemaVersion": 1,
588
+ "version": "1.0.0"
589
+ }