@jxsuite/starters 3.4.0 → 3.6.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 (500) hide show
  1. package/package.json +5 -5
  2. package/sites/blog/components/bl-author-bio.jxn +64 -0
  3. package/sites/blog/components/bl-contact-form.jxn +77 -0
  4. package/sites/blog/components/bl-contact-info.jxn +32 -0
  5. package/sites/blog/components/bl-cta.jxn +52 -0
  6. package/sites/blog/components/bl-footer.jxn +85 -0
  7. package/sites/blog/components/bl-masthead.jxn +111 -0
  8. package/sites/blog/components/bl-nav.jxn +62 -0
  9. package/sites/blog/components/bl-newsletter-cta.jxn +104 -0
  10. package/sites/blog/components/bl-post-card.jxn +106 -0
  11. package/sites/blog/components/bl-post-list.jxn +11 -0
  12. package/sites/blog/components/bl-prose.jxn +67 -0
  13. package/sites/blog/components/bl-section-header.jxn +52 -0
  14. package/sites/blog/components/bl-tag-pill.jxn +19 -0
  15. package/sites/blog/document.schema.json +26 -2
  16. package/sites/blog/layouts/base.jxn +17 -0
  17. package/sites/blog/layouts/post.jxn +13 -0
  18. package/sites/blog/package.json +3 -3
  19. package/sites/blog/pages/[slug].jxn +107 -0
  20. package/sites/blog/project.jxn +1 -1
  21. package/sites/course/components/co-application.jxn +106 -0
  22. package/sites/course/components/co-cohort.jxn +132 -0
  23. package/sites/course/components/co-cta.jxn +95 -0
  24. package/sites/course/components/co-curriculum-accordion.jxn +917 -0
  25. package/sites/course/components/co-faq.jxn +348 -0
  26. package/sites/course/components/co-footer.jxn +138 -0
  27. package/sites/course/components/co-hero.jxn +354 -0
  28. package/sites/course/components/co-instructor-card.jxn +128 -0
  29. package/sites/course/components/co-mentor.jxn +51 -0
  30. package/sites/course/components/co-module-card.jxn +101 -0
  31. package/sites/course/components/co-nav.jxn +172 -0
  32. package/sites/course/components/co-outcome-card.jxn +57 -0
  33. package/sites/course/components/co-outcomes.jxn +179 -0
  34. package/sites/course/components/co-pricing.jxn +145 -0
  35. package/sites/course/components/co-section-header.jxn +55 -0
  36. package/sites/course/components/co-testimonial-card.jxn +69 -0
  37. package/sites/course/document.schema.json +26 -2
  38. package/sites/course/layouts/base.jxn +17 -0
  39. package/sites/course/package.json +3 -3
  40. package/sites/course/project.jxn +1 -1
  41. package/sites/event/components/ev-agenda-tabs.jxn +663 -0
  42. package/sites/event/components/ev-cta.jxn +93 -0
  43. package/sites/event/components/ev-feature.jxn +46 -0
  44. package/sites/event/components/ev-footer.jxn +135 -0
  45. package/sites/event/components/ev-hero.jxn +323 -0
  46. package/sites/event/components/ev-nav.jxn +142 -0
  47. package/sites/event/components/ev-reason.jxn +50 -0
  48. package/sites/event/components/ev-savedate.jxn +268 -0
  49. package/sites/event/components/ev-section-header.jxn +51 -0
  50. package/sites/event/components/ev-session-row.jxn +103 -0
  51. package/sites/event/components/ev-speaker-card.jxn +104 -0
  52. package/sites/event/components/ev-sponsors.jxn +110 -0
  53. package/sites/event/components/ev-stat.jxn +39 -0
  54. package/sites/event/components/ev-ticket-card.jxn +169 -0
  55. package/sites/event/components/ev-venue.jxn +61 -0
  56. package/sites/event/document.schema.json +26 -2
  57. package/sites/event/layouts/base.jxn +12 -0
  58. package/sites/event/package.json +3 -3
  59. package/sites/event/project.jxn +1 -1
  60. package/sites/fitness-studio/components/fs-band.jxn +119 -0
  61. package/sites/fitness-studio/components/fs-booking.jxn +92 -0
  62. package/sites/fitness-studio/components/fs-class-card.jxn +103 -0
  63. package/sites/fitness-studio/components/fs-class-grid.jxn +23 -0
  64. package/sites/fitness-studio/components/fs-cta.jxn +81 -0
  65. package/sites/fitness-studio/components/fs-feature.jxn +40 -0
  66. package/sites/fitness-studio/components/fs-footer.jxn +116 -0
  67. package/sites/fitness-studio/components/fs-hero.jxn +290 -0
  68. package/sites/fitness-studio/components/fs-hours.jxn +78 -0
  69. package/sites/fitness-studio/components/fs-instructor-card.jxn +104 -0
  70. package/sites/fitness-studio/components/fs-intro.jxn +231 -0
  71. package/sites/fitness-studio/components/fs-modality.jxn +133 -0
  72. package/sites/fitness-studio/components/fs-nav.jxn +95 -0
  73. package/sites/fitness-studio/components/fs-pricing-card.jxn +190 -0
  74. package/sites/fitness-studio/components/fs-pricing-table.jxn +322 -0
  75. package/sites/fitness-studio/components/fs-review.jxn +59 -0
  76. package/sites/fitness-studio/components/fs-schedule.jxn +714 -0
  77. package/sites/fitness-studio/components/fs-section-header.jxn +55 -0
  78. package/sites/fitness-studio/document.schema.json +26 -2
  79. package/sites/fitness-studio/layouts/base.jxn +17 -0
  80. package/sites/fitness-studio/package.json +3 -3
  81. package/sites/fitness-studio/project.jxn +1 -1
  82. package/sites/home-services/components/hs-callbar.jxn +60 -0
  83. package/sites/home-services/components/hs-cta.jxn +139 -0
  84. package/sites/home-services/components/hs-feature.jxn +43 -0
  85. package/sites/home-services/components/hs-footer.jxn +169 -0
  86. package/sites/home-services/components/hs-gallery.jxn +51 -0
  87. package/sites/home-services/components/hs-hero.jxn +308 -0
  88. package/sites/home-services/components/hs-intro.jxn +97 -0
  89. package/sites/home-services/components/hs-nav.jxn +207 -0
  90. package/sites/home-services/components/hs-reservation.jxn +125 -0
  91. package/sites/home-services/components/hs-review.jxn +84 -0
  92. package/sites/home-services/components/hs-section-header.jxn +56 -0
  93. package/sites/home-services/components/hs-service-card.jxn +68 -0
  94. package/sites/home-services/components/hs-stat.jxn +40 -0
  95. package/sites/home-services/components/hs-step.jxn +67 -0
  96. package/sites/home-services/components/hs-trust-bar.jxn +183 -0
  97. package/sites/home-services/document.schema.json +26 -2
  98. package/sites/home-services/layouts/base.jxn +22 -0
  99. package/sites/home-services/package.json +3 -3
  100. package/sites/home-services/project.jxn +1 -1
  101. package/sites/museum/components/mu-band.jxn +63 -0
  102. package/sites/museum/components/mu-cta.jxn +76 -0
  103. package/sites/museum/components/mu-exhibition-card.jxn +118 -0
  104. package/sites/museum/components/mu-exhibition-row.jxn +142 -0
  105. package/sites/museum/components/mu-fact.jxn +40 -0
  106. package/sites/museum/components/mu-footer.jxn +206 -0
  107. package/sites/museum/components/mu-hero.jxn +165 -0
  108. package/sites/museum/components/mu-more.jxn +30 -0
  109. package/sites/museum/components/mu-oculus.jxn +33 -0
  110. package/sites/museum/components/mu-pagehead.jxn +76 -0
  111. package/sites/museum/components/mu-quote.jxn +36 -0
  112. package/sites/museum/document.schema.json +26 -2
  113. package/sites/museum/layouts/ar.jxn +31 -0
  114. package/sites/museum/layouts/base.jxn +227 -0
  115. package/sites/museum/layouts/fr-ca.jxn +30 -0
  116. package/sites/museum/package.json +3 -3
  117. package/sites/museum/pages/about.jxn +228 -0
  118. package/sites/museum/pages/ar/about.jxn +232 -0
  119. package/sites/museum/pages/ar/exhibitions/[slug].jxn +150 -0
  120. package/sites/museum/pages/ar/exhibitions/index.jxn +82 -0
  121. package/sites/museum/pages/ar/index.jxn +206 -0
  122. package/sites/museum/pages/ar/visit.jxn +270 -0
  123. package/sites/museum/pages/exhibitions/[slug].jxn +146 -0
  124. package/sites/museum/pages/exhibitions/index.jxn +78 -0
  125. package/sites/museum/pages/fr-ca/a-propos.jxn +233 -0
  126. package/sites/museum/pages/fr-ca/expositions/[slug].jxn +151 -0
  127. package/sites/museum/pages/fr-ca/expositions/index.jxn +83 -0
  128. package/sites/museum/pages/fr-ca/index.jxn +206 -0
  129. package/sites/museum/pages/fr-ca/visite.jxn +271 -0
  130. package/sites/museum/pages/index.jxn +202 -0
  131. package/sites/museum/pages/visit.jxn +266 -0
  132. package/sites/museum/project.jxn +1 -1
  133. package/sites/nonprofit/components/np-contact-form.jxn +97 -0
  134. package/sites/nonprofit/components/np-contact-info.jxn +104 -0
  135. package/sites/nonprofit/components/np-cta.jxn +163 -0
  136. package/sites/nonprofit/components/np-donate-tier.jxn +103 -0
  137. package/sites/nonprofit/components/np-feature.jxn +46 -0
  138. package/sites/nonprofit/components/np-footer.jxn +194 -0
  139. package/sites/nonprofit/components/np-hero.jxn +275 -0
  140. package/sites/nonprofit/components/np-impact-band.jxn +83 -0
  141. package/sites/nonprofit/components/np-intro.jxn +130 -0
  142. package/sites/nonprofit/components/np-nav.jxn +157 -0
  143. package/sites/nonprofit/components/np-program-card.jxn +95 -0
  144. package/sites/nonprofit/components/np-section-header.jxn +63 -0
  145. package/sites/nonprofit/components/np-stat.jxn +51 -0
  146. package/sites/nonprofit/components/np-step.jxn +73 -0
  147. package/sites/nonprofit/components/np-team-member.jxn +60 -0
  148. package/sites/nonprofit/components/np-testimonial.jxn +120 -0
  149. package/sites/nonprofit/document.schema.json +26 -2
  150. package/sites/nonprofit/layouts/base.jxn +17 -0
  151. package/sites/nonprofit/package.json +3 -3
  152. package/sites/nonprofit/project.jxn +1 -1
  153. package/sites/portfolio/components/pv-about-split.jxn +53 -0
  154. package/sites/portfolio/components/pv-category-pill.jxn +19 -0
  155. package/sites/portfolio/components/pv-contact-form.jxn +72 -0
  156. package/sites/portfolio/components/pv-cta.jxn +62 -0
  157. package/sites/portfolio/components/pv-feature.jxn +28 -0
  158. package/sites/portfolio/components/pv-footer.jxn +113 -0
  159. package/sites/portfolio/components/pv-gallery.jxn +40 -0
  160. package/sites/portfolio/components/pv-hero.jxn +109 -0
  161. package/sites/portfolio/components/pv-nav.jxn +76 -0
  162. package/sites/portfolio/components/pv-project-card.jxn +118 -0
  163. package/sites/portfolio/components/pv-project-grid.jxn +29 -0
  164. package/sites/portfolio/components/pv-section-header.jxn +65 -0
  165. package/sites/portfolio/document.schema.json +26 -2
  166. package/sites/portfolio/layouts/base.jxn +12 -0
  167. package/sites/portfolio/package.json +3 -3
  168. package/sites/portfolio/pages/[slug].jxn +177 -0
  169. package/sites/portfolio/project.jxn +1 -1
  170. package/sites/professional-firm/components/pf-article-header.jxn +60 -0
  171. package/sites/professional-firm/components/pf-contact-form.jxn +74 -0
  172. package/sites/professional-firm/components/pf-contact-info.jxn +101 -0
  173. package/sites/professional-firm/components/pf-cta.jxn +63 -0
  174. package/sites/professional-firm/components/pf-feature.jxn +32 -0
  175. package/sites/professional-firm/components/pf-footer.jxn +171 -0
  176. package/sites/professional-firm/components/pf-hero.jxn +139 -0
  177. package/sites/professional-firm/components/pf-insight-row.jxn +111 -0
  178. package/sites/professional-firm/components/pf-intro.jxn +68 -0
  179. package/sites/professional-firm/components/pf-logo-bar.jxn +90 -0
  180. package/sites/professional-firm/components/pf-nav.jxn +93 -0
  181. package/sites/professional-firm/components/pf-section-header.jxn +53 -0
  182. package/sites/professional-firm/components/pf-service-row.jxn +67 -0
  183. package/sites/professional-firm/components/pf-statband.jxn +135 -0
  184. package/sites/professional-firm/components/pf-team-member.jxn +53 -0
  185. package/sites/professional-firm/document.schema.json +26 -2
  186. package/sites/professional-firm/layouts/article.jxn +88 -0
  187. package/sites/professional-firm/layouts/base.jxn +12 -0
  188. package/sites/professional-firm/package.json +3 -3
  189. package/sites/professional-firm/pages/insights/[slug].jxn +106 -0
  190. package/sites/professional-firm/project.jxn +1 -1
  191. package/sites/real-estate/components/re-agent-band.jxn +165 -0
  192. package/sites/real-estate/components/re-agent-card.jxn +78 -0
  193. package/sites/real-estate/components/re-contact-form.jxn +119 -0
  194. package/sites/real-estate/components/re-cta.jxn +98 -0
  195. package/sites/real-estate/components/re-detail-row.jxn +18 -0
  196. package/sites/real-estate/components/re-feature.jxn +41 -0
  197. package/sites/real-estate/components/re-footer.jxn +219 -0
  198. package/sites/real-estate/components/re-hero.jxn +367 -0
  199. package/sites/real-estate/components/re-intro.jxn +43 -0
  200. package/sites/real-estate/components/re-listing-card.jxn +210 -0
  201. package/sites/real-estate/components/re-listings-filter.jxn +371 -0
  202. package/sites/real-estate/components/re-nav.jxn +162 -0
  203. package/sites/real-estate/components/re-neighborhood.jxn +101 -0
  204. package/sites/real-estate/components/re-section-header.jxn +55 -0
  205. package/sites/real-estate/components/re-stat.jxn +26 -0
  206. package/sites/real-estate/components/re-step.jxn +42 -0
  207. package/sites/real-estate/components/re-testimonial.jxn +66 -0
  208. package/sites/real-estate/document.schema.json +26 -2
  209. package/sites/real-estate/layouts/base.jxn +17 -0
  210. package/sites/real-estate/package.json +3 -3
  211. package/sites/real-estate/pages/[slug].jxn +452 -0
  212. package/sites/real-estate/project.jxn +1 -1
  213. package/sites/restaurant/components/bit-cta.jxn +105 -0
  214. package/sites/restaurant/components/bit-feature.jxn +38 -0
  215. package/sites/restaurant/components/bit-footer.jxn +142 -0
  216. package/sites/restaurant/components/bit-gallery.jxn +50 -0
  217. package/sites/restaurant/components/bit-hero.jxn +194 -0
  218. package/sites/restaurant/components/bit-hours.jxn +145 -0
  219. package/sites/restaurant/components/bit-intro.jxn +75 -0
  220. package/sites/restaurant/components/bit-menu-group.jxn +51 -0
  221. package/sites/restaurant/components/bit-menu-item.jxn +50 -0
  222. package/sites/restaurant/components/bit-nav.jxn +145 -0
  223. package/sites/restaurant/components/bit-reservation.jxn +90 -0
  224. package/sites/restaurant/components/bit-review.jxn +54 -0
  225. package/sites/restaurant/components/bit-section-header.jxn +73 -0
  226. package/sites/restaurant/document.schema.json +26 -2
  227. package/sites/restaurant/layouts/base.jxn +17 -0
  228. package/sites/restaurant/package.json +3 -3
  229. package/sites/restaurant/project.jxn +1 -1
  230. package/sites/saas/components/sa-check-item.jxn +25 -0
  231. package/sites/saas/components/sa-contact-form.jxn +94 -0
  232. package/sites/saas/components/sa-cta.jxn +68 -0
  233. package/sites/saas/components/sa-faq.jxn +347 -0
  234. package/sites/saas/components/sa-feature-card.jxn +57 -0
  235. package/sites/saas/components/sa-feature-split.jxn +43 -0
  236. package/sites/saas/components/sa-footer.jxn +106 -0
  237. package/sites/saas/components/sa-hero.jxn +217 -0
  238. package/sites/saas/components/sa-logo-cloud.jxn +98 -0
  239. package/sites/saas/components/sa-nav.jxn +108 -0
  240. package/sites/saas/components/sa-pricing.jxn +317 -0
  241. package/sites/saas/components/sa-section-header.jxn +43 -0
  242. package/sites/saas/components/sa-stat.jxn +32 -0
  243. package/sites/saas/components/sa-testimonial-card.jxn +37 -0
  244. package/sites/saas/document.schema.json +26 -2
  245. package/sites/saas/layouts/base.jxn +17 -0
  246. package/sites/saas/package.json +3 -3
  247. package/sites/saas/project.jxn +1 -1
  248. package/sites/shop/components/shp-badge.jxn +17 -0
  249. package/sites/shop/components/shp-category-tile.jxn +79 -0
  250. package/sites/shop/components/shp-contact-form.jxn +84 -0
  251. package/sites/shop/components/shp-cta.jxn +85 -0
  252. package/sites/shop/components/shp-feature.jxn +44 -0
  253. package/sites/shop/components/shp-footer.jxn +311 -0
  254. package/sites/shop/components/shp-hero.jxn +311 -0
  255. package/sites/shop/components/shp-intro.jxn +42 -0
  256. package/sites/shop/components/shp-nav.jxn +273 -0
  257. package/sites/shop/components/shp-newsletter.jxn +119 -0
  258. package/sites/shop/components/shp-product-card.jxn +187 -0
  259. package/sites/shop/components/shp-product-filter.jxn +263 -0
  260. package/sites/shop/components/shp-review.jxn +38 -0
  261. package/sites/shop/components/shp-section-header.jxn +61 -0
  262. package/sites/shop/components/shp-service.jxn +58 -0
  263. package/sites/shop/components/shp-stat.jxn +27 -0
  264. package/sites/shop/components/shp-trust.jxn +39 -0
  265. package/sites/shop/components/shp-visit-info.jxn +82 -0
  266. package/sites/shop/document.schema.json +26 -2
  267. package/sites/shop/layouts/base.jxn +17 -0
  268. package/sites/shop/package.json +3 -3
  269. package/sites/shop/pages/products/[sku].jxn +351 -0
  270. package/sites/shop/project.jxn +1 -1
  271. package/sites/blog/components/bl-author-bio.json +0 -86
  272. package/sites/blog/components/bl-contact-form.json +0 -114
  273. package/sites/blog/components/bl-contact-info.json +0 -54
  274. package/sites/blog/components/bl-cta.json +0 -68
  275. package/sites/blog/components/bl-footer.json +0 -122
  276. package/sites/blog/components/bl-masthead.json +0 -134
  277. package/sites/blog/components/bl-nav.json +0 -90
  278. package/sites/blog/components/bl-newsletter-cta.json +0 -134
  279. package/sites/blog/components/bl-post-card.json +0 -132
  280. package/sites/blog/components/bl-post-list.json +0 -10
  281. package/sites/blog/components/bl-prose.json +0 -89
  282. package/sites/blog/components/bl-section-header.json +0 -70
  283. package/sites/blog/components/bl-tag-pill.json +0 -29
  284. package/sites/blog/layouts/base.json +0 -22
  285. package/sites/blog/layouts/post.json +0 -15
  286. package/sites/blog/pages/[slug].json +0 -148
  287. package/sites/course/components/co-application.json +0 -225
  288. package/sites/course/components/co-cohort.json +0 -172
  289. package/sites/course/components/co-cta.json +0 -126
  290. package/sites/course/components/co-curriculum-accordion.json +0 -1476
  291. package/sites/course/components/co-faq.json +0 -524
  292. package/sites/course/components/co-footer.json +0 -195
  293. package/sites/course/components/co-hero.json +0 -475
  294. package/sites/course/components/co-instructor-card.json +0 -159
  295. package/sites/course/components/co-mentor.json +0 -65
  296. package/sites/course/components/co-module-card.json +0 -138
  297. package/sites/course/components/co-nav.json +0 -244
  298. package/sites/course/components/co-outcome-card.json +0 -84
  299. package/sites/course/components/co-outcomes.json +0 -248
  300. package/sites/course/components/co-pricing.json +0 -178
  301. package/sites/course/components/co-section-header.json +0 -74
  302. package/sites/course/components/co-testimonial-card.json +0 -109
  303. package/sites/course/layouts/base.json +0 -22
  304. package/sites/event/components/ev-agenda-tabs.json +0 -828
  305. package/sites/event/components/ev-cta.json +0 -126
  306. package/sites/event/components/ev-feature.json +0 -62
  307. package/sites/event/components/ev-footer.json +0 -197
  308. package/sites/event/components/ev-hero.json +0 -431
  309. package/sites/event/components/ev-nav.json +0 -186
  310. package/sites/event/components/ev-reason.json +0 -64
  311. package/sites/event/components/ev-savedate.json +0 -331
  312. package/sites/event/components/ev-section-header.json +0 -70
  313. package/sites/event/components/ev-session-row.json +0 -132
  314. package/sites/event/components/ev-speaker-card.json +0 -130
  315. package/sites/event/components/ev-sponsors.json +0 -131
  316. package/sites/event/components/ev-stat.json +0 -47
  317. package/sites/event/components/ev-ticket-card.json +0 -214
  318. package/sites/event/components/ev-venue.json +0 -86
  319. package/sites/event/layouts/base.json +0 -22
  320. package/sites/fitness-studio/components/fs-band.json +0 -149
  321. package/sites/fitness-studio/components/fs-booking.json +0 -147
  322. package/sites/fitness-studio/components/fs-class-card.json +0 -143
  323. package/sites/fitness-studio/components/fs-class-grid.json +0 -36
  324. package/sites/fitness-studio/components/fs-cta.json +0 -106
  325. package/sites/fitness-studio/components/fs-feature.json +0 -56
  326. package/sites/fitness-studio/components/fs-footer.json +0 -178
  327. package/sites/fitness-studio/components/fs-hero.json +0 -375
  328. package/sites/fitness-studio/components/fs-hours.json +0 -109
  329. package/sites/fitness-studio/components/fs-instructor-card.json +0 -136
  330. package/sites/fitness-studio/components/fs-intro.json +0 -294
  331. package/sites/fitness-studio/components/fs-modality.json +0 -171
  332. package/sites/fitness-studio/components/fs-nav.json +0 -128
  333. package/sites/fitness-studio/components/fs-pricing-card.json +0 -243
  334. package/sites/fitness-studio/components/fs-pricing-table.json +0 -458
  335. package/sites/fitness-studio/components/fs-review.json +0 -88
  336. package/sites/fitness-studio/components/fs-schedule.json +0 -1165
  337. package/sites/fitness-studio/components/fs-section-header.json +0 -77
  338. package/sites/fitness-studio/layouts/base.json +0 -22
  339. package/sites/home-services/components/hs-callbar.json +0 -72
  340. package/sites/home-services/components/hs-cta.json +0 -184
  341. package/sites/home-services/components/hs-feature.json +0 -62
  342. package/sites/home-services/components/hs-footer.json +0 -232
  343. package/sites/home-services/components/hs-gallery.json +0 -104
  344. package/sites/home-services/components/hs-hero.json +0 -446
  345. package/sites/home-services/components/hs-intro.json +0 -122
  346. package/sites/home-services/components/hs-nav.json +0 -278
  347. package/sites/home-services/components/hs-reservation.json +0 -225
  348. package/sites/home-services/components/hs-review.json +0 -114
  349. package/sites/home-services/components/hs-section-header.json +0 -70
  350. package/sites/home-services/components/hs-service-card.json +0 -89
  351. package/sites/home-services/components/hs-stat.json +0 -54
  352. package/sites/home-services/components/hs-step.json +0 -80
  353. package/sites/home-services/components/hs-trust-bar.json +0 -256
  354. package/sites/home-services/layouts/base.json +0 -24
  355. package/sites/museum/components/mu-band.json +0 -92
  356. package/sites/museum/components/mu-cta.json +0 -101
  357. package/sites/museum/components/mu-exhibition-card.json +0 -191
  358. package/sites/museum/components/mu-exhibition-row.json +0 -237
  359. package/sites/museum/components/mu-fact.json +0 -64
  360. package/sites/museum/components/mu-footer.json +0 -256
  361. package/sites/museum/components/mu-hero.json +0 -236
  362. package/sites/museum/components/mu-more.json +0 -63
  363. package/sites/museum/components/mu-oculus.json +0 -44
  364. package/sites/museum/components/mu-pagehead.json +0 -105
  365. package/sites/museum/components/mu-quote.json +0 -49
  366. package/sites/museum/layouts/ar.json +0 -29
  367. package/sites/museum/layouts/base.json +0 -329
  368. package/sites/museum/layouts/fr-ca.json +0 -28
  369. package/sites/museum/pages/about.json +0 -378
  370. package/sites/museum/pages/ar/about.json +0 -314
  371. package/sites/museum/pages/ar/exhibitions/[slug].json +0 -211
  372. package/sites/museum/pages/ar/exhibitions/index.json +0 -103
  373. package/sites/museum/pages/ar/index.json +0 -246
  374. package/sites/museum/pages/ar/visit.json +0 -327
  375. package/sites/museum/pages/exhibitions/[slug].json +0 -200
  376. package/sites/museum/pages/exhibitions/index.json +0 -93
  377. package/sites/museum/pages/fr-ca/a-propos.json +0 -313
  378. package/sites/museum/pages/fr-ca/expositions/[slug].json +0 -215
  379. package/sites/museum/pages/fr-ca/expositions/index.json +0 -104
  380. package/sites/museum/pages/fr-ca/index.json +0 -246
  381. package/sites/museum/pages/fr-ca/visite.json +0 -328
  382. package/sites/museum/pages/index.json +0 -236
  383. package/sites/museum/pages/visit.json +0 -317
  384. package/sites/nonprofit/components/np-contact-form.json +0 -162
  385. package/sites/nonprofit/components/np-contact-info.json +0 -159
  386. package/sites/nonprofit/components/np-cta.json +0 -203
  387. package/sites/nonprofit/components/np-donate-tier.json +0 -116
  388. package/sites/nonprofit/components/np-feature.json +0 -57
  389. package/sites/nonprofit/components/np-footer.json +0 -257
  390. package/sites/nonprofit/components/np-hero.json +0 -360
  391. package/sites/nonprofit/components/np-impact-band.json +0 -108
  392. package/sites/nonprofit/components/np-intro.json +0 -166
  393. package/sites/nonprofit/components/np-nav.json +0 -216
  394. package/sites/nonprofit/components/np-program-card.json +0 -129
  395. package/sites/nonprofit/components/np-section-header.json +0 -79
  396. package/sites/nonprofit/components/np-stat.json +0 -69
  397. package/sites/nonprofit/components/np-step.json +0 -84
  398. package/sites/nonprofit/components/np-team-member.json +0 -74
  399. package/sites/nonprofit/components/np-testimonial.json +0 -169
  400. package/sites/nonprofit/layouts/base.json +0 -22
  401. package/sites/portfolio/components/pv-about-split.json +0 -71
  402. package/sites/portfolio/components/pv-category-pill.json +0 -25
  403. package/sites/portfolio/components/pv-contact-form.json +0 -126
  404. package/sites/portfolio/components/pv-cta.json +0 -80
  405. package/sites/portfolio/components/pv-feature.json +0 -48
  406. package/sites/portfolio/components/pv-footer.json +0 -167
  407. package/sites/portfolio/components/pv-gallery.json +0 -50
  408. package/sites/portfolio/components/pv-hero.json +0 -139
  409. package/sites/portfolio/components/pv-nav.json +0 -100
  410. package/sites/portfolio/components/pv-project-card.json +0 -160
  411. package/sites/portfolio/components/pv-project-grid.json +0 -30
  412. package/sites/portfolio/components/pv-section-header.json +0 -90
  413. package/sites/portfolio/layouts/base.json +0 -22
  414. package/sites/portfolio/pages/[slug].json +0 -260
  415. package/sites/professional-firm/components/pf-article-header.json +0 -93
  416. package/sites/professional-firm/components/pf-contact-form.json +0 -146
  417. package/sites/professional-firm/components/pf-contact-info.json +0 -147
  418. package/sites/professional-firm/components/pf-cta.json +0 -86
  419. package/sites/professional-firm/components/pf-feature.json +0 -52
  420. package/sites/professional-firm/components/pf-footer.json +0 -231
  421. package/sites/professional-firm/components/pf-hero.json +0 -174
  422. package/sites/professional-firm/components/pf-insight-row.json +0 -144
  423. package/sites/professional-firm/components/pf-intro.json +0 -93
  424. package/sites/professional-firm/components/pf-logo-bar.json +0 -113
  425. package/sites/professional-firm/components/pf-nav.json +0 -135
  426. package/sites/professional-firm/components/pf-section-header.json +0 -77
  427. package/sites/professional-firm/components/pf-service-row.json +0 -104
  428. package/sites/professional-firm/components/pf-statband.json +0 -183
  429. package/sites/professional-firm/components/pf-team-member.json +0 -75
  430. package/sites/professional-firm/layouts/article.json +0 -130
  431. package/sites/professional-firm/layouts/base.json +0 -22
  432. package/sites/professional-firm/pages/insights/[slug].json +0 -129
  433. package/sites/real-estate/components/re-agent-band.json +0 -240
  434. package/sites/real-estate/components/re-agent-card.json +0 -93
  435. package/sites/real-estate/components/re-contact-form.json +0 -181
  436. package/sites/real-estate/components/re-cta.json +0 -128
  437. package/sites/real-estate/components/re-detail-row.json +0 -26
  438. package/sites/real-estate/components/re-feature.json +0 -57
  439. package/sites/real-estate/components/re-footer.json +0 -291
  440. package/sites/real-estate/components/re-hero.json +0 -536
  441. package/sites/real-estate/components/re-intro.json +0 -60
  442. package/sites/real-estate/components/re-listing-card.json +0 -286
  443. package/sites/real-estate/components/re-listings-filter.json +0 -454
  444. package/sites/real-estate/components/re-nav.json +0 -216
  445. package/sites/real-estate/components/re-neighborhood.json +0 -135
  446. package/sites/real-estate/components/re-section-header.json +0 -69
  447. package/sites/real-estate/components/re-stat.json +0 -37
  448. package/sites/real-estate/components/re-step.json +0 -58
  449. package/sites/real-estate/components/re-testimonial.json +0 -91
  450. package/sites/real-estate/layouts/base.json +0 -22
  451. package/sites/real-estate/pages/[slug].json +0 -629
  452. package/sites/restaurant/components/bit-cta.json +0 -140
  453. package/sites/restaurant/components/bit-feature.json +0 -61
  454. package/sites/restaurant/components/bit-footer.json +0 -191
  455. package/sites/restaurant/components/bit-gallery.json +0 -74
  456. package/sites/restaurant/components/bit-hero.json +0 -253
  457. package/sites/restaurant/components/bit-hours.json +0 -183
  458. package/sites/restaurant/components/bit-intro.json +0 -96
  459. package/sites/restaurant/components/bit-menu-group.json +0 -74
  460. package/sites/restaurant/components/bit-menu-item.json +0 -72
  461. package/sites/restaurant/components/bit-nav.json +0 -214
  462. package/sites/restaurant/components/bit-reservation.json +0 -155
  463. package/sites/restaurant/components/bit-review.json +0 -84
  464. package/sites/restaurant/components/bit-section-header.json +0 -98
  465. package/sites/restaurant/layouts/base.json +0 -22
  466. package/sites/saas/components/sa-check-item.json +0 -40
  467. package/sites/saas/components/sa-contact-form.json +0 -153
  468. package/sites/saas/components/sa-cta.json +0 -102
  469. package/sites/saas/components/sa-faq.json +0 -413
  470. package/sites/saas/components/sa-feature-card.json +0 -69
  471. package/sites/saas/components/sa-feature-split.json +0 -60
  472. package/sites/saas/components/sa-footer.json +0 -145
  473. package/sites/saas/components/sa-hero.json +0 -277
  474. package/sites/saas/components/sa-logo-cloud.json +0 -119
  475. package/sites/saas/components/sa-nav.json +0 -138
  476. package/sites/saas/components/sa-pricing.json +0 -428
  477. package/sites/saas/components/sa-section-header.json +0 -55
  478. package/sites/saas/components/sa-stat.json +0 -44
  479. package/sites/saas/components/sa-testimonial-card.json +0 -57
  480. package/sites/saas/layouts/base.json +0 -22
  481. package/sites/shop/components/shp-badge.json +0 -18
  482. package/sites/shop/components/shp-category-tile.json +0 -104
  483. package/sites/shop/components/shp-contact-form.json +0 -156
  484. package/sites/shop/components/shp-cta.json +0 -121
  485. package/sites/shop/components/shp-feature.json +0 -60
  486. package/sites/shop/components/shp-footer.json +0 -411
  487. package/sites/shop/components/shp-hero.json +0 -395
  488. package/sites/shop/components/shp-intro.json +0 -59
  489. package/sites/shop/components/shp-nav.json +0 -358
  490. package/sites/shop/components/shp-newsletter.json +0 -166
  491. package/sites/shop/components/shp-product-card.json +0 -238
  492. package/sites/shop/components/shp-product-filter.json +0 -366
  493. package/sites/shop/components/shp-review.json +0 -54
  494. package/sites/shop/components/shp-section-header.json +0 -75
  495. package/sites/shop/components/shp-service.json +0 -83
  496. package/sites/shop/components/shp-stat.json +0 -37
  497. package/sites/shop/components/shp-trust.json +0 -58
  498. package/sites/shop/components/shp-visit-info.json +0 -132
  499. package/sites/shop/layouts/base.json +0 -22
  500. package/sites/shop/pages/products/[sku].json +0 -482
@@ -0,0 +1,233 @@
1
+ /- kdl-version 2
2
+ $layout "./layouts/fr-ca.jxn"
3
+ $translationKey about
4
+ $head {
5
+ meta name=description content="Atrium est le musée d'art et d'histoire de la ville : une halle de verre posée sur l'ancienne douane, à entrée libre, tenue par la ville et ses lecteurs depuis 1897."
6
+ }
7
+
8
+ $element .title="À propos du musée — Atrium" .description="Atrium est le musée d'art et d'histoire de la ville : une halle de verre posée sur l'ancienne douane, à entrée libre, tenue par la ville et ses lecteurs depuis 1897." {
9
+ state {
10
+ catalogued {
11
+ $expression {
12
+ operator call
13
+ target (ref)"window#/Intl/formatNumber"
14
+ value {
15
+ - 0.94
16
+ - #null
17
+ - style=percent
18
+ }
19
+ }
20
+ }
21
+ archive {
22
+ $expression {
23
+ operator call
24
+ target (ref)"window#/Intl/formatNumber"
25
+ value {
26
+ - 1240
27
+ - #null
28
+ - style=unit unit=meter unitDisplay=long
29
+ }
30
+ }
31
+ }
32
+ staff {
33
+ $expression {
34
+ operator call
35
+ target (ref)"window#/Intl/formatNumber"
36
+ value {
37
+ - 61
38
+ }
39
+ }
40
+ }
41
+ languages {
42
+ $expression {
43
+ operator call
44
+ target (ref)"window#/Intl/formatList"
45
+ value {
46
+ - anglais français arabe
47
+ }
48
+ }
49
+ }
50
+ }
51
+ mu-pagehead {
52
+ $props {
53
+ kicker "À propos"
54
+ title "Un musée qui se contredit lui-même"
55
+ standfirst "Atrium a été fondé par 240 ménages qui ont chacun donné ce qu'ils pouvaient et exigé, par écrit, que l'entrée reste gratuite. Elle l'est restée pendant cent vingt-neuf ans, à travers deux reconstructions et un incendie."
56
+ metaLabel "Salle de lecture"
57
+ metaValue "Deuxième étage, sans rendez-vous"
58
+ }
59
+ }
60
+ mu-band {
61
+ $props index="01" label="Le bâtiment" tone=chalk
62
+ div {
63
+ style {
64
+ display grid
65
+ gridTemplateColumns "minmax(0, 1.4fr) minmax(0, 0.8fr)"
66
+ columnGap "clamp(2rem, 5vw, 4rem)"
67
+ rowGap "1.25rem"
68
+ @--md gridTemplateColumns="minmax(0, 1fr)"
69
+ alignItems start
70
+ }
71
+ div {
72
+ style maxWidth="var(--measure)"
73
+ p "Le musée a commencé dans une pièce au-dessus de la douane, qu'il a débordée en dix-neuf ans. La halle de verre qui l'a remplacée en 1916 a été bâtie par-dessus la douane plutôt qu'à sa place : les vieux murs de pierre tiennent toujours debout à l'intérieur, sans plus rien porter, et la visite commence en passant entre eux." {
74
+ style margin="0" lineHeight="1.75"
75
+ }
76
+ p "Le toit est la raison pour laquelle on photographie le bâtiment et celle pour laquelle les restauratrices le détestent. Chaque objet du rez-de-chaussée est placé selon la lumière qu'il peut encaisser, ce qui explique que le cabinet de cartes occupe le coin le plus sombre et que la poêle à sel reste dehors, sous la pluie." {
77
+ style margin="1.1rem 0 0" lineHeight="1.75"
78
+ }
79
+ p "Rien ici n'est une copie. Là où le musée présente une reproduction — trois des cartes sont trop fragiles pour être accrochées — le cartel le dit dès la première ligne, dans le même corps que le titre." {
80
+ style margin="1.1rem 0 0" lineHeight="1.75"
81
+ }
82
+ p "Là où le musée ignore quelque chose, le cartel le dit aussi. Environ un objet sur neuf n'a pas d'auteur attribué, et le catalogue consigne le trou plutôt qu'une supposition." {
83
+ style margin="1.1rem 0 0" lineHeight="1.75"
84
+ }
85
+ }
86
+ mu-oculus {
87
+ $props size="20rem" tone=card
88
+ }
89
+ }
90
+ }
91
+ mu-band {
92
+ $props index="02" label="Ce que nous conservons" tone=card
93
+ div {
94
+ style {
95
+ display grid
96
+ gridTemplateColumns "repeat(2, minmax(0, 1fr))"
97
+ columnGap "clamp(2rem, 5vw, 4rem)"
98
+ @--md gridTemplateColumns="minmax(0, 1fr)"
99
+ }
100
+ div {
101
+ mu-fact {
102
+ $props {
103
+ term Catalogué
104
+ value "${state.catalogued}"
105
+ note "De tout ce qui est inscrit à l'inventaire. Le reste est surtout le legs d'atelier de 2019."
106
+ }
107
+ }
108
+ mu-fact {
109
+ $props {
110
+ term Archives
111
+ value "${state.archive}"
112
+ note "De papier sur rayons : registres, carnets d'arpentage et correspondance d'atelier."
113
+ }
114
+ }
115
+ }
116
+ div {
117
+ mu-fact {
118
+ $props {
119
+ term Personnel
120
+ value "${state.staff}"
121
+ note "Conservation, restauration, accueil, et les deux personnes qui gardent le toit propre."
122
+ }
123
+ }
124
+ mu-fact {
125
+ $props {
126
+ term "Cartels en"
127
+ value "${state.languages}"
128
+ note "Chaque cartel, dans chaque salle, sans version abrégée pour aucune des trois."
129
+ }
130
+ }
131
+ }
132
+ }
133
+ }
134
+ mu-band {
135
+ $props index="03" label="Trois langues" tone=chalk
136
+ div {
137
+ style {
138
+ display grid
139
+ gridTemplateColumns "minmax(0, 1fr) minmax(0, 0.85fr)"
140
+ columnGap "clamp(2rem, 5vw, 4rem)"
141
+ alignItems start
142
+ @--md gridTemplateColumns="minmax(0, 1fr)" rowGap="2rem"
143
+ }
144
+ div {
145
+ style maxWidth="var(--measure)"
146
+ p "Un tiers de cette ville lit le français à la maison et une part grandissante lit l'arabe : le musée est donc écrit trois fois plutôt qu'une seule avec des traductions greffées par-dessus. Chaque langue a ses pages, ses textes de salle et sa lecture de la collection — le parcours arabe de la salle 2 n'est pas le parcours anglais inversé, c'est une autre thèse, signée par une autre conservatrice." {
147
+ style margin="0" lineHeight="1.75"
148
+ }
149
+ p "Chaque page porte le même sélecteur, et il ne liste que les langues dans lesquelles cette page existe vraiment. Si une langue manque au sélecteur, c'est que la page n'y a pas encore été écrite — un engagement que nous préférons montrer plutôt que cacher." {
150
+ style margin="1.1rem 0 0" lineHeight="1.75"
151
+ }
152
+ }
153
+ div {
154
+ style {
155
+ border "2px solid var(--color-ink)"
156
+ backgroundColor "var(--color-card)"
157
+ padding "clamp(1.25rem, 3vw, 1.9rem)"
158
+ }
159
+ p "Cette page, dans toutes les langues où elle existe" {
160
+ style {
161
+ margin "0 0 1.1rem"
162
+ fontFamily "var(--font-label)"
163
+ fontSize "0.66rem"
164
+ letterSpacing "var(--label-tracking)"
165
+ textTransform "var(--label-case)"
166
+ color "var(--color-muted)"
167
+ }
168
+ }
169
+ ul {
170
+ style listStyle=none margin="0" padding="0" display=grid gap="0.55rem"
171
+ .children {
172
+ $array items=(ref)"#/state/$page/alternates" {
173
+ li {
174
+ a .lang="${item.code}" dir="${item.dir}" href="${item.url}" hreflang="${item.code}" aria-current="${item.current ? 'page' : 'false'}" {
175
+ style {
176
+ display flex
177
+ alignItems baseline
178
+ gap "0.7rem"
179
+ textDecoration none
180
+ paddingBlock "0.35rem"
181
+ borderBlockEnd "1px solid var(--color-hairline)"
182
+ color "${item.current ? 'var(--color-muted)' : 'var(--color-pigment)'}"
183
+ :hover color="var(--color-ink)"
184
+ }
185
+ span "${item.code}" {
186
+ style {
187
+ fontFamily "var(--font-label)"
188
+ fontSize "0.64rem"
189
+ letterSpacing "var(--label-tracking)"
190
+ textTransform "var(--label-case)"
191
+ opacity "0.7"
192
+ }
193
+ }
194
+ span "${item.label}" {
195
+ style fontSize="1.02rem"
196
+ }
197
+ span "Vous êtes ici" {
198
+ style {
199
+ marginInlineStart auto
200
+ fontFamily "var(--font-label)"
201
+ fontSize "0.62rem"
202
+ letterSpacing "var(--label-tracking)"
203
+ textTransform "var(--label-case)"
204
+ display "${item.current ? 'inline' : 'none'}"
205
+ }
206
+ }
207
+ }
208
+ }
209
+ }
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
215
+ mu-band {
216
+ $props index="04" label="Dans les mots des fondateurs" tone=ink
217
+ mu-quote {
218
+ $props {
219
+ quote "Que l'entrée soit libre, ou que ce musée soit autre chose que le nôtre."
220
+ attribution "Livre des procès-verbaux de la souscription, 4 novembre 1897"
221
+ }
222
+ }
223
+ }
224
+ mu-cta {
225
+ $props {
226
+ kicker Entrez
227
+ heading "La salle de lecture est ouverte à quiconque a une question."
228
+ text "Deuxième étage, au-dessus du cabinet de cartes. Sans rendez-vous pour lire ; demandez au comptoir pour manipuler."
229
+ label "Préparer sa visite"
230
+ href "/fr-ca/visite/"
231
+ }
232
+ }
233
+ }
@@ -0,0 +1,151 @@
1
+ /- kdl-version 2
2
+ $translationKey "exhibitions/${slug}"
3
+ $layout "./layouts/fr-ca.jxn"
4
+ $paths contentType=exhibitions param=slug field=id
5
+ $head {
6
+ meta name=description content="${state.entry.data.description}"
7
+ }
8
+
9
+ $element .title="${state.entry.data.title} — Atrium" .description="${state.entry.data.description}" {
10
+ state {
11
+ entry {
12
+ $prototype ContentEntry
13
+ $src "@jxsuite/parser/ContentEntry.class.json"
14
+ contentType exhibitions
15
+ field id
16
+ id (ref)"#/$params/slug"
17
+ }
18
+ opens {
19
+ $expression {
20
+ operator call
21
+ target (ref)"window#/Intl/formatDate"
22
+ value {
23
+ - (ref)"#/state/entry/data/date"
24
+ - #null
25
+ - day=numeric month=long year=numeric
26
+ }
27
+ }
28
+ }
29
+ closes {
30
+ $expression {
31
+ operator call
32
+ target (ref)"window#/Intl/formatDate"
33
+ value {
34
+ - (ref)"#/state/entry/data/until"
35
+ - #null
36
+ - day=numeric month=long year=numeric
37
+ }
38
+ }
39
+ }
40
+ works {
41
+ $expression {
42
+ operator call
43
+ target (ref)"window#/Intl/formatNumber"
44
+ value {
45
+ - (ref)"#/state/entry/data/works"
46
+ }
47
+ }
48
+ }
49
+ }
50
+ article {
51
+ mu-pagehead {
52
+ $props {
53
+ kicker "${state.entry.data.gallery}"
54
+ title "${state.entry.data.title}"
55
+ standfirst "${state.entry.data.description}"
56
+ metaLabel Commissariat
57
+ metaValue "${state.entry.data.curator}"
58
+ }
59
+ }
60
+ mu-band {
61
+ $props index="01" label=L'exposition tone=chalk
62
+ div {
63
+ style {
64
+ display grid
65
+ gridTemplateColumns "minmax(0, 1.35fr) minmax(0, 0.75fr)"
66
+ columnGap "clamp(2rem, 5vw, 4rem)"
67
+ alignItems start
68
+ @--md gridTemplateColumns="minmax(0, 1fr)" rowGap="2.5rem"
69
+ }
70
+ div {
71
+ style maxWidth="var(--measure)" fontSize="1.08rem" lineHeight="1.8"
72
+ .children {
73
+ $array items=(ref)"#/state/entry/$children" {
74
+ p "${item.textContent}" {
75
+ style margin="0 0 1.35rem"
76
+ }
77
+ }
78
+ }
79
+ }
80
+ aside {
81
+ style {
82
+ border "2px solid var(--color-ink)"
83
+ backgroundColor "var(--color-card)"
84
+ padding "clamp(1.1rem, 2.5vw, 1.6rem)"
85
+ }
86
+ p Cartel {
87
+ style {
88
+ margin "0 0 0.5rem"
89
+ fontFamily "var(--font-label)"
90
+ fontSize "0.64rem"
91
+ letterSpacing "var(--label-tracking)"
92
+ textTransform "var(--label-case)"
93
+ color "var(--color-muted)"
94
+ }
95
+ }
96
+ div aria-hidden="true" {
97
+ style {
98
+ aspectRatio "4 / 3"
99
+ border "2px solid var(--color-ink)"
100
+ marginBlockEnd "1.1rem"
101
+ background "radial-gradient(circle at 62% 40%, hsl(${state.entry.data.hue} 55% 45%) 0 31%, transparent 31.5%), repeating-linear-gradient(${state.entry.data.hue}deg, var(--color-chalk-deep) 0 9px, var(--color-card) 9px 18px)"
102
+ }
103
+ }
104
+ mu-fact {
105
+ $props term=Ouverture value="${state.opens}" layout=stack
106
+ }
107
+ mu-fact {
108
+ $props term=Clôture value="${state.closes}" layout=stack
109
+ }
110
+ mu-fact {
111
+ $props term=Objets value="${state.works}" layout=stack
112
+ }
113
+ mu-fact {
114
+ $props term=Où value="${state.entry.data.gallery}" layout=stack
115
+ }
116
+ mu-fact {
117
+ $props term=Commissaire value="${state.entry.data.curator}" layout=stack
118
+ }
119
+ p "Chaque cartel de cette salle est écrit en trois langues, à longueur égale. Rien n'est abrégé pour le mur le plus court." {
120
+ style {
121
+ margin "1.25rem 0 0"
122
+ paddingBlockStart "0.9rem"
123
+ borderBlockStart "1px solid var(--color-hairline)"
124
+ fontSize "0.9rem"
125
+ lineHeight "1.6"
126
+ color "var(--color-muted)"
127
+ }
128
+ }
129
+ }
130
+ }
131
+ }
132
+ mu-band {
133
+ $props index="02" label="Aussi à l'affiche" tone=card
134
+ p "Deux autres expositions sont ouvertes en même temps, et le même billet — aucun — donne accès aux trois." {
135
+ style margin="0 0 1.5rem" lineHeight="1.75" maxWidth="var(--measure)"
136
+ }
137
+ mu-more {
138
+ $props label="Toute la programmation" href="/fr-ca/expositions/"
139
+ }
140
+ }
141
+ mu-cta {
142
+ $props {
143
+ kicker "Entrée libre"
144
+ heading "C'est au rez-de-chaussée, et c'est ouvert en ce moment."
145
+ text "De dix heures à six heures, du mardi au dimanche. Entrez par le côté du quai et tournez à gauche au mur de la douane."
146
+ label "Préparer sa visite"
147
+ href "/fr-ca/visite/"
148
+ }
149
+ }
150
+ }
151
+ }
@@ -0,0 +1,83 @@
1
+ /- kdl-version 2
2
+ $translationKey exhibitions
3
+ $layout "./layouts/fr-ca.jxn"
4
+ $head {
5
+ meta name=description content="La programmation en cours à Atrium : trois expositions puisées dans la collection de la ville, avec dates, salles et commissaires."
6
+ }
7
+
8
+ $element .title="Expositions — Atrium" .description="La programmation en cours à Atrium : trois expositions puisées dans la collection de la ville, avec dates, salles et commissaires." {
9
+ state {
10
+ shows {
11
+ $prototype ContentCollection
12
+ $src "@jxsuite/parser/ContentCollection.class.json"
13
+ contentType exhibitions
14
+ filter {
15
+ - field=lang op="==" value=fr-CA
16
+ }
17
+ sort {
18
+ - field=order order=asc
19
+ }
20
+ }
21
+ }
22
+ mu-pagehead {
23
+ $props {
24
+ kicker Programmation
25
+ title "Ce qui est accroché, et jusqu'à quand"
26
+ standfirst "Trois expositions se tiennent en même temps : une longue, une saisonnière, une dans la cour. Toutes sont puisées dans les réserves du musée plutôt qu'empruntées ; ce que vous voyez ici, c'est la ville qui se regarde."
27
+ metaLabel Entrée
28
+ metaValue "Libre, sans réservation"
29
+ }
30
+ }
31
+ mu-band {
32
+ $props index="01" label="En ce moment" tone=chalk
33
+ div {
34
+ style borderBlockEnd="1px solid var(--color-hairline)"
35
+ .children {
36
+ $array items=(ref)"#/state/shows" {
37
+ mu-exhibition-row {
38
+ $props {
39
+ index "0${item.data.order}"
40
+ title "${item.data.title}"
41
+ description "${item.data.description}"
42
+ gallery "${item.data.gallery}"
43
+ curator "${item.data.curator}"
44
+ curatorLabel Commissariat
45
+ href "/fr-ca/expositions/${item.id}/"
46
+ hue "${item.data.hue}"
47
+ date "${item.data.date}"
48
+ until "${item.data.until}"
49
+ locale "${$page.locale}"
50
+ }
51
+ }
52
+ }
53
+ }
54
+ }
55
+ }
56
+ mu-band {
57
+ $props index="02" label="Comment fonctionne la programmation" tone=card
58
+ div {
59
+ style {
60
+ display grid
61
+ gridTemplateColumns "minmax(0, 1fr) minmax(0, 1fr)"
62
+ columnGap "clamp(2rem, 5vw, 4rem)"
63
+ rowGap "1.25rem"
64
+ @--md gridTemplateColumns="minmax(0, 1fr)"
65
+ }
66
+ p "Une exposition change à chaque saison et deux se tiennent longtemps : il y a donc toujours quelque chose que vous n'avez pas vu et quelque chose sur quoi revenir. Rien n'est billetté séparément et rien ne ferme pour une location privée pendant les heures d'ouverture." {
67
+ style margin="0" lineHeight="1.75"
68
+ }
69
+ p "Chaque exposition est écrite de façon autonome dans chacune des langues que le musée publie : la commissaire qui a rédigé le texte de salle en arabe pour la salle 2 ne traduit pas la version anglaise, et les deux divergent par endroits. Le sélecteur en haut de cette page liste les langues où une page existe, et rien d'autre." {
70
+ style margin="0" lineHeight="1.75"
71
+ }
72
+ }
73
+ }
74
+ mu-cta {
75
+ $props {
76
+ kicker "Visites guidées"
77
+ heading "Quatre-vingt-dix minutes, le samedi, dans celle des trois langues qui vous convient."
78
+ text "Réservez au comptoir le jour même, ou écrivez à l'avance si vous venez en groupe de plus de huit personnes."
79
+ label "Renseignements aux visiteurs"
80
+ href "/fr-ca/visite/"
81
+ }
82
+ }
83
+ }
@@ -0,0 +1,206 @@
1
+ /- kdl-version 2
2
+ $layout "./layouts/fr-ca.jxn"
3
+ $head {
4
+ meta name=description content="Un musée municipal sous une halle de verre : quatre siècles de port, de métiers et de cartes. Entrée libre, du mardi au dimanche, en anglais, en français et en arabe."
5
+ }
6
+
7
+ $element .title="Atrium — Musée municipal d'art et d'histoire" .description="Un musée municipal sous une halle de verre : quatre siècles de port, de métiers et de cartes. Entrée libre, du mardi au dimanche, en anglais, en français et en arabe." {
8
+ state {
9
+ objects {
10
+ $expression {
11
+ operator call
12
+ target (ref)"window#/Intl/formatNumber"
13
+ value {
14
+ - 18400
15
+ }
16
+ }
17
+ }
18
+ visitors {
19
+ $expression {
20
+ operator call
21
+ target (ref)"window#/Intl/formatNumber"
22
+ value {
23
+ - 212000
24
+ }
25
+ }
26
+ }
27
+ founded {
28
+ $expression {
29
+ operator call
30
+ target (ref)"window#/Intl/formatDate"
31
+ value {
32
+ - "1897-11-04"
33
+ - #null
34
+ - day=numeric month=long year=numeric
35
+ }
36
+ }
37
+ }
38
+ openDays {
39
+ $expression {
40
+ operator call
41
+ target (ref)"window#/Intl/formatList"
42
+ value {
43
+ - mardi mercredi jeudi vendredi samedi dimanche
44
+ }
45
+ }
46
+ }
47
+ shows {
48
+ $prototype ContentCollection
49
+ $src "@jxsuite/parser/ContentCollection.class.json"
50
+ contentType exhibitions
51
+ filter {
52
+ - field=lang op="==" value=fr-CA
53
+ }
54
+ sort {
55
+ - field=order order=asc
56
+ }
57
+ limit 3
58
+ }
59
+ }
60
+ mu-hero {
61
+ $props {
62
+ kicker "Musée municipal d'art et d'histoire"
63
+ title "Quatre siècles, une seule halle de verre"
64
+ standfirst "Atrium conserve ce que la ville a fabriqué, acheté, repêché et contesté depuis la pose du premier quai de pierre — et le montre gratuitement, en trois langues, six jours sur sept."
65
+ primaryLabel "Préparer sa visite"
66
+ primaryHref "/fr-ca/visite/"
67
+ secondaryLabel "À l'affiche"
68
+ secondaryHref "/fr-ca/expositions/"
69
+ noteLabel "Entrée libre"
70
+ note "Du mardi au dimanche, de 10 h à 18 h"
71
+ }
72
+ }
73
+ mu-band {
74
+ $props index="01" label="En salle en ce moment" tone=chalk
75
+ h2 "Trois expositions, et toutes parlent d'ici" {
76
+ style {
77
+ margin "0 0 2.25rem"
78
+ fontFamily "var(--font-display)"
79
+ fontSize "clamp(1.7rem, 3.6vw, 2.6rem)"
80
+ fontWeight "500"
81
+ lineHeight "calc(1.08 * var(--leading-scale))"
82
+ letterSpacing "var(--display-tracking)"
83
+ maxWidth "22ch"
84
+ }
85
+ }
86
+ div {
87
+ style {
88
+ display grid
89
+ gridTemplateColumns "repeat(3, minmax(0, 1fr))"
90
+ gap "clamp(1rem, 2.5vw, 1.75rem)"
91
+ @--md gridTemplateColumns="repeat(2, minmax(0, 1fr))"
92
+ @--sm gridTemplateColumns="minmax(0, 1fr)"
93
+ }
94
+ .children {
95
+ $array items=(ref)"#/state/shows" {
96
+ mu-exhibition-card {
97
+ $props {
98
+ title "${item.data.title}"
99
+ description "${item.data.description}"
100
+ gallery "${item.data.gallery}"
101
+ status "À l'affiche"
102
+ href "/fr-ca/expositions/${item.id}/"
103
+ hue "${item.data.hue}"
104
+ date "${item.data.date}"
105
+ until "${item.data.until}"
106
+ locale "${$page.locale}"
107
+ }
108
+ }
109
+ }
110
+ }
111
+ }
112
+ mu-more {
113
+ $props label="Toute la programmation" href="/fr-ca/expositions/" space="2rem"
114
+ }
115
+ }
116
+ mu-band {
117
+ $props index="02" label="Le musée en chiffres" tone=card
118
+ div {
119
+ style {
120
+ display grid
121
+ gridTemplateColumns "repeat(2, minmax(0, 1fr))"
122
+ columnGap "clamp(2rem, 5vw, 4rem)"
123
+ @--md gridTemplateColumns="minmax(0, 1fr)"
124
+ }
125
+ div {
126
+ mu-fact {
127
+ $props {
128
+ term Objets
129
+ value "${state.objects}"
130
+ note "Catalogués, dont environ un dixième est exposé à un moment donné."
131
+ }
132
+ }
133
+ mu-fact {
134
+ $props {
135
+ term Visites
136
+ value "${state.visitors}"
137
+ note "Au cours de la dernière année complète, comptées à la porte."
138
+ }
139
+ }
140
+ }
141
+ div {
142
+ mu-fact {
143
+ $props {
144
+ term Fondation
145
+ value "${state.founded}"
146
+ note "Par une souscription de 240 ménages, dans une pièce au-dessus de la douane."
147
+ }
148
+ }
149
+ mu-fact {
150
+ $props {
151
+ term Ouvert
152
+ value "${state.openDays}"
153
+ note "Fermé le lundi, et les deux jours par année où la halle est nettoyée."
154
+ }
155
+ }
156
+ }
157
+ }
158
+ p "Chaque chiffre est mis en forme par la langue de la page : ce document affiche 18 400 en français, 18,400 en anglais et ١٨٬٤٠٠ en arabe, parce que la route avait déjà dit de quelle langue il s'agit." {
159
+ style {
160
+ margin "2rem 0 0"
161
+ paddingBlockStart "1.1rem"
162
+ borderBlockStart "1px solid var(--color-hairline)"
163
+ fontSize "0.95rem"
164
+ lineHeight "1.6"
165
+ color "var(--color-muted)"
166
+ maxWidth "var(--measure)"
167
+ }
168
+ }
169
+ }
170
+ mu-band {
171
+ $props index="03" label="Depuis la salle de lecture" tone=chalk
172
+ div {
173
+ style {
174
+ display grid
175
+ gridTemplateColumns "minmax(0, 1.05fr) minmax(0, 1fr)"
176
+ columnGap "clamp(2rem, 5vw, 4rem)"
177
+ alignItems start
178
+ @--md gridTemplateColumns="minmax(0, 1fr)" rowGap="2rem"
179
+ }
180
+ mu-quote {
181
+ $props {
182
+ quote "Un musée, c'est la salle où une ville garde ce sur quoi elle n'arrive pas à s'entendre."
183
+ attribution "Hélène Fournier, première conservatrice, 1897"
184
+ }
185
+ }
186
+ div {
187
+ style maxWidth="var(--measure)"
188
+ p "La salle de lecture du deuxième étage est ouverte à quiconque a une question. Ses rayons portent les registres du port, les carnets d'arpentage, quatre cents boîtes de correspondance d'atelier et les livres de procès-verbaux du musée lui-même — y compris ceux qui consignent des chicanes que le conseil d'administration aurait préféré taire." {
189
+ style margin="0" lineHeight="1.75"
190
+ }
191
+ p "Aucun rendez-vous pour lire ; il en faut un pour manipuler. Demandez au comptoir et un membre du personnel montera la boîte dans l'heure." {
192
+ style margin="1.1rem 0 0" lineHeight="1.75"
193
+ }
194
+ }
195
+ }
196
+ }
197
+ mu-cta {
198
+ $props {
199
+ kicker "Entrée libre"
200
+ heading "La halle est ouverte. Venez nous contredire."
201
+ text "Six jours sur sept, de dix heures à six heures, sans billet ni réservation. La cour reste ouverte une heure de plus pendant l'été."
202
+ label "Préparer sa visite"
203
+ href "/fr-ca/visite/"
204
+ }
205
+ }
206
+ }