efficient-web-builder 37.1.0 → 38.0.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 (287) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/editor/components/AnchorField.d.ts +8 -0
  3. package/dist/editor/components/AnchorField.js +1 -0
  4. package/dist/editor/components/PagesPanel.js +1 -1
  5. package/dist/editor/components/PartSettingsPanel.js +1 -1
  6. package/dist/editor/components/StorefrontLinkField.js +1 -1
  7. package/dist/editor/components/StylesPanel.js +1 -1
  8. package/dist/editor/components/TickerSettingsPanel.js +1 -1
  9. package/dist/editor/components/WebsiteScreenParts.js +1 -1
  10. package/dist/editor/components/WebsiteSettingsPanel.js +1 -1
  11. package/dist/editor/components/storefront-editor.css +27 -4
  12. package/dist/editor/lib/editor-document-adapter.js +1 -1
  13. package/dist/editor/lib/puck/blocks/general/Breadcrumb/fields.js +1 -1
  14. package/dist/editor/lib/puck/blocks/general/Cards/fields.js +1 -1
  15. package/dist/editor/lib/puck/blocks/general/Chart/fields.js +1 -1
  16. package/dist/editor/lib/puck/blocks/general/Countdown/fields.js +1 -1
  17. package/dist/editor/lib/puck/blocks/general/DocBody/fields.js +1 -1
  18. package/dist/editor/lib/puck/blocks/general/DocMasthead/fields.js +1 -1
  19. package/dist/editor/lib/puck/blocks/general/DocMetaCards/fields.js +1 -1
  20. package/dist/editor/lib/puck/blocks/general/DocTabs/fields.js +1 -1
  21. package/dist/editor/lib/puck/blocks/general/FAQ/fields.js +1 -1
  22. package/dist/editor/lib/puck/blocks/general/FeaturedCover/fields.js +1 -1
  23. package/dist/editor/lib/puck/blocks/general/Flex/fields.js +1 -1
  24. package/dist/editor/lib/puck/blocks/general/Footprint/fields.d.ts +1 -0
  25. package/dist/editor/lib/puck/blocks/general/Footprint/fields.js +1 -1
  26. package/dist/editor/lib/puck/blocks/general/Grid/fields.js +1 -1
  27. package/dist/editor/lib/puck/blocks/general/Hero/fields.js +1 -1
  28. package/dist/editor/lib/puck/blocks/general/HeroGroup/fields.js +1 -1
  29. package/dist/editor/lib/puck/blocks/general/HeroSingle/fields.js +1 -1
  30. package/dist/editor/lib/puck/blocks/general/HeroSlide/fields.js +1 -1
  31. package/dist/editor/lib/puck/blocks/general/IntroBleed/fields.js +1 -1
  32. package/dist/editor/lib/puck/blocks/general/KeyFeatures/fields.js +1 -1
  33. package/dist/editor/lib/puck/blocks/general/LongRead/fields.js +1 -1
  34. package/dist/editor/lib/puck/blocks/general/Masthead/fields.js +1 -1
  35. package/dist/editor/lib/puck/blocks/general/OrderSummary/fields.js +1 -1
  36. package/dist/editor/lib/puck/blocks/general/ParagraphsA/fields.js +1 -1
  37. package/dist/editor/lib/puck/blocks/general/PaymentBadges/fields.js +1 -1
  38. package/dist/editor/lib/puck/blocks/general/PostCard/fields.js +1 -1
  39. package/dist/editor/lib/puck/blocks/general/ProcessSteps/fields.js +1 -1
  40. package/dist/editor/lib/puck/blocks/general/Prose/fields.js +1 -1
  41. package/dist/editor/lib/puck/blocks/general/Series/fields.js +1 -1
  42. package/dist/editor/lib/puck/blocks/general/Split/fields.js +1 -1
  43. package/dist/editor/lib/puck/blocks/general/StatsParagraph/fields.js +1 -1
  44. package/dist/editor/lib/puck/blocks/general/Testimonials/fields.js +1 -1
  45. package/dist/editor/lib/puck/blocks/general/Ticker/fields.js +1 -1
  46. package/dist/editor/lib/puck/blocks/general/Timeline/fields.js +1 -1
  47. package/dist/editor/lib/puck/blocks/general/TimelineTrack/fields.js +1 -1
  48. package/dist/editor/lib/puck/blocks/general/TitleWithButtons/fields.js +1 -1
  49. package/dist/editor/lib/puck/controls.d.ts +0 -1
  50. package/dist/editor/lib/puck/controls.js +1 -1
  51. package/dist/editor/lib/puck/section-width-fields.js +1 -1
  52. package/dist/format/lib/content/footprint.d.ts +3 -0
  53. package/dist/format/lib/content/footprint.js +1 -1
  54. package/dist/format/lib/content/subscribe.d.ts +2 -18
  55. package/dist/format/lib/content/subscribe.js +2 -2
  56. package/dist/format/lib/editor-words-catalogue.d.ts +14 -9
  57. package/dist/format/lib/editor-words-catalogue.js +5 -5
  58. package/dist/format/lib/hero-ticker.d.ts +1 -0
  59. package/dist/format/lib/hero-ticker.js +1 -0
  60. package/dist/format/lib/links/link-picker-setup.d.ts +4 -0
  61. package/dist/format/lib/links/link-picker-setup.js +1 -1
  62. package/dist/format/lib/links/page-link-rules.d.ts +4 -1
  63. package/dist/format/lib/links/page-link-rules.js +1 -1
  64. package/dist/format/lib/popup/behavior.d.ts +43 -0
  65. package/dist/format/lib/popup/behavior.js +1 -0
  66. package/dist/format/lib/popup/look.d.ts +28 -0
  67. package/dist/format/lib/popup/look.js +1 -0
  68. package/dist/format/lib/popup/new-popup.d.ts +5 -0
  69. package/dist/format/lib/popup/new-popup.js +1 -0
  70. package/dist/format/lib/popup/rules.d.ts +35 -0
  71. package/dist/format/lib/popup/rules.js +1 -0
  72. package/dist/format/lib/post-card-layout.d.ts +16 -0
  73. package/dist/format/lib/post-card-layout.js +1 -0
  74. package/dist/format/lib/puck/blocks/block-types.d.ts +1 -0
  75. package/dist/format/lib/puck/blocks/general/Banner/meta.d.ts +2 -0
  76. package/dist/format/lib/puck/blocks/general/Banner/meta.js +1 -0
  77. package/dist/format/lib/puck/blocks/general/Breadcrumb/meta.d.ts +5 -0
  78. package/dist/format/lib/puck/blocks/general/Breadcrumb/meta.js +1 -0
  79. package/dist/format/lib/puck/blocks/general/ButtonBlock/meta.d.ts +2 -0
  80. package/dist/format/lib/puck/blocks/general/ButtonBlock/meta.js +1 -0
  81. package/dist/format/lib/puck/blocks/general/Cards/meta.d.ts +7 -0
  82. package/dist/format/lib/puck/blocks/general/Cards/meta.js +1 -0
  83. package/dist/format/lib/puck/blocks/general/CategoryBar/meta.d.ts +2 -0
  84. package/dist/format/lib/puck/blocks/general/CategoryBar/meta.js +1 -0
  85. package/dist/format/lib/puck/blocks/general/Chart/meta.d.ts +6 -0
  86. package/dist/format/lib/puck/blocks/general/Chart/meta.js +2 -0
  87. package/dist/format/lib/puck/blocks/general/ContactLocations/meta.d.ts +2 -0
  88. package/dist/format/lib/puck/blocks/general/ContactLocations/meta.js +1 -0
  89. package/dist/format/lib/puck/blocks/general/Countdown/meta.d.ts +6 -0
  90. package/dist/format/lib/puck/blocks/general/Countdown/meta.js +1 -0
  91. package/dist/format/lib/puck/blocks/general/CustomHTML/meta.d.ts +2 -0
  92. package/dist/format/lib/puck/blocks/general/CustomHTML/meta.js +3 -0
  93. package/dist/format/lib/puck/blocks/general/Divider/meta.d.ts +2 -0
  94. package/dist/format/lib/puck/blocks/general/Divider/meta.js +1 -0
  95. package/dist/format/lib/puck/blocks/general/DocBody/meta.d.ts +5 -0
  96. package/dist/format/lib/puck/blocks/general/DocBody/meta.js +1 -0
  97. package/dist/format/lib/puck/blocks/general/DocMasthead/meta.d.ts +7 -0
  98. package/dist/format/lib/puck/blocks/general/DocMasthead/meta.js +1 -0
  99. package/dist/format/lib/puck/blocks/general/DocMetaCards/meta.d.ts +4 -0
  100. package/dist/format/lib/puck/blocks/general/DocMetaCards/meta.js +1 -0
  101. package/dist/format/lib/puck/blocks/general/DocTabs/meta.d.ts +6 -0
  102. package/dist/format/lib/puck/blocks/general/DocTabs/meta.js +1 -0
  103. package/dist/format/lib/puck/blocks/general/Eyebrow/meta.d.ts +2 -0
  104. package/dist/format/lib/puck/blocks/general/Eyebrow/meta.js +1 -0
  105. package/dist/format/lib/puck/blocks/general/FAQ/meta.d.ts +7 -0
  106. package/dist/format/lib/puck/blocks/general/FAQ/meta.js +1 -0
  107. package/dist/format/lib/puck/blocks/general/FeaturedCover/meta.d.ts +13 -0
  108. package/dist/format/lib/puck/blocks/general/FeaturedCover/meta.js +1 -0
  109. package/dist/format/lib/puck/blocks/general/Flex/meta.d.ts +7 -0
  110. package/dist/format/lib/puck/blocks/general/Flex/meta.js +1 -0
  111. package/dist/format/lib/puck/blocks/general/Footprint/meta.d.ts +7 -0
  112. package/dist/format/lib/puck/blocks/general/Footprint/meta.js +2 -0
  113. package/dist/format/lib/puck/blocks/general/Grid/meta.d.ts +7 -0
  114. package/dist/format/lib/puck/blocks/general/Grid/meta.js +1 -0
  115. package/dist/format/lib/puck/blocks/general/Heading/meta.d.ts +2 -0
  116. package/dist/format/lib/puck/blocks/general/Heading/meta.js +1 -0
  117. package/dist/format/lib/puck/blocks/general/Hero/meta.d.ts +7 -0
  118. package/dist/format/lib/puck/blocks/general/Hero/meta.js +1 -0
  119. package/dist/format/lib/puck/blocks/general/HeroGroup/meta.d.ts +8 -0
  120. package/dist/format/lib/puck/blocks/general/HeroGroup/meta.js +1 -0
  121. package/dist/format/lib/puck/blocks/general/HeroSingle/meta.d.ts +8 -0
  122. package/dist/format/lib/puck/blocks/general/HeroSingle/meta.js +1 -0
  123. package/dist/format/lib/puck/blocks/general/HeroSlide/meta.d.ts +8 -0
  124. package/dist/format/lib/puck/blocks/general/HeroSlide/meta.js +1 -0
  125. package/dist/format/lib/puck/blocks/general/ImageBlock/meta.d.ts +2 -0
  126. package/dist/format/lib/puck/blocks/general/ImageBlock/meta.js +1 -0
  127. package/dist/format/lib/puck/blocks/general/Integrations/meta.d.ts +2 -0
  128. package/dist/format/lib/puck/blocks/general/Integrations/meta.js +1 -0
  129. package/dist/format/lib/puck/blocks/general/IntroBleed/meta.d.ts +7 -0
  130. package/dist/format/lib/puck/blocks/general/IntroBleed/meta.js +2 -0
  131. package/dist/format/lib/puck/blocks/general/KeyFeatures/meta.d.ts +8 -0
  132. package/dist/format/lib/puck/blocks/general/KeyFeatures/meta.js +1 -0
  133. package/dist/format/lib/puck/blocks/general/LogoBlock/meta.d.ts +2 -0
  134. package/dist/format/lib/puck/blocks/general/LogoBlock/meta.js +1 -0
  135. package/dist/format/lib/puck/blocks/general/Logos/meta.d.ts +2 -0
  136. package/dist/format/lib/puck/blocks/general/Logos/meta.js +1 -0
  137. package/dist/format/lib/puck/blocks/general/LongRead/meta.d.ts +19 -0
  138. package/dist/format/lib/puck/blocks/general/LongRead/meta.js +1 -0
  139. package/dist/format/lib/puck/blocks/general/Manifesto/meta.d.ts +2 -0
  140. package/dist/format/lib/puck/blocks/general/Manifesto/meta.js +1 -0
  141. package/dist/format/lib/puck/blocks/general/Masthead/meta.d.ts +8 -0
  142. package/dist/format/lib/puck/blocks/general/Masthead/meta.js +1 -0
  143. package/dist/format/lib/puck/blocks/general/Mockup/meta.d.ts +2 -0
  144. package/dist/format/lib/puck/blocks/general/Mockup/meta.js +1 -0
  145. package/dist/format/lib/puck/blocks/general/OrderSummary/meta.d.ts +6 -0
  146. package/dist/format/lib/puck/blocks/general/OrderSummary/meta.js +1 -0
  147. package/dist/format/lib/puck/blocks/general/ParagraphsA/meta.d.ts +9 -0
  148. package/dist/format/lib/puck/blocks/general/ParagraphsA/meta.js +1 -0
  149. package/dist/format/lib/puck/blocks/general/PaymentBadges/meta.d.ts +5 -0
  150. package/dist/format/lib/puck/blocks/general/PaymentBadges/meta.js +1 -0
  151. package/dist/format/lib/puck/blocks/general/PostCard/meta.d.ts +9 -0
  152. package/dist/format/lib/puck/blocks/general/PostCard/meta.js +1 -0
  153. package/dist/format/lib/puck/blocks/general/ProcessSteps/meta.d.ts +13 -0
  154. package/dist/format/lib/puck/blocks/general/ProcessSteps/meta.js +1 -0
  155. package/dist/format/lib/puck/blocks/general/Prose/meta.d.ts +7 -0
  156. package/dist/format/lib/puck/blocks/general/Prose/meta.js +1 -0
  157. package/dist/format/lib/puck/blocks/general/SectionHeader/meta.d.ts +2 -0
  158. package/dist/format/lib/puck/blocks/general/SectionHeader/meta.js +1 -0
  159. package/dist/format/lib/puck/blocks/general/Series/meta.d.ts +8 -0
  160. package/dist/format/lib/puck/blocks/general/Series/meta.js +1 -0
  161. package/dist/format/lib/puck/blocks/general/Spacer/meta.d.ts +2 -0
  162. package/dist/format/lib/puck/blocks/general/Spacer/meta.js +1 -0
  163. package/dist/format/lib/puck/blocks/general/SpecStrip/meta.d.ts +2 -0
  164. package/dist/format/lib/puck/blocks/general/SpecStrip/meta.js +1 -0
  165. package/dist/format/lib/puck/blocks/general/Split/meta.d.ts +10 -0
  166. package/dist/format/lib/puck/blocks/general/Split/meta.js +2 -0
  167. package/dist/format/lib/puck/blocks/general/Stats/meta.d.ts +2 -0
  168. package/dist/format/lib/puck/blocks/general/Stats/meta.js +1 -0
  169. package/dist/format/lib/puck/blocks/general/StatsParagraph/meta.d.ts +7 -0
  170. package/dist/format/lib/puck/blocks/general/StatsParagraph/meta.js +1 -0
  171. package/dist/format/lib/puck/blocks/general/Testimonials/meta.d.ts +6 -0
  172. package/dist/format/lib/puck/blocks/general/Testimonials/meta.js +1 -0
  173. package/dist/format/lib/puck/blocks/general/Text/meta.d.ts +2 -0
  174. package/dist/format/lib/puck/blocks/general/Text/meta.js +1 -0
  175. package/dist/format/lib/puck/blocks/general/Ticker/meta.d.ts +5 -0
  176. package/dist/format/lib/puck/blocks/general/Ticker/meta.js +1 -0
  177. package/dist/format/lib/puck/blocks/general/Timeline/meta.d.ts +12 -0
  178. package/dist/format/lib/puck/blocks/general/Timeline/meta.js +2 -0
  179. package/dist/format/lib/puck/blocks/general/TimelineTrack/meta.d.ts +10 -0
  180. package/dist/format/lib/puck/blocks/general/TimelineTrack/meta.js +1 -0
  181. package/dist/format/lib/puck/blocks/general/TitleWithButtons/meta.d.ts +5 -0
  182. package/dist/format/lib/puck/blocks/general/TitleWithButtons/meta.js +2 -0
  183. package/dist/format/lib/puck/blocks/general/metas.d.ts +62 -0
  184. package/dist/format/lib/puck/blocks/general/metas.js +1 -0
  185. package/dist/format/lib/puck/left-view.d.ts +2 -2
  186. package/dist/format/lib/puck/left-view.js +1 -1
  187. package/dist/format/lib/puck/media-drop.d.ts +3 -0
  188. package/dist/format/lib/puck/media-drop.js +1 -0
  189. package/dist/format/lib/source-rules/editor-words.js +2 -2
  190. package/dist/format/lib/source-rules/panel-no-divider-lines.js +1 -1
  191. package/dist/format/lib/web-backend.d.ts +1 -0
  192. package/dist/render/components/Footprint.js +1 -1
  193. package/dist/render/components/HeroSection.d.ts +0 -1
  194. package/dist/render/components/HeroSection.js +2 -2
  195. package/dist/render/components/PostCard.d.ts +0 -16
  196. package/dist/render/components/PostCard.js +1 -1
  197. package/dist/render/lib/puck/blocks/general/Banner/render.js +1 -1
  198. package/dist/render/lib/puck/blocks/general/Breadcrumb/render.d.ts +0 -3
  199. package/dist/render/lib/puck/blocks/general/Breadcrumb/render.js +1 -1
  200. package/dist/render/lib/puck/blocks/general/ButtonBlock/render.js +1 -1
  201. package/dist/render/lib/puck/blocks/general/Cards/render.d.ts +0 -5
  202. package/dist/render/lib/puck/blocks/general/Cards/render.js +1 -1
  203. package/dist/render/lib/puck/blocks/general/CategoryBar/render.js +1 -1
  204. package/dist/render/lib/puck/blocks/general/Chart/render.d.ts +0 -4
  205. package/dist/render/lib/puck/blocks/general/Chart/render.js +1 -2
  206. package/dist/render/lib/puck/blocks/general/ContactLocations/render.js +1 -1
  207. package/dist/render/lib/puck/blocks/general/Countdown/render.d.ts +0 -4
  208. package/dist/render/lib/puck/blocks/general/Countdown/render.js +1 -1
  209. package/dist/render/lib/puck/blocks/general/CustomHTML/render.js +1 -3
  210. package/dist/render/lib/puck/blocks/general/Divider/render.js +1 -1
  211. package/dist/render/lib/puck/blocks/general/DocBody/render.d.ts +0 -3
  212. package/dist/render/lib/puck/blocks/general/DocBody/render.js +1 -1
  213. package/dist/render/lib/puck/blocks/general/DocMasthead/render.d.ts +0 -5
  214. package/dist/render/lib/puck/blocks/general/DocMasthead/render.js +1 -1
  215. package/dist/render/lib/puck/blocks/general/DocMetaCards/render.d.ts +0 -2
  216. package/dist/render/lib/puck/blocks/general/DocMetaCards/render.js +1 -1
  217. package/dist/render/lib/puck/blocks/general/DocTabs/render.d.ts +0 -4
  218. package/dist/render/lib/puck/blocks/general/DocTabs/render.js +1 -1
  219. package/dist/render/lib/puck/blocks/general/Eyebrow/render.js +1 -1
  220. package/dist/render/lib/puck/blocks/general/FAQ/render.d.ts +0 -5
  221. package/dist/render/lib/puck/blocks/general/FAQ/render.js +1 -1
  222. package/dist/render/lib/puck/blocks/general/FeaturedCover/render.d.ts +0 -11
  223. package/dist/render/lib/puck/blocks/general/FeaturedCover/render.js +1 -1
  224. package/dist/render/lib/puck/blocks/general/Flex/render.d.ts +0 -5
  225. package/dist/render/lib/puck/blocks/general/Flex/render.js +1 -1
  226. package/dist/render/lib/puck/blocks/general/Footprint/render.d.ts +0 -5
  227. package/dist/render/lib/puck/blocks/general/Footprint/render.js +1 -2
  228. package/dist/render/lib/puck/blocks/general/Grid/render.d.ts +0 -5
  229. package/dist/render/lib/puck/blocks/general/Grid/render.js +1 -1
  230. package/dist/render/lib/puck/blocks/general/Heading/render.js +1 -1
  231. package/dist/render/lib/puck/blocks/general/Hero/render.d.ts +0 -5
  232. package/dist/render/lib/puck/blocks/general/Hero/render.js +1 -1
  233. package/dist/render/lib/puck/blocks/general/HeroGroup/render.d.ts +0 -6
  234. package/dist/render/lib/puck/blocks/general/HeroGroup/render.js +1 -1
  235. package/dist/render/lib/puck/blocks/general/HeroSingle/render.d.ts +0 -6
  236. package/dist/render/lib/puck/blocks/general/HeroSingle/render.js +1 -1
  237. package/dist/render/lib/puck/blocks/general/HeroSlide/render.d.ts +0 -6
  238. package/dist/render/lib/puck/blocks/general/HeroSlide/render.js +1 -1
  239. package/dist/render/lib/puck/blocks/general/ImageBlock/render.js +1 -1
  240. package/dist/render/lib/puck/blocks/general/Integrations/render.js +2 -2
  241. package/dist/render/lib/puck/blocks/general/IntroBleed/render.d.ts +0 -5
  242. package/dist/render/lib/puck/blocks/general/IntroBleed/render.js +1 -2
  243. package/dist/render/lib/puck/blocks/general/KeyFeatures/render.d.ts +0 -6
  244. package/dist/render/lib/puck/blocks/general/KeyFeatures/render.js +1 -1
  245. package/dist/render/lib/puck/blocks/general/LogoBlock/render.js +1 -1
  246. package/dist/render/lib/puck/blocks/general/Logos/render.js +1 -1
  247. package/dist/render/lib/puck/blocks/general/LongRead/render.d.ts +0 -17
  248. package/dist/render/lib/puck/blocks/general/LongRead/render.js +1 -1
  249. package/dist/render/lib/puck/blocks/general/Manifesto/render.js +1 -1
  250. package/dist/render/lib/puck/blocks/general/Masthead/render.d.ts +0 -6
  251. package/dist/render/lib/puck/blocks/general/Masthead/render.js +1 -1
  252. package/dist/render/lib/puck/blocks/general/Mockup/render.js +2 -2
  253. package/dist/render/lib/puck/blocks/general/OrderSummary/render.d.ts +0 -4
  254. package/dist/render/lib/puck/blocks/general/OrderSummary/render.js +1 -1
  255. package/dist/render/lib/puck/blocks/general/ParagraphsA/render.d.ts +0 -7
  256. package/dist/render/lib/puck/blocks/general/ParagraphsA/render.js +1 -1
  257. package/dist/render/lib/puck/blocks/general/PaymentBadges/render.d.ts +0 -3
  258. package/dist/render/lib/puck/blocks/general/PaymentBadges/render.js +1 -1
  259. package/dist/render/lib/puck/blocks/general/PostCard/render.d.ts +0 -7
  260. package/dist/render/lib/puck/blocks/general/PostCard/render.js +1 -1
  261. package/dist/render/lib/puck/blocks/general/ProcessSteps/render.d.ts +0 -11
  262. package/dist/render/lib/puck/blocks/general/ProcessSteps/render.js +1 -1
  263. package/dist/render/lib/puck/blocks/general/Prose/render.d.ts +0 -5
  264. package/dist/render/lib/puck/blocks/general/Prose/render.js +1 -1
  265. package/dist/render/lib/puck/blocks/general/SectionHeader/render.js +1 -1
  266. package/dist/render/lib/puck/blocks/general/Series/render.d.ts +0 -6
  267. package/dist/render/lib/puck/blocks/general/Series/render.js +1 -1
  268. package/dist/render/lib/puck/blocks/general/Spacer/render.js +1 -1
  269. package/dist/render/lib/puck/blocks/general/SpecStrip/render.js +1 -1
  270. package/dist/render/lib/puck/blocks/general/Split/render.d.ts +0 -8
  271. package/dist/render/lib/puck/blocks/general/Split/render.js +1 -2
  272. package/dist/render/lib/puck/blocks/general/Stats/render.js +1 -1
  273. package/dist/render/lib/puck/blocks/general/StatsParagraph/render.d.ts +0 -5
  274. package/dist/render/lib/puck/blocks/general/StatsParagraph/render.js +1 -1
  275. package/dist/render/lib/puck/blocks/general/Testimonials/render.d.ts +0 -4
  276. package/dist/render/lib/puck/blocks/general/Testimonials/render.js +1 -1
  277. package/dist/render/lib/puck/blocks/general/Text/render.js +1 -1
  278. package/dist/render/lib/puck/blocks/general/Ticker/render.d.ts +0 -3
  279. package/dist/render/lib/puck/blocks/general/Ticker/render.js +1 -1
  280. package/dist/render/lib/puck/blocks/general/Timeline/render.d.ts +0 -10
  281. package/dist/render/lib/puck/blocks/general/Timeline/render.js +1 -2
  282. package/dist/render/lib/puck/blocks/general/TimelineTrack/render.d.ts +0 -8
  283. package/dist/render/lib/puck/blocks/general/TimelineTrack/render.js +1 -1
  284. package/dist/render/lib/puck/blocks/general/TitleWithButtons/render.d.ts +0 -3
  285. package/dist/render/lib/puck/blocks/general/TitleWithButtons/render.js +1 -2
  286. package/dist/render/lib/puck/blocks/general/render-config.js +1 -1
  287. package/package.json +5 -5
@@ -0,0 +1 @@
1
+ const e={eyebrow:"Feedback",title:"What people *say.*"},t={label:"Testimonials",defaultProps:{eyebrow:"",title:"",items:[],columns:3}};export{e as TESTIMONIALS_PH,t as TestimonialsMeta};
@@ -0,0 +1,2 @@
1
+ import type { BlockMeta } from "../../block-types.js";
2
+ export declare const TextMeta: BlockMeta;
@@ -0,0 +1 @@
1
+ const t={label:"Text",defaultProps:{text:"",align:"left",tone:"default",tag:"p",contained:!0}};export{t as TextMeta};
@@ -0,0 +1,5 @@
1
+ import type { BlockMeta } from "../../block-types.js";
2
+ export declare const TICKER_SCAFFOLD_ITEMS: {
3
+ text: string;
4
+ }[];
5
+ export declare const TickerMeta: BlockMeta;
@@ -0,0 +1 @@
1
+ import{DEFAULT_TICKER_SEPARATOR as e,DEFAULT_TICKER_SIZE as t}from"../../../../sections/ticker-style.js";import{DEFAULT_TICKER_SCROLL as r}from"../../../../sections/ticker-scroll.js";const T=[{text:"Ticker item"},{text:"Ticker item"},{text:"Ticker item"},{text:"Ticker item"}],c={label:"Scrolling Bar",defaultProps:{items:[],tone:"scrim",borders:!0,size:t,separator:e,scrollDirection:r,speed:50}};export{T as TICKER_SCAFFOLD_ITEMS,c as TickerMeta};
@@ -0,0 +1,12 @@
1
+ import type { TimelineLayout } from "../../../../../../render/components/Timeline.js";
2
+ import type { BlockMeta } from "../../block-types.js";
3
+ export declare const TIMELINE_PH: {
4
+ eyebrow: string;
5
+ title: string;
6
+ intro: string;
7
+ imageCaption: string;
8
+ imageMeta: string;
9
+ cta: string;
10
+ };
11
+ export type StoryTimelineDisplay = TimelineLayout | "track";
12
+ export declare const TimelineMeta: BlockMeta;
@@ -0,0 +1,2 @@
1
+ import{CTA_PH as t,PH as e}from"../../placeholders.js";const a={eyebrow:e.eyebrow,title:`Section heading
2
+ *Highlight line*`,intro:e.body,imageCaption:e.imageCaption,imageMeta:e.imageMeta,cta:t.text},o={label:"Story Timeline",defaultProps:{layout:"split",eyebrow:"",title:"",intro:"",imageSrc:"",imageCaption:"",imageMeta:"",ctaText:"",ctaHref:"",entries:[],padTop:120,padBottom:120}};export{a as TIMELINE_PH,o as TimelineMeta};
@@ -0,0 +1,10 @@
1
+ import type { TimelineTrackEntry } from "../../../../../../render/components/TimelineTrack.js";
2
+ import type { BlockMeta } from "../../block-types.js";
3
+ export declare const TIMELINE_TRACK_PH: {
4
+ eyebrow: string;
5
+ title: string;
6
+ intro: string;
7
+ cta: string;
8
+ };
9
+ export declare const timelineTrackScaffoldEntries: () => TimelineTrackEntry[];
10
+ export declare const TimelineTrackMeta: BlockMeta;
@@ -0,0 +1 @@
1
+ import{SECTION_BG_INHERIT as o}from"../../../../content/section-background.js";import{CTA_PH as r,PH as t}from"../../placeholders.js";import{say as e}from"../../../../editor-words.js";const n={eyebrow:t.eyebrow,title:t.headingAccent,intro:t.body,cta:r.text},s=()=>[{date:e("Year"),title:e("Milestone"),blurb:e("A short line about this milestone."),future:!1},{date:e("Year"),title:e("Milestone"),blurb:e("A short line about this milestone."),future:!1},{date:e("Year"),title:e("Milestone"),blurb:e("A short line about this milestone."),future:!1},{date:e("Year →"),title:e("Upcoming"),blurb:e("A milestone still to come."),future:!0}],u={label:"Milestone Timeline",defaultProps:{eyebrow:"",title:"",intro:"",entries:[],ctaText:"",ctaHref:"",background:o,padTop:120,padBottom:120}};export{n as TIMELINE_TRACK_PH,u as TimelineTrackMeta,s as timelineTrackScaffoldEntries};
@@ -0,0 +1,5 @@
1
+ import type { BlockMeta } from "../../block-types.js";
2
+ export declare const TITLE_WITH_BUTTONS_PH: {
3
+ title: string;
4
+ };
5
+ export declare const TitleWithButtonsMeta: BlockMeta;
@@ -0,0 +1,2 @@
1
+ const t={title:`Section heading
2
+ *Highlight line*`},o={label:"Call-to-Action Heading",defaultProps:{title:"",buttons:[],padTop:140,padBottom:140}};export{t as TITLE_WITH_BUTTONS_PH,o as TitleWithButtonsMeta};
@@ -0,0 +1,62 @@
1
+ import type { BlockMeta } from "../block-types.js";
2
+ import type { GeneralBlockType } from "../../../../../render/lib/puck/blocks/general/renders.js";
3
+ export declare const GENERAL_METAS: {
4
+ Banner: BlockMeta;
5
+ Breadcrumb: BlockMeta;
6
+ ButtonBlock: BlockMeta;
7
+ Cards: BlockMeta;
8
+ CategoryBar: BlockMeta;
9
+ Chart: BlockMeta;
10
+ ContactLocations: BlockMeta;
11
+ CustomHTML: BlockMeta;
12
+ Divider: BlockMeta;
13
+ DocBody: BlockMeta;
14
+ DocMasthead: BlockMeta;
15
+ DocMetaCards: BlockMeta;
16
+ DocTabs: BlockMeta;
17
+ Eyebrow: BlockMeta;
18
+ FAQ: BlockMeta;
19
+ FeaturedCover: BlockMeta;
20
+ Flex: BlockMeta;
21
+ Footprint: BlockMeta;
22
+ Grid: BlockMeta;
23
+ Heading: BlockMeta;
24
+ Hero: BlockMeta;
25
+ HeroGroup: BlockMeta;
26
+ HeroSingle: BlockMeta;
27
+ HeroSlide: BlockMeta;
28
+ ImageBlock: BlockMeta;
29
+ Integrations: BlockMeta;
30
+ IntroBleed: BlockMeta;
31
+ Countdown: BlockMeta;
32
+ KeyFeatures: BlockMeta;
33
+ LogoBlock: BlockMeta;
34
+ Logos: BlockMeta;
35
+ LongRead: BlockMeta;
36
+ Manifesto: BlockMeta;
37
+ Masthead: BlockMeta;
38
+ Mockup: BlockMeta;
39
+ OrderSummary: BlockMeta;
40
+ ParagraphsA: BlockMeta;
41
+ PaymentBadges: BlockMeta;
42
+ PostCard: BlockMeta;
43
+ ProcessSteps: BlockMeta;
44
+ Prose: BlockMeta;
45
+ SectionHeader: BlockMeta;
46
+ Series: BlockMeta;
47
+ Spacer: BlockMeta;
48
+ SpecStrip: BlockMeta;
49
+ Split: BlockMeta;
50
+ Stats: BlockMeta;
51
+ StatsParagraph: BlockMeta;
52
+ Testimonials: BlockMeta;
53
+ Text: BlockMeta;
54
+ Ticker: BlockMeta;
55
+ Timeline: BlockMeta;
56
+ TimelineTrack: BlockMeta;
57
+ TitleWithButtons: BlockMeta;
58
+ };
59
+ export type RegisteredMeta = BlockMeta & {
60
+ textParts?: Record<string, unknown>;
61
+ };
62
+ export declare function generalRenderMetas(): Record<GeneralBlockType, RegisteredMeta>;
@@ -0,0 +1 @@
1
+ import{GENERAL_REGISTRATION_ORDER as e}from"../../general-order.js";import{BannerMeta as a}from"./Banner/meta.js";import{BreadcrumbMeta as m}from"./Breadcrumb/meta.js";import{ButtonBlockMeta as i}from"./ButtonBlock/meta.js";import{CardsMeta as p}from"./Cards/meta.js";import{CategoryBarMeta as M}from"./CategoryBar/meta.js";import{ChartMeta as f}from"./Chart/meta.js";import{ContactLocationsMeta as s}from"./ContactLocations/meta.js";import{CountdownMeta as n}from"./Countdown/meta.js";import{CustomHTMLMeta as c}from"./CustomHTML/meta.js";import{DividerMeta as d}from"./Divider/meta.js";import{DocBodyMeta as S}from"./DocBody/meta.js";import{DocMastheadMeta as l}from"./DocMasthead/meta.js";import{DocMetaCardsMeta as u}from"./DocMetaCards/meta.js";import{DocTabsMeta as T}from"./DocTabs/meta.js";import{EyebrowMeta as g}from"./Eyebrow/meta.js";import{FAQMeta as B}from"./FAQ/meta.js";import{FeaturedCoverMeta as C}from"./FeaturedCover/meta.js";import{FlexMeta as H}from"./Flex/meta.js";import{FootprintMeta as P}from"./Footprint/meta.js";import{GridMeta as y}from"./Grid/meta.js";import{HeadingMeta as h}from"./Heading/meta.js";import{HeroGroupMeta as k}from"./HeroGroup/meta.js";import{HeroMeta as E}from"./Hero/meta.js";import{HeroSingleMeta as L}from"./HeroSingle/meta.js";import{HeroSlideMeta as A}from"./HeroSlide/meta.js";import{ImageBlockMeta as D}from"./ImageBlock/meta.js";import{IntegrationsMeta as F}from"./Integrations/meta.js";import{IntroBleedMeta as R}from"./IntroBleed/meta.js";import{KeyFeaturesMeta as I}from"./KeyFeatures/meta.js";import{LogoBlockMeta as x}from"./LogoBlock/meta.js";import{LogosMeta as G}from"./Logos/meta.js";import{LongReadMeta as b}from"./LongRead/meta.js";import{ManifestoMeta as _}from"./Manifesto/meta.js";import{MastheadMeta as v}from"./Masthead/meta.js";import{MockupMeta as w}from"./Mockup/meta.js";import{OrderSummaryMeta as O}from"./OrderSummary/meta.js";import{ParagraphsAMeta as N}from"./ParagraphsA/meta.js";import{PaymentBadgesMeta as K}from"./PaymentBadges/meta.js";import{PostCardMeta as Q}from"./PostCard/meta.js";import{ProcessStepsMeta as W}from"./ProcessSteps/meta.js";import{ProseMeta as X}from"./Prose/meta.js";import{SectionHeaderMeta as j}from"./SectionHeader/meta.js";import{SeriesMeta as q}from"./Series/meta.js";import{SpacerMeta as z}from"./Spacer/meta.js";import{SpecStripMeta as J}from"./SpecStrip/meta.js";import{SplitMeta as U}from"./Split/meta.js";import{StatsMeta as V}from"./Stats/meta.js";import{StatsParagraphMeta as Y}from"./StatsParagraph/meta.js";import{TestimonialsMeta as Z}from"./Testimonials/meta.js";import{TextMeta as $}from"./Text/meta.js";import{TickerMeta as oo}from"./Ticker/meta.js";import{TimelineMeta as to}from"./Timeline/meta.js";import{TimelineTrackMeta as ro}from"./TimelineTrack/meta.js";import{TitleWithButtonsMeta as eo}from"./TitleWithButtons/meta.js";import ao from"./text-part-shapes.json";const mo={Banner:a,Breadcrumb:m,ButtonBlock:i,Cards:p,CategoryBar:M,Chart:f,ContactLocations:s,CustomHTML:c,Divider:d,DocBody:S,DocMasthead:l,DocMetaCards:u,DocTabs:T,Eyebrow:g,FAQ:B,FeaturedCover:C,Flex:H,Footprint:P,Grid:y,Heading:h,Hero:E,HeroGroup:k,HeroSingle:L,HeroSlide:A,ImageBlock:D,Integrations:F,IntroBleed:R,Countdown:n,KeyFeatures:I,LogoBlock:x,Logos:G,LongRead:b,Manifesto:_,Masthead:v,Mockup:w,OrderSummary:O,ParagraphsA:N,PaymentBadges:K,PostCard:Q,ProcessSteps:W,Prose:X,SectionHeader:j,Series:q,Spacer:z,SpecStrip:J,Split:U,Stats:V,StatsParagraph:Y,Testimonials:Z,Text:$,Ticker:oo,Timeline:to,TimelineTrack:ro,TitleWithButtons:eo},io=ao;function st(){const t={};for(const o of e){const r=io[o];t[o]={...mo[o],...r?{textParts:r}:null}}return t}export{mo as GENERAL_METAS,st as generalRenderMetas};
@@ -1,5 +1,5 @@
1
- export type LeftView = "pages" | "sections" | "styles" | "media";
1
+ export type LeftView = "pages" | "sections" | "styles";
2
2
  export declare function readLeftView(): LeftView;
3
3
  export declare function writeLeftView(view: LeftView): void;
4
- export declare function resolveLeftView(view: LeftView, hasSiteTheme: boolean, hasMedia?: boolean): LeftView;
4
+ export declare function resolveLeftView(view: LeftView, hasSiteTheme: boolean): LeftView;
5
5
  export declare function leftViewForSelection(selectedId: string | null | undefined, current: LeftView): LeftView;
@@ -1 +1 @@
1
- const n="sf-editor-left-view";function o(){if(typeof window>"u")return"pages";try{const e=window.localStorage.getItem(n);return e==="sections"||e==="styles"||e==="media"?e:"pages"}catch{return"pages"}}function i(e){if(!(typeof window>"u"))try{window.localStorage.setItem(n,e)}catch{}}function s(e,t,r=!1){return e==="styles"&&!t||e==="media"&&!r?"sections":e}function f(e,t){return e?"sections":t}export{f as leftViewForSelection,o as readLeftView,s as resolveLeftView,i as writeLeftView};
1
+ const n="sf-editor-left-view";function o(){if(typeof window>"u")return"pages";try{const e=window.localStorage.getItem(n);return e==="sections"||e==="styles"?e:"pages"}catch{return"pages"}}function r(e){if(!(typeof window>"u"))try{window.localStorage.setItem(n,e)}catch{}}function i(e,t){return e==="styles"&&!t?"sections":e}function s(e,t){return e?"sections":t}export{s as leftViewForSelection,o as readLeftView,i as resolveLeftView,r as writeLeftView};
@@ -0,0 +1,3 @@
1
+ import type { ScreenMediaDrop } from "efficient-easel/screen/lib/screen-parts";
2
+ export declare function mainPicturePath(type: string): string | null;
3
+ export declare const WEBSITE_MEDIA_DROP: ScreenMediaDrop;
@@ -0,0 +1 @@
1
+ import c from"./media-manifest.json";const l=c.mediaFields,n=/video|poster|focal|phone/i;function r(e){return(l[e]??[]).find(t=>!t.includes("[]")&&!n.test(t))??null}const s={adds:{kind:"block",type:"ImageBlock"},takes:e=>r(e.type)!==null,replace:(e,t)=>{const o=r(e.type);return o?{...e.props,[o]:t.url}:{...e.props}},create:(e,t)=>({type:"ImageBlock",props:{...t.nodeDefaults("ImageBlock"),id:t.newNodeId("ImageBlock"),src:e.url}})};export{s as WEBSITE_MEDIA_DROP,r as mainPicturePath};
@@ -1,3 +1,3 @@
1
- import{ruleChecks as A}from"./rule.js";const E={text:[0,1,2],textarea:[0,1,2],plainText:[0,1,2],copyText:[0,1,2],plainTextarea:[0,1,2],linkField:[0],textList:[0,2],upload:[0,2],toggle:[0],checkbox:[0],select:[0,4],searchSelect:[0,3],segmented:[0],multiSelect:[0,2],slider:[0],colorInput:[0],focalPicker:[0],sizeField:[0],backgroundField:[0],cardImageBackgroundField:[0],placementField:[0],pxField:[0],dateTime:[0,2],edgePad:[0,3],blockSourceField:[0,1],phPrev:[1],phHide:[1],phHideDefault:[1],group:[0],section:[0],panelNote:[0]},b=new Set(["value","render","fields","type","arrayFields","icon"]),N=/(^|_)(PH|LABELS?|HINTS?|NOTES?|TITLES?|SWATCH_NAMES|GROUP|REASON|ROWS|PANELS|TABS|LINES)$/,O=new Set(["key","value","id","type","href","slug","kind","cell","set","icon","token","unit","path","url","src","className","variant","mode","side","align","role"]),$=new Set(["hint","coverHint","unsetLabel","emptyLabel","addLabel"]),_=new Set(["say","sayCount"]);function C(t){return/\p{L}/u.test(t)&&t.trim()===t&&t.length>0&&!/^[a-z0-9]+(?:-[a-z0-9]+)+$/.test(t)}const z=/(?:Key|Id|Slug|Href|Url|ClassName)$/;function L(t,p,s={}){const a=new Map,k=new Set(s.skip??[]),S=new Map((s.dataFiles??[]).map(e=>[e.path,e.keys])),u=(e,l)=>{if(!C(e))return;let d=a.get(e);d||a.set(e,d=new Set),d.add(l)},f=e=>e&&(t.isStringLiteral(e)||t.isNoSubstitutionTemplateLiteral(e))?e.text:null,o=e=>{if(!e)return[];const l=f(e);return l!==null?[l]:t.isParenthesizedExpression(e)?o(e.expression):t.isConditionalExpression(e)?[...o(e.whenTrue),...o(e.whenFalse)]:t.isBinaryExpression(e)&&(e.operatorToken.kind===t.SyntaxKind.QuestionQuestionToken||e.operatorToken.kind===t.SyntaxKind.BarBarToken)?[...o(e.left),...o(e.right)]:[]},y=e=>{const l=e.expression;return t.isIdentifier(l)?l.text:t.isPropertyAccessExpression(l)?l.name.text:null},g=e=>e.name&&(t.isIdentifier(e.name)||t.isStringLiteral(e.name))?e.name.text:null;for(const e of p){if(!/\.tsx?$/.test(e.path)||k.has(e.path))continue;const l=S.get(e.path),d=t.createSourceFile(e.path,e.text,t.ScriptTarget.Latest,!0,e.path.endsWith(".tsx")?t.ScriptKind.TSX:t.ScriptKind.TS),T=n=>{if(t.isCallExpression(n)){const r=y(n);if(r&&_.has(r))for(const c of n.arguments){const i=f(c);i!==null&&u(i,e.path)}else if(r&&t.isIdentifier(n.expression)&&Object.prototype.hasOwnProperty.call(E,r)){for(const c of E[r])for(const i of o(n.arguments[c]))u(i,e.path);if(r==="segmented"){const c=n.arguments[2];if(c&&t.isArrayLiteralExpression(c))for(const i of c.elements){const h=f(i);h!==null&&u(h,e.path)}}}}else if(t.isJsxAttribute(n)&&n.name.getText(d)==="label"&&n.initializer&&t.isStringLiteral(n.initializer)&&/^[A-Z]/.test(n.parent.parent.tagName.getText(d).split(".").pop()??""))u(n.initializer.text,e.path);else if(t.isObjectLiteralExpression(n)){const r=n.properties.filter(t.isPropertyAssignment),c=r.find(i=>g(i)==="label");if(c&&r.some(i=>b.has(g(i)??""))){const i=f(c.initializer);i!==null&&u(i,e.path)}for(const i of r){const h=g(i);if(h!==null&&$.has(h))for(const x of o(i.initializer))u(x,e.path)}if(l)for(const i of r){const h=g(i);if(h!==null&&(l==="*"||l.includes(h))){const x=f(i.initializer);x!==null&&u(x,e.path)}}}else if(t.isVariableDeclaration(n)&&t.isIdentifier(n.name)&&N.test(n.name.text)&&n.initializer&&!/CSSProperties|Style\b/.test(n.type?.getText(d)??"")){const r=f(n.initializer);r!==null&&!/^[a-z0-9_]+$/.test(r)&&u(r,e.path);const c=i=>{const h=t.isPropertyAssignment(i)?g(i)??"":"";if(t.isPropertyAssignment(i)&&!O.has(h)&&!z.test(h)){const x=f(i.initializer);x!==null&&u(x,e.path)}t.forEachChild(i,c)};c(n.initializer)}t.forEachChild(n,T)};T(d)}const m=new Map;for(const e of[...a.keys()].sort(w))s.known?.has(e)||m.set(e,[...a.get(e)].sort());return m}function w(t,p){return t<p?-1:t>p?1:0}function P(t,p){return["/**",...p.header.map(a=>a?` * ${a}`:" *")," */",`export const ${p.constant} = {`,...[...t].map(a=>` ${JSON.stringify(a)}: ${JSON.stringify(a)},`),"} as const;","",`/** Every phrase of {@link ${p.constant}}: what a host's words are keyed by. */`,`export type ${p.phraseType} = keyof typeof ${p.constant};`,""].join(`
1
+ import{ruleChecks as A}from"./rule.js";const E={text:[0,1,2],textarea:[0,1,2],plainText:[0,1,2],copyText:[0,1,2],plainTextarea:[0,1,2],linkField:[0],textList:[0,2],upload:[0,2],toggle:[0],checkbox:[0],select:[0,4],searchSelect:[0,3],segmented:[0],multiSelect:[0,2],slider:[0],colorInput:[0],focalPicker:[0],sizeField:[0],backgroundField:[0],cardImageBackgroundField:[0],placementField:[0],pxField:[0],dateTime:[0,2],edgePad:[0,3],blockSourceField:[0,1],phPrev:[1],phHide:[1],phHideDefault:[1],group:[0],section:[0],panelNote:[0]},b=new Set(["value","render","defaultProps","fields","type","arrayFields","icon"]),N=/(^|_)(PH|LABELS?|HINTS?|NOTES?|TITLES?|SWATCH_NAMES|GROUP|REASON|ROWS|PANELS|TABS|LINES)$/,O=new Set(["key","value","id","type","href","slug","kind","cell","set","icon","token","unit","path","url","src","className","variant","mode","side","align","role"]),$=new Set(["hint","coverHint","unsetLabel","emptyLabel","addLabel"]),_=new Set(["say","sayCount"]);function C(t){return/\p{L}/u.test(t)&&t.trim()===t&&t.length>0&&!/^[a-z0-9]+(?:-[a-z0-9]+)+$/.test(t)}const P=/(?:Key|Id|Slug|Href|Url|ClassName)$/;function L(t,p,s={}){const a=new Map,k=new Set(s.skip??[]),S=new Map((s.dataFiles??[]).map(e=>[e.path,e.keys])),u=(e,l)=>{if(!C(e))return;let d=a.get(e);d||a.set(e,d=new Set),d.add(l)},f=e=>e&&(t.isStringLiteral(e)||t.isNoSubstitutionTemplateLiteral(e))?e.text:null,o=e=>{if(!e)return[];const l=f(e);return l!==null?[l]:t.isParenthesizedExpression(e)?o(e.expression):t.isConditionalExpression(e)?[...o(e.whenTrue),...o(e.whenFalse)]:t.isBinaryExpression(e)&&(e.operatorToken.kind===t.SyntaxKind.QuestionQuestionToken||e.operatorToken.kind===t.SyntaxKind.BarBarToken)?[...o(e.left),...o(e.right)]:[]},y=e=>{const l=e.expression;return t.isIdentifier(l)?l.text:t.isPropertyAccessExpression(l)?l.name.text:null},g=e=>e.name&&(t.isIdentifier(e.name)||t.isStringLiteral(e.name))?e.name.text:null;for(const e of p){if(!/\.tsx?$/.test(e.path)||k.has(e.path))continue;const l=S.get(e.path),d=t.createSourceFile(e.path,e.text,t.ScriptTarget.Latest,!0,e.path.endsWith(".tsx")?t.ScriptKind.TSX:t.ScriptKind.TS),T=n=>{if(t.isCallExpression(n)){const r=y(n);if(r&&_.has(r))for(const c of n.arguments){const i=f(c);i!==null&&u(i,e.path)}else if(r&&t.isIdentifier(n.expression)&&Object.prototype.hasOwnProperty.call(E,r)){for(const c of E[r])for(const i of o(n.arguments[c]))u(i,e.path);if(r==="segmented"){const c=n.arguments[2];if(c&&t.isArrayLiteralExpression(c))for(const i of c.elements){const h=f(i);h!==null&&u(h,e.path)}}}}else if(t.isJsxAttribute(n)&&n.name.getText(d)==="label"&&n.initializer&&t.isStringLiteral(n.initializer)&&/^[A-Z]/.test(n.parent.parent.tagName.getText(d).split(".").pop()??""))u(n.initializer.text,e.path);else if(t.isObjectLiteralExpression(n)){const r=n.properties.filter(t.isPropertyAssignment),c=r.find(i=>g(i)==="label");if(c&&r.some(i=>b.has(g(i)??""))){const i=f(c.initializer);i!==null&&u(i,e.path)}for(const i of r){const h=g(i);if(h!==null&&$.has(h))for(const x of o(i.initializer))u(x,e.path)}if(l)for(const i of r){const h=g(i);if(h!==null&&(l==="*"||l.includes(h))){const x=f(i.initializer);x!==null&&u(x,e.path)}}}else if(t.isVariableDeclaration(n)&&t.isIdentifier(n.name)&&N.test(n.name.text)&&n.initializer&&!/CSSProperties|Style\b/.test(n.type?.getText(d)??"")){const r=f(n.initializer);r!==null&&!/^[a-z0-9_]+$/.test(r)&&u(r,e.path);const c=i=>{const h=t.isPropertyAssignment(i)?g(i)??"":"";if(t.isPropertyAssignment(i)&&!O.has(h)&&!P.test(h)){const x=f(i.initializer);x!==null&&u(x,e.path)}t.forEachChild(i,c)};c(n.initializer)}t.forEachChild(n,T)};T(d)}const m=new Map;for(const e of[...a.keys()].sort(w))s.known?.has(e)||m.set(e,[...a.get(e)].sort());return m}function w(t,p){return t<p?-1:t>p?1:0}function z(t,p){return["/**",...p.header.map(a=>a?` * ${a}`:" *")," */",`export const ${p.constant} = {`,...[...t].map(a=>` ${JSON.stringify(a)}: ${JSON.stringify(a)},`),"} as const;","",`/** Every phrase of {@link ${p.constant}}: what a host's words are keyed by. */`,`export type ${p.phraseType} = keyof typeof ${p.constant};`,""].join(`
2
2
  `)}function I(t,p,s){const{check:a,report:k}=A("editor words");{const f=[{path:"fixture.tsx",text:['const a = say("Delete {name}", { name });','const b = sayCount("{n} page", "{n} pages", n);','const c = text("Heading", "Main heading", "A hint");','const d = select("Align", icon, [{ label: "Left", value: "left" }], "left", "A note");','const e = segmented("Size", icon, ["Small", "Large"], "Small");','const SERIES_PH = { headTitle: "Section heading", link: "#" };','export const CORNER_SIDES_LABEL = "Corner sides";','const VIEW_TIER_LABEL = { desktop: "Desktop" };',"const DEFAULT_LABEL_KEY = 12;",'const FOCUS_HINT: CSSProperties = { display: "flex" };','const LAYOUT_TABS = "tabs";','const TEMPLATE_GROUP = { group: "Template pages", groupKey: "template" };','const a4 = <MenuLink label="text-fg" />;','const THEME_COLOUR_ROWS = [{ key: "fg", label: "Text color" }, { group: "Borders" }];','const a1 = <GroupLabel label="Wording" />;','const a2 = <input label="raw" />;','const a3 = say("Already listed");','const f = toggle("Show", false, "not-a-word");','const i = pxField("Corners", { min: 0, unsetLabel: on ? "Square" : "Round", hint: opts?.hint ?? "Rounds it." });','const g = { label: "Content", href: "/" };',"const h = say(`${x} colour`);"].join(`
3
- `)},{path:"names.ts",text:'export const N = [{ key: "openers", title: "Hero & intros", sections: [{ type: "Hero", label: "Hero Slideshow" }] }];'},{path:"block.tsx",text:'export const B = { label: "Banner", fields: {}, defaultProps: { cta: { label: "Shop now", href: "/" } } };'}],o=[...L(t,f,{dataFiles:[{path:"names.ts",keys:["title"]}],known:new Set(["Already listed"])}).keys()],y=["A hint","A note","Align","Banner","Borders","Corner sides","Corners","Round","Rounds it.","Square","Template pages","Text color","Wording","Desktop","Delete {name}","Heading","Hero & intros","Hero Slideshow","Large","Left","Main heading","Section heading","Show","Size","Small","{n} page","{n} pages"].sort(w);a("the reader reads every shape on a fixture, and no value, link or built phrase",JSON.stringify(o)===JSON.stringify(y),`read ${JSON.stringify(o)}`)}const S=L(t,p,s);a(`the source says at least ${s.floor} phrases`,S.size>=s.floor,`read ${S.size}: the reader broke, or the editor stopped saying its words through it`);const u=P(S.keys(),s.shape);if(!s.catalogue)a("the catalogue exists",!1,`run ${s.write}`);else{const f=s.catalogue.text===u;let o;if(!f){const y=new Set([...s.catalogue.text.matchAll(/^ {2}("(?:[^"\\]|\\.)*"): /gm)].map(e=>JSON.parse(e[1]))),g=[...S.keys()].filter(e=>!y.has(e)),m=[...y].filter(e=>!S.has(e));o=`${s.catalogue.path} is not what the source says — run ${s.write}. Missing ${g.length}${g.length?` (${g.slice(0,5).map(e=>JSON.stringify(e)).join(", ")}…)`:""}; no longer said ${m.length}${m.length?` (${m.slice(0,5).map(e=>JSON.stringify(e)).join(", ")}…)`:""}.`}a(`${s.catalogue.path} lists exactly the ${S.size} phrases the source says`,f,o)}return k()}export{E as BUILDER_WORDS,L as editorPhrases,I as editorWordsCatalogue,P as editorWordsCatalogueText,C as isPhrase};
3
+ `)},{path:"names.ts",text:'export const N = [{ key: "openers", title: "Hero & intros", sections: [{ type: "Hero", label: "Hero Slideshow" }] }];'},{path:"block.tsx",text:'export const B = { label: "Banner", fields: {}, defaultProps: { cta: { label: "Shop now", href: "/" } } };'}],o=[...L(t,f,{dataFiles:[{path:"names.ts",keys:["title"]}],known:new Set(["Already listed"])}).keys()],y=["A hint","A note","Align","Banner","Borders","Corner sides","Corners","Round","Rounds it.","Square","Template pages","Text color","Wording","Desktop","Delete {name}","Heading","Hero & intros","Hero Slideshow","Large","Left","Main heading","Section heading","Show","Size","Small","{n} page","{n} pages"].sort(w);a("the reader reads every shape on a fixture, and no value, link or built phrase",JSON.stringify(o)===JSON.stringify(y),`read ${JSON.stringify(o)}`)}const S=L(t,p,s);a(`the source says at least ${s.floor} phrases`,S.size>=s.floor,`read ${S.size}: the reader broke, or the editor stopped saying its words through it`);const u=z(S.keys(),s.shape);if(!s.catalogue)a("the catalogue exists",!1,`run ${s.write}`);else{const f=s.catalogue.text===u;let o;if(!f){const y=new Set([...s.catalogue.text.matchAll(/^ {2}("(?:[^"\\]|\\.)*"): /gm)].map(e=>JSON.parse(e[1]))),g=[...S.keys()].filter(e=>!y.has(e)),m=[...y].filter(e=>!S.has(e));o=`${s.catalogue.path} is not what the source says — run ${s.write}. Missing ${g.length}${g.length?` (${g.slice(0,5).map(e=>JSON.stringify(e)).join(", ")}…)`:""}; no longer said ${m.length}${m.length?` (${m.slice(0,5).map(e=>JSON.stringify(e)).join(", ")}…)`:""}.`}a(`${s.catalogue.path} lists exactly the ${S.size} phrases the source says`,f,o)}return k()}export{E as BUILDER_WORDS,L as editorPhrases,I as editorWordsCatalogue,z as editorWordsCatalogueText,C as isPhrase};
@@ -1,7 +1,7 @@
1
1
  import{ruleChecks as O}from"./rule.js";function j(r){const s=r.split(`
2
2
  `),n=[];return s.forEach((g,a)=>{if(!/border-(top|bottom|left|right)[a-z-]*\s*:[^;]*\bsolid\b/.test(g))return;let $=0,c="?";for(let i=a-1;i>=0;i-=1)if($+=(s[i].match(/\}/g)??[]).length-(s[i].match(/\{/g)??[]).length,$<0){c=s[i].split("{")[0].trim();let h=i-1;for(;h>=0&&s[h].trim().endsWith(",");)c=`${s[h].trim()} ${c}`,h-=1;break}n.push({line:a+1,selector:c,decl:g.trim()})}),n}const y=r=>r.split(/[\s,+>~]/)[0].trim(),k=(r,s)=>s in r||y(s)in r,L=/\bzinc-|--sf-line\b|--sf-divider\b|--sf-input-border\b|--sf-chip-bg\b|--es-line\b|--es-divider\b|--sf-text-secondary\b/,S=[["utility",/(^|["'`\s])border-(t|b|l|r)($|["'`\s])/],["style object",/border(Top|Bottom|Left|Right)\s*:/],["css in a string",/border-(top|bottom|left|right)\s*:/]];function E(r){return/radius/i.test(r)||!L.test(r)?null:S.find(([,s])=>s.test(r))?.[0]??null}function T(r,s){const{check:n,report:g}=O("panel divider lines"),a=s.allowed??{},$=s.pendingElsewhere??{},c=s.allowedTsx??[];{const e=u=>["border",u].join("-"),t=[".a,",".b + .c {",` ${e("top")}: 1px solid red;`,"}",`.d { ${e("radius")}: 4px; }`].join(`
3
3
  `),l=j(t);n("the census finds a directional solid border, with its whole multi-line selector",l.length===1&&l[0].selector===".a, .b + .c"&&y(l[0].selector)===".a",JSON.stringify(l));const d=["zinc","200"].join("-"),f=[["a utility",`<div className="${e("t")} border-${d}" />`,"utility"],["a style object",`style={{ ${["border","Top"].join("")}: "1px solid var(--sf-line)" }}`,"style object"],["CSS in a string",`const s = "${e("left")}: 1px solid var(--es-divider)";`,"css in a string"],["a border in the storefront's own ink",`<div className="${e("t")} border-line" />`,null],["a radius",`<div className="${e("t")} border-${d} rounded" style={{ borderRadius: 4 }} />`,null]];for(const[u,o,p]of f)n(`the sweep reads ${u} as ${p??"no hairline"}`,E(o)===p,o)}const i=[];for(const e of s.panelSheets??[]){const t=r.find(o=>o.path===e)?.text??"",l=j(t);n(`${e} was read and parsed`,t.length>1e4&&l.length>0,`${t.length} bytes, ${l.length} directional border(s)`),i.push(...l.map(o=>({...o,sheet:e})));const f=(t.replace(/\/\*[\s\S]*?\*\//g,"").match(/\[class\*="_PuckFields[^"]*"\][^{]*\{/g)??[]).length;n(`${e} reaches for no Puck field wrapper`,f===0,`${f} rule(s) still select \`[class*="_PuckFields…"]\` — the rows are \`.es-insp-row\` now`);const u=t.replace(/,\s*\n\s*/g,", ");for(const o of s.fullBleed??[]){if(!(o in a))continue;const p=u.indexOf(`
4
- ${o} {`);if(!n(`the allowed full-bleed rule is still in ${e}`,p>=0,o))continue;const v=u.slice(p,u.indexOf("}",p));for(const[w,x]of[["left","--es-insp-pad-x"],["right","--sf-insp-pad-end"]])n(`the full-bleed rule cancels the panel's ${w} padding, so it reaches the edge`,new RegExp(`margin-${w}:\\s*calc\\(var\\(${x}\\)\\s*\\*\\s*-1\\)`).test(v),"inset, this is the line the owner rejected — full bleed is the exemption"),n(`…and puts that ${w} padding back inside, so the words stay on the rows' edge`,new RegExp(`padding-${w}:\\s*var\\(${x}\\)`).test(v))}}for(const e of s.fullBleed??[])n(`the full-bleed selector is an ALLOWED entry: ${e}`,e in a);if(s.panelSheets?.length){const e=i.filter(t=>!k(a,t.selector)&&!k($,t.selector));n(`no unlisted directional border survives in a panel stylesheet (${i.length} censused)`,e.length===0,`${e.length} neither removed, allowed, nor owed to another card — delete it and let the rhythm tokens separate, or add it to the allow-list with a reason if it is a control edge:
4
+ ${o} {`);if(!n(`the allowed full-bleed rule is still in ${e}`,p>=0,o))continue;const v=u.slice(p,u.indexOf("}",p));for(const[w,x]of[["left","--es-insp-pad-x"],["right","--es-insp-pad-end"]])n(`the full-bleed rule cancels the panel's ${w} padding, so it reaches the edge`,new RegExp(`margin-${w}:\\s*calc\\(var\\(${x}\\)\\s*\\*\\s*-1\\)`).test(v),"inset, this is the line the owner rejected — full bleed is the exemption"),n(`…and puts that ${w} padding back inside, so the words stay on the rows' edge`,new RegExp(`padding-${w}:\\s*var\\(${x}\\)`).test(v))}}for(const e of s.fullBleed??[])n(`the full-bleed selector is an ALLOWED entry: ${e}`,e in a);if(s.panelSheets?.length){const e=i.filter(t=>!k(a,t.selector)&&!k($,t.selector));n(`no unlisted directional border survives in a panel stylesheet (${i.length} censused)`,e.length===0,`${e.length} neither removed, allowed, nor owed to another card — delete it and let the rhythm tokens separate, or add it to the allow-list with a reason if it is a control edge:
5
5
  `+e.map(t=>`${t.sheet}:${t.line} ${t.selector} — ${t.decl}`).join(`
6
6
  `))}const h=e=>i.some(t=>t.selector===e||y(t.selector)===e);for(const[e,t]of Object.entries(a))n(`ALLOWED entry ${e} still names a real rule (${t.slice(0,48)}…)`,h(e),"the rule is gone: delete this entry with it");for(const[e,t]of Object.entries($))n(`PENDING entry ${e} is still owed — ${t}`,h(e),"that card has landed and the rule is gone: delete this entry");const b=r.filter(e=>/\.tsx?$/.test(e.path));n(`the repository's own TS/TSX files were swept (${b.length}, at least ${s.minFiles})`,b.length>=s.minFiles);const m=[];for(const e of b)e.text.split(`
7
7
  `).forEach((t,l)=>{const d=E(t);d&&(c.some(f=>f.file===e.path&&t.includes(f.util))||m.push(`${e.path}:${l+1} (${d}) ${t.trim().slice(0,80)}`))});n("no editor panel file draws an unlisted directional border",m.length===0,`${m.length} found:
@@ -32,6 +32,7 @@ export type NewPageInput = {
32
32
  slug: string;
33
33
  title: string;
34
34
  layout: PageLayout;
35
+ kind?: "normal" | "lightbox";
35
36
  } & SiteScope;
36
37
  export type DuplicatePageInput = {
37
38
  title: string;
@@ -1 +1 @@
1
- "use client";import{jsx as e,jsxs as m}from"react/jsx-runtime";import{useEffect as w,useMemo as z,useState as $}from"react";import{footprintPins as E}from"../../format/lib/content/footprint.js";import{bucketByGroup as F,groupColsClass as A}from"../../format/lib/locations-grid.js";import G from"./EditorialSectionHead.js";import{LocationGroupHeader as B}from"./LocationGroupHeader.js";import{renderGold as K,renderHeadline as P}from"./goldPhrases.js";import q from"./PartStyledText.js";import{say as L}from"../../format/lib/editor-words.js";import{parseFootprintSource as D}from"../lib/dealer-source.js";import Q from"./DealerFinder.js";import I from"./SiteMap.js";const a={bodySmall:"text-[length:var(--size-body,10px)]",bodyLarge:"text-[length:var(--size-body,18px)]",labelSmall:"text-[length:var(--size-label,11px)]",labelLarge:"text-[length:var(--size-label,12px)]"};function O({sectionNumber:o="",heading:s="",tagline:x="",offices:l=[],mapTheme:f="auto",padTop:g,padBottom:p,editing:d,omitHead:h=!1,source:i,search:u=!1,searchHint:n="",noMatchText:y="",listPosition:c="below",showDistance:M=!0}){const b=D(i)==="dealers",j=typeof g=="number"?g:120,C=typeof p=="number"?p:120,[k,v]=$(null),H=l.length===0&&!b&&!o&&!s&&!x;if(w(()=>{v(t=>t!==null&&t>=l.length?null:t)},[l]),H&&!d)return null;const T=F(l,t=>String(t.group??""),()=>"");return e("section",{className:"relative z-[2] bg-bg",children:m("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:{paddingTop:j,paddingBottom:C},children:[!h&&(o||s||x)&&e(G,{num:o,title:s?P(s):void 0,desc:x||void 0,spaceBelow:"mb-12"}),b?e(Q,{mapLabel:s.replace(/[=*]/g,"").replace(/\s+/g," ").trim(),mapTheme:f,search:u,searchHint:n,noMatchText:y,listPosition:c,showDistance:M,editing:d}):e(W,{offices:l,mapLabel:s.replace(/[=*]/g,"").replace(/\s+/g," ").trim(),mapTheme:f,activeIndex:k,onSelect:v,editing:d}),!b&&l.length>0&&e("div",{className:"mt-12 flex flex-col gap-8",children:T.map((t,_)=>m("div",{children:[t.key&&e(B,{groupKey:t.key,count:t.items.length}),e("div",{className:["grid gap-[2px] bg-bg",A(t.items.length),t.items.length>2?"max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1":t.items.length===2?"max-[700px]:grid-cols-1":""].join(" "),children:t.items.map(({item:r,index:N})=>{const S=k===N;return m("button",{type:"button",onClick:()=>v(N),"aria-pressed":S,className:["flex flex-col gap-1.5 bg-bg px-6 py-5 text-left transition-colors outline outline-1 -outline-offset-1",S?"outline-accent":"outline-transparent hover:outline-line"].join(" "),children:[m("span",{className:`flex items-center gap-2.5 font-mono ${a.labelSmall} uppercase tracking-[0.28em]`,children:[r.hq&&e("span",{className:`border border-accent bg-accent px-1.5 py-0.5 ${a.bodySmall} text-bg`,children:"HQ"}),r.role&&e("span",{className:"text-accent",children:r.role})]}),r.city&&e("span",{className:`font-display ${a.bodyLarge} font-medium leading-[1.2] tracking-[-0.01em] text-fg`,children:e(q,{value:r.city,children:r.city})}),r.country&&e("span",{className:`font-mono ${a.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:r.country}),r.address&&e("span",{className:`font-mono ${a.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:K(r.address)})]},N)})})]},t.key?`g:${t.key}`:`ungrouped:${_}`))}),!b&&l.length===0&&d&&e("p",{className:`mt-8 font-mono ${a.labelLarge} uppercase tracking-[0.24em] text-fg-dim`,children:L("Add an office in the inspector")})]})})}function W({offices:o,mapLabel:s,mapTheme:x,activeIndex:l,onSelect:f,editing:g}){const p=z(()=>E(o),[o]),[d,h]=$(null),i=l===null?null:String(l),u=i!==null&&p.some(c=>c.key===i);if(w(()=>{i!==null&&u&&h(c=>({key:i,n:(c?.n??0)+1}))},[i,u]),p.length===0)return g?e("div",{className:"relative flex aspect-[16/9] w-full items-center justify-center overflow-hidden border border-line bg-bg px-6 text-center max-[720px]:aspect-[4/5]",children:e("span",{className:`font-mono ${a.labelLarge} uppercase tracking-[0.24em] text-fg-dim`,children:L("Add office coordinates to plot the map")})}):null;const n=u&&l!==null?o[l]:null,y=n?m("div",{className:"flex items-start gap-3 border border-line bg-bg px-3.5 py-2.5 text-fg shadow-[0_8px_24px_rgba(0,0,0,.4)]",children:[m("div",{className:"min-w-0 flex-1",children:[m("div",{className:`flex items-center gap-2 font-mono ${a.labelSmall} uppercase tracking-[0.28em]`,children:[n.hq&&e("span",{className:`bg-accent px-1.5 py-px ${a.bodySmall} text-bg`,children:"HQ"}),n.role&&e("span",{className:"text-accent",children:n.role})]}),n.city&&e("div",{className:`mt-1.5 font-display ${a.bodyLarge} font-medium leading-[1.2] text-fg`,children:n.city}),n.country&&e("div",{className:`mt-1 font-mono ${a.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:n.country})]}),e("button",{type:"button",onClick:()=>f(null),"aria-label":"Close",className:"-mr-1 grid h-6 w-6 shrink-0 place-items-center text-fg-dim hover:text-fg",children:e("svg",{"aria-hidden":!0,width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:e("path",{d:"M2 2l8 8M10 2l-8 8"})})})]}):null;return e(I,{pins:p,mapTheme:x,ariaLabel:s||"Offices",className:"sf-card relative aspect-[16/9] w-full overflow-hidden border border-line max-[720px]:aspect-[4/5]",selectedKey:u?i:null,focus:d,onSelect:c=>f(Number(c)),card:y})}export{O as default};
1
+ "use client";import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useEffect as L,useMemo as F,useState as M}from"react";import{footprintPins as A}from"../../format/lib/content/footprint.js";import{bucketByGroup as B,groupColsClass as G}from"../../format/lib/locations-grid.js";import K from"./EditorialSectionHead.js";import{LocationGroupHeader as P}from"./LocationGroupHeader.js";import{renderGold as q,renderHeadline as D}from"./goldPhrases.js";import Q from"./PartStyledText.js";import{say as j}from"../../format/lib/editor-words.js";import{parseFootprintSource as I}from"../lib/dealer-source.js";import O from"./DealerFinder.js";import W from"./SiteMap.js";const n={bodySmall:"text-[length:var(--size-body,10px)]",bodyLarge:"text-[length:var(--size-body,18px)]",labelSmall:"text-[length:var(--size-label,11px)]",labelLarge:"text-[length:var(--size-label,12px)]"};function X({sectionNumber:c="",heading:i="",tagline:f="",offices:a=[],mapTheme:x="auto",padTop:b,padBottom:p,editing:d,omitHead:v=!1,source:s,search:u=!1,searchHint:r="",noMatchText:k="",listPosition:m="below",showDistance:C=!0}){const h=I(s)==="dealers",H=typeof b=="number"?b:120,T=typeof p=="number"?p:120,[S,N]=M(null),_=a.length===0&&!h&&!c&&!i&&!f;if(L(()=>{N(t=>t!==null&&t>=a.length?null:t)},[a]),_&&!d)return null;const z=B(a,t=>String(t.group??""),()=>"");return e("section",{className:"relative z-[2] bg-bg",children:o("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:{paddingTop:H,paddingBottom:T},children:[!v&&(c||i||f)&&e(K,{num:c,title:i?D(i):void 0,desc:f||void 0,spaceBelow:"mb-12"}),h?e(O,{mapLabel:i.replace(/[=*]/g,"").replace(/\s+/g," ").trim(),mapTheme:x,search:u,searchHint:r,noMatchText:k,listPosition:m,showDistance:C,editing:d}):e(Z,{offices:a,mapLabel:i.replace(/[=*]/g,"").replace(/\s+/g," ").trim(),mapTheme:x,activeIndex:S,onSelect:N,editing:d}),!h&&a.length>0&&e("div",{className:"mt-12 flex flex-col gap-8",children:z.map((t,E)=>o("div",{children:[t.key&&e(P,{groupKey:t.key,count:t.items.length}),e("div",{className:["grid gap-[2px] bg-bg",G(t.items.length),t.items.length>2?"max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1":t.items.length===2?"max-[700px]:grid-cols-1":""].join(" "),children:t.items.map(({item:l,index:y})=>{const w=S===y,g=l.href&&l.linkLabel?{href:l.href,label:l.linkLabel}:null,$=o("button",{type:"button",onClick:()=>N(y),"aria-pressed":w,className:["flex flex-col gap-1.5 bg-bg px-6 py-5 text-left transition-colors outline outline-1 -outline-offset-1",w?"outline-accent":"outline-transparent hover:outline-line",g?"w-full pb-11":""].filter(Boolean).join(" "),children:[o("span",{className:`flex items-center gap-2.5 font-mono ${n.labelSmall} uppercase tracking-[0.28em]`,children:[l.hq&&e("span",{className:`border border-accent bg-accent px-1.5 py-0.5 ${n.bodySmall} text-bg`,children:"HQ"}),l.role&&e("span",{className:"text-accent",children:l.role})]}),l.city&&e("span",{className:`font-display ${n.bodyLarge} font-medium leading-[1.2] tracking-[-0.01em] text-fg`,children:e(Q,{value:l.city,children:l.city})}),l.country&&e("span",{className:`font-mono ${n.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:l.country}),l.address&&e("span",{className:`font-mono ${n.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:q(l.address)})]},g?void 0:y);return g?o("div",{className:"relative flex",children:[$,e("a",{href:g.href,className:`absolute bottom-5 left-6 font-mono ${n.labelSmall} uppercase tracking-[0.24em] text-accent hover:underline`,children:`→ ${g.label}`})]},y):$})})]},t.key?`g:${t.key}`:`ungrouped:${E}`))}),!h&&a.length===0&&d&&e("p",{className:`mt-8 font-mono ${n.labelLarge} uppercase tracking-[0.24em] text-fg-dim`,children:j("Add an office in the inspector")})]})})}function Z({offices:c,mapLabel:i,mapTheme:f,activeIndex:a,onSelect:x,editing:b}){const p=F(()=>A(c),[c]),[d,v]=M(null),s=a===null?null:String(a),u=s!==null&&p.some(m=>m.key===s);if(L(()=>{s!==null&&u&&v(m=>({key:s,n:(m?.n??0)+1}))},[s,u]),p.length===0)return b?e("div",{className:"relative flex aspect-[16/9] w-full items-center justify-center overflow-hidden border border-line bg-bg px-6 text-center max-[720px]:aspect-[4/5]",children:e("span",{className:`font-mono ${n.labelLarge} uppercase tracking-[0.24em] text-fg-dim`,children:j("Add office coordinates to plot the map")})}):null;const r=u&&a!==null?c[a]:null,k=r?o("div",{className:"flex items-start gap-3 border border-line bg-bg px-3.5 py-2.5 text-fg shadow-[0_8px_24px_rgba(0,0,0,.4)]",children:[o("div",{className:"min-w-0 flex-1",children:[o("div",{className:`flex items-center gap-2 font-mono ${n.labelSmall} uppercase tracking-[0.28em]`,children:[r.hq&&e("span",{className:`bg-accent px-1.5 py-px ${n.bodySmall} text-bg`,children:"HQ"}),r.role&&e("span",{className:"text-accent",children:r.role})]}),r.city&&e("div",{className:`mt-1.5 font-display ${n.bodyLarge} font-medium leading-[1.2] text-fg`,children:r.city}),r.country&&e("div",{className:`mt-1 font-mono ${n.labelSmall} uppercase tracking-[0.2em] text-fg-dim`,children:r.country})]}),e("button",{type:"button",onClick:()=>x(null),"aria-label":"Close",className:"-mr-1 grid h-6 w-6 shrink-0 place-items-center text-fg-dim hover:text-fg",children:e("svg",{"aria-hidden":!0,width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:e("path",{d:"M2 2l8 8M10 2l-8 8"})})})]}):null;return e(W,{pins:p,mapTheme:f,ariaLabel:i||"Offices",className:"sf-card relative aspect-[16/9] w-full overflow-hidden border border-line max-[720px]:aspect-[4/5]",selectedKey:u?s:null,focus:d,onSelect:m=>x(Number(m)),card:k})}export{X as default};
@@ -5,7 +5,6 @@ import type { HeroCopyAlignment } from "../../format/lib/hero-group-placement.js
5
5
  import { HERO_SLIDER_GOTO_EVENT, type HeroSliderGotoDetail } from "efficient-easel/draw";
6
6
  export declare const HERO_VIDEO_PLAY_LABEL = "Play video";
7
7
  export declare const HERO_VIDEO_HOLD_LABEL = "Hold video";
8
- export declare const DEFAULT_TICKER_ITEMS: string[];
9
8
  export { HERO_SLIDER_GOTO_EVENT, type HeroSliderGotoDetail };
10
9
  export declare function subscribeSliderGoto(host: Element | null | undefined, handler: (event: Event) => void): (() => void) | undefined;
11
10
  interface Props {
@@ -1,4 +1,4 @@
1
- "use client";import{jsx as s,jsxs as R}from"react/jsx-runtime";import{useCallback as p,useEffect as f,useId as Oe,useRef as i,useState as b}from"react";import{markOverlayPortal as N}from"../../format/lib/puck/overlay-portal.js";import Te from"./Ticker.js";import{HeroSlideStyleContext as He}from"./HeroSlide.js";import Le from"./HeroArrows.js";import Ae from"./Reel.js";import{usePreviewTicker as Ce}from"./PreviewTickerContext.js";import{useReducedMotion as Ne}from"./useReducedMotion.js";import{tk as Z}from"../../format/components/floating-editor/tokens.js";import{hasSectionHeight as Ie,resolveSectionHeight as ee}from"../../format/lib/content/section-height.js";import{HEADER_HEIGHT_CSS as Me}from"../lib/puck/header-clearance.js";import{nextReel as Pe,normaliseHeroReelShape as De,reelShown as $e}from"../../format/lib/reel.js";import{arrowsShown as Ve,arrowStep as ze}from"../../format/lib/hero-arrows.js";import{swipeEnabled as Xe,swipeStep as qe}from"../../format/lib/hero-swipe.js";import{videoControlShown as Ge,videoHeld as je}from"../../format/lib/hero-video-control.js";import{HERO_SLIDER_GOTO_EVENT as I}from"efficient-easel/draw";import{say as te}from"../../format/lib/editor-words.js";const Be=`
1
+ "use client";import{jsx as s,jsxs as R}from"react/jsx-runtime";import{useCallback as f,useEffect as p,useId as Oe,useRef as i,useState as b}from"react";import{markOverlayPortal as N}from"../../format/lib/puck/overlay-portal.js";import Te from"./Ticker.js";import{HeroSlideStyleContext as He}from"./HeroSlide.js";import Le from"./HeroArrows.js";import Ae from"./Reel.js";import{usePreviewTicker as Ce}from"./PreviewTickerContext.js";import{useReducedMotion as Ne}from"./useReducedMotion.js";import{tk as Z}from"../../format/components/floating-editor/tokens.js";import{hasSectionHeight as Ie,resolveSectionHeight as ee}from"../../format/lib/content/section-height.js";import{HEADER_HEIGHT_CSS as Me}from"../lib/puck/header-clearance.js";import{nextReel as Pe,normaliseHeroReelShape as De,reelShown as $e}from"../../format/lib/reel.js";import{arrowsShown as Ve,arrowStep as ze}from"../../format/lib/hero-arrows.js";import{swipeEnabled as Xe,swipeStep as qe}from"../../format/lib/hero-swipe.js";import{videoControlShown as Ge,videoHeld as je}from"../../format/lib/hero-video-control.js";import{HERO_SLIDER_GOTO_EVENT as I}from"efficient-easel/draw";import{say as te}from"../../format/lib/editor-words.js";import{DEFAULT_TICKER_ITEMS as Be}from"../../format/lib/hero-ticker.js";const Ye=`
2
2
  .hero-ticker-pick { cursor: pointer; }
3
3
  .hero-ticker-pick:hover {
4
4
  outline: 2px solid color-mix(in srgb, ${Z.accent} 45%, transparent);
@@ -8,4 +8,4 @@
8
8
  outline: 2px solid ${Z.accent};
9
9
  outline-offset: -2px;
10
10
  }
11
- `,Ye="Play video",Fe="Hold video",Ke="flex h-7 cursor-pointer items-center gap-1.5 rounded-full border border-overlay-chrome/25 bg-overlay-scrim/80 px-[11px] font-mono text-[11px] leading-none tracking-[0.05em] text-overlay-fg",Ue=()=>te("item"),Je=["","","","","",""],re=new Map;function Qe(O,w){const h=O?.ownerDocument?.defaultView;if(h)return h.addEventListener(I,w),()=>h.removeEventListener(I,w)}function We({slides:O,alignment:w,textureOpacity:h,showTexture:oe,textureColor:ne,phoneUpDown:ce,phoneSideways:se,autoplay:M,autoplayInterval:T,showTicker:ae,tickerItems:ie,heightDesktop:P,heightMobile:D,showPicker:le,pickerShape:ue,pickerPlacement:de,showArrows:me,arrowsShape:pe,arrowsPlacement:fe,editing:n}){const $=Ie(P,D),he=$?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",ve=$?{"--sf-hero-h-d":ee(P),"--sf-hero-h-m":ee(D)}:void 0,H=(ie??Je.map(e=>({text:e}))).map(e=>e?.text?.trim()?e.text:n?Ue():"").filter(Boolean),V=ae!==!1,u=i(null),z=i(null),X=i(null),q=i(null),G=i(null),j=Oe(),y=i(j),[E,xe]=b([]),[ke,B]=b(0),v=i(0),[Y,F]=b(!1),[g,be]=b(!1),[K,we]=b(null),L=Ne(),{selectedHeroId:ye,select:U}=Ce(),S=p(()=>u.current?.querySelector(".hero-track")??null,[]),l=p((e,t=!1)=>{B(e),v.current=e,re.set(y.current,e);const r=u.current?.querySelector(".hero-track");if(r)if(t){const o=r.style.transition;r.style.transition="none",r.style.transform=`translateX(-${Math.max(0,e)*100}%)`,r.offsetHeight,r.style.transition=o}else r.style.transform=`translateX(-${Math.max(0,e)*100}%)`},[]);f(()=>{const e=u.current,t=e?.getAttribute("data-puck-component")||e?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||j;y.current=t,we(t);const r=re.get(t);typeof r=="number"&&(B(r),v.current=r)},[]),f(()=>{const e=S();if(!e)return;const t=()=>{xe(o=>Pe(o,e.querySelectorAll("[data-slide-name]")))};t();const r=new MutationObserver(t);return r.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-slide-name","data-slide-process","data-slide-media"]}),()=>{r.disconnect()}},[S]),f(()=>{if(!n)return;const e=t=>{const r=t.detail;if(!r||typeof r.index!="number")return;const o=u.current,a=o?.getAttribute("data-puck-component")||o?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||y.current;r.id&&r.id!==a||l(r.index,!0)};return Qe(u.current,e)},[n,l]);const c=E.length,d=Math.min(Math.max(ke,0),Math.max(0,c-1)),A=$e({shown:le,count:c}),J=Ve({shown:me,count:c}),Q=Ge({editing:n,shown:d,slides:E}),Ee=je({editing:n,playing:g,controlShown:Q}),_=Xe({count:c,editing:n}),m=i(null),x=i(null),ge=p(e=>{if(m.current=null,x.current=null,!_||e.touches.length!==1)return;const t=e.touches[0];m.current={x:t.clientX,y:t.clientY},x.current={x:t.clientX,y:t.clientY}},[_]),Se=p(e=>{if(!m.current)return;if(e.touches.length!==1){m.current=null;return}const t=e.touches[0];x.current={x:t.clientX,y:t.clientY}},[]),_e=p(()=>{const e=m.current,t=x.current;if(m.current=null,x.current=null,!_||!e||!t)return;const r=qe(t.x-e.x,t.y-e.y,v.current,c);r!==v.current&&l(r)},[_,c,l]);f(()=>{if(n||!M||Y||L||c<=1)return;const t=Math.max(1,typeof T=="number"?T:6)*1e3,r=window.setTimeout(()=>l((d+1)%c),t);return()=>window.clearTimeout(r)},[n,M,T,Y,L,c,d,l]),f(()=>{const e=[z.current,X.current,q.current].filter(Boolean),t=e.map(o=>N(o)),r=o=>{const a=o.target,k=a.closest("[data-hero-nav]"),W=k??a.closest("[data-idx]");if(!W)return;o.stopPropagation(),o.preventDefault();const C=k?ze(k.dataset.heroNav,v.current,c):Number(W.dataset.idx);Number.isNaN(C)||(l(C,n),S()?.querySelectorAll("[data-slide-name]")[C]?.click())};return e.forEach(o=>o.addEventListener("click",r,{capture:!0})),()=>{t.forEach(o=>o?.()),e.forEach(o=>o.removeEventListener("click",r,{capture:!0}))}},[c,l,S,n]),f(()=>{if(!n)return;const e=G.current;if(!e)return;const t=N(e),r=o=>{o.stopPropagation(),o.preventDefault();const a=u.current,k=a?.getAttribute("data-puck-component")||a?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||y.current;U(k)};return e.addEventListener("click",r,{capture:!0}),()=>{t?.(),e.removeEventListener("click",r,{capture:!0})}},[n,U,V,H.length]);const Re=p(e=>{if(!e)return;const t=N(e),r=o=>{o.stopPropagation(),o.preventDefault(),be(a=>!a)};return e.addEventListener("click",r,{capture:!0}),()=>{t?.(),e.removeEventListener("click",r,{capture:!0})}},[]);return s(He.Provider,{value:{alignment:w,textureOpacity:h,textureOn:oe,textureColor:ne,quietVideo:Ee,phoneUpDown:ce,phoneSideways:se},children:R("div",{ref:u,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${he} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:ve,onMouseEnter:()=>F(!0),onMouseLeave:()=>F(!1),onTouchStart:ge,onTouchMove:Se,onTouchEnd:_e,children:[s(O,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${d*100}%)`,transition:L?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),Q&&s("div",{ref:Re,"data-hero-video-control":g?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${Me} + 16px)`},children:R("button",{type:"button",className:Ke,children:[s("span",{"aria-hidden":"true",children:g?"❚❚":"▶"}),te(g?Fe:Ye)]})}),(A||J)&&R("div",{className:"pointer-events-none absolute inset-y-0 left-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] right-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] z-[6] mx-auto max-w-[var(--sf-hero-chrome-cap,calc(var(--sf-site-width,1600px)_-_var(--sf-site-gutter,40px)*2))]",children:[A&&s(Ae,{ref:z,slides:E,active:d,shape:De(ue),placement:de}),J&&s(Le,{ref:q,shape:pe,placement:fe})]}),A&&s("div",{ref:X,className:"sf-hero-phone-dots absolute bottom-[80px] left-1/2 z-[6] hidden -translate-x-1/2 items-center gap-2",children:E.map((e,t)=>s("button",{type:"button","data-idx":t,"aria-label":`Go to slide ${t+1}`,className:`h-2 rounded-full transition-all motion-reduce:transition-none ${t===d?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},t))}),V&&H.length>0&&R("div",{ref:G,className:`sf-hero-ticker absolute inset-x-0 bottom-0 z-[5] border-t border-overlay-chrome/10 py-3.5${n?" hero-ticker-pick":""}`,"data-selected":n&&K!=null&&ye===K?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[n&&s("style",{children:Be}),s(Te,{items:H,backdrop:"dark-media"})]})]})})}export{Je as DEFAULT_TICKER_ITEMS,I as HERO_SLIDER_GOTO_EVENT,Fe as HERO_VIDEO_HOLD_LABEL,Ye as HERO_VIDEO_PLAY_LABEL,We as default,Qe as subscribeSliderGoto};
11
+ `,Fe="Play video",Ke="Hold video",Ue="flex h-7 cursor-pointer items-center gap-1.5 rounded-full border border-overlay-chrome/25 bg-overlay-scrim/80 px-[11px] font-mono text-[11px] leading-none tracking-[0.05em] text-overlay-fg",Je=()=>te("item"),re=new Map;function Qe(O,w){const h=O?.ownerDocument?.defaultView;if(h)return h.addEventListener(I,w),()=>h.removeEventListener(I,w)}function We({slides:O,alignment:w,textureOpacity:h,showTexture:oe,textureColor:ne,phoneUpDown:ce,phoneSideways:se,autoplay:M,autoplayInterval:T,showTicker:ae,tickerItems:ie,heightDesktop:P,heightMobile:D,showPicker:le,pickerShape:ue,pickerPlacement:de,showArrows:me,arrowsShape:fe,arrowsPlacement:pe,editing:n}){const $=Ie(P,D),he=$?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",ve=$?{"--sf-hero-h-d":ee(P),"--sf-hero-h-m":ee(D)}:void 0,H=(ie??Be.map(e=>({text:e}))).map(e=>e?.text?.trim()?e.text:n?Je():"").filter(Boolean),V=ae!==!1,u=i(null),z=i(null),X=i(null),q=i(null),G=i(null),j=Oe(),y=i(j),[E,xe]=b([]),[ke,B]=b(0),v=i(0),[Y,F]=b(!1),[g,be]=b(!1),[K,we]=b(null),L=Ne(),{selectedHeroId:ye,select:U}=Ce(),S=f(()=>u.current?.querySelector(".hero-track")??null,[]),l=f((e,t=!1)=>{B(e),v.current=e,re.set(y.current,e);const r=u.current?.querySelector(".hero-track");if(r)if(t){const o=r.style.transition;r.style.transition="none",r.style.transform=`translateX(-${Math.max(0,e)*100}%)`,r.offsetHeight,r.style.transition=o}else r.style.transform=`translateX(-${Math.max(0,e)*100}%)`},[]);p(()=>{const e=u.current,t=e?.getAttribute("data-puck-component")||e?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||j;y.current=t,we(t);const r=re.get(t);typeof r=="number"&&(B(r),v.current=r)},[]),p(()=>{const e=S();if(!e)return;const t=()=>{xe(o=>Pe(o,e.querySelectorAll("[data-slide-name]")))};t();const r=new MutationObserver(t);return r.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-slide-name","data-slide-process","data-slide-media"]}),()=>{r.disconnect()}},[S]),p(()=>{if(!n)return;const e=t=>{const r=t.detail;if(!r||typeof r.index!="number")return;const o=u.current,a=o?.getAttribute("data-puck-component")||o?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||y.current;r.id&&r.id!==a||l(r.index,!0)};return Qe(u.current,e)},[n,l]);const c=E.length,d=Math.min(Math.max(ke,0),Math.max(0,c-1)),A=$e({shown:le,count:c}),J=Ve({shown:me,count:c}),Q=Ge({editing:n,shown:d,slides:E}),Ee=je({editing:n,playing:g,controlShown:Q}),_=Xe({count:c,editing:n}),m=i(null),x=i(null),ge=f(e=>{if(m.current=null,x.current=null,!_||e.touches.length!==1)return;const t=e.touches[0];m.current={x:t.clientX,y:t.clientY},x.current={x:t.clientX,y:t.clientY}},[_]),Se=f(e=>{if(!m.current)return;if(e.touches.length!==1){m.current=null;return}const t=e.touches[0];x.current={x:t.clientX,y:t.clientY}},[]),_e=f(()=>{const e=m.current,t=x.current;if(m.current=null,x.current=null,!_||!e||!t)return;const r=qe(t.x-e.x,t.y-e.y,v.current,c);r!==v.current&&l(r)},[_,c,l]);p(()=>{if(n||!M||Y||L||c<=1)return;const t=Math.max(1,typeof T=="number"?T:6)*1e3,r=window.setTimeout(()=>l((d+1)%c),t);return()=>window.clearTimeout(r)},[n,M,T,Y,L,c,d,l]),p(()=>{const e=[z.current,X.current,q.current].filter(Boolean),t=e.map(o=>N(o)),r=o=>{const a=o.target,k=a.closest("[data-hero-nav]"),W=k??a.closest("[data-idx]");if(!W)return;o.stopPropagation(),o.preventDefault();const C=k?ze(k.dataset.heroNav,v.current,c):Number(W.dataset.idx);Number.isNaN(C)||(l(C,n),S()?.querySelectorAll("[data-slide-name]")[C]?.click())};return e.forEach(o=>o.addEventListener("click",r,{capture:!0})),()=>{t.forEach(o=>o?.()),e.forEach(o=>o.removeEventListener("click",r,{capture:!0}))}},[c,l,S,n]),p(()=>{if(!n)return;const e=G.current;if(!e)return;const t=N(e),r=o=>{o.stopPropagation(),o.preventDefault();const a=u.current,k=a?.getAttribute("data-puck-component")||a?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||y.current;U(k)};return e.addEventListener("click",r,{capture:!0}),()=>{t?.(),e.removeEventListener("click",r,{capture:!0})}},[n,U,V,H.length]);const Re=f(e=>{if(!e)return;const t=N(e),r=o=>{o.stopPropagation(),o.preventDefault(),be(a=>!a)};return e.addEventListener("click",r,{capture:!0}),()=>{t?.(),e.removeEventListener("click",r,{capture:!0})}},[]);return s(He.Provider,{value:{alignment:w,textureOpacity:h,textureOn:oe,textureColor:ne,quietVideo:Ee,phoneUpDown:ce,phoneSideways:se},children:R("div",{ref:u,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${he} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:ve,onMouseEnter:()=>F(!0),onMouseLeave:()=>F(!1),onTouchStart:ge,onTouchMove:Se,onTouchEnd:_e,children:[s(O,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${d*100}%)`,transition:L?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),Q&&s("div",{ref:Re,"data-hero-video-control":g?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${Me} + 16px)`},children:R("button",{type:"button",className:Ue,children:[s("span",{"aria-hidden":"true",children:g?"❚❚":"▶"}),te(g?Ke:Fe)]})}),(A||J)&&R("div",{className:"pointer-events-none absolute inset-y-0 left-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] right-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] z-[6] mx-auto max-w-[var(--sf-hero-chrome-cap,calc(var(--sf-site-width,1600px)_-_var(--sf-site-gutter,40px)*2))]",children:[A&&s(Ae,{ref:z,slides:E,active:d,shape:De(ue),placement:de}),J&&s(Le,{ref:q,shape:fe,placement:pe})]}),A&&s("div",{ref:X,className:"sf-hero-phone-dots absolute bottom-[80px] left-1/2 z-[6] hidden -translate-x-1/2 items-center gap-2",children:E.map((e,t)=>s("button",{type:"button","data-idx":t,"aria-label":`Go to slide ${t+1}`,className:`h-2 rounded-full transition-all motion-reduce:transition-none ${t===d?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},t))}),V&&H.length>0&&R("div",{ref:G,className:`sf-hero-ticker absolute inset-x-0 bottom-0 z-[5] border-t border-overlay-chrome/10 py-3.5${n?" hero-ticker-pick":""}`,"data-selected":n&&K!=null&&ye===K?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[n&&s("style",{children:Ye}),s(Te,{items:H,backdrop:"dark-media"})]})]})})}export{I as HERO_SLIDER_GOTO_EVENT,Ke as HERO_VIDEO_HOLD_LABEL,Fe as HERO_VIDEO_PLAY_LABEL,We as default,Qe as subscribeSliderGoto};
@@ -7,22 +7,6 @@ export interface EventPost {
7
7
  dateLabel?: string;
8
8
  read?: string;
9
9
  }
10
- export type PostCardLayout = "card" | "cover";
11
- export declare const POST_CARD_LAYOUTS: readonly [{
12
- readonly label: "Card";
13
- readonly value: "card";
14
- }, {
15
- readonly label: "Photo behind the words";
16
- readonly value: "cover";
17
- }];
18
- export declare const POST_CARD_LAYOUT_FALLBACK: PostCardLayout;
19
- export declare const POST_CARD_HEIGHT: {
20
- readonly min: 200;
21
- readonly max: 700;
22
- readonly step: 10;
23
- readonly fallback: 330;
24
- readonly unit: "px";
25
- };
26
10
  export interface PostCardProps {
27
11
  post: EventPost;
28
12
  scaffold?: boolean;
@@ -1 +1 @@
1
- import{jsx as a,jsxs as n}from"react/jsx-runtime";import{SiteLink as c}from"../lib/site-runtime.js";import{boxDarkenStyle as N,boxPlacementClasses as S,CARD_SHADOW_CLASS as $}from"../../format/lib/content/box-background.js";import s from"./Placeholder.js";import{renderGold as l,renderHeadline as m}from"./goldPhrases.js";const r={body:"text-[length:var(--size-body,14px)]",headingSmall1:"text-[length:var(--size-headingSmall,22px)]",headingSmall2:"text-[length:var(--size-headingSmall,30px)]",label:"text-[length:var(--size-label,13px)]"},T=[{label:"Card",value:"card"},{label:"Photo behind the words",value:"cover"}],z="card",L={min:200,max:700,step:10,fallback:330,unit:"px"};function k({post:e,scaffold:i=!1,layout:o,showCover:h=!0,placement:g,darken:x,darkenStyle:b,href:f,minHeight:u}){const d=f||(i?"#":`/journal/${e.slug}`),v=o==="cover",p=(e.meta||e.dateLabel||e.read)&&n("div",{className:`flex gap-3.5 font-mono ${r.label} uppercase tracking-[0.18em] text-fg-dim`,children:[e.meta&&a("span",{className:"text-accent",children:l(e.meta)}),e.dateLabel&&a("span",{children:l(e.dateLabel)}),e.read&&a("span",{children:l(e.read)})]});if(v){const t=N(x,b);return n(c,{href:d,className:`${$} group relative isolate flex overflow-hidden`,style:{minHeight:`${u??L.fallback}px`},"aria-disabled":i||void 0,tabIndex:i?-1:void 0,children:[a("div",{className:"absolute inset-0",children:a(s,{label:`post-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 100vw, 56vw"})}),t&&a("div",{className:"absolute inset-0 z-0",style:t,"aria-hidden":!0}),n("div",{className:`relative z-[1] flex w-full flex-col gap-2 p-8 text-overlay-fg max-[800px]:p-5 ${S(g??"bottom-left","column")}`,children:[e.meta&&a("div",{className:`font-mono ${r.label} uppercase tracking-[0.18em] text-accent`,children:l(e.meta)}),a("h3",{className:`font-heading3 ${r.headingSmall2} font-medium leading-[1.2] tracking-[-0.02em]`,children:m(e.title,!1)}),e.excerpt&&a("p",{className:`max-w-[46ch] ${r.body} leading-[1.55] opacity-80`,children:l(e.excerpt)}),(e.dateLabel||e.read)&&n("div",{className:`flex gap-3.5 font-mono ${r.label} uppercase tracking-[0.18em] opacity-75`,children:[e.dateLabel&&a("span",{children:l(e.dateLabel)}),e.read&&a("span",{children:l(e.read)})]})]})]})}return n(c,{href:d,style:{"--card-bg":"var(--site-surface)","--card-bg-hover":"var(--site-surface-2)"},className:"sf-card sf-card-fill group block bg-[var(--card-bg)] transition-colors duration-300 hover:bg-[var(--card-bg-hover)]","aria-disabled":i||void 0,tabIndex:i?-1:void 0,children:[h&&a("div",{className:"sf-card-image relative aspect-[16/10] overflow-hidden bg-bg",children:a(s,{label:`event-${e.slug}`,src:e.cover||void 0})}),n("div",{className:"flex flex-col gap-2.5 px-7 pb-8 pt-6",children:[p,a("h3",{className:`mt-1 font-heading3 ${r.headingSmall1} font-medium leading-[1.2] tracking-[-0.02em]`,children:m(e.title,!1)}),e.excerpt&&a("p",{className:`${r.body} leading-[1.55] text-fg-dim`,children:l(e.excerpt)}),n("span",{className:`mt-1.5 inline-flex items-center gap-2 font-mono ${r.label} uppercase tracking-[0.2em] transition-colors group-hover:text-accent`,children:["Read more",a("span",{"aria-hidden":!0,children:"→"})]})]})]})}export{L as POST_CARD_HEIGHT,T as POST_CARD_LAYOUTS,z as POST_CARD_LAYOUT_FALLBACK,k as default};
1
+ import{jsx as a,jsxs as n}from"react/jsx-runtime";import{SiteLink as c}from"../lib/site-runtime.js";import{boxDarkenStyle as N,boxPlacementClasses as $,CARD_SHADOW_CLASS as S}from"../../format/lib/content/box-background.js";import{POST_CARD_HEIGHT as k}from"../../format/lib/post-card-layout.js";import s from"./Placeholder.js";import{renderGold as l,renderHeadline as m}from"./goldPhrases.js";const r={body:"text-[length:var(--size-body,14px)]",headingSmall1:"text-[length:var(--size-headingSmall,22px)]",headingSmall2:"text-[length:var(--size-headingSmall,30px)]",label:"text-[length:var(--size-label,13px)]"};function y({post:e,scaffold:i=!1,layout:o,showCover:h=!0,placement:g,darken:f,darkenStyle:x,href:b,minHeight:u}){const d=b||(i?"#":`/journal/${e.slug}`),v=o==="cover",p=(e.meta||e.dateLabel||e.read)&&n("div",{className:`flex gap-3.5 font-mono ${r.label} uppercase tracking-[0.18em] text-fg-dim`,children:[e.meta&&a("span",{className:"text-accent",children:l(e.meta)}),e.dateLabel&&a("span",{children:l(e.dateLabel)}),e.read&&a("span",{children:l(e.read)})]});if(v){const t=N(f,x);return n(c,{href:d,className:`${S} group relative isolate flex overflow-hidden`,style:{minHeight:`${u??k.fallback}px`},"aria-disabled":i||void 0,tabIndex:i?-1:void 0,children:[a("div",{className:"absolute inset-0",children:a(s,{label:`post-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 100vw, 56vw"})}),t&&a("div",{className:"absolute inset-0 z-0",style:t,"aria-hidden":!0}),n("div",{className:`relative z-[1] flex w-full flex-col gap-2 p-8 text-overlay-fg max-[800px]:p-5 ${$(g??"bottom-left","column")}`,children:[e.meta&&a("div",{className:`font-mono ${r.label} uppercase tracking-[0.18em] text-accent`,children:l(e.meta)}),a("h3",{className:`font-heading3 ${r.headingSmall2} font-medium leading-[1.2] tracking-[-0.02em]`,children:m(e.title,!1)}),e.excerpt&&a("p",{className:`max-w-[46ch] ${r.body} leading-[1.55] opacity-80`,children:l(e.excerpt)}),(e.dateLabel||e.read)&&n("div",{className:`flex gap-3.5 font-mono ${r.label} uppercase tracking-[0.18em] opacity-75`,children:[e.dateLabel&&a("span",{children:l(e.dateLabel)}),e.read&&a("span",{children:l(e.read)})]})]})]})}return n(c,{href:d,style:{"--card-bg":"var(--site-surface)","--card-bg-hover":"var(--site-surface-2)"},className:"sf-card sf-card-fill group block bg-[var(--card-bg)] transition-colors duration-300 hover:bg-[var(--card-bg-hover)]","aria-disabled":i||void 0,tabIndex:i?-1:void 0,children:[h&&a("div",{className:"sf-card-image relative aspect-[16/10] overflow-hidden bg-bg",children:a(s,{label:`event-${e.slug}`,src:e.cover||void 0})}),n("div",{className:"flex flex-col gap-2.5 px-7 pb-8 pt-6",children:[p,a("h3",{className:`mt-1 font-heading3 ${r.headingSmall1} font-medium leading-[1.2] tracking-[-0.02em]`,children:m(e.title,!1)}),e.excerpt&&a("p",{className:`${r.body} leading-[1.55] text-fg-dim`,children:l(e.excerpt)}),n("span",{className:`mt-1.5 inline-flex items-center gap-2 font-mono ${r.label} uppercase tracking-[0.2em] transition-colors group-hover:text-accent`,children:["Read more",a("span",{"aria-hidden":!0,children:"→"})]})]})]})}export{y as default};
@@ -1 +1 @@
1
- import{jsx as l}from"react/jsx-runtime";import s from"../../../../../components/Banner.js";import{phHide as r,ctaHide as p}from"../../scaffold.js";const B={label:"Banner",defaultProps:{eyebrow:"",title:"",body:"",imageSrc:"",ctaText:"",ctaHref:"",contained:!0,overlay:60},render:({eyebrow:n,title:a,body:i,imageSrc:d,ctaText:c,ctaHref:m,contained:f,overlay:t,puck:e})=>{const o=p(c,m,e);return l(s,{eyebrow:r(n,"Limited release",e),title:r(a,"Banner headline",e),body:r(i,"A line or two of supporting copy.",e),imageSrc:d,overlay:typeof t=="number"?t:60,ctaText:o.text,ctaHref:o.href,contained:f})}};export{B as BannerRender};
1
+ import{jsx as s}from"react/jsx-runtime";import c from"../../../../../components/Banner.js";import{phHide as r,ctaHide as x}from"../../scaffold.js";import{BannerMeta as l}from"../../../../../../format/lib/puck/blocks/general/Banner/meta.js";const H={...l,render:({eyebrow:n,title:i,body:a,imageSrc:m,ctaText:d,ctaHref:f,contained:p,overlay:t,puck:e})=>{const o=x(d,f,e);return s(c,{eyebrow:r(n,"Limited release",e),title:r(i,"Banner headline",e),body:r(a,"A line or two of supporting copy.",e),imageSrc:m,overlay:typeof t=="number"?t:60,ctaText:o.text,ctaHref:o.href,contained:p})}};export{H as BannerRender};
@@ -1,5 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const BREADCRUMB_PH: {
3
- meta: string;
4
- };
5
2
  export declare const BreadcrumbRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import a from"../../../../../components/Breadcrumb.js";import{phRows as i,phHide as s}from"../../scaffold.js";import{say as r}from"../../../../../../format/lib/editor-words.js";const d={meta:"Trailing note"},n=()=>[{label:r("Home"),href:"/"},{label:r("Section"),href:""}],p={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:t,meta:m,puck:e})=>o(a,{items:i(t,n(),e),meta:s(m,d.meta,e),editing:e?.isEditing})};export{d as BREADCRUMB_PH,p as BreadcrumbRender};
1
+ import{jsx as t}from"react/jsx-runtime";import i from"../../../../../components/Breadcrumb.js";import{phRows as a,phHide as d}from"../../scaffold.js";import{say as e}from"../../../../../../format/lib/editor-words.js";import{BreadcrumbMeta as s,BREADCRUMB_PH as f}from"../../../../../../format/lib/puck/blocks/general/Breadcrumb/meta.js";const b=()=>[{label:e("Home"),href:"/"},{label:e("Section"),href:""}],h={...s,render:({items:m,meta:o,puck:r})=>t(i,{items:a(m,b(),r),meta:d(o,f.meta,r),editing:r?.isEditing})};export{h as BreadcrumbRender};
@@ -1 +1 @@
1
- import{jsx as u}from"react/jsx-runtime";import d from"../../../../../components/ButtonBlock.js";import{CTA_PH as s}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phPrev as b}from"../../scaffold.js";const v={label:"Button",defaultProps:{label:"",href:"#",variant:"primary",align:"left",contained:!0},render:({label:o,href:t,variant:r,align:n,contained:e,arrow:i,icon:a,iconPosition:l,widthFit:m,buttonColor:f,buttonTextColor:p,puck:c})=>u(d,{label:b(o,s.text,c)??"",href:t,variant:r,align:n,contained:e,arrow:i,icon:a,iconPosition:l,widthFit:m,buttonColor:f,buttonTextColor:p})};export{v as ButtonBlockRender};
1
+ import{jsx as B}from"react/jsx-runtime";import s from"../../../../../components/ButtonBlock.js";import{CTA_PH as u}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phPrev as x}from"../../scaffold.js";import{ButtonBlockMeta as d}from"../../../../../../format/lib/puck/blocks/general/ButtonBlock/meta.js";const j={...d,render:({label:o,href:t,variant:r,align:n,contained:i,arrow:e,icon:m,iconPosition:a,widthFit:l,buttonColor:c,buttonTextColor:p,puck:f})=>B(s,{label:x(o,u.text,f)??"",href:t,variant:r,align:n,contained:i,arrow:e,icon:m,iconPosition:a,widthFit:l,buttonColor:c,buttonTextColor:p})};export{j as ButtonBlockRender};
@@ -1,7 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const CARDS_PH: {
3
- eyebrow: string;
4
- title: string;
5
- };
6
- export type CardStyle = "cards" | "label-only";
7
2
  export declare const CardsRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as n}from"react/jsx-runtime";import u from"../../../../../components/Cards.js";import b from"../../../../../components/KeyFeatures.js";import{hidableText as y}from"efficient-easel/draw";import{KEY_FEATURES_PH as d,keyFeaturesScaffoldItems as f}from"../KeyFeatures/render.js";import{parseSectionHeadPlacement as h}from"../../../../../../format/lib/sections/section-head-placement.js";import{parseSectionEyebrowLook as m}from"../../../../../../format/lib/sections/section-eyebrow-look.js";import{phRows as c,phHide as i}from"../../scaffold.js";import{say as t}from"../../../../../../format/lib/editor-words.js";const s={eyebrow:"Label",title:"Section *heading.*"},w=()=>[{title:t("Card title one"),body:t("A short line about this card.")},{title:t("Card title two"),body:t("A short line about this card.")},{title:t("Card title three"),body:t("A short line about this card.")}],F={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{const a=h(e.headPlacement)==="own-box",o=r=>a?void 0:r;if(e.cardStyle==="label-only"){const r=Array.isArray(e.items)?e.items.map(l=>({label:y(l.title)??"",href:typeof l.href=="string"?l.href:void 0})):[];return n(b,{look:m(e.eyebrowLook,"KeyFeatures"),eyebrow:o(i(e.eyebrow,d.eyebrow,e.puck)),title:o(i(e.title,d.title,e.puck)),items:c(r,f(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}return n(u,{look:m(e.eyebrowLook,"Cards"),eyebrow:o(i(e.eyebrow,s.eyebrow,e.puck)),title:o(i(e.title,s.title,e.puck)),omitHead:a,items:c(e.items,w(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};export{s as CARDS_PH,F as CardsRender};
1
+ import{jsx as d}from"react/jsx-runtime";import u from"../../../../../components/Cards.js";import f from"../../../../../components/KeyFeatures.js";import{hidableText as y}from"efficient-easel/draw";import{KEY_FEATURES_PH as m,keyFeaturesScaffoldItems as b}from"../../../../../../format/lib/puck/blocks/general/KeyFeatures/meta.js";import{parseSectionHeadPlacement as h}from"../../../../../../format/lib/sections/section-head-placement.js";import{parseSectionEyebrowLook as n}from"../../../../../../format/lib/sections/section-eyebrow-look.js";import{phRows as c,phHide as o}from"../../scaffold.js";import{say as t}from"../../../../../../format/lib/editor-words.js";import{CardsMeta as k,CARDS_PH as s}from"../../../../../../format/lib/puck/blocks/general/Cards/meta.js";const w=()=>[{title:t("Card title one"),body:t("A short line about this card.")},{title:t("Card title two"),body:t("A short line about this card.")},{title:t("Card title three"),body:t("A short line about this card.")}],_={...k,render:e=>{const l=h(e.headPlacement)==="own-box",i=r=>l?void 0:r;if(e.cardStyle==="label-only"){const r=Array.isArray(e.items)?e.items.map(a=>({label:y(a.title)??"",href:typeof a.href=="string"?a.href:void 0})):[];return d(f,{look:n(e.eyebrowLook,"KeyFeatures"),eyebrow:i(o(e.eyebrow,m.eyebrow,e.puck)),title:i(o(e.title,m.title,e.puck)),items:c(r,b(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}return d(u,{look:n(e.eyebrowLook,"Cards"),eyebrow:i(o(e.eyebrow,s.eyebrow,e.puck)),title:i(o(e.title,s.title,e.puck)),omitHead:l,items:c(e.items,w(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};export{_ as CardsRender};
@@ -1 +1 @@
1
- import{jsx as s}from"react/jsx-runtime";import i from"../../../../../components/CategoryBar.js";import{hidableText as b}from"efficient-easel/draw";import{PH as e}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phRows as c}from"../../scaffold.js";import{say as m}from"../../../../../../format/lib/editor-words.js";const f=()=>[{label:m("All")},{label:e.category},{label:e.category}],n=[{label:"Archive",href:"#sub-recent-issues"},{label:"RSS",href:"/contact"}],h={label:"Category bar",defaultProps:{tabs:[],activeTab:"All",links:n,sticky:!0},render:({tabs:t,activeTab:a,links:o,sticky:l,puck:r})=>s(i,{tabs:c(t,f(),r),activeTab:b(a),links:o,sticky:l,editing:r?.isEditing})};export{h as CategoryBarRender};
1
+ import{jsx as m}from"react/jsx-runtime";import s from"../../../../../components/CategoryBar.js";import{hidableText as l}from"efficient-easel/draw";import{PH as o}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phRows as f}from"../../scaffold.js";import{say as g}from"../../../../../../format/lib/editor-words.js";import{CategoryBarMeta as p}from"../../../../../../format/lib/puck/blocks/general/CategoryBar/meta.js";const y=()=>[{label:g("All")},{label:o.category},{label:o.category}],T={...p,render:({tabs:t,activeTab:a,links:e,sticky:i,puck:r})=>m(s,{tabs:f(t,y(),r),activeTab:l(a),links:e,sticky:i,editing:r?.isEditing})};export{T as CategoryBarRender};
@@ -1,6 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const CHART_PH: {
3
- eyebrow: string;
4
- title: string;
5
- };
6
2
  export declare const ChartRender: BlockRender;
@@ -1,2 +1 @@
1
- import{jsx as m}from"react/jsx-runtime";import d from"../../../../../components/ChartSection.js";import{phRows as y,phHide as o,hidableRow as t}from"../../scaffold.js";import{say as r}from"../../../../../../format/lib/editor-words.js";const a={eyebrow:"By the numbers",title:`A picture worth
2
- *a thousand rows.*`},p=()=>[{label:r("Before"),value:"9"},{label:r("After"),value:"3"},{label:r("With us"),value:"1"}],S={label:"Chart",defaultProps:{eyebrow:"",title:"",body:"",items:[],caption:"",chartStyle:"bars",valueSuffix:""},render:({eyebrow:i,title:l,body:s,items:b,caption:f,chartStyle:h,valueSuffix:n,puck:e})=>m(d,{eyebrow:o(i,a.eyebrow,e),title:o(l,a.title,e),body:t(s),items:y(b,p(),e),chartStyle:h,valueSuffix:t(n),caption:t(f),editing:e?.isEditing})};export{a as CHART_PH,S as ChartRender};
1
+ import{jsx as n}from"react/jsx-runtime";import b from"../../../../../components/ChartSection.js";import{phRows as p,phHide as o,hidableRow as t}from"../../scaffold.js";import{say as r}from"../../../../../../format/lib/editor-words.js";import{ChartMeta as y,CHART_PH as i}from"../../../../../../format/lib/puck/blocks/general/Chart/meta.js";const c=()=>[{label:r("Before"),value:"9"},{label:r("After"),value:"3"},{label:r("With us"),value:"1"}],S={...y,render:({eyebrow:a,title:l,body:m,items:f,caption:s,chartStyle:h,valueSuffix:d,puck:e})=>n(b,{eyebrow:o(a,i.eyebrow,e),title:o(l,i.title,e),body:t(m),items:p(f,c(),e),chartStyle:h,valueSuffix:t(d),caption:t(s),editing:e?.isEditing})};export{S as ChartRender};
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import l from"../../../../../components/ContactLocations.js";import{CONTACT_LOCATIONS_CARDS_PLACEHOLDER as n,CONTACT_LOCATIONS_DEFAULTS as i}from"../../../../../../format/lib/content/contact.js";import{phHideDefault as a}from"../../scaffold.js";const d={label:"Contact / Locations",defaultProps:{sectionNumber:i.sectionNumber,heading:i.heading,tagline:i.tagline,galleryKicker:i.galleryKicker,galleryHint:i.galleryHint,locations:n,mapTheme:i.mapTheme},render:e=>t(l,{sectionNumber:a(e.sectionNumber,i.sectionNumber,e.puck),heading:a(e.heading,i.heading,e.puck),tagline:a(e.tagline,i.tagline,e.puck),galleryKicker:a(e.galleryKicker,i.galleryKicker,e.puck),galleryHint:a(e.galleryHint,i.galleryHint,e.puck),locations:e.locations??n,mapTheme:e.mapTheme??i.mapTheme,imageShape:e.imageShape,editing:e.puck?.isEditing,nodeId:e.puck?.isEditing?e.id:void 0})};export{d as ContactLocationsRender};
1
+ import{jsx as a}from"react/jsx-runtime";import n from"../../../../../components/ContactLocations.js";import{CONTACT_LOCATIONS_CARDS_PLACEHOLDER as c,CONTACT_LOCATIONS_DEFAULTS as i}from"../../../../../../format/lib/content/contact.js";import{phHideDefault as t}from"../../scaffold.js";import{ContactLocationsMeta as m}from"../../../../../../format/lib/puck/blocks/general/ContactLocations/meta.js";const r={...m,render:e=>a(n,{sectionNumber:t(e.sectionNumber,i.sectionNumber,e.puck),heading:t(e.heading,i.heading,e.puck),tagline:t(e.tagline,i.tagline,e.puck),galleryKicker:t(e.galleryKicker,i.galleryKicker,e.puck),galleryHint:t(e.galleryHint,i.galleryHint,e.puck),locations:e.locations??c,mapTheme:e.mapTheme??i.mapTheme,imageShape:e.imageShape,editing:e.puck?.isEditing,nodeId:e.puck?.isEditing?e.id:void 0})};export{r as ContactLocationsRender};
@@ -1,6 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const COUNTDOWN_DEFAULTS: {
3
- title: string;
4
- zeroText: string;
5
- };
6
2
  export declare const CountdownRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import i from"../../../../../components/Countdown.js";const d={title:"Back online in",zeroText:"Almost done. Back very soon."},a={label:"Countdown",defaultProps:{...d,endsAt:"",showUnits:!0},render:({title:o,zeroText:t,endsAt:e,showUnits:n,puck:s})=>r(i,{title:o,zeroText:t,endsAt:e,showUnits:n,editing:s?.isEditing})};export{d as COUNTDOWN_DEFAULTS,a as CountdownRender};
1
+ import{jsx as i}from"react/jsx-runtime";import d from"../../../../../components/Countdown.js";import{CountdownMeta as s}from"../../../../../../format/lib/puck/blocks/general/Countdown/meta.js";const x={...s,render:({title:o,zeroText:t,endsAt:n,showUnits:e,puck:r})=>i(d,{title:o,zeroText:t,endsAt:n,showUnits:e,editing:r?.isEditing})};export{x as CountdownRender};
@@ -1,3 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{sanitizeHtml as o}from"../../../sanitize.js";const r={label:"Custom HTML",defaultProps:{html:`<section>
2
- <h2>Custom section</h2>
3
- </section>`},render:({html:t})=>e("div",{dangerouslySetInnerHTML:{__html:o(t??"")}})};export{r as CustomHTMLRender};
1
+ import{jsx as t}from"react/jsx-runtime";import{sanitizeHtml as o}from"../../../sanitize.js";import{CustomHTMLMeta as e}from"../../../../../../format/lib/puck/blocks/general/CustomHTML/meta.js";const i={...e,render:({html:r})=>t("div",{dangerouslySetInnerHTML:{__html:o(r??"")}})};export{i as CustomHTMLRender};
@@ -1 +1 @@
1
- import{jsx as s}from"react/jsx-runtime";import d from"../../../../../components/Divider.js";import{DEFAULT_DIVIDER_STYLE as a}from"../../../../../../format/lib/sections/divider-style.js";const p={label:"Divider",defaultProps:{style:a,spacing:"md",contained:!0},render:({spacing:e,contained:i,style:r,thickness:t,lengthPct:n,hideOnMobile:o})=>s(d,{spacing:e,contained:i,style:r,thickness:t,lengthPct:n,hideOnMobile:o===!0})};export{p as DividerRender};
1
+ import{jsx as s}from"react/jsx-runtime";import d from"../../../../../components/Divider.js";import{DividerMeta as m}from"../../../../../../format/lib/puck/blocks/general/Divider/meta.js";const f={...m,render:({spacing:e,contained:i,style:r,thickness:t,lengthPct:o,hideOnMobile:n})=>s(d,{spacing:e,contained:i,style:r,thickness:t,lengthPct:o,hideOnMobile:n===!0})};export{f as DividerRender};
@@ -1,5 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const DOC_BODY_PH: {
3
- readonly toc: "On this page";
4
- };
5
2
  export declare const DocBodyRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import i from"../../../../../components/DocBody.js";import{phRows as c,phHide as n}from"../../scaffold.js";import{say as e}from"../../../../../../format/lib/editor-words.js";const d={toc:"On this page"},s=()=>[{label:e("Section"),heading:e("Section heading *here.*"),body:e("Add this section's copy here. A blank line starts a new paragraph.")},{label:e("Section"),heading:e("Section heading *here.*"),body:e("Add this section's copy here.")}],m={label:"Document body",defaultProps:{tocTitle:"",sections:[]},render:o=>t(i,{tocTitle:n(o.tocTitle,d.toc,o.puck),sections:c(o.sections,s(),o.puck),editing:o.puck?.isEditing})};export{d as DOC_BODY_PH,m as DocBodyRender};
1
+ import{jsx as i}from"react/jsx-runtime";import t from"../../../../../components/DocBody.js";import{phRows as c,phHide as n}from"../../scaffold.js";import{say as e}from"../../../../../../format/lib/editor-words.js";import{DocBodyMeta as d,DOC_BODY_PH as r}from"../../../../../../format/lib/puck/blocks/general/DocBody/meta.js";const s=()=>[{label:e("Section"),heading:e("Section heading *here.*"),body:e("Add this section's copy here. A blank line starts a new paragraph.")},{label:e("Section"),heading:e("Section heading *here.*"),body:e("Add this section's copy here.")}],f={...d,render:o=>i(t,{tocTitle:n(o.tocTitle,r.toc,o.puck),sections:c(o.sections,s(),o.puck),editing:o.puck?.isEditing})};export{f as DocBodyRender};
@@ -1,7 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const DOC_MASTHEAD_PH: {
3
- readonly eyebrow: string;
4
- readonly title: string;
5
- readonly deck: "Add a sentence or two introducing this document.";
6
- };
7
2
  export declare const DocMastheadRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import d from"../../../../../components/DocMasthead.js";import{PH as l}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phRows as i,phHide as a}from"../../scaffold.js";import{say as t}from"../../../../../../format/lib/editor-words.js";const m=()=>[{label:t("Label"),value:t("Value")},{label:t("Label"),value:t("Value")}],c={eyebrow:l.eyebrow,title:l.headingAccent,deck:"Add a sentence or two introducing this document."},f={label:"Document masthead",defaultProps:{eyebrow:"",title:"",deck:"",meta:[]},render:e=>o(d,{titleLevel:e.titleLevel,eyebrow:a(e.eyebrow,c.eyebrow,e.puck),title:a(e.title,c.title,e.puck),deck:a(e.deck,c.deck,e.puck),meta:i(e.meta,m(),e.puck),editing:e.puck?.isEditing})};export{c as DOC_MASTHEAD_PH,f as DocMastheadRender};
1
+ import{jsx as i}from"react/jsx-runtime";import c from"../../../../../components/DocMasthead.js";import{phRows as d,phHide as a}from"../../scaffold.js";import{say as t}from"../../../../../../format/lib/editor-words.js";import{DocMastheadMeta as o,DOC_MASTHEAD_PH as l}from"../../../../../../format/lib/puck/blocks/general/DocMasthead/meta.js";const m=()=>[{label:t("Label"),value:t("Value")},{label:t("Label"),value:t("Value")}],M={...o,render:e=>i(c,{titleLevel:e.titleLevel,eyebrow:a(e.eyebrow,l.eyebrow,e.puck),title:a(e.title,l.title,e.puck),deck:a(e.deck,l.deck,e.puck),meta:d(e.meta,m(),e.puck),editing:e.puck?.isEditing})};export{M as DocMastheadRender};
@@ -1,4 +1,2 @@
1
- import { type DocMetaCard } from "../../../../../components/DocMetaCards.js";
2
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
3
- export declare const DOC_META_SCAFFOLD_CARDS: DocMetaCard[];
4
2
  export declare const DocMetaCardsRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as a}from"react/jsx-runtime";import r from"../../../../../components/DocMetaCards.js";import{phRows as t}from"../../scaffold.js";const o=[{label:"Label",value:"Value",desc:"Short description of this card."},{label:"Label",value:"Value",desc:"Short description of this card."},{label:"Label",value:"Value",desc:"Short description of this card."}],l={label:"Document Detail Cards",defaultProps:{cards:[]},render:e=>a(r,{cards:t(e.cards,o,e.puck),editing:e.puck?.isEditing})};export{o as DOC_META_SCAFFOLD_CARDS,l as DocMetaCardsRender};
1
+ import{jsx as o}from"react/jsx-runtime";import t from"../../../../../components/DocMetaCards.js";import{phRows as a}from"../../scaffold.js";import{DocMetaCardsMeta as e,DOC_META_SCAFFOLD_CARDS as d}from"../../../../../../format/lib/puck/blocks/general/DocMetaCards/meta.js";const C={...e,render:r=>o(t,{cards:a(r.cards,d,r.puck),editing:r.puck?.isEditing})};export{C as DocMetaCardsRender};
@@ -1,6 +1,2 @@
1
1
  import type { BlockRender } from "../../../../../../format/lib/puck/blocks/block-types.js";
2
- export declare const DOC_TABS_PH: {
3
- readonly metaLabel: string;
4
- readonly metaValue: string;
5
- };
6
2
  export declare const DocTabsRender: BlockRender;
@@ -1 +1 @@
1
- import{jsx as b}from"react/jsx-runtime";import r from"../../../../../components/DocTabs.js";import{PH as t}from"../../../../../../format/lib/puck/blocks/placeholders.js";import{phRows as o,phHide as l}from"../../scaffold.js";import{say as a}from"../../../../../../format/lib/editor-words.js";const u=()=>[{label:a("Tab"),href:"#",current:!0},{label:a("Tab"),href:"#",current:!1},{label:a("Tab"),href:"#",current:!1}],m={metaLabel:t.label,metaValue:t.value},d={label:"Document tabs",defaultProps:{tabs:[],metaLabel:"",metaValue:""},render:e=>b(r,{tabs:o(e.tabs,u(),e.puck),metaLabel:l(e.metaLabel,m.metaLabel,e.puck),metaValue:l(e.metaValue,m.metaValue,e.puck),editing:e.puck?.isEditing})};export{m as DOC_TABS_PH,d as DocTabsRender};
1
+ import{jsx as m}from"react/jsx-runtime";import b from"../../../../../components/DocTabs.js";import{phRows as l,phHide as t}from"../../scaffold.js";import{say as a}from"../../../../../../format/lib/editor-words.js";import{DocTabsMeta as c,DOC_TABS_PH as r}from"../../../../../../format/lib/puck/blocks/general/DocTabs/meta.js";const o=()=>[{label:a("Tab"),href:"#",current:!0},{label:a("Tab"),href:"#",current:!1},{label:a("Tab"),href:"#",current:!1}],T={...c,render:e=>m(b,{tabs:l(e.tabs,o(),e.puck),metaLabel:t(e.metaLabel,r.metaLabel,e.puck),metaValue:t(e.metaValue,r.metaValue,e.puck),editing:e.puck?.isEditing})};export{T as DocTabsRender};