@universityofmaryland/web-elements-library 1.5.3 → 1.5.5

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 (708) hide show
  1. package/README.md +1 -1
  2. package/dist/_types.d.ts +2 -9
  3. package/dist/_types.d.ts.map +1 -1
  4. package/dist/atomic/_types.d.ts +2 -2
  5. package/dist/atomic/_types.d.ts.map +1 -1
  6. package/dist/atomic/actions/icon.d.ts +1 -5
  7. package/dist/atomic/actions/icon.d.ts.map +1 -1
  8. package/dist/atomic/actions/icon.js +43 -48
  9. package/dist/atomic/actions/icon.js.map +1 -1
  10. package/dist/atomic/actions/icon.mjs +43 -48
  11. package/dist/atomic/actions/icon.mjs.map +1 -1
  12. package/dist/atomic/actions/text.d.ts +4 -16
  13. package/dist/atomic/actions/text.d.ts.map +1 -1
  14. package/dist/atomic/actions/text.js +82 -104
  15. package/dist/atomic/actions/text.js.map +1 -1
  16. package/dist/atomic/actions/text.mjs +81 -106
  17. package/dist/atomic/actions/text.mjs.map +1 -1
  18. package/dist/atomic/animations/actions/indicator.js +1 -1
  19. package/dist/atomic/animations/actions/indicator.js.map +1 -1
  20. package/dist/atomic/animations/actions/indicator.mjs +1 -1
  21. package/dist/atomic/animations/actions/indicator.mjs.map +1 -1
  22. package/dist/atomic/animations/brand/card-stack.d.ts +2 -1
  23. package/dist/atomic/animations/brand/card-stack.d.ts.map +1 -1
  24. package/dist/atomic/animations/brand/card-stack.js +148 -172
  25. package/dist/atomic/animations/brand/card-stack.js.map +1 -1
  26. package/dist/atomic/animations/brand/card-stack.mjs +140 -164
  27. package/dist/atomic/animations/brand/card-stack.mjs.map +1 -1
  28. package/dist/atomic/animations/brand/chevron-scroll.js +1 -1
  29. package/dist/atomic/animations/brand/chevron-scroll.js.map +1 -1
  30. package/dist/atomic/animations/brand/chevron-scroll.mjs +1 -1
  31. package/dist/atomic/animations/brand/chevron-scroll.mjs.map +1 -1
  32. package/dist/atomic/assets/image/background.d.ts +1 -5
  33. package/dist/atomic/assets/image/background.d.ts.map +1 -1
  34. package/dist/atomic/assets/image/background.js +40 -40
  35. package/dist/atomic/assets/image/background.js.map +1 -1
  36. package/dist/atomic/assets/image/background.mjs +23 -40
  37. package/dist/atomic/assets/image/background.mjs.map +1 -1
  38. package/dist/atomic/assets/image/gif.d.ts +1 -5
  39. package/dist/atomic/assets/image/gif.d.ts.map +1 -1
  40. package/dist/atomic/assets/image/gif.js +28 -12
  41. package/dist/atomic/assets/image/gif.js.map +1 -1
  42. package/dist/atomic/assets/image/gif.mjs +11 -12
  43. package/dist/atomic/assets/image/gif.mjs.map +1 -1
  44. package/dist/atomic/assets/image/placeholder.d.ts +1 -5
  45. package/dist/atomic/assets/image/placeholder.d.ts.map +1 -1
  46. package/dist/atomic/assets/video/observed-auto-play.d.ts +1 -9
  47. package/dist/atomic/assets/video/observed-auto-play.d.ts.map +1 -1
  48. package/dist/atomic/assets/video/observed-auto-play.js +9 -5
  49. package/dist/atomic/assets/video/observed-auto-play.js.map +1 -1
  50. package/dist/atomic/assets/video/observed-auto-play.mjs +9 -5
  51. package/dist/atomic/assets/video/observed-auto-play.mjs.map +1 -1
  52. package/dist/atomic/assets/video/toggle.d.ts +1 -9
  53. package/dist/atomic/assets/video/toggle.d.ts.map +1 -1
  54. package/dist/atomic/assets/video/toggle.js +38 -40
  55. package/dist/atomic/assets/video/toggle.js.map +1 -1
  56. package/dist/atomic/assets/video/toggle.mjs +21 -40
  57. package/dist/atomic/assets/video/toggle.mjs.map +1 -1
  58. package/dist/atomic/buttons/fullscreen.d.ts +1 -5
  59. package/dist/atomic/buttons/fullscreen.d.ts.map +1 -1
  60. package/dist/atomic/buttons/fullscreen.js +21 -15
  61. package/dist/atomic/buttons/fullscreen.js.map +1 -1
  62. package/dist/atomic/buttons/fullscreen.mjs +4 -15
  63. package/dist/atomic/buttons/fullscreen.mjs.map +1 -1
  64. package/dist/atomic/events/meta.d.ts +1 -5
  65. package/dist/atomic/events/meta.d.ts.map +1 -1
  66. package/dist/atomic/events/meta.js +48 -48
  67. package/dist/atomic/events/meta.js.map +1 -1
  68. package/dist/atomic/events/meta.mjs +31 -48
  69. package/dist/atomic/events/meta.mjs.map +1 -1
  70. package/dist/atomic/events/sign.d.ts +1 -5
  71. package/dist/atomic/events/sign.d.ts.map +1 -1
  72. package/dist/atomic/events/sign.js +84 -93
  73. package/dist/atomic/events/sign.js.map +1 -1
  74. package/dist/atomic/events/sign.mjs +82 -93
  75. package/dist/atomic/events/sign.mjs.map +1 -1
  76. package/dist/atomic/layout/block/stacked.d.ts +7 -19
  77. package/dist/atomic/layout/block/stacked.d.ts.map +1 -1
  78. package/dist/atomic/layout/block/stacked.js +14 -20
  79. package/dist/atomic/layout/block/stacked.js.map +1 -1
  80. package/dist/atomic/layout/block/stacked.mjs +14 -20
  81. package/dist/atomic/layout/block/stacked.mjs.map +1 -1
  82. package/dist/atomic/layout/overlay/modal.js +1 -1
  83. package/dist/atomic/layout/overlay/modal.js.map +1 -1
  84. package/dist/atomic/layout/overlay/modal.mjs +1 -1
  85. package/dist/atomic/layout/overlay/modal.mjs.map +1 -1
  86. package/dist/atomic/layout/person/columns.d.ts +4 -20
  87. package/dist/atomic/layout/person/columns.d.ts.map +1 -1
  88. package/dist/atomic/layout/person/columns.js +56 -66
  89. package/dist/atomic/layout/person/columns.js.map +1 -1
  90. package/dist/atomic/layout/person/columns.mjs +56 -66
  91. package/dist/atomic/layout/person/columns.mjs.map +1 -1
  92. package/dist/atomic/text/stat.d.ts +2 -3
  93. package/dist/atomic/text/stat.d.ts.map +1 -1
  94. package/dist/atomic/text/stat.js +101 -119
  95. package/dist/atomic/text/stat.js.map +1 -1
  96. package/dist/atomic/text/stat.mjs +100 -119
  97. package/dist/atomic/text/stat.mjs.map +1 -1
  98. package/dist/atomic/text-lockup/contact.d.ts +1 -5
  99. package/dist/atomic/text-lockup/contact.d.ts.map +1 -1
  100. package/dist/atomic/text-lockup/contact.js +65 -105
  101. package/dist/atomic/text-lockup/contact.js.map +1 -1
  102. package/dist/atomic/text-lockup/contact.mjs +60 -103
  103. package/dist/atomic/text-lockup/contact.mjs.map +1 -1
  104. package/dist/atomic/text-lockup/date.d.ts.map +1 -1
  105. package/dist/atomic/text-lockup/date.js +6 -1
  106. package/dist/atomic/text-lockup/date.js.map +1 -1
  107. package/dist/atomic/text-lockup/date.mjs +6 -1
  108. package/dist/atomic/text-lockup/date.mjs.map +1 -1
  109. package/dist/atomic/text-lockup/large.d.ts +3 -7
  110. package/dist/atomic/text-lockup/large.d.ts.map +1 -1
  111. package/dist/atomic/text-lockup/large.js +62 -71
  112. package/dist/atomic/text-lockup/large.js.map +1 -1
  113. package/dist/atomic/text-lockup/large.mjs +59 -71
  114. package/dist/atomic/text-lockup/large.mjs.map +1 -1
  115. package/dist/atomic/text-lockup/medium.d.ts +5 -9
  116. package/dist/atomic/text-lockup/medium.d.ts.map +1 -1
  117. package/dist/atomic/text-lockup/medium.js +76 -84
  118. package/dist/atomic/text-lockup/medium.js.map +1 -1
  119. package/dist/atomic/text-lockup/medium.mjs +70 -82
  120. package/dist/atomic/text-lockup/medium.mjs.map +1 -1
  121. package/dist/atomic/text-lockup/person.d.ts +1 -5
  122. package/dist/atomic/text-lockup/person.d.ts.map +1 -1
  123. package/dist/atomic/text-lockup/person.js +102 -101
  124. package/dist/atomic/text-lockup/person.js.map +1 -1
  125. package/dist/atomic/text-lockup/person.mjs +99 -101
  126. package/dist/atomic/text-lockup/person.mjs.map +1 -1
  127. package/dist/atomic/text-lockup/small-scaling.d.ts +1 -5
  128. package/dist/atomic/text-lockup/small-scaling.d.ts.map +1 -1
  129. package/dist/atomic/text-lockup/small-scaling.js +64 -39
  130. package/dist/atomic/text-lockup/small-scaling.js.map +1 -1
  131. package/dist/atomic/text-lockup/small-scaling.mjs +44 -38
  132. package/dist/atomic/text-lockup/small-scaling.mjs.map +1 -1
  133. package/dist/atomic/text-lockup/small.d.ts +11 -25
  134. package/dist/atomic/text-lockup/small.d.ts.map +1 -1
  135. package/dist/atomic/text-lockup/small.js +70 -69
  136. package/dist/atomic/text-lockup/small.js.map +1 -1
  137. package/dist/atomic/text-lockup/small.mjs +64 -66
  138. package/dist/atomic/text-lockup/small.mjs.map +1 -1
  139. package/dist/composite/alert/elements/closeButton.d.ts +7 -0
  140. package/dist/composite/alert/elements/closeButton.d.ts.map +1 -0
  141. package/dist/composite/alert/elements/closeButton.js +51 -0
  142. package/dist/composite/alert/elements/closeButton.js.map +1 -0
  143. package/dist/composite/alert/elements/closeButton.mjs +34 -0
  144. package/dist/composite/alert/elements/closeButton.mjs.map +1 -0
  145. package/dist/composite/alert/elements/text.d.ts +3 -13
  146. package/dist/composite/alert/elements/text.d.ts.map +1 -1
  147. package/dist/composite/alert/elements/text.js +60 -81
  148. package/dist/composite/alert/elements/text.js.map +1 -1
  149. package/dist/composite/alert/elements/text.mjs +56 -80
  150. package/dist/composite/alert/elements/text.mjs.map +1 -1
  151. package/dist/composite/alert/globals.d.ts +4 -0
  152. package/dist/composite/alert/globals.d.ts.map +1 -0
  153. package/dist/composite/alert/globals.js +7 -0
  154. package/dist/composite/alert/globals.js.map +1 -0
  155. package/dist/composite/alert/globals.mjs +7 -0
  156. package/dist/composite/alert/globals.mjs.map +1 -0
  157. package/dist/composite/alert/index.d.ts +2 -2
  158. package/dist/composite/alert/index.d.ts.map +1 -1
  159. package/dist/composite/alert/index.js +2 -2
  160. package/dist/composite/alert/index.mjs +4 -4
  161. package/dist/composite/alert/page.d.ts +5 -12
  162. package/dist/composite/alert/page.d.ts.map +1 -1
  163. package/dist/composite/alert/page.js +44 -113
  164. package/dist/composite/alert/page.js.map +1 -1
  165. package/dist/composite/alert/page.mjs +44 -112
  166. package/dist/composite/alert/page.mjs.map +1 -1
  167. package/dist/composite/alert/site.d.ts +5 -11
  168. package/dist/composite/alert/site.d.ts.map +1 -1
  169. package/dist/composite/alert/site.js +60 -109
  170. package/dist/composite/alert/site.js.map +1 -1
  171. package/dist/composite/alert/site.mjs +61 -109
  172. package/dist/composite/alert/site.mjs.map +1 -1
  173. package/dist/composite/banner/promo.js +1 -1
  174. package/dist/composite/banner/promo.js.map +1 -1
  175. package/dist/composite/banner/promo.mjs +1 -1
  176. package/dist/composite/banner/promo.mjs.map +1 -1
  177. package/dist/composite/card/block.d.ts +1 -5
  178. package/dist/composite/card/block.d.ts.map +1 -1
  179. package/dist/composite/card/block.js +7 -5
  180. package/dist/composite/card/block.js.map +1 -1
  181. package/dist/composite/card/block.mjs +7 -5
  182. package/dist/composite/card/block.mjs.map +1 -1
  183. package/dist/composite/card/list.d.ts +1 -5
  184. package/dist/composite/card/list.d.ts.map +1 -1
  185. package/dist/composite/card/list.js +52 -64
  186. package/dist/composite/card/list.js.map +1 -1
  187. package/dist/composite/card/list.mjs +52 -64
  188. package/dist/composite/card/list.mjs.map +1 -1
  189. package/dist/composite/card/overlay/color.d.ts +1 -5
  190. package/dist/composite/card/overlay/color.d.ts.map +1 -1
  191. package/dist/composite/card/overlay/color.js +36 -41
  192. package/dist/composite/card/overlay/color.js.map +1 -1
  193. package/dist/composite/card/overlay/color.mjs +36 -41
  194. package/dist/composite/card/overlay/color.mjs.map +1 -1
  195. package/dist/composite/card/overlay/icon.d.ts +1 -5
  196. package/dist/composite/card/overlay/icon.d.ts.map +1 -1
  197. package/dist/composite/card/overlay/icon.js +27 -31
  198. package/dist/composite/card/overlay/icon.js.map +1 -1
  199. package/dist/composite/card/overlay/icon.mjs +27 -31
  200. package/dist/composite/card/overlay/icon.mjs.map +1 -1
  201. package/dist/composite/card/overlay/image.d.ts +2 -1
  202. package/dist/composite/card/overlay/image.d.ts.map +1 -1
  203. package/dist/composite/card/overlay/image.js +74 -93
  204. package/dist/composite/card/overlay/image.js.map +1 -1
  205. package/dist/composite/card/overlay/image.mjs +73 -93
  206. package/dist/composite/card/overlay/image.mjs.map +1 -1
  207. package/dist/composite/card/video/block.d.ts +1 -9
  208. package/dist/composite/card/video/block.d.ts.map +1 -1
  209. package/dist/composite/card/video/block.js +7 -5
  210. package/dist/composite/card/video/block.js.map +1 -1
  211. package/dist/composite/card/video/block.mjs +7 -5
  212. package/dist/composite/card/video/block.mjs.map +1 -1
  213. package/dist/composite/card/video/short.d.ts +1 -5
  214. package/dist/composite/card/video/short.d.ts.map +1 -1
  215. package/dist/composite/card/video/short.js +16 -21
  216. package/dist/composite/card/video/short.js.map +1 -1
  217. package/dist/composite/card/video/short.mjs +16 -21
  218. package/dist/composite/card/video/short.mjs.map +1 -1
  219. package/dist/composite/carousel/_types.d.ts.map +1 -1
  220. package/dist/composite/carousel/default/index.js +1 -1
  221. package/dist/composite/carousel/default/index.js.map +1 -1
  222. package/dist/composite/carousel/default/index.mjs +1 -1
  223. package/dist/composite/carousel/default/index.mjs.map +1 -1
  224. package/dist/composite/carousel/elements/blocks.js +2 -2
  225. package/dist/composite/carousel/elements/blocks.js.map +1 -1
  226. package/dist/composite/carousel/elements/blocks.mjs +2 -2
  227. package/dist/composite/carousel/elements/blocks.mjs.map +1 -1
  228. package/dist/composite/carousel/elements/full-screen.js +7 -5
  229. package/dist/composite/carousel/elements/full-screen.js.map +1 -1
  230. package/dist/composite/carousel/elements/full-screen.mjs +7 -5
  231. package/dist/composite/carousel/elements/full-screen.mjs.map +1 -1
  232. package/dist/composite/carousel/elements/image.js +2 -2
  233. package/dist/composite/carousel/elements/image.js.map +1 -1
  234. package/dist/composite/carousel/elements/image.mjs +2 -2
  235. package/dist/composite/carousel/elements/image.mjs.map +1 -1
  236. package/dist/composite/carousel/elements/overlay.js +2 -2
  237. package/dist/composite/carousel/elements/overlay.js.map +1 -1
  238. package/dist/composite/carousel/elements/overlay.mjs +2 -2
  239. package/dist/composite/carousel/elements/overlay.mjs.map +1 -1
  240. package/dist/composite/carousel/image/multiple.js +11 -9
  241. package/dist/composite/carousel/image/multiple.js.map +1 -1
  242. package/dist/composite/carousel/image/multiple.mjs +11 -9
  243. package/dist/composite/carousel/image/multiple.mjs.map +1 -1
  244. package/dist/composite/carousel/image/standard.js +10 -8
  245. package/dist/composite/carousel/image/standard.js.map +1 -1
  246. package/dist/composite/carousel/image/standard.mjs +10 -8
  247. package/dist/composite/carousel/image/standard.mjs.map +1 -1
  248. package/dist/composite/carousel/thumbnail/index.js +1 -1
  249. package/dist/composite/carousel/thumbnail/index.js.map +1 -1
  250. package/dist/composite/carousel/thumbnail/index.mjs +1 -1
  251. package/dist/composite/carousel/thumbnail/index.mjs.map +1 -1
  252. package/dist/composite/carousel/wide/_elementModel.d.ts +2 -2
  253. package/dist/composite/carousel/wide/_elementModel.d.ts.map +1 -1
  254. package/dist/composite/carousel/wide/_elementModel.js +20 -7
  255. package/dist/composite/carousel/wide/_elementModel.js.map +1 -1
  256. package/dist/composite/carousel/wide/_elementModel.mjs +20 -7
  257. package/dist/composite/carousel/wide/_elementModel.mjs.map +1 -1
  258. package/dist/composite/carousel/wide/container.d.ts.map +1 -1
  259. package/dist/composite/carousel/wide/container.js +9 -15
  260. package/dist/composite/carousel/wide/container.js.map +1 -1
  261. package/dist/composite/carousel/wide/container.mjs +9 -15
  262. package/dist/composite/carousel/wide/container.mjs.map +1 -1
  263. package/dist/composite/carousel/wide/controls.d.ts +1 -5
  264. package/dist/composite/carousel/wide/controls.d.ts.map +1 -1
  265. package/dist/composite/carousel/wide/controls.js +55 -56
  266. package/dist/composite/carousel/wide/controls.js.map +1 -1
  267. package/dist/composite/carousel/wide/controls.mjs +55 -56
  268. package/dist/composite/carousel/wide/controls.mjs.map +1 -1
  269. package/dist/composite/carousel/wide/frames.d.ts.map +1 -1
  270. package/dist/composite/carousel/wide/frames.js +156 -171
  271. package/dist/composite/carousel/wide/frames.js.map +1 -1
  272. package/dist/composite/carousel/wide/frames.mjs +153 -169
  273. package/dist/composite/carousel/wide/frames.mjs.map +1 -1
  274. package/dist/composite/carousel/wide/index.d.ts +1 -5
  275. package/dist/composite/carousel/wide/index.d.ts.map +1 -1
  276. package/dist/composite/carousel/wide/index.js +23 -17
  277. package/dist/composite/carousel/wide/index.js.map +1 -1
  278. package/dist/composite/carousel/wide/index.mjs +23 -17
  279. package/dist/composite/carousel/wide/index.mjs.map +1 -1
  280. package/dist/composite/footer/elements/main-section/call-to-action.d.ts +2 -2
  281. package/dist/composite/footer/elements/main-section/call-to-action.d.ts.map +1 -1
  282. package/dist/composite/footer/elements/main-section/call-to-action.js +19 -28
  283. package/dist/composite/footer/elements/main-section/call-to-action.js.map +1 -1
  284. package/dist/composite/footer/elements/main-section/call-to-action.mjs +18 -28
  285. package/dist/composite/footer/elements/main-section/call-to-action.mjs.map +1 -1
  286. package/dist/composite/footer/elements/main-section/campaign.d.ts +2 -2
  287. package/dist/composite/footer/elements/main-section/campaign.d.ts.map +1 -1
  288. package/dist/composite/footer/elements/main-section/campaign.js +27 -35
  289. package/dist/composite/footer/elements/main-section/campaign.js.map +1 -1
  290. package/dist/composite/footer/elements/main-section/campaign.mjs +27 -35
  291. package/dist/composite/footer/elements/main-section/campaign.mjs.map +1 -1
  292. package/dist/composite/footer/elements/main-section/index.d.ts +2 -2
  293. package/dist/composite/footer/elements/main-section/index.d.ts.map +1 -1
  294. package/dist/composite/footer/elements/main-section/index.js +38 -50
  295. package/dist/composite/footer/elements/main-section/index.js.map +1 -1
  296. package/dist/composite/footer/elements/main-section/index.mjs +38 -50
  297. package/dist/composite/footer/elements/main-section/index.mjs.map +1 -1
  298. package/dist/composite/footer/elements/main-section/row-links/index.d.ts +2 -2
  299. package/dist/composite/footer/elements/main-section/row-links/index.d.ts.map +1 -1
  300. package/dist/composite/footer/elements/main-section/row-links/index.js +24 -36
  301. package/dist/composite/footer/elements/main-section/row-links/index.js.map +1 -1
  302. package/dist/composite/footer/elements/main-section/row-links/index.mjs +24 -36
  303. package/dist/composite/footer/elements/main-section/row-links/index.mjs.map +1 -1
  304. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts +2 -2
  305. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts.map +1 -1
  306. package/dist/composite/footer/elements/main-section/row-links/link-columns.js +75 -95
  307. package/dist/composite/footer/elements/main-section/row-links/link-columns.js.map +1 -1
  308. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs +73 -93
  309. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs.map +1 -1
  310. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts +2 -2
  311. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts.map +1 -1
  312. package/dist/composite/footer/elements/main-section/row-logo/contact.js +88 -98
  313. package/dist/composite/footer/elements/main-section/row-logo/contact.js.map +1 -1
  314. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs +88 -98
  315. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs.map +1 -1
  316. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts +2 -2
  317. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts.map +1 -1
  318. package/dist/composite/footer/elements/main-section/row-logo/index.js +30 -43
  319. package/dist/composite/footer/elements/main-section/row-logo/index.js.map +1 -1
  320. package/dist/composite/footer/elements/main-section/row-logo/index.mjs +30 -43
  321. package/dist/composite/footer/elements/main-section/row-logo/index.mjs.map +1 -1
  322. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts +2 -2
  323. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts.map +1 -1
  324. package/dist/composite/footer/elements/main-section/row-logo/logo.js +24 -32
  325. package/dist/composite/footer/elements/main-section/row-logo/logo.js.map +1 -1
  326. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs +24 -32
  327. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs.map +1 -1
  328. package/dist/composite/footer/elements/main-section/social.d.ts +2 -2
  329. package/dist/composite/footer/elements/main-section/social.d.ts.map +1 -1
  330. package/dist/composite/footer/elements/main-section/social.js +74 -97
  331. package/dist/composite/footer/elements/main-section/social.js.map +1 -1
  332. package/dist/composite/footer/elements/main-section/social.mjs +74 -97
  333. package/dist/composite/footer/elements/main-section/social.mjs.map +1 -1
  334. package/dist/composite/footer/elements/utility-section/index.d.ts +1 -5
  335. package/dist/composite/footer/elements/utility-section/index.d.ts.map +1 -1
  336. package/dist/composite/footer/elements/utility-section/index.js +56 -83
  337. package/dist/composite/footer/elements/utility-section/index.js.map +1 -1
  338. package/dist/composite/footer/elements/utility-section/index.mjs +56 -83
  339. package/dist/composite/footer/elements/utility-section/index.mjs.map +1 -1
  340. package/dist/composite/footer/options.d.ts +1 -4
  341. package/dist/composite/footer/options.d.ts.map +1 -1
  342. package/dist/composite/footer/options.js +19 -27
  343. package/dist/composite/footer/options.js.map +1 -1
  344. package/dist/composite/footer/options.mjs +19 -27
  345. package/dist/composite/footer/options.mjs.map +1 -1
  346. package/dist/composite/hero/_types.d.ts.map +1 -1
  347. package/dist/composite/hero/custom/expand.d.ts +3 -2
  348. package/dist/composite/hero/custom/expand.d.ts.map +1 -1
  349. package/dist/composite/hero/custom/expand.js +151 -192
  350. package/dist/composite/hero/custom/expand.js.map +1 -1
  351. package/dist/composite/hero/custom/expand.mjs +145 -187
  352. package/dist/composite/hero/custom/expand.mjs.map +1 -1
  353. package/dist/composite/hero/custom/grid.d.ts +1 -5
  354. package/dist/composite/hero/custom/grid.d.ts.map +1 -1
  355. package/dist/composite/hero/custom/grid.js +122 -171
  356. package/dist/composite/hero/custom/grid.js.map +1 -1
  357. package/dist/composite/hero/custom/grid.mjs +116 -166
  358. package/dist/composite/hero/custom/grid.mjs.map +1 -1
  359. package/dist/composite/hero/custom/video-arrow.d.ts +2 -1
  360. package/dist/composite/hero/custom/video-arrow.d.ts.map +1 -1
  361. package/dist/composite/hero/custom/video-arrow.js +83 -105
  362. package/dist/composite/hero/custom/video-arrow.js.map +1 -1
  363. package/dist/composite/hero/custom/video-arrow.mjs +77 -99
  364. package/dist/composite/hero/custom/video-arrow.mjs.map +1 -1
  365. package/dist/composite/hero/logo.d.ts +1 -5
  366. package/dist/composite/hero/logo.d.ts.map +1 -1
  367. package/dist/composite/hero/logo.js +71 -89
  368. package/dist/composite/hero/logo.js.map +1 -1
  369. package/dist/composite/hero/logo.mjs +68 -87
  370. package/dist/composite/hero/logo.mjs.map +1 -1
  371. package/dist/composite/hero/minimal.d.ts +1 -5
  372. package/dist/composite/hero/minimal.d.ts.map +1 -1
  373. package/dist/composite/hero/minimal.js +67 -86
  374. package/dist/composite/hero/minimal.js.map +1 -1
  375. package/dist/composite/hero/minimal.mjs +63 -83
  376. package/dist/composite/hero/minimal.mjs.map +1 -1
  377. package/dist/composite/hero/overlay.d.ts +1 -5
  378. package/dist/composite/hero/overlay.d.ts.map +1 -1
  379. package/dist/composite/hero/overlay.js +107 -135
  380. package/dist/composite/hero/overlay.js.map +1 -1
  381. package/dist/composite/hero/overlay.mjs +103 -132
  382. package/dist/composite/hero/overlay.mjs.map +1 -1
  383. package/dist/composite/hero/stacked.d.ts +1 -5
  384. package/dist/composite/hero/stacked.d.ts.map +1 -1
  385. package/dist/composite/hero/stacked.js +114 -137
  386. package/dist/composite/hero/stacked.js.map +1 -1
  387. package/dist/composite/hero/stacked.mjs +110 -134
  388. package/dist/composite/hero/stacked.mjs.map +1 -1
  389. package/dist/composite/hero/standard.d.ts +1 -5
  390. package/dist/composite/hero/standard.d.ts.map +1 -1
  391. package/dist/composite/hero/standard.js +103 -116
  392. package/dist/composite/hero/standard.js.map +1 -1
  393. package/dist/composite/hero/standard.mjs +100 -114
  394. package/dist/composite/hero/standard.mjs.map +1 -1
  395. package/dist/composite/layout/box/logo.js +1 -1
  396. package/dist/composite/layout/box/logo.js.map +1 -1
  397. package/dist/composite/layout/box/logo.mjs +1 -1
  398. package/dist/composite/layout/box/logo.mjs.map +1 -1
  399. package/dist/composite/layout/image/expand.js +1 -1
  400. package/dist/composite/layout/image/expand.js.map +1 -1
  401. package/dist/composite/layout/image/expand.mjs +1 -1
  402. package/dist/composite/layout/image/expand.mjs.map +1 -1
  403. package/dist/composite/layout/scroll-top/index.js +1 -1
  404. package/dist/composite/layout/scroll-top/index.js.map +1 -1
  405. package/dist/composite/layout/scroll-top/index.mjs +1 -1
  406. package/dist/composite/layout/scroll-top/index.mjs.map +1 -1
  407. package/dist/composite/layout/section-intro/small.d.ts +2 -1
  408. package/dist/composite/layout/section-intro/small.d.ts.map +1 -1
  409. package/dist/composite/layout/section-intro/small.js +97 -107
  410. package/dist/composite/layout/section-intro/small.js.map +1 -1
  411. package/dist/composite/layout/section-intro/small.mjs +95 -106
  412. package/dist/composite/layout/section-intro/small.mjs.map +1 -1
  413. package/dist/composite/layout/section-intro/wide.d.ts +2 -2
  414. package/dist/composite/layout/section-intro/wide.d.ts.map +1 -1
  415. package/dist/composite/layout/section-intro/wide.js +40 -53
  416. package/dist/composite/layout/section-intro/wide.js.map +1 -1
  417. package/dist/composite/layout/section-intro/wide.mjs +39 -53
  418. package/dist/composite/layout/section-intro/wide.mjs.map +1 -1
  419. package/dist/composite/layout/sticky-columns/index.js +1 -1
  420. package/dist/composite/layout/sticky-columns/index.js.map +1 -1
  421. package/dist/composite/layout/sticky-columns/index.mjs +1 -1
  422. package/dist/composite/layout/sticky-columns/index.mjs.map +1 -1
  423. package/dist/composite/media/elements/caption.js +1 -1
  424. package/dist/composite/media/elements/caption.js.map +1 -1
  425. package/dist/composite/media/elements/caption.mjs +1 -1
  426. package/dist/composite/media/elements/caption.mjs.map +1 -1
  427. package/dist/composite/media/elements/gif.d.ts +3 -2
  428. package/dist/composite/media/elements/gif.d.ts.map +1 -1
  429. package/dist/composite/media/elements/gif.js +25 -27
  430. package/dist/composite/media/elements/gif.js.map +1 -1
  431. package/dist/composite/media/elements/gif.mjs +25 -27
  432. package/dist/composite/media/elements/gif.mjs.map +1 -1
  433. package/dist/composite/media/inline/caption.js +2 -2
  434. package/dist/composite/media/inline/caption.js.map +1 -1
  435. package/dist/composite/media/inline/caption.mjs +2 -2
  436. package/dist/composite/media/inline/caption.mjs.map +1 -1
  437. package/dist/composite/media/inline/wrapped.js +2 -2
  438. package/dist/composite/media/inline/wrapped.js.map +1 -1
  439. package/dist/composite/media/inline/wrapped.mjs +2 -2
  440. package/dist/composite/media/inline/wrapped.mjs.map +1 -1
  441. package/dist/composite/navigation/elements/breadcrumb/index.js +1 -1
  442. package/dist/composite/navigation/elements/breadcrumb/index.js.map +1 -1
  443. package/dist/composite/navigation/elements/breadcrumb/index.mjs +1 -1
  444. package/dist/composite/navigation/elements/breadcrumb/index.mjs.map +1 -1
  445. package/dist/composite/navigation/elements/drawer/index.js +1 -1
  446. package/dist/composite/navigation/elements/drawer/index.js.map +1 -1
  447. package/dist/composite/navigation/elements/drawer/index.mjs +1 -1
  448. package/dist/composite/navigation/elements/drawer/index.mjs.map +1 -1
  449. package/dist/composite/navigation/elements/item/index.js +1 -1
  450. package/dist/composite/navigation/elements/item/index.js.map +1 -1
  451. package/dist/composite/navigation/elements/item/index.mjs +1 -1
  452. package/dist/composite/navigation/elements/item/index.mjs.map +1 -1
  453. package/dist/composite/navigation/elements/menu-button/index.js +1 -1
  454. package/dist/composite/navigation/elements/menu-button/index.js.map +1 -1
  455. package/dist/composite/navigation/elements/menu-button/index.mjs +1 -1
  456. package/dist/composite/navigation/elements/menu-button/index.mjs.map +1 -1
  457. package/dist/composite/navigation/elements/slider/action.js +1 -1
  458. package/dist/composite/navigation/elements/slider/action.js.map +1 -1
  459. package/dist/composite/navigation/elements/slider/action.mjs +1 -1
  460. package/dist/composite/navigation/elements/slider/action.mjs.map +1 -1
  461. package/dist/composite/navigation/elements/slider/index.js +1 -1
  462. package/dist/composite/navigation/elements/slider/index.js.map +1 -1
  463. package/dist/composite/navigation/elements/slider/index.mjs +1 -1
  464. package/dist/composite/navigation/elements/slider/index.mjs.map +1 -1
  465. package/dist/composite/navigation/elements/slider/slide-first.js +1 -1
  466. package/dist/composite/navigation/elements/slider/slide-first.js.map +1 -1
  467. package/dist/composite/navigation/elements/slider/slide-first.mjs +1 -1
  468. package/dist/composite/navigation/elements/slider/slide-first.mjs.map +1 -1
  469. package/dist/composite/navigation/elements/slider/slides.js +1 -1
  470. package/dist/composite/navigation/elements/slider/slides.js.map +1 -1
  471. package/dist/composite/navigation/elements/slider/slides.mjs +1 -1
  472. package/dist/composite/navigation/elements/slider/slides.mjs.map +1 -1
  473. package/dist/composite/navigation/header.js +1 -1
  474. package/dist/composite/navigation/header.js.map +1 -1
  475. package/dist/composite/navigation/header.mjs +1 -1
  476. package/dist/composite/navigation/header.mjs.map +1 -1
  477. package/dist/composite/navigation/utility/alert.js +8 -4
  478. package/dist/composite/navigation/utility/alert.js.map +1 -1
  479. package/dist/composite/navigation/utility/alert.mjs +8 -4
  480. package/dist/composite/navigation/utility/alert.mjs.map +1 -1
  481. package/dist/composite/navigation/utility/index.d.ts.map +1 -1
  482. package/dist/composite/navigation/utility/index.js +90 -13
  483. package/dist/composite/navigation/utility/index.js.map +1 -1
  484. package/dist/composite/navigation/utility/index.mjs +90 -13
  485. package/dist/composite/navigation/utility/index.mjs.map +1 -1
  486. package/dist/composite/navigation/utility/search.js +1 -1
  487. package/dist/composite/navigation/utility/search.js.map +1 -1
  488. package/dist/composite/navigation/utility/search.mjs +1 -1
  489. package/dist/composite/navigation/utility/search.mjs.map +1 -1
  490. package/dist/composite/pathway/_common.d.ts +4 -20
  491. package/dist/composite/pathway/_common.d.ts.map +1 -1
  492. package/dist/composite/pathway/_common.js +62 -64
  493. package/dist/composite/pathway/_common.js.map +1 -1
  494. package/dist/composite/pathway/_common.mjs +56 -60
  495. package/dist/composite/pathway/_common.mjs.map +1 -1
  496. package/dist/composite/pathway/hero.d.ts +1 -5
  497. package/dist/composite/pathway/hero.d.ts.map +1 -1
  498. package/dist/composite/pathway/hero.js +119 -140
  499. package/dist/composite/pathway/hero.js.map +1 -1
  500. package/dist/composite/pathway/hero.mjs +113 -135
  501. package/dist/composite/pathway/hero.mjs.map +1 -1
  502. package/dist/composite/pathway/highlight.d.ts +1 -5
  503. package/dist/composite/pathway/highlight.d.ts.map +1 -1
  504. package/dist/composite/pathway/highlight.js +99 -129
  505. package/dist/composite/pathway/highlight.js.map +1 -1
  506. package/dist/composite/pathway/highlight.mjs +98 -129
  507. package/dist/composite/pathway/highlight.mjs.map +1 -1
  508. package/dist/composite/pathway/overlay.d.ts +2 -1
  509. package/dist/composite/pathway/overlay.d.ts.map +1 -1
  510. package/dist/composite/pathway/overlay.js +125 -153
  511. package/dist/composite/pathway/overlay.js.map +1 -1
  512. package/dist/composite/pathway/overlay.mjs +122 -151
  513. package/dist/composite/pathway/overlay.mjs.map +1 -1
  514. package/dist/composite/pathway/standard.d.ts +2 -1
  515. package/dist/composite/pathway/standard.d.ts.map +1 -1
  516. package/dist/composite/pathway/standard.js +96 -123
  517. package/dist/composite/pathway/standard.js.map +1 -1
  518. package/dist/composite/pathway/standard.mjs +95 -123
  519. package/dist/composite/pathway/standard.mjs.map +1 -1
  520. package/dist/composite/pathway/sticky.d.ts +1 -5
  521. package/dist/composite/pathway/sticky.d.ts.map +1 -1
  522. package/dist/composite/pathway/sticky.js +91 -116
  523. package/dist/composite/pathway/sticky.js.map +1 -1
  524. package/dist/composite/pathway/sticky.mjs +88 -114
  525. package/dist/composite/pathway/sticky.mjs.map +1 -1
  526. package/dist/composite/person/bio/full.d.ts +2 -5
  527. package/dist/composite/person/bio/full.d.ts.map +1 -1
  528. package/dist/composite/person/bio/full.js +53 -57
  529. package/dist/composite/person/bio/full.js.map +1 -1
  530. package/dist/composite/person/bio/full.mjs +52 -57
  531. package/dist/composite/person/bio/full.mjs.map +1 -1
  532. package/dist/composite/person/bio/small.d.ts +2 -5
  533. package/dist/composite/person/bio/small.d.ts.map +1 -1
  534. package/dist/composite/person/bio/small.js +85 -98
  535. package/dist/composite/person/bio/small.js.map +1 -1
  536. package/dist/composite/person/bio/small.mjs +84 -98
  537. package/dist/composite/person/bio/small.mjs.map +1 -1
  538. package/dist/composite/person/block.d.ts +2 -5
  539. package/dist/composite/person/block.d.ts.map +1 -1
  540. package/dist/composite/person/block.js +34 -42
  541. package/dist/composite/person/block.js.map +1 -1
  542. package/dist/composite/person/block.mjs +34 -42
  543. package/dist/composite/person/block.mjs.map +1 -1
  544. package/dist/composite/person/hero.d.ts +2 -5
  545. package/dist/composite/person/hero.d.ts.map +1 -1
  546. package/dist/composite/person/hero.js +160 -220
  547. package/dist/composite/person/hero.js.map +1 -1
  548. package/dist/composite/person/hero.mjs +159 -220
  549. package/dist/composite/person/hero.mjs.map +1 -1
  550. package/dist/composite/person/list.d.ts +2 -5
  551. package/dist/composite/person/list.d.ts.map +1 -1
  552. package/dist/composite/person/list.js +19 -19
  553. package/dist/composite/person/list.js.map +1 -1
  554. package/dist/composite/person/list.mjs +19 -19
  555. package/dist/composite/person/list.mjs.map +1 -1
  556. package/dist/composite/person/tabular.d.ts +2 -5
  557. package/dist/composite/person/tabular.d.ts.map +1 -1
  558. package/dist/composite/person/tabular.js +40 -36
  559. package/dist/composite/person/tabular.js.map +1 -1
  560. package/dist/composite/person/tabular.mjs +38 -36
  561. package/dist/composite/person/tabular.mjs.map +1 -1
  562. package/dist/composite/quote/elements/action.d.ts +1 -5
  563. package/dist/composite/quote/elements/action.d.ts.map +1 -1
  564. package/dist/composite/quote/elements/action.js +13 -17
  565. package/dist/composite/quote/elements/action.js.map +1 -1
  566. package/dist/composite/quote/elements/action.mjs +13 -17
  567. package/dist/composite/quote/elements/action.mjs.map +1 -1
  568. package/dist/composite/quote/elements/icon.d.ts +1 -5
  569. package/dist/composite/quote/elements/icon.d.ts.map +1 -1
  570. package/dist/composite/quote/elements/icon.js +37 -40
  571. package/dist/composite/quote/elements/icon.js.map +1 -1
  572. package/dist/composite/quote/elements/icon.mjs +37 -40
  573. package/dist/composite/quote/elements/icon.mjs.map +1 -1
  574. package/dist/composite/quote/elements/image.d.ts +1 -5
  575. package/dist/composite/quote/elements/image.d.ts.map +1 -1
  576. package/dist/composite/quote/elements/image.js +27 -35
  577. package/dist/composite/quote/elements/image.js.map +1 -1
  578. package/dist/composite/quote/elements/image.mjs +27 -35
  579. package/dist/composite/quote/elements/image.mjs.map +1 -1
  580. package/dist/composite/quote/elements/quote.d.ts +1 -5
  581. package/dist/composite/quote/elements/quote.d.ts.map +1 -1
  582. package/dist/composite/quote/elements/quote.js +37 -48
  583. package/dist/composite/quote/elements/quote.js.map +1 -1
  584. package/dist/composite/quote/elements/quote.mjs +35 -46
  585. package/dist/composite/quote/elements/quote.mjs.map +1 -1
  586. package/dist/composite/quote/elements/text.d.ts +1 -5
  587. package/dist/composite/quote/elements/text.d.ts.map +1 -1
  588. package/dist/composite/quote/elements/text.js +60 -73
  589. package/dist/composite/quote/elements/text.js.map +1 -1
  590. package/dist/composite/quote/elements/text.mjs +60 -73
  591. package/dist/composite/quote/elements/text.mjs.map +1 -1
  592. package/dist/composite/quote/featured.d.ts +2 -1
  593. package/dist/composite/quote/featured.d.ts.map +1 -1
  594. package/dist/composite/quote/featured.js +102 -135
  595. package/dist/composite/quote/featured.js.map +1 -1
  596. package/dist/composite/quote/featured.mjs +102 -135
  597. package/dist/composite/quote/featured.mjs.map +1 -1
  598. package/dist/composite/quote/helper/animation.d.ts +2 -2
  599. package/dist/composite/quote/helper/animation.d.ts.map +1 -1
  600. package/dist/composite/quote/helper/animation.js.map +1 -1
  601. package/dist/composite/quote/helper/animation.mjs.map +1 -1
  602. package/dist/composite/quote/inline.d.ts +2 -1
  603. package/dist/composite/quote/inline.d.ts.map +1 -1
  604. package/dist/composite/quote/inline.js +29 -45
  605. package/dist/composite/quote/inline.js.map +1 -1
  606. package/dist/composite/quote/inline.mjs +29 -45
  607. package/dist/composite/quote/inline.mjs.map +1 -1
  608. package/dist/composite/quote/statement.d.ts +1 -5
  609. package/dist/composite/quote/statement.d.ts.map +1 -1
  610. package/dist/composite/slider/events.js +1 -1
  611. package/dist/composite/slider/events.js.map +1 -1
  612. package/dist/composite/slider/events.mjs +1 -1
  613. package/dist/composite/slider/events.mjs.map +1 -1
  614. package/dist/composite/social/sharing.js +1 -1
  615. package/dist/composite/social/sharing.js.map +1 -1
  616. package/dist/composite/social/sharing.mjs +1 -1
  617. package/dist/composite/social/sharing.mjs.map +1 -1
  618. package/dist/composite/tabs/standard.d.ts.map +1 -1
  619. package/dist/composite/tabs/standard.js +3 -2
  620. package/dist/composite/tabs/standard.js.map +1 -1
  621. package/dist/composite/tabs/standard.mjs +3 -2
  622. package/dist/composite/tabs/standard.mjs.map +1 -1
  623. package/dist/index.d.ts +0 -1
  624. package/dist/index.d.ts.map +1 -1
  625. package/dist/index.js +0 -2
  626. package/dist/index.js.map +1 -1
  627. package/dist/index.mjs +1 -3
  628. package/dist/index.mjs.map +1 -1
  629. package/dist/layout/image.js +1 -1
  630. package/dist/layout/image.js.map +1 -1
  631. package/dist/layout/image.mjs +1 -1
  632. package/dist/layout/image.mjs.map +1 -1
  633. package/package.json +10 -9
  634. package/dist/model/elements/actions.d.ts +0 -62
  635. package/dist/model/elements/actions.d.ts.map +0 -1
  636. package/dist/model/elements/actions.js +0 -71
  637. package/dist/model/elements/actions.js.map +0 -1
  638. package/dist/model/elements/actions.mjs +0 -54
  639. package/dist/model/elements/actions.mjs.map +0 -1
  640. package/dist/model/elements/assets.d.ts +0 -30
  641. package/dist/model/elements/assets.d.ts.map +0 -1
  642. package/dist/model/elements/assets.js +0 -42
  643. package/dist/model/elements/assets.js.map +0 -1
  644. package/dist/model/elements/assets.mjs +0 -25
  645. package/dist/model/elements/assets.mjs.map +0 -1
  646. package/dist/model/elements/buttons.d.ts +0 -12
  647. package/dist/model/elements/buttons.d.ts.map +0 -1
  648. package/dist/model/elements/buttons.js +0 -26
  649. package/dist/model/elements/buttons.js.map +0 -1
  650. package/dist/model/elements/buttons.mjs +0 -9
  651. package/dist/model/elements/buttons.mjs.map +0 -1
  652. package/dist/model/elements/event.d.ts +0 -22
  653. package/dist/model/elements/event.d.ts.map +0 -1
  654. package/dist/model/elements/event.js +0 -30
  655. package/dist/model/elements/event.js.map +0 -1
  656. package/dist/model/elements/event.mjs +0 -13
  657. package/dist/model/elements/event.mjs.map +0 -1
  658. package/dist/model/elements/headline.d.ts +0 -67
  659. package/dist/model/elements/headline.d.ts.map +0 -1
  660. package/dist/model/elements/headline.js +0 -74
  661. package/dist/model/elements/headline.js.map +0 -1
  662. package/dist/model/elements/headline.mjs +0 -57
  663. package/dist/model/elements/headline.mjs.map +0 -1
  664. package/dist/model/elements/index.d.ts +0 -34
  665. package/dist/model/elements/index.d.ts.map +0 -1
  666. package/dist/model/elements/index.js +0 -37
  667. package/dist/model/elements/index.js.map +0 -1
  668. package/dist/model/elements/index.mjs +0 -37
  669. package/dist/model/elements/index.mjs.map +0 -1
  670. package/dist/model/elements/layout.d.ts +0 -64
  671. package/dist/model/elements/layout.d.ts.map +0 -1
  672. package/dist/model/elements/layout.js +0 -68
  673. package/dist/model/elements/layout.js.map +0 -1
  674. package/dist/model/elements/layout.mjs +0 -51
  675. package/dist/model/elements/layout.mjs.map +0 -1
  676. package/dist/model/elements/rich-text.d.ts +0 -27
  677. package/dist/model/elements/rich-text.d.ts.map +0 -1
  678. package/dist/model/elements/rich-text.js +0 -68
  679. package/dist/model/elements/rich-text.js.map +0 -1
  680. package/dist/model/elements/rich-text.mjs +0 -51
  681. package/dist/model/elements/rich-text.mjs.map +0 -1
  682. package/dist/model/elements/text.d.ts +0 -22
  683. package/dist/model/elements/text.d.ts.map +0 -1
  684. package/dist/model/elements/text.js +0 -30
  685. package/dist/model/elements/text.js.map +0 -1
  686. package/dist/model/elements/text.mjs +0 -13
  687. package/dist/model/elements/text.mjs.map +0 -1
  688. package/dist/model/index.d.ts +0 -2
  689. package/dist/model/index.d.ts.map +0 -1
  690. package/dist/model/modifiers/_types.d.ts +0 -41
  691. package/dist/model/modifiers/_types.d.ts.map +0 -1
  692. package/dist/model/modifiers/index.d.ts +0 -44
  693. package/dist/model/modifiers/index.d.ts.map +0 -1
  694. package/dist/model/modifiers/index.js +0 -136
  695. package/dist/model/modifiers/index.js.map +0 -1
  696. package/dist/model/modifiers/index.mjs +0 -136
  697. package/dist/model/modifiers/index.mjs.map +0 -1
  698. package/dist/model/modifiers/style.d.ts +0 -19
  699. package/dist/model/modifiers/style.d.ts.map +0 -1
  700. package/dist/model/modifiers/style.js +0 -122
  701. package/dist/model/modifiers/style.js.map +0 -1
  702. package/dist/model/modifiers/style.mjs +0 -105
  703. package/dist/model/modifiers/style.mjs.map +0 -1
  704. package/dist/model.d.ts +0 -2
  705. package/dist/model.js +0 -5
  706. package/dist/model.js.map +0 -1
  707. package/dist/model.mjs +0 -5
  708. package/dist/model.mjs.map +0 -1
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
- const token = require("@universityofmaryland/web-styles-library/token");
2
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
3
+ const token = require("@universityofmaryland/web-token-library");
3
4
  const typography = require("@universityofmaryland/web-styles-library/typography");
4
5
  const elementStyles = require("@universityofmaryland/web-styles-library/element");
5
6
  const performance = require("@universityofmaryland/web-utilities-library/performance");
6
- const index = require("../../../model/elements/index.js");
7
+ require("@universityofmaryland/web-styles-library/layout");
8
+ require("@universityofmaryland/web-styles-library/animation");
7
9
  require("@universityofmaryland/web-utilities-library/media");
8
10
  require("@universityofmaryland/web-utilities-library/dom");
9
11
  require("@universityofmaryland/web-icons-library/controls");
@@ -15,17 +17,17 @@ require("../../../atomic/animations/actions/indicator.js");
15
17
  const chevronFlow = require("../../../atomic/animations/brand/chevron-flow.js");
16
18
  require("../../../atomic/animations/brand/chevron-scroll.js");
17
19
  require("../../../atomic/animations/brand/card-stack.js");
20
+ require("@universityofmaryland/web-styles-library");
18
21
  const observedAutoPlay = require("../../../atomic/assets/video/observed-auto-play.js");
19
22
  require("@universityofmaryland/web-icons-library/location");
20
23
  require("@universityofmaryland/web-icons-library/calendar");
24
+ require("@universityofmaryland/web-utilities-library/theme");
21
25
  require("../../../atomic/layout/block/stacked.js");
22
26
  require("../../../atomic/layout/overlay/modal.js");
23
27
  require("../../../atomic/layout/person/columns.js");
24
28
  require("@universityofmaryland/web-icons-library/social");
25
29
  require("../../../atomic/text-lockup/date.js");
26
30
  require("../../../atomic/text-lockup/small.js");
27
- const headline = require("../../../model/elements/headline.js");
28
- const richText = require("../../../model/elements/rich-text.js");
29
31
  function _interopNamespaceDefault(e) {
30
32
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
31
33
  if (e) {
@@ -58,47 +60,45 @@ const ANIMATION_CONFIG = {
58
60
  EASING: "ease-in-out"
59
61
  }
60
62
  };
61
- const createHeadline = (headline$1) => {
62
- if (!headline$1) return null;
63
- return headline.campaignExtraLarge({
64
- element: headline$1,
65
- elementStyles: {
66
- element: {
67
- textTransform: "uppercase",
68
- opacity: 0,
69
- transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
70
- transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
71
- textWrap: "balance"
72
- },
73
- siblingAfter: {
74
- marginTop: token__namespace.spacing.md
75
- }
63
+ const createHeadline = (headline) => {
64
+ if (!headline) return null;
65
+ return new webBuilderLibrary.ElementBuilder(headline).styled(typography__namespace.campaign.extralarge).withStyles({
66
+ element: {
67
+ textTransform: "uppercase",
68
+ opacity: 0,
69
+ transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
70
+ transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
71
+ textWrap: "balance",
72
+ color: token__namespace.color.white
73
+ },
74
+ siblingAfter: {
75
+ marginTop: token__namespace.spacing.md
76
76
  }
77
- });
77
+ }).build();
78
78
  };
79
79
  const createText = (text) => {
80
80
  if (!text) return null;
81
- return richText.simpleLargest({
82
- element: text,
83
- elementStyles: {
84
- element: {
85
- maxWidth: "720px",
86
- marginLeft: "auto",
87
- marginRight: "auto",
88
- opacity: 0,
89
- transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
90
- transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
91
- [`@media (max-width: 649px)`]: {
92
- display: "none"
93
- }
81
+ return new webBuilderLibrary.ElementBuilder(text).styled(elementStyles__namespace.text.rich.simpleLargest).withStyles({
82
+ element: {
83
+ maxWidth: "720px",
84
+ marginLeft: "auto",
85
+ marginRight: "auto",
86
+ opacity: 0,
87
+ transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
88
+ transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
89
+ ["& p"]: {
90
+ color: token__namespace.color.white
91
+ },
92
+ [`@media (max-width: 649px)`]: {
93
+ display: "none"
94
94
  }
95
95
  }
96
- });
96
+ }).build();
97
97
  };
98
98
  const createTextChildren = (props) => {
99
- const { headline: headline2, text } = props;
99
+ const { headline, text } = props;
100
100
  const children = [];
101
- const headlineElement = createHeadline(headline2);
101
+ const headlineElement = createHeadline(headline);
102
102
  if (headlineElement) {
103
103
  children.push(headlineElement);
104
104
  }
@@ -111,41 +111,28 @@ const createTextChildren = (props) => {
111
111
  const createTextContainer = (props) => {
112
112
  const children = createTextChildren(props);
113
113
  if (children.length === 0) return null;
114
- const container = index.create({
115
- element: document.createElement("div"),
116
- className: "hero-logo-brand-text-container",
117
- children,
118
- elementStyles: {
119
- element: {
120
- zIndex: 99,
121
- textAlign: "center",
122
- width: `calc(100% - 24px)`,
123
- maxWidth: "950px",
124
- padding: `${token__namespace.spacing.xl} ${token__namespace.spacing.md}`,
125
- ["& *"]: {
126
- color: token__namespace.color.white
127
- }
128
- }
114
+ const container = new webBuilderLibrary.ElementBuilder().withClassName("hero-logo-brand-text-container").withChildren(...children).withStyles({
115
+ element: {
116
+ zIndex: 99,
117
+ textAlign: "center",
118
+ width: `calc(100% - 24px)`,
119
+ maxWidth: "950px",
120
+ padding: `${token__namespace.spacing.xl} ${token__namespace.spacing.md}`
129
121
  }
130
- });
131
- return index.create({
132
- element: document.createElement("div"),
133
- className: OVERLAY_CLASS,
134
- children: [container],
135
- elementStyles: {
136
- element: {
137
- height: "100%",
138
- width: "100%",
139
- display: "flex",
140
- justifyContent: "center",
141
- alignItems: "center",
142
- backgroundColor: "rgba(0, 0, 0, 0.6)",
143
- zIndex: 98,
144
- opacity: 0,
145
- transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
146
- }
122
+ }).build();
123
+ return new webBuilderLibrary.ElementBuilder().withClassName(OVERLAY_CLASS).withChild(container).withStyles({
124
+ element: {
125
+ height: "100%",
126
+ width: "100%",
127
+ display: "flex",
128
+ justifyContent: "center",
129
+ alignItems: "center",
130
+ backgroundColor: "rgba(0, 0, 0, 0.6)",
131
+ zIndex: 98,
132
+ opacity: 0,
133
+ transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
147
134
  }
148
- });
135
+ }).build();
149
136
  };
150
137
  const createVideo = (video) => {
151
138
  return observedAutoPlay({
@@ -165,14 +152,14 @@ const createAnimationSequence = (container) => {
165
152
  const overlay = container.querySelector(
166
153
  `.${OVERLAY_CLASS}`
167
154
  );
168
- const headline2 = container.querySelector(
155
+ const headline = container.querySelector(
169
156
  `.${typography__namespace.campaign.fonts.extraLarge.className}`
170
157
  );
171
158
  const text = container.querySelector(
172
159
  `.${elementStyles__namespace.text.rich.simpleLargest.className}`
173
160
  );
174
161
  if (overlay) overlay.style.opacity = "1";
175
- if (headline2) headline2.style.opacity = "1";
162
+ if (headline) headline.style.opacity = "1";
176
163
  if (text) text.style.opacity = "1";
177
164
  };
178
165
  };
@@ -191,49 +178,40 @@ const createEventHandlers = (composite, overlay) => {
191
178
  };
192
179
  const videoArrow = (props) => {
193
180
  const { video, isAnimationOnLoad } = props;
194
- const composite = index.create({
195
- element: document.createElement("section"),
196
- className: "umd-element-hero-brand-video",
197
- elementStyles: {
198
- element: {
199
- aspectRatio: "16 / 9",
200
- width: "100%"
201
- }
202
- }
203
- });
204
181
  const videoElement = createVideo(video);
205
182
  const textContainer = createTextContainer(props);
206
- const wrapperChildren = [videoElement];
207
- if (textContainer) {
208
- wrapperChildren.push(textContainer);
209
- }
210
- const wrapper = index.create({
211
- element: document.createElement("div"),
212
- className: "hero-logo-brand-video-wrapper",
213
- children: wrapperChildren,
214
- elementStyles: {
215
- element: {
216
- containerType: "inline-size",
217
- position: "relative",
218
- overflow: "hidden",
219
- height: "100%",
220
- width: "100%",
221
- display: "flex",
222
- alignItems: "center",
223
- justifyContent: "center"
224
- }
183
+ const composite = new webBuilderLibrary.ElementBuilder("section").withClassName("umd-element-hero-brand-video").withStyles({
184
+ element: {
185
+ aspectRatio: "16 / 9",
186
+ width: "100%"
187
+ }
188
+ }).build();
189
+ const wrapper = new webBuilderLibrary.ElementBuilder().withClassName("hero-logo-brand-video-wrapper").withChild(videoElement).withStyles({
190
+ element: {
191
+ containerType: "inline-size",
192
+ position: "relative",
193
+ overflow: "hidden",
194
+ height: "100%",
195
+ width: "100%",
196
+ display: "flex",
197
+ alignItems: "center",
198
+ justifyContent: "center"
225
199
  }
226
200
  });
201
+ if (textContainer) {
202
+ wrapper.withChild(textContainer);
203
+ }
204
+ const wrapperBuilt = wrapper.build();
227
205
  const overlay = chevronFlow({
228
206
  sizedContainer: composite.element,
229
- sizedWrapper: wrapper.element,
207
+ sizedWrapper: wrapperBuilt.element,
230
208
  completedCallback: createAnimationSequence(composite.element),
231
209
  isAnimationOnLoad
232
210
  });
233
- wrapper.element.appendChild(overlay.element);
234
- wrapper.styles += overlay.styles;
235
- composite.element.appendChild(wrapper.element);
236
- composite.styles += wrapper.styles;
211
+ wrapperBuilt.element.appendChild(overlay.element);
212
+ wrapperBuilt.styles += overlay.styles;
213
+ composite.element.appendChild(wrapperBuilt.element);
214
+ composite.styles += wrapperBuilt.styles;
237
215
  const events = createEventHandlers(composite, overlay);
238
216
  return {
239
217
  ...composite,
@@ -1 +1 @@
1
- {"version":3,"file":"video-arrow.js","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { ElementModel } from 'model';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementVisual } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return ElementModel.headline.campaignExtraLarge({\n element: headline,\n elementStyles: {\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n },\n });\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return ElementModel.richText.simpleLargest({\n element: text,\n elementStyles: {\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n },\n });\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementVisual[] => {\n const { headline, text } = props;\n const children: ElementVisual[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-text-container',\n children,\n elementStyles: {\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n\n ['& *']: {\n color: token.color.white,\n },\n },\n },\n });\n\n return ElementModel.create({\n element: document.createElement('div'),\n className: OVERLAY_CLASS,\n children: [container],\n elementStyles: {\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n },\n });\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementVisual,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const composite = ElementModel.create({\n element: document.createElement('section'),\n className: 'umd-element-hero-brand-video',\n elementStyles: {\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n },\n });\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const wrapperChildren: ElementVisual[] = [videoElement];\n if (textContainer) {\n wrapperChildren.push(textContainer);\n }\n\n const wrapper = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-video-wrapper',\n children: wrapperChildren,\n elementStyles: {\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n },\n });\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapper.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapper.element.appendChild(overlay.element);\n wrapper.styles += overlay.styles;\n\n composite.element.appendChild(wrapper.element);\n composite.styles += wrapper.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["headline","ElementModel.headline.campaignExtraLarge","token","ElementModel.richText.simpleLargest","ElementModel.create","assets.video.observedAutoPlay","typography","elementStyles","debounce","animations.brand.chevronFlow"],"mappings":"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"}
1
+ {"version":3,"file":"video-arrow.js","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementModel } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return new ElementBuilder(headline)\n .styled(typography.campaign.extralarge)\n .withStyles({\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n color: token.color.white,\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n })\n .build();\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return new ElementBuilder(text)\n .styled(elementStyles.text.rich.simpleLargest)\n .withStyles({\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n ['& p']: {\n color: token.color.white,\n },\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n })\n .build();\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementModel<HTMLElement>[] => {\n const { headline, text } = props;\n const children: ElementModel<HTMLElement>[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = new ElementBuilder()\n .withClassName('hero-logo-brand-text-container')\n .withChildren(...children)\n .withStyles({\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n },\n })\n .build();\n\n return new ElementBuilder()\n .withClassName(OVERLAY_CLASS)\n .withChild(container)\n .withStyles({\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n })\n .build();\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementModel<HTMLElement>,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const composite = new ElementBuilder('section')\n .withClassName('umd-element-hero-brand-video')\n .withStyles({\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n })\n .build();\n\n const wrapper = new ElementBuilder()\n .withClassName('hero-logo-brand-video-wrapper')\n .withChild(videoElement)\n .withStyles({\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n });\n\n if (textContainer) {\n wrapper.withChild(textContainer);\n }\n\n const wrapperBuilt = wrapper.build();\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapperBuilt.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapperBuilt.element.appendChild(overlay.element);\n wrapperBuilt.styles += overlay.styles;\n\n composite.element.appendChild(wrapperBuilt.element);\n composite.styles += wrapperBuilt.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["ElementBuilder","typography","token","elementStyles","assets.video.observedAutoPlay","debounce","animations.brand.chevronFlow"],"mappings":"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"}
@@ -1,8 +1,10 @@
1
- import * as token from "@universityofmaryland/web-styles-library/token";
1
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
2
+ import * as token from "@universityofmaryland/web-token-library";
2
3
  import * as typography from "@universityofmaryland/web-styles-library/typography";
3
4
  import * as elementStyles from "@universityofmaryland/web-styles-library/element";
4
5
  import { debounce } from "@universityofmaryland/web-utilities-library/performance";
5
- import { create } from "../../../model/elements/index.mjs";
6
+ import "@universityofmaryland/web-styles-library/layout";
7
+ import "@universityofmaryland/web-styles-library/animation";
6
8
  import "@universityofmaryland/web-utilities-library/media";
7
9
  import "@universityofmaryland/web-utilities-library/dom";
8
10
  import "@universityofmaryland/web-icons-library/controls";
@@ -14,17 +16,17 @@ import "../../../atomic/animations/actions/indicator.mjs";
14
16
  import chevronFlow from "../../../atomic/animations/brand/chevron-flow.mjs";
15
17
  import "../../../atomic/animations/brand/chevron-scroll.mjs";
16
18
  import "../../../atomic/animations/brand/card-stack.mjs";
19
+ import "@universityofmaryland/web-styles-library";
17
20
  import observedAutoPlay from "../../../atomic/assets/video/observed-auto-play.mjs";
18
21
  import "@universityofmaryland/web-icons-library/location";
19
22
  import "@universityofmaryland/web-icons-library/calendar";
23
+ import "@universityofmaryland/web-utilities-library/theme";
20
24
  import "../../../atomic/layout/block/stacked.mjs";
21
25
  import "../../../atomic/layout/overlay/modal.mjs";
22
26
  import "../../../atomic/layout/person/columns.mjs";
23
27
  import "@universityofmaryland/web-icons-library/social";
24
28
  import "../../../atomic/text-lockup/date.mjs";
25
29
  import "../../../atomic/text-lockup/small.mjs";
26
- import { campaignExtraLarge } from "../../../model/elements/headline.mjs";
27
- import { simpleLargest } from "../../../model/elements/rich-text.mjs";
28
30
  const OVERLAY_CLASS = "hero-logo-brand-text-overlay";
29
31
  const ANIMATION_CONFIG = {
30
32
  TEXT_FADE: {
@@ -40,40 +42,38 @@ const ANIMATION_CONFIG = {
40
42
  };
41
43
  const createHeadline = (headline) => {
42
44
  if (!headline) return null;
43
- return campaignExtraLarge({
44
- element: headline,
45
- elementStyles: {
46
- element: {
47
- textTransform: "uppercase",
48
- opacity: 0,
49
- transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
50
- transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
51
- textWrap: "balance"
52
- },
53
- siblingAfter: {
54
- marginTop: token.spacing.md
55
- }
45
+ return new ElementBuilder(headline).styled(typography.campaign.extralarge).withStyles({
46
+ element: {
47
+ textTransform: "uppercase",
48
+ opacity: 0,
49
+ transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
50
+ transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
51
+ textWrap: "balance",
52
+ color: token.color.white
53
+ },
54
+ siblingAfter: {
55
+ marginTop: token.spacing.md
56
56
  }
57
- });
57
+ }).build();
58
58
  };
59
59
  const createText = (text) => {
60
60
  if (!text) return null;
61
- return simpleLargest({
62
- element: text,
63
- elementStyles: {
64
- element: {
65
- maxWidth: "720px",
66
- marginLeft: "auto",
67
- marginRight: "auto",
68
- opacity: 0,
69
- transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
70
- transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
71
- [`@media (max-width: 649px)`]: {
72
- display: "none"
73
- }
61
+ return new ElementBuilder(text).styled(elementStyles.text.rich.simpleLargest).withStyles({
62
+ element: {
63
+ maxWidth: "720px",
64
+ marginLeft: "auto",
65
+ marginRight: "auto",
66
+ opacity: 0,
67
+ transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
68
+ transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
69
+ ["& p"]: {
70
+ color: token.color.white
71
+ },
72
+ [`@media (max-width: 649px)`]: {
73
+ display: "none"
74
74
  }
75
75
  }
76
- });
76
+ }).build();
77
77
  };
78
78
  const createTextChildren = (props) => {
79
79
  const { headline, text } = props;
@@ -91,41 +91,28 @@ const createTextChildren = (props) => {
91
91
  const createTextContainer = (props) => {
92
92
  const children = createTextChildren(props);
93
93
  if (children.length === 0) return null;
94
- const container = create({
95
- element: document.createElement("div"),
96
- className: "hero-logo-brand-text-container",
97
- children,
98
- elementStyles: {
99
- element: {
100
- zIndex: 99,
101
- textAlign: "center",
102
- width: `calc(100% - 24px)`,
103
- maxWidth: "950px",
104
- padding: `${token.spacing.xl} ${token.spacing.md}`,
105
- ["& *"]: {
106
- color: token.color.white
107
- }
108
- }
94
+ const container = new ElementBuilder().withClassName("hero-logo-brand-text-container").withChildren(...children).withStyles({
95
+ element: {
96
+ zIndex: 99,
97
+ textAlign: "center",
98
+ width: `calc(100% - 24px)`,
99
+ maxWidth: "950px",
100
+ padding: `${token.spacing.xl} ${token.spacing.md}`
109
101
  }
110
- });
111
- return create({
112
- element: document.createElement("div"),
113
- className: OVERLAY_CLASS,
114
- children: [container],
115
- elementStyles: {
116
- element: {
117
- height: "100%",
118
- width: "100%",
119
- display: "flex",
120
- justifyContent: "center",
121
- alignItems: "center",
122
- backgroundColor: "rgba(0, 0, 0, 0.6)",
123
- zIndex: 98,
124
- opacity: 0,
125
- transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
126
- }
102
+ }).build();
103
+ return new ElementBuilder().withClassName(OVERLAY_CLASS).withChild(container).withStyles({
104
+ element: {
105
+ height: "100%",
106
+ width: "100%",
107
+ display: "flex",
108
+ justifyContent: "center",
109
+ alignItems: "center",
110
+ backgroundColor: "rgba(0, 0, 0, 0.6)",
111
+ zIndex: 98,
112
+ opacity: 0,
113
+ transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
127
114
  }
128
- });
115
+ }).build();
129
116
  };
130
117
  const createVideo = (video) => {
131
118
  return observedAutoPlay({
@@ -171,49 +158,40 @@ const createEventHandlers = (composite, overlay) => {
171
158
  };
172
159
  const videoArrow = (props) => {
173
160
  const { video, isAnimationOnLoad } = props;
174
- const composite = create({
175
- element: document.createElement("section"),
176
- className: "umd-element-hero-brand-video",
177
- elementStyles: {
178
- element: {
179
- aspectRatio: "16 / 9",
180
- width: "100%"
181
- }
182
- }
183
- });
184
161
  const videoElement = createVideo(video);
185
162
  const textContainer = createTextContainer(props);
186
- const wrapperChildren = [videoElement];
187
- if (textContainer) {
188
- wrapperChildren.push(textContainer);
189
- }
190
- const wrapper = create({
191
- element: document.createElement("div"),
192
- className: "hero-logo-brand-video-wrapper",
193
- children: wrapperChildren,
194
- elementStyles: {
195
- element: {
196
- containerType: "inline-size",
197
- position: "relative",
198
- overflow: "hidden",
199
- height: "100%",
200
- width: "100%",
201
- display: "flex",
202
- alignItems: "center",
203
- justifyContent: "center"
204
- }
163
+ const composite = new ElementBuilder("section").withClassName("umd-element-hero-brand-video").withStyles({
164
+ element: {
165
+ aspectRatio: "16 / 9",
166
+ width: "100%"
167
+ }
168
+ }).build();
169
+ const wrapper = new ElementBuilder().withClassName("hero-logo-brand-video-wrapper").withChild(videoElement).withStyles({
170
+ element: {
171
+ containerType: "inline-size",
172
+ position: "relative",
173
+ overflow: "hidden",
174
+ height: "100%",
175
+ width: "100%",
176
+ display: "flex",
177
+ alignItems: "center",
178
+ justifyContent: "center"
205
179
  }
206
180
  });
181
+ if (textContainer) {
182
+ wrapper.withChild(textContainer);
183
+ }
184
+ const wrapperBuilt = wrapper.build();
207
185
  const overlay = chevronFlow({
208
186
  sizedContainer: composite.element,
209
- sizedWrapper: wrapper.element,
187
+ sizedWrapper: wrapperBuilt.element,
210
188
  completedCallback: createAnimationSequence(composite.element),
211
189
  isAnimationOnLoad
212
190
  });
213
- wrapper.element.appendChild(overlay.element);
214
- wrapper.styles += overlay.styles;
215
- composite.element.appendChild(wrapper.element);
216
- composite.styles += wrapper.styles;
191
+ wrapperBuilt.element.appendChild(overlay.element);
192
+ wrapperBuilt.styles += overlay.styles;
193
+ composite.element.appendChild(wrapperBuilt.element);
194
+ composite.styles += wrapperBuilt.styles;
217
195
  const events = createEventHandlers(composite, overlay);
218
196
  return {
219
197
  ...composite,
@@ -1 +1 @@
1
- {"version":3,"file":"video-arrow.mjs","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { ElementModel } from 'model';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementVisual } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return ElementModel.headline.campaignExtraLarge({\n element: headline,\n elementStyles: {\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n },\n });\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return ElementModel.richText.simpleLargest({\n element: text,\n elementStyles: {\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n },\n });\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementVisual[] => {\n const { headline, text } = props;\n const children: ElementVisual[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-text-container',\n children,\n elementStyles: {\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n\n ['& *']: {\n color: token.color.white,\n },\n },\n },\n });\n\n return ElementModel.create({\n element: document.createElement('div'),\n className: OVERLAY_CLASS,\n children: [container],\n elementStyles: {\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n },\n });\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementVisual,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const composite = ElementModel.create({\n element: document.createElement('section'),\n className: 'umd-element-hero-brand-video',\n elementStyles: {\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n },\n });\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const wrapperChildren: ElementVisual[] = [videoElement];\n if (textContainer) {\n wrapperChildren.push(textContainer);\n }\n\n const wrapper = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-video-wrapper',\n children: wrapperChildren,\n elementStyles: {\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n },\n });\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapper.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapper.element.appendChild(overlay.element);\n wrapper.styles += overlay.styles;\n\n composite.element.appendChild(wrapper.element);\n composite.styles += wrapper.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["ElementModel.headline.campaignExtraLarge","ElementModel.richText.simpleLargest","ElementModel.create","assets.video.observedAutoPlay","animations.brand.chevronFlow"],"mappings":"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"}
1
+ {"version":3,"file":"video-arrow.mjs","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementModel } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return new ElementBuilder(headline)\n .styled(typography.campaign.extralarge)\n .withStyles({\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n color: token.color.white,\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n })\n .build();\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return new ElementBuilder(text)\n .styled(elementStyles.text.rich.simpleLargest)\n .withStyles({\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n ['& p']: {\n color: token.color.white,\n },\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n })\n .build();\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementModel<HTMLElement>[] => {\n const { headline, text } = props;\n const children: ElementModel<HTMLElement>[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = new ElementBuilder()\n .withClassName('hero-logo-brand-text-container')\n .withChildren(...children)\n .withStyles({\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n },\n })\n .build();\n\n return new ElementBuilder()\n .withClassName(OVERLAY_CLASS)\n .withChild(container)\n .withStyles({\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n })\n .build();\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementModel<HTMLElement>,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const composite = new ElementBuilder('section')\n .withClassName('umd-element-hero-brand-video')\n .withStyles({\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n })\n .build();\n\n const wrapper = new ElementBuilder()\n .withClassName('hero-logo-brand-video-wrapper')\n .withChild(videoElement)\n .withStyles({\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n });\n\n if (textContainer) {\n wrapper.withChild(textContainer);\n }\n\n const wrapperBuilt = wrapper.build();\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapperBuilt.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapperBuilt.element.appendChild(overlay.element);\n wrapperBuilt.styles += overlay.styles;\n\n composite.element.appendChild(wrapperBuilt.element);\n composite.styles += wrapperBuilt.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["assets.video.observedAutoPlay","animations.brand.chevronFlow"],"mappings":"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"}
@@ -1,8 +1,4 @@
1
1
  import { HeroLogoProps } from './_types';
2
- declare const _default: (props: HeroLogoProps) => {
3
- element: HTMLElement;
4
- className: string;
5
- styles: string;
6
- };
2
+ declare const _default: (props: HeroLogoProps) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
7
3
  export default _default;
8
4
  //# sourceMappingURL=logo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../source/composite/hero/logo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;yBAyH9B,OAAO,aAAa;;;;;AAApC,wBA8BE"}
1
+ {"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../source/composite/hero/logo.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;yBA2H9B,OAAO,aAAa;AAApC,wBA8BE"}