@universityofmaryland/web-elements-library 1.5.2 → 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 (710) 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/_types.d.ts +1 -0
  281. package/dist/composite/footer/_types.d.ts.map +1 -1
  282. package/dist/composite/footer/elements/main-section/call-to-action.d.ts +2 -2
  283. package/dist/composite/footer/elements/main-section/call-to-action.d.ts.map +1 -1
  284. package/dist/composite/footer/elements/main-section/call-to-action.js +19 -28
  285. package/dist/composite/footer/elements/main-section/call-to-action.js.map +1 -1
  286. package/dist/composite/footer/elements/main-section/call-to-action.mjs +18 -28
  287. package/dist/composite/footer/elements/main-section/call-to-action.mjs.map +1 -1
  288. package/dist/composite/footer/elements/main-section/campaign.d.ts +3 -3
  289. package/dist/composite/footer/elements/main-section/campaign.d.ts.map +1 -1
  290. package/dist/composite/footer/elements/main-section/campaign.js +51 -32
  291. package/dist/composite/footer/elements/main-section/campaign.js.map +1 -1
  292. package/dist/composite/footer/elements/main-section/campaign.mjs +51 -32
  293. package/dist/composite/footer/elements/main-section/campaign.mjs.map +1 -1
  294. package/dist/composite/footer/elements/main-section/index.d.ts +2 -2
  295. package/dist/composite/footer/elements/main-section/index.d.ts.map +1 -1
  296. package/dist/composite/footer/elements/main-section/index.js +38 -50
  297. package/dist/composite/footer/elements/main-section/index.js.map +1 -1
  298. package/dist/composite/footer/elements/main-section/index.mjs +38 -50
  299. package/dist/composite/footer/elements/main-section/index.mjs.map +1 -1
  300. package/dist/composite/footer/elements/main-section/row-links/index.d.ts +2 -2
  301. package/dist/composite/footer/elements/main-section/row-links/index.d.ts.map +1 -1
  302. package/dist/composite/footer/elements/main-section/row-links/index.js +24 -36
  303. package/dist/composite/footer/elements/main-section/row-links/index.js.map +1 -1
  304. package/dist/composite/footer/elements/main-section/row-links/index.mjs +24 -36
  305. package/dist/composite/footer/elements/main-section/row-links/index.mjs.map +1 -1
  306. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts +2 -2
  307. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts.map +1 -1
  308. package/dist/composite/footer/elements/main-section/row-links/link-columns.js +75 -95
  309. package/dist/composite/footer/elements/main-section/row-links/link-columns.js.map +1 -1
  310. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs +73 -93
  311. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs.map +1 -1
  312. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts +2 -2
  313. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts.map +1 -1
  314. package/dist/composite/footer/elements/main-section/row-logo/contact.js +88 -98
  315. package/dist/composite/footer/elements/main-section/row-logo/contact.js.map +1 -1
  316. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs +88 -98
  317. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs.map +1 -1
  318. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts +2 -2
  319. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts.map +1 -1
  320. package/dist/composite/footer/elements/main-section/row-logo/index.js +30 -43
  321. package/dist/composite/footer/elements/main-section/row-logo/index.js.map +1 -1
  322. package/dist/composite/footer/elements/main-section/row-logo/index.mjs +30 -43
  323. package/dist/composite/footer/elements/main-section/row-logo/index.mjs.map +1 -1
  324. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts +2 -2
  325. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts.map +1 -1
  326. package/dist/composite/footer/elements/main-section/row-logo/logo.js +24 -32
  327. package/dist/composite/footer/elements/main-section/row-logo/logo.js.map +1 -1
  328. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs +24 -32
  329. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs.map +1 -1
  330. package/dist/composite/footer/elements/main-section/social.d.ts +2 -2
  331. package/dist/composite/footer/elements/main-section/social.d.ts.map +1 -1
  332. package/dist/composite/footer/elements/main-section/social.js +74 -97
  333. package/dist/composite/footer/elements/main-section/social.js.map +1 -1
  334. package/dist/composite/footer/elements/main-section/social.mjs +74 -97
  335. package/dist/composite/footer/elements/main-section/social.mjs.map +1 -1
  336. package/dist/composite/footer/elements/utility-section/index.d.ts +3 -4
  337. package/dist/composite/footer/elements/utility-section/index.d.ts.map +1 -1
  338. package/dist/composite/footer/elements/utility-section/index.js +56 -84
  339. package/dist/composite/footer/elements/utility-section/index.js.map +1 -1
  340. package/dist/composite/footer/elements/utility-section/index.mjs +56 -84
  341. package/dist/composite/footer/elements/utility-section/index.mjs.map +1 -1
  342. package/dist/composite/footer/options.d.ts +1 -4
  343. package/dist/composite/footer/options.d.ts.map +1 -1
  344. package/dist/composite/footer/options.js +19 -27
  345. package/dist/composite/footer/options.js.map +1 -1
  346. package/dist/composite/footer/options.mjs +19 -27
  347. package/dist/composite/footer/options.mjs.map +1 -1
  348. package/dist/composite/hero/_types.d.ts.map +1 -1
  349. package/dist/composite/hero/custom/expand.d.ts +3 -2
  350. package/dist/composite/hero/custom/expand.d.ts.map +1 -1
  351. package/dist/composite/hero/custom/expand.js +151 -192
  352. package/dist/composite/hero/custom/expand.js.map +1 -1
  353. package/dist/composite/hero/custom/expand.mjs +145 -187
  354. package/dist/composite/hero/custom/expand.mjs.map +1 -1
  355. package/dist/composite/hero/custom/grid.d.ts +1 -5
  356. package/dist/composite/hero/custom/grid.d.ts.map +1 -1
  357. package/dist/composite/hero/custom/grid.js +122 -171
  358. package/dist/composite/hero/custom/grid.js.map +1 -1
  359. package/dist/composite/hero/custom/grid.mjs +116 -166
  360. package/dist/composite/hero/custom/grid.mjs.map +1 -1
  361. package/dist/composite/hero/custom/video-arrow.d.ts +2 -1
  362. package/dist/composite/hero/custom/video-arrow.d.ts.map +1 -1
  363. package/dist/composite/hero/custom/video-arrow.js +83 -105
  364. package/dist/composite/hero/custom/video-arrow.js.map +1 -1
  365. package/dist/composite/hero/custom/video-arrow.mjs +77 -99
  366. package/dist/composite/hero/custom/video-arrow.mjs.map +1 -1
  367. package/dist/composite/hero/logo.d.ts +1 -5
  368. package/dist/composite/hero/logo.d.ts.map +1 -1
  369. package/dist/composite/hero/logo.js +71 -89
  370. package/dist/composite/hero/logo.js.map +1 -1
  371. package/dist/composite/hero/logo.mjs +68 -87
  372. package/dist/composite/hero/logo.mjs.map +1 -1
  373. package/dist/composite/hero/minimal.d.ts +1 -5
  374. package/dist/composite/hero/minimal.d.ts.map +1 -1
  375. package/dist/composite/hero/minimal.js +67 -86
  376. package/dist/composite/hero/minimal.js.map +1 -1
  377. package/dist/composite/hero/minimal.mjs +63 -83
  378. package/dist/composite/hero/minimal.mjs.map +1 -1
  379. package/dist/composite/hero/overlay.d.ts +1 -5
  380. package/dist/composite/hero/overlay.d.ts.map +1 -1
  381. package/dist/composite/hero/overlay.js +107 -135
  382. package/dist/composite/hero/overlay.js.map +1 -1
  383. package/dist/composite/hero/overlay.mjs +103 -132
  384. package/dist/composite/hero/overlay.mjs.map +1 -1
  385. package/dist/composite/hero/stacked.d.ts +1 -5
  386. package/dist/composite/hero/stacked.d.ts.map +1 -1
  387. package/dist/composite/hero/stacked.js +114 -137
  388. package/dist/composite/hero/stacked.js.map +1 -1
  389. package/dist/composite/hero/stacked.mjs +110 -134
  390. package/dist/composite/hero/stacked.mjs.map +1 -1
  391. package/dist/composite/hero/standard.d.ts +1 -5
  392. package/dist/composite/hero/standard.d.ts.map +1 -1
  393. package/dist/composite/hero/standard.js +103 -116
  394. package/dist/composite/hero/standard.js.map +1 -1
  395. package/dist/composite/hero/standard.mjs +100 -114
  396. package/dist/composite/hero/standard.mjs.map +1 -1
  397. package/dist/composite/layout/box/logo.js +1 -1
  398. package/dist/composite/layout/box/logo.js.map +1 -1
  399. package/dist/composite/layout/box/logo.mjs +1 -1
  400. package/dist/composite/layout/box/logo.mjs.map +1 -1
  401. package/dist/composite/layout/image/expand.js +1 -1
  402. package/dist/composite/layout/image/expand.js.map +1 -1
  403. package/dist/composite/layout/image/expand.mjs +1 -1
  404. package/dist/composite/layout/image/expand.mjs.map +1 -1
  405. package/dist/composite/layout/scroll-top/index.js +1 -1
  406. package/dist/composite/layout/scroll-top/index.js.map +1 -1
  407. package/dist/composite/layout/scroll-top/index.mjs +1 -1
  408. package/dist/composite/layout/scroll-top/index.mjs.map +1 -1
  409. package/dist/composite/layout/section-intro/small.d.ts +2 -1
  410. package/dist/composite/layout/section-intro/small.d.ts.map +1 -1
  411. package/dist/composite/layout/section-intro/small.js +97 -107
  412. package/dist/composite/layout/section-intro/small.js.map +1 -1
  413. package/dist/composite/layout/section-intro/small.mjs +95 -106
  414. package/dist/composite/layout/section-intro/small.mjs.map +1 -1
  415. package/dist/composite/layout/section-intro/wide.d.ts +2 -2
  416. package/dist/composite/layout/section-intro/wide.d.ts.map +1 -1
  417. package/dist/composite/layout/section-intro/wide.js +40 -53
  418. package/dist/composite/layout/section-intro/wide.js.map +1 -1
  419. package/dist/composite/layout/section-intro/wide.mjs +39 -53
  420. package/dist/composite/layout/section-intro/wide.mjs.map +1 -1
  421. package/dist/composite/layout/sticky-columns/index.js +1 -1
  422. package/dist/composite/layout/sticky-columns/index.js.map +1 -1
  423. package/dist/composite/layout/sticky-columns/index.mjs +1 -1
  424. package/dist/composite/layout/sticky-columns/index.mjs.map +1 -1
  425. package/dist/composite/media/elements/caption.js +1 -1
  426. package/dist/composite/media/elements/caption.js.map +1 -1
  427. package/dist/composite/media/elements/caption.mjs +1 -1
  428. package/dist/composite/media/elements/caption.mjs.map +1 -1
  429. package/dist/composite/media/elements/gif.d.ts +3 -2
  430. package/dist/composite/media/elements/gif.d.ts.map +1 -1
  431. package/dist/composite/media/elements/gif.js +25 -27
  432. package/dist/composite/media/elements/gif.js.map +1 -1
  433. package/dist/composite/media/elements/gif.mjs +25 -27
  434. package/dist/composite/media/elements/gif.mjs.map +1 -1
  435. package/dist/composite/media/inline/caption.js +2 -2
  436. package/dist/composite/media/inline/caption.js.map +1 -1
  437. package/dist/composite/media/inline/caption.mjs +2 -2
  438. package/dist/composite/media/inline/caption.mjs.map +1 -1
  439. package/dist/composite/media/inline/wrapped.js +2 -2
  440. package/dist/composite/media/inline/wrapped.js.map +1 -1
  441. package/dist/composite/media/inline/wrapped.mjs +2 -2
  442. package/dist/composite/media/inline/wrapped.mjs.map +1 -1
  443. package/dist/composite/navigation/elements/breadcrumb/index.js +1 -1
  444. package/dist/composite/navigation/elements/breadcrumb/index.js.map +1 -1
  445. package/dist/composite/navigation/elements/breadcrumb/index.mjs +1 -1
  446. package/dist/composite/navigation/elements/breadcrumb/index.mjs.map +1 -1
  447. package/dist/composite/navigation/elements/drawer/index.js +1 -1
  448. package/dist/composite/navigation/elements/drawer/index.js.map +1 -1
  449. package/dist/composite/navigation/elements/drawer/index.mjs +1 -1
  450. package/dist/composite/navigation/elements/drawer/index.mjs.map +1 -1
  451. package/dist/composite/navigation/elements/item/index.js +1 -1
  452. package/dist/composite/navigation/elements/item/index.js.map +1 -1
  453. package/dist/composite/navigation/elements/item/index.mjs +1 -1
  454. package/dist/composite/navigation/elements/item/index.mjs.map +1 -1
  455. package/dist/composite/navigation/elements/menu-button/index.js +1 -1
  456. package/dist/composite/navigation/elements/menu-button/index.js.map +1 -1
  457. package/dist/composite/navigation/elements/menu-button/index.mjs +1 -1
  458. package/dist/composite/navigation/elements/menu-button/index.mjs.map +1 -1
  459. package/dist/composite/navigation/elements/slider/action.js +1 -1
  460. package/dist/composite/navigation/elements/slider/action.js.map +1 -1
  461. package/dist/composite/navigation/elements/slider/action.mjs +1 -1
  462. package/dist/composite/navigation/elements/slider/action.mjs.map +1 -1
  463. package/dist/composite/navigation/elements/slider/index.js +1 -1
  464. package/dist/composite/navigation/elements/slider/index.js.map +1 -1
  465. package/dist/composite/navigation/elements/slider/index.mjs +1 -1
  466. package/dist/composite/navigation/elements/slider/index.mjs.map +1 -1
  467. package/dist/composite/navigation/elements/slider/slide-first.js +1 -1
  468. package/dist/composite/navigation/elements/slider/slide-first.js.map +1 -1
  469. package/dist/composite/navigation/elements/slider/slide-first.mjs +1 -1
  470. package/dist/composite/navigation/elements/slider/slide-first.mjs.map +1 -1
  471. package/dist/composite/navigation/elements/slider/slides.js +1 -1
  472. package/dist/composite/navigation/elements/slider/slides.js.map +1 -1
  473. package/dist/composite/navigation/elements/slider/slides.mjs +1 -1
  474. package/dist/composite/navigation/elements/slider/slides.mjs.map +1 -1
  475. package/dist/composite/navigation/header.js +1 -1
  476. package/dist/composite/navigation/header.js.map +1 -1
  477. package/dist/composite/navigation/header.mjs +1 -1
  478. package/dist/composite/navigation/header.mjs.map +1 -1
  479. package/dist/composite/navigation/utility/alert.js +8 -4
  480. package/dist/composite/navigation/utility/alert.js.map +1 -1
  481. package/dist/composite/navigation/utility/alert.mjs +8 -4
  482. package/dist/composite/navigation/utility/alert.mjs.map +1 -1
  483. package/dist/composite/navigation/utility/index.d.ts.map +1 -1
  484. package/dist/composite/navigation/utility/index.js +90 -13
  485. package/dist/composite/navigation/utility/index.js.map +1 -1
  486. package/dist/composite/navigation/utility/index.mjs +90 -13
  487. package/dist/composite/navigation/utility/index.mjs.map +1 -1
  488. package/dist/composite/navigation/utility/search.js +1 -1
  489. package/dist/composite/navigation/utility/search.js.map +1 -1
  490. package/dist/composite/navigation/utility/search.mjs +1 -1
  491. package/dist/composite/navigation/utility/search.mjs.map +1 -1
  492. package/dist/composite/pathway/_common.d.ts +4 -20
  493. package/dist/composite/pathway/_common.d.ts.map +1 -1
  494. package/dist/composite/pathway/_common.js +62 -64
  495. package/dist/composite/pathway/_common.js.map +1 -1
  496. package/dist/composite/pathway/_common.mjs +56 -60
  497. package/dist/composite/pathway/_common.mjs.map +1 -1
  498. package/dist/composite/pathway/hero.d.ts +1 -5
  499. package/dist/composite/pathway/hero.d.ts.map +1 -1
  500. package/dist/composite/pathway/hero.js +119 -140
  501. package/dist/composite/pathway/hero.js.map +1 -1
  502. package/dist/composite/pathway/hero.mjs +113 -135
  503. package/dist/composite/pathway/hero.mjs.map +1 -1
  504. package/dist/composite/pathway/highlight.d.ts +1 -5
  505. package/dist/composite/pathway/highlight.d.ts.map +1 -1
  506. package/dist/composite/pathway/highlight.js +99 -129
  507. package/dist/composite/pathway/highlight.js.map +1 -1
  508. package/dist/composite/pathway/highlight.mjs +98 -129
  509. package/dist/composite/pathway/highlight.mjs.map +1 -1
  510. package/dist/composite/pathway/overlay.d.ts +2 -1
  511. package/dist/composite/pathway/overlay.d.ts.map +1 -1
  512. package/dist/composite/pathway/overlay.js +125 -153
  513. package/dist/composite/pathway/overlay.js.map +1 -1
  514. package/dist/composite/pathway/overlay.mjs +122 -151
  515. package/dist/composite/pathway/overlay.mjs.map +1 -1
  516. package/dist/composite/pathway/standard.d.ts +2 -1
  517. package/dist/composite/pathway/standard.d.ts.map +1 -1
  518. package/dist/composite/pathway/standard.js +96 -123
  519. package/dist/composite/pathway/standard.js.map +1 -1
  520. package/dist/composite/pathway/standard.mjs +95 -123
  521. package/dist/composite/pathway/standard.mjs.map +1 -1
  522. package/dist/composite/pathway/sticky.d.ts +1 -5
  523. package/dist/composite/pathway/sticky.d.ts.map +1 -1
  524. package/dist/composite/pathway/sticky.js +91 -116
  525. package/dist/composite/pathway/sticky.js.map +1 -1
  526. package/dist/composite/pathway/sticky.mjs +88 -114
  527. package/dist/composite/pathway/sticky.mjs.map +1 -1
  528. package/dist/composite/person/bio/full.d.ts +2 -5
  529. package/dist/composite/person/bio/full.d.ts.map +1 -1
  530. package/dist/composite/person/bio/full.js +53 -57
  531. package/dist/composite/person/bio/full.js.map +1 -1
  532. package/dist/composite/person/bio/full.mjs +52 -57
  533. package/dist/composite/person/bio/full.mjs.map +1 -1
  534. package/dist/composite/person/bio/small.d.ts +2 -5
  535. package/dist/composite/person/bio/small.d.ts.map +1 -1
  536. package/dist/composite/person/bio/small.js +85 -98
  537. package/dist/composite/person/bio/small.js.map +1 -1
  538. package/dist/composite/person/bio/small.mjs +84 -98
  539. package/dist/composite/person/bio/small.mjs.map +1 -1
  540. package/dist/composite/person/block.d.ts +2 -5
  541. package/dist/composite/person/block.d.ts.map +1 -1
  542. package/dist/composite/person/block.js +34 -42
  543. package/dist/composite/person/block.js.map +1 -1
  544. package/dist/composite/person/block.mjs +34 -42
  545. package/dist/composite/person/block.mjs.map +1 -1
  546. package/dist/composite/person/hero.d.ts +2 -5
  547. package/dist/composite/person/hero.d.ts.map +1 -1
  548. package/dist/composite/person/hero.js +160 -220
  549. package/dist/composite/person/hero.js.map +1 -1
  550. package/dist/composite/person/hero.mjs +159 -220
  551. package/dist/composite/person/hero.mjs.map +1 -1
  552. package/dist/composite/person/list.d.ts +2 -5
  553. package/dist/composite/person/list.d.ts.map +1 -1
  554. package/dist/composite/person/list.js +19 -19
  555. package/dist/composite/person/list.js.map +1 -1
  556. package/dist/composite/person/list.mjs +19 -19
  557. package/dist/composite/person/list.mjs.map +1 -1
  558. package/dist/composite/person/tabular.d.ts +2 -5
  559. package/dist/composite/person/tabular.d.ts.map +1 -1
  560. package/dist/composite/person/tabular.js +40 -36
  561. package/dist/composite/person/tabular.js.map +1 -1
  562. package/dist/composite/person/tabular.mjs +38 -36
  563. package/dist/composite/person/tabular.mjs.map +1 -1
  564. package/dist/composite/quote/elements/action.d.ts +1 -5
  565. package/dist/composite/quote/elements/action.d.ts.map +1 -1
  566. package/dist/composite/quote/elements/action.js +13 -17
  567. package/dist/composite/quote/elements/action.js.map +1 -1
  568. package/dist/composite/quote/elements/action.mjs +13 -17
  569. package/dist/composite/quote/elements/action.mjs.map +1 -1
  570. package/dist/composite/quote/elements/icon.d.ts +1 -5
  571. package/dist/composite/quote/elements/icon.d.ts.map +1 -1
  572. package/dist/composite/quote/elements/icon.js +37 -40
  573. package/dist/composite/quote/elements/icon.js.map +1 -1
  574. package/dist/composite/quote/elements/icon.mjs +37 -40
  575. package/dist/composite/quote/elements/icon.mjs.map +1 -1
  576. package/dist/composite/quote/elements/image.d.ts +1 -5
  577. package/dist/composite/quote/elements/image.d.ts.map +1 -1
  578. package/dist/composite/quote/elements/image.js +27 -35
  579. package/dist/composite/quote/elements/image.js.map +1 -1
  580. package/dist/composite/quote/elements/image.mjs +27 -35
  581. package/dist/composite/quote/elements/image.mjs.map +1 -1
  582. package/dist/composite/quote/elements/quote.d.ts +1 -5
  583. package/dist/composite/quote/elements/quote.d.ts.map +1 -1
  584. package/dist/composite/quote/elements/quote.js +37 -48
  585. package/dist/composite/quote/elements/quote.js.map +1 -1
  586. package/dist/composite/quote/elements/quote.mjs +35 -46
  587. package/dist/composite/quote/elements/quote.mjs.map +1 -1
  588. package/dist/composite/quote/elements/text.d.ts +1 -5
  589. package/dist/composite/quote/elements/text.d.ts.map +1 -1
  590. package/dist/composite/quote/elements/text.js +60 -73
  591. package/dist/composite/quote/elements/text.js.map +1 -1
  592. package/dist/composite/quote/elements/text.mjs +60 -73
  593. package/dist/composite/quote/elements/text.mjs.map +1 -1
  594. package/dist/composite/quote/featured.d.ts +2 -1
  595. package/dist/composite/quote/featured.d.ts.map +1 -1
  596. package/dist/composite/quote/featured.js +102 -135
  597. package/dist/composite/quote/featured.js.map +1 -1
  598. package/dist/composite/quote/featured.mjs +102 -135
  599. package/dist/composite/quote/featured.mjs.map +1 -1
  600. package/dist/composite/quote/helper/animation.d.ts +2 -2
  601. package/dist/composite/quote/helper/animation.d.ts.map +1 -1
  602. package/dist/composite/quote/helper/animation.js.map +1 -1
  603. package/dist/composite/quote/helper/animation.mjs.map +1 -1
  604. package/dist/composite/quote/inline.d.ts +2 -1
  605. package/dist/composite/quote/inline.d.ts.map +1 -1
  606. package/dist/composite/quote/inline.js +29 -45
  607. package/dist/composite/quote/inline.js.map +1 -1
  608. package/dist/composite/quote/inline.mjs +29 -45
  609. package/dist/composite/quote/inline.mjs.map +1 -1
  610. package/dist/composite/quote/statement.d.ts +1 -5
  611. package/dist/composite/quote/statement.d.ts.map +1 -1
  612. package/dist/composite/slider/events.js +1 -1
  613. package/dist/composite/slider/events.js.map +1 -1
  614. package/dist/composite/slider/events.mjs +1 -1
  615. package/dist/composite/slider/events.mjs.map +1 -1
  616. package/dist/composite/social/sharing.js +1 -1
  617. package/dist/composite/social/sharing.js.map +1 -1
  618. package/dist/composite/social/sharing.mjs +1 -1
  619. package/dist/composite/social/sharing.mjs.map +1 -1
  620. package/dist/composite/tabs/standard.d.ts.map +1 -1
  621. package/dist/composite/tabs/standard.js +3 -2
  622. package/dist/composite/tabs/standard.js.map +1 -1
  623. package/dist/composite/tabs/standard.mjs +3 -2
  624. package/dist/composite/tabs/standard.mjs.map +1 -1
  625. package/dist/index.d.ts +0 -1
  626. package/dist/index.d.ts.map +1 -1
  627. package/dist/index.js +0 -2
  628. package/dist/index.js.map +1 -1
  629. package/dist/index.mjs +1 -3
  630. package/dist/index.mjs.map +1 -1
  631. package/dist/layout/image.js +1 -1
  632. package/dist/layout/image.js.map +1 -1
  633. package/dist/layout/image.mjs +1 -1
  634. package/dist/layout/image.mjs.map +1 -1
  635. package/package.json +10 -9
  636. package/dist/model/elements/actions.d.ts +0 -62
  637. package/dist/model/elements/actions.d.ts.map +0 -1
  638. package/dist/model/elements/actions.js +0 -71
  639. package/dist/model/elements/actions.js.map +0 -1
  640. package/dist/model/elements/actions.mjs +0 -54
  641. package/dist/model/elements/actions.mjs.map +0 -1
  642. package/dist/model/elements/assets.d.ts +0 -30
  643. package/dist/model/elements/assets.d.ts.map +0 -1
  644. package/dist/model/elements/assets.js +0 -42
  645. package/dist/model/elements/assets.js.map +0 -1
  646. package/dist/model/elements/assets.mjs +0 -25
  647. package/dist/model/elements/assets.mjs.map +0 -1
  648. package/dist/model/elements/buttons.d.ts +0 -12
  649. package/dist/model/elements/buttons.d.ts.map +0 -1
  650. package/dist/model/elements/buttons.js +0 -26
  651. package/dist/model/elements/buttons.js.map +0 -1
  652. package/dist/model/elements/buttons.mjs +0 -9
  653. package/dist/model/elements/buttons.mjs.map +0 -1
  654. package/dist/model/elements/event.d.ts +0 -22
  655. package/dist/model/elements/event.d.ts.map +0 -1
  656. package/dist/model/elements/event.js +0 -30
  657. package/dist/model/elements/event.js.map +0 -1
  658. package/dist/model/elements/event.mjs +0 -13
  659. package/dist/model/elements/event.mjs.map +0 -1
  660. package/dist/model/elements/headline.d.ts +0 -67
  661. package/dist/model/elements/headline.d.ts.map +0 -1
  662. package/dist/model/elements/headline.js +0 -74
  663. package/dist/model/elements/headline.js.map +0 -1
  664. package/dist/model/elements/headline.mjs +0 -57
  665. package/dist/model/elements/headline.mjs.map +0 -1
  666. package/dist/model/elements/index.d.ts +0 -34
  667. package/dist/model/elements/index.d.ts.map +0 -1
  668. package/dist/model/elements/index.js +0 -37
  669. package/dist/model/elements/index.js.map +0 -1
  670. package/dist/model/elements/index.mjs +0 -37
  671. package/dist/model/elements/index.mjs.map +0 -1
  672. package/dist/model/elements/layout.d.ts +0 -64
  673. package/dist/model/elements/layout.d.ts.map +0 -1
  674. package/dist/model/elements/layout.js +0 -68
  675. package/dist/model/elements/layout.js.map +0 -1
  676. package/dist/model/elements/layout.mjs +0 -51
  677. package/dist/model/elements/layout.mjs.map +0 -1
  678. package/dist/model/elements/rich-text.d.ts +0 -27
  679. package/dist/model/elements/rich-text.d.ts.map +0 -1
  680. package/dist/model/elements/rich-text.js +0 -68
  681. package/dist/model/elements/rich-text.js.map +0 -1
  682. package/dist/model/elements/rich-text.mjs +0 -51
  683. package/dist/model/elements/rich-text.mjs.map +0 -1
  684. package/dist/model/elements/text.d.ts +0 -22
  685. package/dist/model/elements/text.d.ts.map +0 -1
  686. package/dist/model/elements/text.js +0 -30
  687. package/dist/model/elements/text.js.map +0 -1
  688. package/dist/model/elements/text.mjs +0 -13
  689. package/dist/model/elements/text.mjs.map +0 -1
  690. package/dist/model/index.d.ts +0 -2
  691. package/dist/model/index.d.ts.map +0 -1
  692. package/dist/model/modifiers/_types.d.ts +0 -41
  693. package/dist/model/modifiers/_types.d.ts.map +0 -1
  694. package/dist/model/modifiers/index.d.ts +0 -44
  695. package/dist/model/modifiers/index.d.ts.map +0 -1
  696. package/dist/model/modifiers/index.js +0 -136
  697. package/dist/model/modifiers/index.js.map +0 -1
  698. package/dist/model/modifiers/index.mjs +0 -136
  699. package/dist/model/modifiers/index.mjs.map +0 -1
  700. package/dist/model/modifiers/style.d.ts +0 -19
  701. package/dist/model/modifiers/style.d.ts.map +0 -1
  702. package/dist/model/modifiers/style.js +0 -122
  703. package/dist/model/modifiers/style.js.map +0 -1
  704. package/dist/model/modifiers/style.mjs +0 -105
  705. package/dist/model/modifiers/style.mjs.map +0 -1
  706. package/dist/model.d.ts +0 -2
  707. package/dist/model.js +0 -5
  708. package/dist/model.js.map +0 -1
  709. package/dist/model.mjs +0 -5
  710. package/dist/model.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standard.mjs","sources":["../../../../source/composite/carousel/image/standard.ts"],"sourcesContent":["import {\n element,\n token,\n typography,\n} from '@universityofmaryland/web-styles-library';\nimport { jssToCSS } from '@universityofmaryland/web-utilities-library/styles';\nimport { animations, buttons } from 'atomic';\nimport { Image as LayoutImage } from 'layout';\nimport * as carouselElements from '../elements';\n\ntype TypeImage = {\n image: HTMLImageElement;\n};\n\ntype TypeFullScreen = {\n isFullScreenOption?: boolean;\n};\n\ntype TypesetFullScreen = {\n setFullScreen: (arg: number) => void;\n};\n\ntype TypeSlideContent = {\n images: HTMLImageElement[];\n headlines?: HTMLElement[] | null;\n texts?: HTMLElement[] | null;\n};\n\ntype TypeImageContainerProps = TypeImage &\n TypeFullScreen &\n TypesetFullScreen & {\n index: number;\n };\n\ntype TypeCarouselSlideProps = TypeSlideContent &\n TypesetFullScreen &\n TypeFullScreen;\n\ntype TypeCarouselImageStandardProps = TypeSlideContent &\n TypeFullScreen & {\n isThemeDark?: boolean;\n };\n\nconst MEDIUM = 500;\n\nconst ATTRIBUTE_REFERENCE = 'data-reference';\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-image-standard';\nconst ELEMENT_CAROUSEL_IMAGE_DECLARATION =\n 'carousel-image-standard-declaration';\nconst ELEMENT_CAROUSEL_IMAGE_CONTAINER = 'carousel-image-standard-container';\n\nconst ELEMENT_SLIDE = 'carousel-image-standard-slide';\nconst ELEMENT_SLIDE_IMAGE_CONTAINER = 'carousel-image-standard-slide-image';\nconst ELEMENT_SLIDE_IMAGE_WRAPPER = 'carousel-image-standard-slide-wrapper';\nconst ELEMENT_SLIDE_TEXT_CONTAINER = 'carousel-image-standard-slide-text';\nconst ELEMENT_SLIDE_HEADLINE = 'carousel-image-standard-slide-headline';\nconst ELEMENT_SLIDE_RICH_TEXT = 'carousel-image-standard-slide-rich-text';\nconst ELEMENT_CAROUSEL_SLIDER_BUTTON = 'carousel-slider-button';\n\nconst ELEMENT_CAROUSEL_INDICATOR_WRAPPER = 'carousel-indicator-wrapper';\nconst ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER =\n 'carousel-overlay-image-container';\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_RICH_TEXT = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_SLIDE_RICH_TEXT}`;\nconst OVERWRITE_THEME_DARK_TEXT_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_SLIDE_TEXT_CONTAINER}`;\nconst OVERWRITE_THEME_DARK_IMAGE_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_SLIDE_IMAGE_CONTAINER}`;\nconst OVERWRITE_THEME_DARK_INDICATOR = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_SLIDER_BUTTON}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER},\n ${OVERWRITE_THEME_DARK_TEXT_CONTAINER},\n ${OVERWRITE_THEME_DARK_INDICATOR} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_IMAGE_CONTAINER} {\n background-color: ${token.color.gray.dark};\n }\n\n ${OVERWRITE_THEME_DARK_TEXT_CONTAINER} * {\n color: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_RICH_TEXT} {\n color: ${token.color.white};\n }\n\n ${jssToCSS({\n styleObj: {\n [`${OVERWRITE_THEME_DARK_RICH_TEXT}`]: element.text.rich.advancedDark,\n },\n })}\n`;\n\n// prettier-ignore\nconst IndicatorContainerStyles = `\n .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER} {\n padding: ${token.spacing.md};\n background-color: ${token.color.gray.lightest};\n display: flex;\n justify-content: center;\n }\n \n @container ${ELEMENT_NAME} (min-width: ${MEDIUM}px) {\n .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER} {\n padding: ${token.spacing.lg};\n }\n }\n`;\n\n// prettier-ignore\nconst OverlayImageContainerStyles = `\n .${ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER} {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: ${token.color.gray.dark};\n }\n\n .${ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER} img {\n object-fit: contain;\n max-height: 100%;\n }\n`;\n\n// prettier-ignore\nconst TextContainerStyles = `\n .${ELEMENT_SLIDE_TEXT_CONTAINER} {\n padding: ${token.spacing.md};\n padding-bottom: 0;\n background-color: ${token.color.gray.lightest};\n }\n\n @container ${ELEMENT_NAME} (min-width: ${MEDIUM}px) {\n .${ELEMENT_SLIDE_TEXT_CONTAINER} {\n padding: ${token.spacing.lg};\n padding-bottom: 0;\n }\n }\n\n ${jssToCSS({\n styleObj: {\n [`.${ELEMENT_SLIDE_HEADLINE}`]: typography.sans.large,\n },\n })}\n\n .${ELEMENT_SLIDE_RICH_TEXT} {\n margin-top: ${token.spacing.min};\n color: ${token.color.gray.dark}\n }\n\n ${jssToCSS({\n styleObj: {\n [`.${ELEMENT_SLIDE_RICH_TEXT}`]: element.text.rich.advanced,\n },\n })}\n`\n\n// prettier-ignore\nconst ImageContainerStyles = `\n .${ELEMENT_SLIDE_IMAGE_CONTAINER} {\n position: relative;\n background-color: ${token.color.black};\n }\n\n .${ELEMENT_SLIDE_IMAGE_WRAPPER} {\n height: 100%;\n width: 100%;\n position: absolute;\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .${ELEMENT_SLIDE_IMAGE_WRAPPER} > * {\n height: 100%;\n }\n\n .${ELEMENT_SLIDE_IMAGE_CONTAINER} img {\n object-fit: contain;\n max-height: 100%;\n }\n`\n\n// prettier-ignore\nconst STYLES_CAROUSEL_IMAGE_STANDARD_ELEMENT = `\n .${ELEMENT_CAROUSEL_IMAGE_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_CAROUSEL_IMAGE_CONTAINER} {\n overflow: hidden;\n background-color: ${token.color.gray.lightest};\n }\n\n ${LayoutImage.Styles}\n ${ImageContainerStyles}\n ${TextContainerStyles}\n ${OverlayImageContainerStyles}\n ${IndicatorContainerStyles}\n ${OverwriteThemeDark}\n`;\n\nexport default (props: TypeCarouselImageStandardProps) =>\n (() => {\n const { images, isThemeDark, isFullScreenOption } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const elementIndicator = document.createElement('div');\n const overlayCarousel = carouselElements.overlay({\n images,\n });\n let styles = STYLES_CAROUSEL_IMAGE_STANDARD_ELEMENT;\n\n styles += overlayCarousel.styles;\n\n const CreateTextContainer = ({\n headlines,\n texts,\n reference,\n }: {\n headlines?: HTMLElement[] | null;\n texts?: HTMLElement[] | null;\n reference: string | null;\n }) => {\n const textContainer = document.createElement('div');\n\n const headline = headlines?.find(\n (headline) => headline.getAttribute(ATTRIBUTE_REFERENCE) === reference,\n );\n const richText = texts?.find(\n (text) => text.getAttribute(ATTRIBUTE_REFERENCE) === reference,\n );\n\n textContainer.classList.add(ELEMENT_SLIDE_TEXT_CONTAINER);\n\n if (headline || richText) {\n if (headline) {\n headline.classList.add(ELEMENT_SLIDE_HEADLINE);\n textContainer.appendChild(headline);\n }\n\n if (richText) {\n richText.classList.add(ELEMENT_SLIDE_RICH_TEXT);\n textContainer.appendChild(richText);\n }\n\n return textContainer;\n }\n\n return null;\n };\n\n const CreateImageContainer = ({\n image,\n isFullScreenOption,\n setFullScreen,\n index,\n }: TypeImageContainerProps) => {\n const imageContainer = document.createElement('div');\n const imageWrapper = document.createElement('div');\n const imageBlock = LayoutImage.CreateElement({\n image,\n showCaption: true,\n });\n\n imageContainer.classList.add(ELEMENT_SLIDE_IMAGE_CONTAINER);\n\n imageWrapper.classList.add(ELEMENT_SLIDE_IMAGE_WRAPPER);\n imageWrapper.appendChild(imageBlock);\n\n if (isFullScreenOption) {\n const button = buttons.fullscreen.create({\n callback: setFullScreen,\n index,\n });\n imageBlock.appendChild(button.element);\n\n styles += button.styles;\n }\n\n imageContainer.appendChild(imageWrapper);\n\n return imageContainer;\n };\n\n const CreateSlide = (props: TypeCarouselSlideProps) => {\n const { images, setFullScreen } = props;\n const clonedImages = images.map((image) =>\n image.cloneNode(true),\n ) as HTMLImageElement[];\n\n return clonedImages.map((image, index) => {\n const reference = image.getAttribute(ATTRIBUTE_REFERENCE);\n const slide = document.createElement('div');\n const imageContainer = CreateImageContainer({\n ...props,\n image,\n setFullScreen,\n index,\n });\n const textContainer = CreateTextContainer({ ...props, reference });\n\n slide.classList.add(ELEMENT_SLIDE);\n slide.appendChild(imageContainer);\n if (textContainer) slide.appendChild(textContainer);\n\n return slide;\n });\n };\n\n const slides = CreateSlide({\n ...props,\n setFullScreen: overlayCarousel.events.setFullScreen,\n });\n const carousel = carouselElements.image({\n slides,\n callback: (activeIndex) => {\n indicator.position(activeIndex);\n },\n maxHeight: 500,\n });\n\n styles += carousel.styles;\n\n const indicator = animations.actions.indicator({\n count: images.length || 0,\n callback: carousel.events.EventMoveTo,\n isThemeDark,\n isThemeLight: !isThemeDark,\n });\n\n styles += indicator.styles;\n\n elementIndicator.classList.add(ELEMENT_CAROUSEL_INDICATOR_WRAPPER);\n elementIndicator.appendChild(indicator.element);\n\n elementContainer.classList.add(ELEMENT_CAROUSEL_IMAGE_CONTAINER);\n elementContainer.appendChild(carousel.element);\n elementContainer.appendChild(elementIndicator);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_CAROUSEL_IMAGE_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n images[images.length - 1].addEventListener('load', carousel.events.Load);\n\n const responseOptions = {\n styles,\n events: {\n SetEventReize: carousel.events.EventResize,\n },\n };\n\n if (isFullScreenOption) {\n const element = document.createElement('div');\n\n element.appendChild(overlayCarousel.element);\n element.appendChild(elementDeclaration);\n\n return {\n element,\n ...responseOptions,\n };\n }\n\n return {\n element: elementDeclaration,\n ...responseOptions,\n };\n })();\n"],"names":["carouselElements.overlay","headline","image","isFullScreenOption","index","buttons.fullscreen","props","images","carouselElements.image","indicator","animations.actions.indicator","element"],"mappings":"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"}
1
+ {"version":3,"file":"standard.mjs","sources":["../../../../source/composite/carousel/image/standard.ts"],"sourcesContent":["import {\n element,\n token,\n typography,\n} from '@universityofmaryland/web-styles-library';\nimport { jssToCSS } from '@universityofmaryland/web-utilities-library/styles';\nimport * as carouselElements from '../elements';\nimport { animations, buttons } from 'atomic';\nimport { Image as LayoutImage } from 'layout';\n\ntype TypeImage = {\n image: HTMLImageElement;\n};\n\ntype TypeFullScreen = {\n isFullScreenOption?: boolean;\n};\n\ntype TypesetFullScreen = {\n setFullScreen: (arg: number) => void;\n};\n\ntype TypeSlideContent = {\n images: HTMLImageElement[];\n headlines?: HTMLElement[] | null;\n texts?: HTMLElement[] | null;\n};\n\ntype TypeImageContainerProps = TypeImage &\n TypeFullScreen &\n TypesetFullScreen & {\n index: number;\n };\n\ntype TypeCarouselSlideProps = TypeSlideContent &\n TypesetFullScreen &\n TypeFullScreen;\n\ntype TypeCarouselImageStandardProps = TypeSlideContent &\n TypeFullScreen & {\n isThemeDark?: boolean;\n };\n\nconst MEDIUM = 500;\n\nconst ATTRIBUTE_REFERENCE = 'data-reference';\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-image-standard';\nconst ELEMENT_CAROUSEL_IMAGE_DECLARATION =\n 'carousel-image-standard-declaration';\nconst ELEMENT_CAROUSEL_IMAGE_CONTAINER = 'carousel-image-standard-container';\n\nconst ELEMENT_SLIDE = 'carousel-image-standard-slide';\nconst ELEMENT_SLIDE_IMAGE_CONTAINER = 'carousel-image-standard-slide-image';\nconst ELEMENT_SLIDE_IMAGE_WRAPPER = 'carousel-image-standard-slide-wrapper';\nconst ELEMENT_SLIDE_TEXT_CONTAINER = 'carousel-image-standard-slide-text';\nconst ELEMENT_SLIDE_HEADLINE = 'carousel-image-standard-slide-headline';\nconst ELEMENT_SLIDE_RICH_TEXT = 'carousel-image-standard-slide-rich-text';\nconst ELEMENT_CAROUSEL_SLIDER_BUTTON = 'carousel-slider-button';\n\nconst ELEMENT_CAROUSEL_INDICATOR_WRAPPER = 'carousel-indicator-wrapper';\nconst ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER =\n 'carousel-overlay-image-container';\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_RICH_TEXT = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_SLIDE_RICH_TEXT}`;\nconst OVERWRITE_THEME_DARK_TEXT_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_SLIDE_TEXT_CONTAINER}`;\nconst OVERWRITE_THEME_DARK_IMAGE_CONTAINER = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_SLIDE_IMAGE_CONTAINER}`;\nconst OVERWRITE_THEME_DARK_INDICATOR = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_CAROUSEL_IMAGE_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_SLIDER_BUTTON}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER},\n ${OVERWRITE_THEME_DARK_TEXT_CONTAINER},\n ${OVERWRITE_THEME_DARK_INDICATOR} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_IMAGE_CONTAINER} {\n background-color: ${token.color.gray.dark};\n }\n\n ${OVERWRITE_THEME_DARK_TEXT_CONTAINER} * {\n color: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_RICH_TEXT} {\n color: ${token.color.white};\n }\n\n ${jssToCSS({\n styleObj: {\n [`${OVERWRITE_THEME_DARK_RICH_TEXT}`]: element.text.rich.advancedDark,\n },\n })}\n`;\n\n// prettier-ignore\nconst IndicatorContainerStyles = `\n .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER} {\n padding: ${token.spacing.md};\n background-color: ${token.color.gray.lightest};\n display: flex;\n justify-content: center;\n }\n \n @container ${ELEMENT_NAME} (min-width: ${MEDIUM}px) {\n .${ELEMENT_CAROUSEL_INDICATOR_WRAPPER} {\n padding: ${token.spacing.lg};\n }\n }\n`;\n\n// prettier-ignore\nconst OverlayImageContainerStyles = `\n .${ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER} {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: ${token.color.gray.dark};\n }\n\n .${ELEMENT_CAROUSEL_OVERLAY_IMAGE_COINTAINER} img {\n object-fit: contain;\n max-height: 100%;\n }\n`;\n\n// prettier-ignore\nconst TextContainerStyles = `\n .${ELEMENT_SLIDE_TEXT_CONTAINER} {\n padding: ${token.spacing.md};\n padding-bottom: 0;\n background-color: ${token.color.gray.lightest};\n }\n\n @container ${ELEMENT_NAME} (min-width: ${MEDIUM}px) {\n .${ELEMENT_SLIDE_TEXT_CONTAINER} {\n padding: ${token.spacing.lg};\n padding-bottom: 0;\n }\n }\n\n ${jssToCSS({\n styleObj: {\n [`.${ELEMENT_SLIDE_HEADLINE}`]: typography.sans.large,\n },\n })}\n\n .${ELEMENT_SLIDE_RICH_TEXT} {\n margin-top: ${token.spacing.min};\n color: ${token.color.gray.dark}\n }\n\n ${jssToCSS({\n styleObj: {\n [`.${ELEMENT_SLIDE_RICH_TEXT}`]: element.text.rich.advanced,\n },\n })}\n`\n\n// prettier-ignore\nconst ImageContainerStyles = `\n .${ELEMENT_SLIDE_IMAGE_CONTAINER} {\n position: relative;\n background-color: ${token.color.black};\n }\n\n .${ELEMENT_SLIDE_IMAGE_WRAPPER} {\n height: 100%;\n width: 100%;\n position: absolute;\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .${ELEMENT_SLIDE_IMAGE_WRAPPER} > * {\n height: 100%;\n }\n\n .${ELEMENT_SLIDE_IMAGE_CONTAINER} img {\n object-fit: contain;\n max-height: 100%;\n }\n`\n\n// prettier-ignore\nconst STYLES_CAROUSEL_IMAGE_STANDARD_ELEMENT = `\n .${ELEMENT_CAROUSEL_IMAGE_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_CAROUSEL_IMAGE_CONTAINER} {\n overflow: hidden;\n background-color: ${token.color.gray.lightest};\n }\n\n ${LayoutImage.Styles}\n ${ImageContainerStyles}\n ${TextContainerStyles}\n ${OverlayImageContainerStyles}\n ${IndicatorContainerStyles}\n ${OverwriteThemeDark}\n`;\n\nexport default (props: TypeCarouselImageStandardProps) =>\n (() => {\n const { images, isThemeDark, isFullScreenOption } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const elementIndicator = document.createElement('div');\n const overlayCarousel = carouselElements.overlay({\n images,\n });\n let styles = STYLES_CAROUSEL_IMAGE_STANDARD_ELEMENT;\n\n styles += overlayCarousel.styles;\n\n const CreateTextContainer = ({\n headlines,\n texts,\n reference,\n }: {\n headlines?: HTMLElement[] | null;\n texts?: HTMLElement[] | null;\n reference: string | null;\n }) => {\n const textContainer = document.createElement('div');\n\n const headline = headlines?.find(\n (headline) => headline.getAttribute(ATTRIBUTE_REFERENCE) === reference,\n );\n const richText = texts?.find(\n (text) => text.getAttribute(ATTRIBUTE_REFERENCE) === reference,\n );\n\n textContainer.classList.add(ELEMENT_SLIDE_TEXT_CONTAINER);\n\n if (headline || richText) {\n if (headline) {\n headline.classList.add(ELEMENT_SLIDE_HEADLINE);\n textContainer.appendChild(headline);\n }\n\n if (richText) {\n richText.classList.add(ELEMENT_SLIDE_RICH_TEXT);\n textContainer.appendChild(richText);\n }\n\n return textContainer;\n }\n\n return null;\n };\n\n const CreateImageContainer = ({\n image,\n isFullScreenOption,\n setFullScreen,\n index,\n }: TypeImageContainerProps) => {\n const imageContainer = document.createElement('div');\n const imageWrapper = document.createElement('div');\n const imageBlock = LayoutImage.CreateElement({\n image,\n showCaption: true,\n });\n\n imageContainer.classList.add(ELEMENT_SLIDE_IMAGE_CONTAINER);\n\n imageWrapper.classList.add(ELEMENT_SLIDE_IMAGE_WRAPPER);\n imageWrapper.appendChild(imageBlock);\n\n if (isFullScreenOption) {\n const button = buttons.fullscreen.create({\n callback: setFullScreen,\n index,\n });\n imageBlock.appendChild(button.element);\n\n styles += button.styles;\n }\n\n imageContainer.appendChild(imageWrapper);\n\n return imageContainer;\n };\n\n const CreateSlide = (props: TypeCarouselSlideProps) => {\n const { images, setFullScreen } = props;\n const clonedImages = images.map((image) =>\n image.cloneNode(true),\n ) as HTMLImageElement[];\n\n return clonedImages.map((image, index) => {\n const reference = image.getAttribute(ATTRIBUTE_REFERENCE);\n const slide = document.createElement('div');\n const imageContainer = CreateImageContainer({\n ...props,\n image,\n setFullScreen,\n index,\n });\n const textContainer = CreateTextContainer({ ...props, reference });\n\n slide.classList.add(ELEMENT_SLIDE);\n slide.appendChild(imageContainer);\n if (textContainer) slide.appendChild(textContainer);\n\n return slide;\n });\n };\n\n const slides = CreateSlide({\n ...props,\n setFullScreen: overlayCarousel.events.setFullScreen,\n });\n const carousel = carouselElements.image({\n slides,\n callback: (activeIndex) => {\n indicator.position(activeIndex);\n },\n maxHeight: 500,\n });\n\n styles += carousel.styles;\n\n const indicator = animations.actions.indicator({\n count: images.length || 0,\n callback: carousel.events.EventMoveTo,\n isThemeDark,\n isThemeLight: !isThemeDark,\n });\n\n styles += indicator.styles;\n\n elementIndicator.classList.add(ELEMENT_CAROUSEL_INDICATOR_WRAPPER);\n elementIndicator.appendChild(indicator.element);\n\n elementContainer.classList.add(ELEMENT_CAROUSEL_IMAGE_CONTAINER);\n elementContainer.appendChild(carousel.element);\n elementContainer.appendChild(elementIndicator);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_CAROUSEL_IMAGE_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n images[images.length - 1].addEventListener('load', carousel.events.Load);\n\n const responseOptions = {\n styles,\n events: {\n SetEventReize: carousel.events.EventResize,\n },\n };\n\n if (isFullScreenOption) {\n const element = document.createElement('div');\n\n element.appendChild(overlayCarousel.element);\n element.appendChild(elementDeclaration);\n\n return {\n element,\n ...responseOptions,\n };\n }\n\n return {\n element: elementDeclaration,\n ...responseOptions,\n };\n })();\n"],"names":["carouselElements.overlay","headline","image","isFullScreenOption","index","buttons.fullscreen","props","images","carouselElements.image","indicator","animations.actions.indicator","element"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const token = require("@universityofmaryland/web-styles-library/token");
2
+ const token = require("@universityofmaryland/web-token-library");
3
3
  const blocks = require("../elements/blocks.js");
4
4
  require("../elements/full-screen.js");
5
5
  require("../elements/overlay.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../source/composite/carousel/thumbnail/index.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as carouselElements from '../elements';\n\ntype TypeCarouselThumbnailProps = {\n blocks: HTMLElement[];\n isThemeDark?: boolean;\n};\n\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-thumbnail';\nconst ELEMENT_THUMBNAIL_DECLARATION = 'carousel-thumbnail-declaration';\nconst ELEMENT_THUMBNAIL_CONTAINER = 'carousel-thumbnail-container';\nconst ELEMENT_PERSON_SLIDE = 'carousel-person-slide';\nconst ELEMENT_CAROUSEL_THUMBNAIL_BUTTON = 'carousel-thumbnail-button';\n\nconst OVERWRITE_ANIMATION_CAROUSEL_BUTTON = `.${ELEMENT_THUMBNAIL_DECLARATION} .${carouselElements.blocks.Elements.button}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_THUMBNAIL_BUTTON}`;\nconst OVERWRITE_THEME_DARK_SLIDE = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_PERSON_SLIDE}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE} {\n border: 1px solid ${token.color.gray.dark};\n border-left: none;\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst OverwriteCarouselStyles = `\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON} {\n top: 50%;\n transform: translateY(-50%);\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:last-of-type {\n left: -${token.spacing.md};\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:first-of-type {\n right: -${token.spacing.md};\n }\n`;\n\n// prettier-ignore\nconst PersonSlideStyles = `\n .${ELEMENT_PERSON_SLIDE} {\n border: 1px solid ${token.color.gray.light};\n border-left: none;\n padding: ${token.spacing.lg};\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} .${ELEMENT_PERSON_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.light};\n }\n`;\n\n// prettier-ignore\nconst STYLES_CAROUSEL_THUMBNAIL_ELEMENT = `\n .${ELEMENT_THUMBNAIL_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} {\n overflow: hidden;\n padding: 0 ${token.spacing.md};\n }\n\n ${carouselElements.blocks.Styles}\n ${PersonSlideStyles}\n ${OverwriteCarouselStyles}\n ${OverwriteThemeDark}\n`;\n\nconst CreatePerson = ({ block }: { block: HTMLElement }) => {\n const container = document.createElement('div');\n\n container.appendChild(block);\n container.classList.add(ELEMENT_PERSON_SLIDE);\n\n return container;\n};\n\nexport default (props: TypeCarouselThumbnailProps) =>\n (() => {\n const { blocks, isThemeDark } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const slide = document.createElement('div');\n const blocksWrapper = blocks.map((block) =>\n CreatePerson({\n block,\n }),\n );\n\n const carousel = carouselElements.blocks.CreateElement({\n blocks: blocksWrapper,\n slide,\n overwriteDisplayLogic: {\n mobileBreakpoint: 500,\n tabletBreakpoint: 900,\n desktopBreakpoint: 1200,\n desktopCount: 3,\n maxCount: 4,\n blockGap: 0,\n showHint: false,\n showMobileHint: false,\n },\n });\n\n elementContainer.appendChild(carousel.element);\n elementContainer.classList.add(ELEMENT_THUMBNAIL_CONTAINER);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_THUMBNAIL_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n return {\n element: elementDeclaration,\n styles: STYLES_CAROUSEL_THUMBNAIL_ELEMENT,\n events: {\n reize: carousel.events.resize,\n load: carousel.events.load,\n },\n };\n })();\n"],"names":["carouselElements.blocks","token","blocks"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../source/composite/carousel/thumbnail/index.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-token-library';\nimport * as carouselElements from '../elements';\n\ntype TypeCarouselThumbnailProps = {\n blocks: HTMLElement[];\n isThemeDark?: boolean;\n};\n\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-thumbnail';\nconst ELEMENT_THUMBNAIL_DECLARATION = 'carousel-thumbnail-declaration';\nconst ELEMENT_THUMBNAIL_CONTAINER = 'carousel-thumbnail-container';\nconst ELEMENT_PERSON_SLIDE = 'carousel-person-slide';\nconst ELEMENT_CAROUSEL_THUMBNAIL_BUTTON = 'carousel-thumbnail-button';\n\nconst OVERWRITE_ANIMATION_CAROUSEL_BUTTON = `.${ELEMENT_THUMBNAIL_DECLARATION} .${carouselElements.blocks.Elements.button}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_THUMBNAIL_BUTTON}`;\nconst OVERWRITE_THEME_DARK_SLIDE = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_PERSON_SLIDE}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE} {\n border: 1px solid ${token.color.gray.dark};\n border-left: none;\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst OverwriteCarouselStyles = `\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON} {\n top: 50%;\n transform: translateY(-50%);\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:last-of-type {\n left: -${token.spacing.md};\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:first-of-type {\n right: -${token.spacing.md};\n }\n`;\n\n// prettier-ignore\nconst PersonSlideStyles = `\n .${ELEMENT_PERSON_SLIDE} {\n border: 1px solid ${token.color.gray.light};\n border-left: none;\n padding: ${token.spacing.lg};\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} .${ELEMENT_PERSON_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.light};\n }\n`;\n\n// prettier-ignore\nconst STYLES_CAROUSEL_THUMBNAIL_ELEMENT = `\n .${ELEMENT_THUMBNAIL_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} {\n overflow: hidden;\n padding: 0 ${token.spacing.md};\n }\n\n ${carouselElements.blocks.Styles}\n ${PersonSlideStyles}\n ${OverwriteCarouselStyles}\n ${OverwriteThemeDark}\n`;\n\nconst CreatePerson = ({ block }: { block: HTMLElement }) => {\n const container = document.createElement('div');\n\n container.appendChild(block);\n container.classList.add(ELEMENT_PERSON_SLIDE);\n\n return container;\n};\n\nexport default (props: TypeCarouselThumbnailProps) =>\n (() => {\n const { blocks, isThemeDark } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const slide = document.createElement('div');\n const blocksWrapper = blocks.map((block) =>\n CreatePerson({\n block,\n }),\n );\n\n const carousel = carouselElements.blocks.CreateElement({\n blocks: blocksWrapper,\n slide,\n overwriteDisplayLogic: {\n mobileBreakpoint: 500,\n tabletBreakpoint: 900,\n desktopBreakpoint: 1200,\n desktopCount: 3,\n maxCount: 4,\n blockGap: 0,\n showHint: false,\n showMobileHint: false,\n },\n });\n\n elementContainer.appendChild(carousel.element);\n elementContainer.classList.add(ELEMENT_THUMBNAIL_CONTAINER);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_THUMBNAIL_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n return {\n element: elementDeclaration,\n styles: STYLES_CAROUSEL_THUMBNAIL_ELEMENT,\n events: {\n reize: carousel.events.resize,\n load: carousel.events.load,\n },\n };\n })();\n"],"names":["carouselElements.blocks","token","blocks"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import * as token from "@universityofmaryland/web-styles-library/token";
1
+ import * as token from "@universityofmaryland/web-token-library";
2
2
  import blocks from "../elements/blocks.mjs";
3
3
  import "../elements/full-screen.mjs";
4
4
  import "../elements/overlay.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../source/composite/carousel/thumbnail/index.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as carouselElements from '../elements';\n\ntype TypeCarouselThumbnailProps = {\n blocks: HTMLElement[];\n isThemeDark?: boolean;\n};\n\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-thumbnail';\nconst ELEMENT_THUMBNAIL_DECLARATION = 'carousel-thumbnail-declaration';\nconst ELEMENT_THUMBNAIL_CONTAINER = 'carousel-thumbnail-container';\nconst ELEMENT_PERSON_SLIDE = 'carousel-person-slide';\nconst ELEMENT_CAROUSEL_THUMBNAIL_BUTTON = 'carousel-thumbnail-button';\n\nconst OVERWRITE_ANIMATION_CAROUSEL_BUTTON = `.${ELEMENT_THUMBNAIL_DECLARATION} .${carouselElements.blocks.Elements.button}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_THUMBNAIL_BUTTON}`;\nconst OVERWRITE_THEME_DARK_SLIDE = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_PERSON_SLIDE}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE} {\n border: 1px solid ${token.color.gray.dark};\n border-left: none;\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst OverwriteCarouselStyles = `\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON} {\n top: 50%;\n transform: translateY(-50%);\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:last-of-type {\n left: -${token.spacing.md};\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:first-of-type {\n right: -${token.spacing.md};\n }\n`;\n\n// prettier-ignore\nconst PersonSlideStyles = `\n .${ELEMENT_PERSON_SLIDE} {\n border: 1px solid ${token.color.gray.light};\n border-left: none;\n padding: ${token.spacing.lg};\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} .${ELEMENT_PERSON_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.light};\n }\n`;\n\n// prettier-ignore\nconst STYLES_CAROUSEL_THUMBNAIL_ELEMENT = `\n .${ELEMENT_THUMBNAIL_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} {\n overflow: hidden;\n padding: 0 ${token.spacing.md};\n }\n\n ${carouselElements.blocks.Styles}\n ${PersonSlideStyles}\n ${OverwriteCarouselStyles}\n ${OverwriteThemeDark}\n`;\n\nconst CreatePerson = ({ block }: { block: HTMLElement }) => {\n const container = document.createElement('div');\n\n container.appendChild(block);\n container.classList.add(ELEMENT_PERSON_SLIDE);\n\n return container;\n};\n\nexport default (props: TypeCarouselThumbnailProps) =>\n (() => {\n const { blocks, isThemeDark } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const slide = document.createElement('div');\n const blocksWrapper = blocks.map((block) =>\n CreatePerson({\n block,\n }),\n );\n\n const carousel = carouselElements.blocks.CreateElement({\n blocks: blocksWrapper,\n slide,\n overwriteDisplayLogic: {\n mobileBreakpoint: 500,\n tabletBreakpoint: 900,\n desktopBreakpoint: 1200,\n desktopCount: 3,\n maxCount: 4,\n blockGap: 0,\n showHint: false,\n showMobileHint: false,\n },\n });\n\n elementContainer.appendChild(carousel.element);\n elementContainer.classList.add(ELEMENT_THUMBNAIL_CONTAINER);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_THUMBNAIL_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n return {\n element: elementDeclaration,\n styles: STYLES_CAROUSEL_THUMBNAIL_ELEMENT,\n events: {\n reize: carousel.events.resize,\n load: carousel.events.load,\n },\n };\n })();\n"],"names":["carouselElements.blocks","blocks"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../source/composite/carousel/thumbnail/index.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-token-library';\nimport * as carouselElements from '../elements';\n\ntype TypeCarouselThumbnailProps = {\n blocks: HTMLElement[];\n isThemeDark?: boolean;\n};\n\nconst ATTRIBUTE_THEME = 'data-theme';\nconst THEME_DARK = 'dark';\n\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst ELEMENT_NAME = 'umd-carousel-thumbnail';\nconst ELEMENT_THUMBNAIL_DECLARATION = 'carousel-thumbnail-declaration';\nconst ELEMENT_THUMBNAIL_CONTAINER = 'carousel-thumbnail-container';\nconst ELEMENT_PERSON_SLIDE = 'carousel-person-slide';\nconst ELEMENT_CAROUSEL_THUMBNAIL_BUTTON = 'carousel-thumbnail-button';\n\nconst OVERWRITE_ANIMATION_CAROUSEL_BUTTON = `.${ELEMENT_THUMBNAIL_DECLARATION} .${carouselElements.blocks.Elements.button}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_BUTTON = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_CAROUSEL_THUMBNAIL_BUTTON}`;\nconst OVERWRITE_THEME_DARK_SLIDE = `.${ELEMENT_THUMBNAIL_CONTAINER}${IS_THEME_DARK} .${ELEMENT_PERSON_SLIDE}`;\n\n// prettier-ignore\nconst OverwriteThemeDark = `\n ${OVERWRITE_THEME_DARK_CONTAINER} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} {\n background-color: ${token.color.black};\n }\n\n ${OVERWRITE_THEME_DARK_BUTTON} > svg {\n fill: ${token.color.white};\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE} {\n border: 1px solid ${token.color.gray.dark};\n border-left: none;\n }\n\n ${OVERWRITE_THEME_DARK_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst OverwriteCarouselStyles = `\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON} {\n top: 50%;\n transform: translateY(-50%);\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:last-of-type {\n left: -${token.spacing.md};\n }\n\n ${OVERWRITE_ANIMATION_CAROUSEL_BUTTON}:first-of-type {\n right: -${token.spacing.md};\n }\n`;\n\n// prettier-ignore\nconst PersonSlideStyles = `\n .${ELEMENT_PERSON_SLIDE} {\n border: 1px solid ${token.color.gray.light};\n border-left: none;\n padding: ${token.spacing.lg};\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} .${ELEMENT_PERSON_SLIDE}:first-child {\n border-left: 1px solid ${token.color.gray.light};\n }\n`;\n\n// prettier-ignore\nconst STYLES_CAROUSEL_THUMBNAIL_ELEMENT = `\n .${ELEMENT_THUMBNAIL_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n .${ELEMENT_THUMBNAIL_CONTAINER} {\n overflow: hidden;\n padding: 0 ${token.spacing.md};\n }\n\n ${carouselElements.blocks.Styles}\n ${PersonSlideStyles}\n ${OverwriteCarouselStyles}\n ${OverwriteThemeDark}\n`;\n\nconst CreatePerson = ({ block }: { block: HTMLElement }) => {\n const container = document.createElement('div');\n\n container.appendChild(block);\n container.classList.add(ELEMENT_PERSON_SLIDE);\n\n return container;\n};\n\nexport default (props: TypeCarouselThumbnailProps) =>\n (() => {\n const { blocks, isThemeDark } = props;\n const elementDeclaration = document.createElement('div');\n const elementContainer = document.createElement('div');\n const slide = document.createElement('div');\n const blocksWrapper = blocks.map((block) =>\n CreatePerson({\n block,\n }),\n );\n\n const carousel = carouselElements.blocks.CreateElement({\n blocks: blocksWrapper,\n slide,\n overwriteDisplayLogic: {\n mobileBreakpoint: 500,\n tabletBreakpoint: 900,\n desktopBreakpoint: 1200,\n desktopCount: 3,\n maxCount: 4,\n blockGap: 0,\n showHint: false,\n showMobileHint: false,\n },\n });\n\n elementContainer.appendChild(carousel.element);\n elementContainer.classList.add(ELEMENT_THUMBNAIL_CONTAINER);\n if (isThemeDark) elementContainer.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n elementDeclaration.classList.add(ELEMENT_THUMBNAIL_DECLARATION);\n elementDeclaration.appendChild(elementContainer);\n\n return {\n element: elementDeclaration,\n styles: STYLES_CAROUSEL_THUMBNAIL_ELEMENT,\n events: {\n reize: carousel.events.resize,\n load: carousel.events.load,\n },\n };\n })();\n"],"names":["carouselElements.blocks","blocks"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { ElementVisual } from '../../../_types';
1
+ import { UMDElement } from '../../../_types';
2
2
  interface ElementWithRefsProps<T extends Record<string, any>> {
3
3
  className: string;
4
4
  element?: HTMLElement;
5
- children?: ElementVisual[];
5
+ children?: UMDElement[];
6
6
  elementStyles?: any;
7
7
  attributes?: Record<string, string>[];
8
8
  refs: T;
@@ -1 +1 @@
1
- {"version":3,"file":"_elementModel.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,UAAU,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAClE,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,CAAC;CACT;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC7B,qBAAqB,CAAC,CAAC,CAAC,CAc1B"}
1
+ {"version":3,"file":"_elementModel.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,UAAU,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAClE,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,CAAC;CACT;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC7B,qBAAqB,CAAC,CAAC,CAAC,CA+B1B"}
@@ -1,14 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const index = require("../../../model/elements/index.js");
3
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
4
4
  function createElementWithRefs(props) {
5
- const { refs, element, ...elementProps } = props;
6
- const component = element ? index.create({
7
- element,
8
- ...elementProps
9
- }) : index.createDiv(elementProps);
5
+ const { refs, element, children, elementStyles, attributes, className } = props;
6
+ const builder = element ? new webBuilderLibrary.ElementBuilder(element) : new webBuilderLibrary.ElementBuilder();
7
+ builder.withClassName(className);
8
+ if (children) {
9
+ builder.withChildren(...children);
10
+ }
11
+ if (elementStyles) {
12
+ builder.withStyles(elementStyles);
13
+ }
14
+ if (attributes) {
15
+ attributes.forEach((attr) => {
16
+ const [key, value] = Object.entries(attr)[0];
17
+ builder.withAttribute(key, value);
18
+ });
19
+ }
20
+ const component = builder.build();
10
21
  return {
11
- ...component,
22
+ element: component.element,
23
+ className,
24
+ styles: component.styles,
12
25
  refs
13
26
  };
14
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"_elementModel.js","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"sourcesContent":["import { ElementModel } from 'model';\nimport { type ElementVisual } from '../../../_types';\n\ninterface ElementWithRefsProps<T extends Record<string, any>> {\n className: string;\n element?: HTMLElement;\n children?: ElementVisual[];\n elementStyles?: any;\n attributes?: Record<string, string>[];\n refs: T;\n}\n\nexport interface ElementWithRefsReturn<T extends Record<string, any>> {\n element: HTMLElement;\n className: string;\n styles: string;\n refs: T;\n}\n\nexport function createElementWithRefs<T extends Record<string, any>>(\n props: ElementWithRefsProps<T>,\n): ElementWithRefsReturn<T> {\n const { refs, element, ...elementProps } = props;\n\n const component = element\n ? ElementModel.create({\n element,\n ...elementProps,\n })\n : ElementModel.createDiv(elementProps);\n\n return {\n ...component,\n refs,\n };\n}\n"],"names":["ElementModel.create","ElementModel.createDiv"],"mappings":";;;AAmBO,SAAS,sBACd,OAC0B;AAC1B,QAAM,EAAE,MAAM,SAAS,GAAG,iBAAiB;AAE3C,QAAM,YAAY,UACdA,aAAoB;AAAA,IAClB;AAAA,IACA,GAAG;AAAA,EAAA,CACJ,IACDC,MAAAA,UAAuB,YAAY;AAEvC,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"_elementModel.js","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { type UMDElement } from '../../../_types';\n\ninterface ElementWithRefsProps<T extends Record<string, any>> {\n className: string;\n element?: HTMLElement;\n children?: UMDElement[];\n elementStyles?: any;\n attributes?: Record<string, string>[];\n refs: T;\n}\n\nexport interface ElementWithRefsReturn<T extends Record<string, any>> {\n element: HTMLElement;\n className: string;\n styles: string;\n refs: T;\n}\n\nexport function createElementWithRefs<T extends Record<string, any>>(\n props: ElementWithRefsProps<T>,\n): ElementWithRefsReturn<T> {\n const { refs, element, children, elementStyles, attributes, className } =\n props;\n\n const builder = element ? new ElementBuilder(element) : new ElementBuilder();\n\n builder.withClassName(className);\n\n if (children) {\n builder.withChildren(...children);\n }\n\n if (elementStyles) {\n builder.withStyles(elementStyles);\n }\n\n if (attributes) {\n attributes.forEach((attr) => {\n const [key, value] = Object.entries(attr)[0];\n builder.withAttribute(key, value);\n });\n }\n\n const component = builder.build();\n\n return {\n element: component.element,\n className,\n styles: component.styles,\n refs,\n };\n}\n"],"names":["ElementBuilder"],"mappings":";;;AAmBO,SAAS,sBACd,OAC0B;AAC1B,QAAM,EAAE,MAAM,SAAS,UAAU,eAAe,YAAY,cAC1D;AAEF,QAAM,UAAU,UAAU,IAAIA,kBAAAA,eAAe,OAAO,IAAI,IAAIA,iCAAA;AAE5D,UAAQ,cAAc,SAAS;AAE/B,MAAI,UAAU;AACZ,YAAQ,aAAa,GAAG,QAAQ;AAAA,EAClC;AAEA,MAAI,eAAe;AACjB,YAAQ,WAAW,aAAa;AAAA,EAClC;AAEA,MAAI,YAAY;AACd,eAAW,QAAQ,CAAC,SAAS;AAC3B,YAAM,CAAC,KAAK,KAAK,IAAI,OAAO,QAAQ,IAAI,EAAE,CAAC;AAC3C,cAAQ,cAAc,KAAK,KAAK;AAAA,IAClC,CAAC;AAAA,EACH;AAEA,QAAM,YAAY,QAAQ,MAAA;AAE1B,SAAO;AAAA,IACL,SAAS,UAAU;AAAA,IACnB;AAAA,IACA,QAAQ,UAAU;AAAA,IAClB;AAAA,EAAA;AAEJ;;"}
@@ -1,12 +1,25 @@
1
- import { create, createDiv } from "../../../model/elements/index.mjs";
1
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
2
2
  function createElementWithRefs(props) {
3
- const { refs, element, ...elementProps } = props;
4
- const component = element ? create({
5
- element,
6
- ...elementProps
7
- }) : createDiv(elementProps);
3
+ const { refs, element, children, elementStyles, attributes, className } = props;
4
+ const builder = element ? new ElementBuilder(element) : new ElementBuilder();
5
+ builder.withClassName(className);
6
+ if (children) {
7
+ builder.withChildren(...children);
8
+ }
9
+ if (elementStyles) {
10
+ builder.withStyles(elementStyles);
11
+ }
12
+ if (attributes) {
13
+ attributes.forEach((attr) => {
14
+ const [key, value] = Object.entries(attr)[0];
15
+ builder.withAttribute(key, value);
16
+ });
17
+ }
18
+ const component = builder.build();
8
19
  return {
9
- ...component,
20
+ element: component.element,
21
+ className,
22
+ styles: component.styles,
10
23
  refs
11
24
  };
12
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"_elementModel.mjs","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"sourcesContent":["import { ElementModel } from 'model';\nimport { type ElementVisual } from '../../../_types';\n\ninterface ElementWithRefsProps<T extends Record<string, any>> {\n className: string;\n element?: HTMLElement;\n children?: ElementVisual[];\n elementStyles?: any;\n attributes?: Record<string, string>[];\n refs: T;\n}\n\nexport interface ElementWithRefsReturn<T extends Record<string, any>> {\n element: HTMLElement;\n className: string;\n styles: string;\n refs: T;\n}\n\nexport function createElementWithRefs<T extends Record<string, any>>(\n props: ElementWithRefsProps<T>,\n): ElementWithRefsReturn<T> {\n const { refs, element, ...elementProps } = props;\n\n const component = element\n ? ElementModel.create({\n element,\n ...elementProps,\n })\n : ElementModel.createDiv(elementProps);\n\n return {\n ...component,\n refs,\n };\n}\n"],"names":["ElementModel.create","ElementModel.createDiv"],"mappings":";AAmBO,SAAS,sBACd,OAC0B;AAC1B,QAAM,EAAE,MAAM,SAAS,GAAG,iBAAiB;AAE3C,QAAM,YAAY,UACdA,OAAoB;AAAA,IAClB;AAAA,IACA,GAAG;AAAA,EAAA,CACJ,IACDC,UAAuB,YAAY;AAEvC,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"_elementModel.mjs","sources":["../../../../source/composite/carousel/wide/_elementModel.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { type UMDElement } from '../../../_types';\n\ninterface ElementWithRefsProps<T extends Record<string, any>> {\n className: string;\n element?: HTMLElement;\n children?: UMDElement[];\n elementStyles?: any;\n attributes?: Record<string, string>[];\n refs: T;\n}\n\nexport interface ElementWithRefsReturn<T extends Record<string, any>> {\n element: HTMLElement;\n className: string;\n styles: string;\n refs: T;\n}\n\nexport function createElementWithRefs<T extends Record<string, any>>(\n props: ElementWithRefsProps<T>,\n): ElementWithRefsReturn<T> {\n const { refs, element, children, elementStyles, attributes, className } =\n props;\n\n const builder = element ? new ElementBuilder(element) : new ElementBuilder();\n\n builder.withClassName(className);\n\n if (children) {\n builder.withChildren(...children);\n }\n\n if (elementStyles) {\n builder.withStyles(elementStyles);\n }\n\n if (attributes) {\n attributes.forEach((attr) => {\n const [key, value] = Object.entries(attr)[0];\n builder.withAttribute(key, value);\n });\n }\n\n const component = builder.build();\n\n return {\n element: component.element,\n className,\n styles: component.styles,\n refs,\n };\n}\n"],"names":[],"mappings":";AAmBO,SAAS,sBACd,OAC0B;AAC1B,QAAM,EAAE,MAAM,SAAS,UAAU,eAAe,YAAY,cAC1D;AAEF,QAAM,UAAU,UAAU,IAAI,eAAe,OAAO,IAAI,IAAI,eAAA;AAE5D,UAAQ,cAAc,SAAS;AAE/B,MAAI,UAAU;AACZ,YAAQ,aAAa,GAAG,QAAQ;AAAA,EAClC;AAEA,MAAI,eAAe;AACjB,YAAQ,WAAW,aAAa;AAAA,EAClC;AAEA,MAAI,YAAY;AACd,eAAW,QAAQ,CAAC,SAAS;AAC3B,YAAM,CAAC,KAAK,KAAK,IAAI,OAAO,QAAQ,IAAI,EAAE,CAAC;AAC3C,cAAQ,cAAc,KAAK,KAAK;AAAA,IAClC,CAAC;AAAA,EACH;AAEA,QAAM,YAAY,QAAQ,MAAA;AAE1B,SAAO;AAAA,IACL,SAAS,UAAU;AAAA,IACnB;AAAA,IACA,QAAQ,UAAU;AAAA,IAClB;AAAA,EAAA;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/container.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAwBnD,eAAO,MAAM,eAAe,GAC1B,OAAO,iBAAiB,EACxB,mBAAmB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;;;;;;;;;;;;;;;;;UAuBhB,oBAAoB;EAK/C,CAAC"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/container.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAuBnD,eAAO,MAAM,eAAe,GAC1B,OAAO,iBAAiB,EACxB,mBAAmB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;;;;;;;;;;;;;;;;;UAuBhB,oBAAoB;EAK/C,CAAC"}
@@ -1,25 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const index = require("../../../model/elements/index.js");
3
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
4
4
  const controls = require("./controls.js");
5
5
  const frames = require("./frames.js");
6
6
  const _elementModel = require("./_elementModel.js");
7
7
  const createAriaLive = () => {
8
- const liveText = index.create({
9
- element: document.createElement("p"),
10
- className: "umd-carousel-wide__aria-live",
11
- attributes: [{ "aria-live": "polite" }],
12
- elementStyles: {
13
- element: {
14
- position: "absolute",
15
- left: "-10000px",
16
- width: "1px",
17
- height: "1px",
18
- overflow: "hidden"
19
- }
8
+ const liveText = new webBuilderLibrary.ElementBuilder("p").withClassName("umd-carousel-wide__aria-live").withAttribute("aria-live", "polite").withStyles({
9
+ element: {
10
+ position: "absolute",
11
+ left: "-10000px",
12
+ width: "1px",
13
+ height: "1px",
14
+ overflow: "hidden"
20
15
  }
21
- });
22
- liveText.element.textContent = "Slide 1 Selected";
16
+ }).withText("Slide 1 Selected").build();
23
17
  liveText.element.classList.add("sr-only");
24
18
  return liveText;
25
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sources":["../../../../source/composite/carousel/wide/container.ts"],"sourcesContent":["import { ElementModel } from 'model';\nimport { createIndicator } from './controls';\nimport { createFramesContainer } from './frames';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nconst createAriaLive = () => {\n const liveText = ElementModel.create({\n element: document.createElement('p'),\n className: 'umd-carousel-wide__aria-live',\n attributes: [{ 'aria-live': 'polite' }],\n elementStyles: {\n element: {\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n },\n },\n });\n\n liveText.element.textContent = 'Slide 1 Selected';\n liveText.element.classList.add('sr-only');\n\n return liveText;\n};\n\nexport const createContainer = (\n props: CarouselWideProps,\n onIndicatorClick?: (index: number) => void,\n) => {\n const info = createAriaLive();\n const framesContainer = createFramesContainer(\n props.slides,\n props.isThemeDark,\n );\n\n const indicatorWrapper = createIndicator(\n props.slides,\n props.isThemeDark,\n onIndicatorClick,\n );\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__container',\n children: [info, framesContainer, indicatorWrapper],\n elementStyles: {\n element: {\n position: 'relative',\n },\n },\n refs: {\n info: info.element as HTMLParagraphElement,\n ...framesContainer.refs,\n indicator: indicatorWrapper.refs.indicator,\n },\n });\n};\n"],"names":["ElementModel.create","createFramesContainer","createIndicator","createElementWithRefs"],"mappings":";;;;;;AAMA,MAAM,iBAAiB,MAAM;AAC3B,QAAM,WAAWA,MAAAA,OAAoB;AAAA,IACnC,SAAS,SAAS,cAAc,GAAG;AAAA,IACnC,WAAW;AAAA,IACX,YAAY,CAAC,EAAE,aAAa,UAAU;AAAA,IACtC,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EACF,CACD;AAED,WAAS,QAAQ,cAAc;AAC/B,WAAS,QAAQ,UAAU,IAAI,SAAS;AAExC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAC7B,OACA,qBACG;AACH,QAAM,OAAO,eAAA;AACb,QAAM,kBAAkBC,OAAAA;AAAAA,IACtB,MAAM;AAAA,IACN,MAAM;AAAA,EAAA;AAGR,QAAM,mBAAmBC,SAAAA;AAAAA,IACvB,MAAM;AAAA,IACN,MAAM;AAAA,IACN;AAAA,EAAA;AAGF,SAAOC,oCAAsB;AAAA,IAC3B,WAAW;AAAA,IACX,UAAU,CAAC,MAAM,iBAAiB,gBAAgB;AAAA,IAClD,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,IAEF,MAAM;AAAA,MACJ,MAAM,KAAK;AAAA,MACX,GAAG,gBAAgB;AAAA,MACnB,WAAW,iBAAiB,KAAK;AAAA,IAAA;AAAA,EACnC,CACD;AACH;;"}
1
+ {"version":3,"file":"container.js","sources":["../../../../source/composite/carousel/wide/container.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { createIndicator } from './controls';\nimport { createFramesContainer } from './frames';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nconst createAriaLive = () => {\n const liveText = new ElementBuilder('p')\n .withClassName('umd-carousel-wide__aria-live')\n .withAttribute('aria-live', 'polite')\n .withStyles({\n element: {\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n },\n })\n .withText('Slide 1 Selected')\n .build();\n\n liveText.element.classList.add('sr-only');\n\n return liveText;\n};\n\nexport const createContainer = (\n props: CarouselWideProps,\n onIndicatorClick?: (index: number) => void,\n) => {\n const info = createAriaLive();\n const framesContainer = createFramesContainer(\n props.slides,\n props.isThemeDark,\n );\n\n const indicatorWrapper = createIndicator(\n props.slides,\n props.isThemeDark,\n onIndicatorClick,\n );\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__container',\n children: [info, framesContainer, indicatorWrapper],\n elementStyles: {\n element: {\n position: 'relative',\n },\n },\n refs: {\n info: info.element as HTMLParagraphElement,\n ...framesContainer.refs,\n indicator: indicatorWrapper.refs.indicator,\n },\n });\n};\n"],"names":["ElementBuilder","createFramesContainer","createIndicator","createElementWithRefs"],"mappings":";;;;;;AAMA,MAAM,iBAAiB,MAAM;AAC3B,QAAM,WAAW,IAAIA,iCAAe,GAAG,EACpC,cAAc,8BAA8B,EAC5C,cAAc,aAAa,QAAQ,EACnC,WAAW;AAAA,IACV,SAAS;AAAA,MACP,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,EACZ,CACD,EACA,SAAS,kBAAkB,EAC3B,MAAA;AAEH,WAAS,QAAQ,UAAU,IAAI,SAAS;AAExC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAC7B,OACA,qBACG;AACH,QAAM,OAAO,eAAA;AACb,QAAM,kBAAkBC,OAAAA;AAAAA,IACtB,MAAM;AAAA,IACN,MAAM;AAAA,EAAA;AAGR,QAAM,mBAAmBC,SAAAA;AAAAA,IACvB,MAAM;AAAA,IACN,MAAM;AAAA,IACN;AAAA,EAAA;AAGF,SAAOC,oCAAsB;AAAA,IAC3B,WAAW;AAAA,IACX,UAAU,CAAC,MAAM,iBAAiB,gBAAgB;AAAA,IAClD,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,IAEF,MAAM;AAAA,MACJ,MAAM,KAAK;AAAA,MACX,GAAG,gBAAgB;AAAA,MACnB,WAAW,iBAAiB,KAAK;AAAA,IAAA;AAAA,EACnC,CACD;AACH;;"}
@@ -1,23 +1,17 @@
1
- import { create } from "../../../model/elements/index.mjs";
1
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
2
2
  import { createIndicator } from "./controls.mjs";
3
3
  import { createFramesContainer } from "./frames.mjs";
4
4
  import { createElementWithRefs } from "./_elementModel.mjs";
5
5
  const createAriaLive = () => {
6
- const liveText = create({
7
- element: document.createElement("p"),
8
- className: "umd-carousel-wide__aria-live",
9
- attributes: [{ "aria-live": "polite" }],
10
- elementStyles: {
11
- element: {
12
- position: "absolute",
13
- left: "-10000px",
14
- width: "1px",
15
- height: "1px",
16
- overflow: "hidden"
17
- }
6
+ const liveText = new ElementBuilder("p").withClassName("umd-carousel-wide__aria-live").withAttribute("aria-live", "polite").withStyles({
7
+ element: {
8
+ position: "absolute",
9
+ left: "-10000px",
10
+ width: "1px",
11
+ height: "1px",
12
+ overflow: "hidden"
18
13
  }
19
- });
20
- liveText.element.textContent = "Slide 1 Selected";
14
+ }).withText("Slide 1 Selected").build();
21
15
  liveText.element.classList.add("sr-only");
22
16
  return liveText;
23
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"container.mjs","sources":["../../../../source/composite/carousel/wide/container.ts"],"sourcesContent":["import { ElementModel } from 'model';\nimport { createIndicator } from './controls';\nimport { createFramesContainer } from './frames';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nconst createAriaLive = () => {\n const liveText = ElementModel.create({\n element: document.createElement('p'),\n className: 'umd-carousel-wide__aria-live',\n attributes: [{ 'aria-live': 'polite' }],\n elementStyles: {\n element: {\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n },\n },\n });\n\n liveText.element.textContent = 'Slide 1 Selected';\n liveText.element.classList.add('sr-only');\n\n return liveText;\n};\n\nexport const createContainer = (\n props: CarouselWideProps,\n onIndicatorClick?: (index: number) => void,\n) => {\n const info = createAriaLive();\n const framesContainer = createFramesContainer(\n props.slides,\n props.isThemeDark,\n );\n\n const indicatorWrapper = createIndicator(\n props.slides,\n props.isThemeDark,\n onIndicatorClick,\n );\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__container',\n children: [info, framesContainer, indicatorWrapper],\n elementStyles: {\n element: {\n position: 'relative',\n },\n },\n refs: {\n info: info.element as HTMLParagraphElement,\n ...framesContainer.refs,\n indicator: indicatorWrapper.refs.indicator,\n },\n });\n};\n"],"names":["ElementModel.create"],"mappings":";;;;AAMA,MAAM,iBAAiB,MAAM;AAC3B,QAAM,WAAWA,OAAoB;AAAA,IACnC,SAAS,SAAS,cAAc,GAAG;AAAA,IACnC,WAAW;AAAA,IACX,YAAY,CAAC,EAAE,aAAa,UAAU;AAAA,IACtC,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EACF,CACD;AAED,WAAS,QAAQ,cAAc;AAC/B,WAAS,QAAQ,UAAU,IAAI,SAAS;AAExC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAC7B,OACA,qBACG;AACH,QAAM,OAAO,eAAA;AACb,QAAM,kBAAkB;AAAA,IACtB,MAAM;AAAA,IACN,MAAM;AAAA,EAAA;AAGR,QAAM,mBAAmB;AAAA,IACvB,MAAM;AAAA,IACN,MAAM;AAAA,IACN;AAAA,EAAA;AAGF,SAAO,sBAAsB;AAAA,IAC3B,WAAW;AAAA,IACX,UAAU,CAAC,MAAM,iBAAiB,gBAAgB;AAAA,IAClD,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,IAEF,MAAM;AAAA,MACJ,MAAM,KAAK;AAAA,MACX,GAAG,gBAAgB;AAAA,MACnB,WAAW,iBAAiB,KAAK;AAAA,IAAA;AAAA,EACnC,CACD;AACH;"}
1
+ {"version":3,"file":"container.mjs","sources":["../../../../source/composite/carousel/wide/container.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { createIndicator } from './controls';\nimport { createFramesContainer } from './frames';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nconst createAriaLive = () => {\n const liveText = new ElementBuilder('p')\n .withClassName('umd-carousel-wide__aria-live')\n .withAttribute('aria-live', 'polite')\n .withStyles({\n element: {\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n },\n })\n .withText('Slide 1 Selected')\n .build();\n\n liveText.element.classList.add('sr-only');\n\n return liveText;\n};\n\nexport const createContainer = (\n props: CarouselWideProps,\n onIndicatorClick?: (index: number) => void,\n) => {\n const info = createAriaLive();\n const framesContainer = createFramesContainer(\n props.slides,\n props.isThemeDark,\n );\n\n const indicatorWrapper = createIndicator(\n props.slides,\n props.isThemeDark,\n onIndicatorClick,\n );\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__container',\n children: [info, framesContainer, indicatorWrapper],\n elementStyles: {\n element: {\n position: 'relative',\n },\n },\n refs: {\n info: info.element as HTMLParagraphElement,\n ...framesContainer.refs,\n indicator: indicatorWrapper.refs.indicator,\n },\n });\n};\n"],"names":[],"mappings":";;;;AAMA,MAAM,iBAAiB,MAAM;AAC3B,QAAM,WAAW,IAAI,eAAe,GAAG,EACpC,cAAc,8BAA8B,EAC5C,cAAc,aAAa,QAAQ,EACnC,WAAW;AAAA,IACV,SAAS;AAAA,MACP,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,EACZ,CACD,EACA,SAAS,kBAAkB,EAC3B,MAAA;AAEH,WAAS,QAAQ,UAAU,IAAI,SAAS;AAExC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAC7B,OACA,qBACG;AACH,QAAM,OAAO,eAAA;AACb,QAAM,kBAAkB;AAAA,IACtB,MAAM;AAAA,IACN,MAAM;AAAA,EAAA;AAGR,QAAM,mBAAmB;AAAA,IACvB,MAAM;AAAA,IACN,MAAM;AAAA,IACN;AAAA,EAAA;AAGF,SAAO,sBAAsB;AAAA,IAC3B,WAAW;AAAA,IACX,UAAU,CAAC,MAAM,iBAAiB,gBAAgB;AAAA,IAClD,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,IAEF,MAAM;AAAA,MACJ,MAAM,KAAK;AAAA,MACX,GAAG,gBAAgB;AAAA,MACnB,WAAW,iBAAiB,KAAK;AAAA,IAAA;AAAA,EACnC,CACD;AACH;"}
@@ -1,9 +1,5 @@
1
1
  import { CarouselWideProps } from '../_types';
2
- export declare const createControlButton: (type: "prev" | "next", isThemeDark?: boolean) => {
3
- element: HTMLElement;
4
- className: string;
5
- styles: string;
6
- };
2
+ export declare const createControlButton: (type: "prev" | "next", isThemeDark?: boolean) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
7
3
  export declare const createIndicator: (slides: CarouselWideProps["slides"], isThemeDark?: boolean, callback?: (index: number) => void) => import('./_elementModel').ElementWithRefsReturn<{
8
4
  indicator: {
9
5
  element: HTMLDivElement;
@@ -1 +1 @@
1
- {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/controls.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,GAAG,MAAM,EACrB,cAAc,OAAO;;;;CAiFtB,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,QAAQ,iBAAiB,CAAC,QAAQ,CAAC,EACnC,cAAc,OAAO,EACrB,WAAW,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;;;;;;;EA4BnC,CAAC"}
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../source/composite/carousel/wide/controls.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,GAAG,MAAM,EACrB,cAAc,OAAO,kFAkFtB,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,QAAQ,iBAAiB,CAAC,QAAQ,CAAC,EACnC,cAAc,OAAO,EACrB,WAAW,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;;;;;;;EA4BnC,CAAC"}
@@ -1,29 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const token = require("@universityofmaryland/web-styles-library/token");
3
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
4
+ const token = require("@universityofmaryland/web-token-library");
4
5
  const arrows = require("@universityofmaryland/web-icons-library/arrows");
5
6
  require("@universityofmaryland/web-styles-library/element");
7
+ require("@universityofmaryland/web-styles-library/layout");
8
+ require("@universityofmaryland/web-styles-library/animation");
9
+ require("@universityofmaryland/web-styles-library/typography");
6
10
  require("@universityofmaryland/web-utilities-library/media");
7
11
  require("@universityofmaryland/web-utilities-library/dom");
8
12
  require("@universityofmaryland/web-icons-library/controls");
9
13
  require("@universityofmaryland/web-icons-library/communication");
10
14
  require("@universityofmaryland/web-icons-library/files");
11
15
  require("@universityofmaryland/web-icons-library/brand");
12
- const index = require("../../../model/elements/index.js");
13
16
  const indicator = require("../../../atomic/animations/actions/indicator.js");
14
17
  require("../../../atomic/animations/brand/chevron-scroll.js");
15
18
  require("../../../atomic/animations/brand/card-stack.js");
19
+ require("@universityofmaryland/web-styles-library");
16
20
  require("@universityofmaryland/web-utilities-library/performance");
17
21
  require("@universityofmaryland/web-utilities-library/accessibility");
18
22
  require("@universityofmaryland/web-icons-library/location");
19
23
  require("@universityofmaryland/web-icons-library/calendar");
24
+ require("@universityofmaryland/web-utilities-library/theme");
20
25
  require("../../../atomic/layout/block/stacked.js");
21
26
  require("../../../atomic/layout/overlay/modal.js");
22
27
  require("../../../atomic/layout/person/columns.js");
23
28
  require("@universityofmaryland/web-icons-library/social");
24
29
  require("../../../atomic/text-lockup/date.js");
25
30
  require("../../../atomic/text-lockup/small.js");
26
- require("@universityofmaryland/web-styles-library/typography");
27
31
  const _elementModel = require("./_elementModel.js");
28
32
  function _interopNamespaceDefault(e) {
29
33
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -48,63 +52,58 @@ const createControlButton = (type, isThemeDark) => {
48
52
  const buttonTabletPosition = `calc(10vw - (${token__namespace.spacing.md} + ${token__namespace.spacing.md}))`;
49
53
  const buttonDesktopPosition = `calc(15vw - (${token__namespace.spacing["xl"]} + ${token__namespace.spacing.md}))`;
50
54
  const buttonHighPosition = `calc(20vw - (${token__namespace.spacing["xl"]} + ${token__namespace.spacing.md}))`;
51
- const button = index.create({
52
- element: document.createElement("button"),
53
- className: isPrev ? "umd-carousel-wide__control--prev" : "umd-carousel-wide__control--next",
54
- elementStyles: {
55
- element: {
56
- backgroundColor: isThemeDark ? token__namespace.color.red : token__namespace.color.white,
57
- height: token__namespace.spacing.lg,
58
- padding: token__namespace.spacing.min,
59
- position: "absolute",
60
- transform: `${isPrev ? " rotate(180deg)" : ""}`,
61
- zIndex: 3,
62
- transition: "background 0.5s",
63
- width: token__namespace.spacing.lg,
64
- [`@media (${token__namespace.media.queries.large.max})`]: {
65
- top: `calc(22vw + ${token__namespace.spacing.sm})`,
66
- left: isPrev ? "auto" : `${token__namespace.spacing["xl"]}`,
67
- right: isPrev ? `${token__namespace.spacing["xl"]}` : "auto"
68
- },
69
- [`@media (${token__namespace.media.queries.tablet.min})`]: {
70
- boxShadow: "0 0 5px 0 rgba(0, 0, 0, 0.4)",
71
- left: isPrev ? "auto" : buttonTabletPosition,
72
- right: isPrev ? buttonTabletPosition : "auto",
73
- bottom: "35%"
74
- },
75
- [`@media (${token__namespace.media.queries.desktop.min})`]: {
76
- width: token__namespace.spacing["2xl"],
77
- height: token__namespace.spacing["2xl"],
78
- padding: token__namespace.spacing.xs,
79
- left: isPrev ? "auto" : buttonDesktopPosition,
80
- right: isPrev ? buttonDesktopPosition : "auto"
81
- },
82
- [`@media (${token__namespace.media.queries.highDef.min})`]: {
83
- left: isPrev ? "auto" : buttonHighPosition,
84
- right: isPrev ? buttonHighPosition : "auto"
85
- },
55
+ const srText = new webBuilderLibrary.ElementBuilder("span").withClassName("sr-only").withText(altText).build();
56
+ const button = new webBuilderLibrary.ElementBuilder("button").withClassName(
57
+ isPrev ? "umd-carousel-wide__control--prev" : "umd-carousel-wide__control--next"
58
+ ).withStyles({
59
+ element: {
60
+ backgroundColor: isThemeDark ? token__namespace.color.red : token__namespace.color.white,
61
+ height: token__namespace.spacing.lg,
62
+ padding: token__namespace.spacing.min,
63
+ position: "absolute",
64
+ transform: `${isPrev ? " rotate(180deg)" : ""}`,
65
+ zIndex: 3,
66
+ transition: "background 0.5s",
67
+ width: token__namespace.spacing.lg,
68
+ [`@media (${token__namespace.media.queries.large.max})`]: {
69
+ top: `calc(22vw + ${token__namespace.spacing.sm})`,
70
+ left: isPrev ? "auto" : `${token__namespace.spacing["xl"]}`,
71
+ right: isPrev ? `${token__namespace.spacing["xl"]}` : "auto"
72
+ },
73
+ [`@media (${token__namespace.media.queries.tablet.min})`]: {
74
+ boxShadow: "0 0 5px 0 rgba(0, 0, 0, 0.4)",
75
+ left: isPrev ? "auto" : buttonTabletPosition,
76
+ right: isPrev ? buttonTabletPosition : "auto",
77
+ bottom: "35%"
78
+ },
79
+ [`@media (${token__namespace.media.queries.desktop.min})`]: {
80
+ width: token__namespace.spacing["2xl"],
81
+ height: token__namespace.spacing["2xl"],
82
+ padding: token__namespace.spacing.xs,
83
+ left: isPrev ? "auto" : buttonDesktopPosition,
84
+ right: isPrev ? buttonDesktopPosition : "auto"
85
+ },
86
+ [`@media (${token__namespace.media.queries.highDef.min})`]: {
87
+ left: isPrev ? "auto" : buttonHighPosition,
88
+ right: isPrev ? buttonHighPosition : "auto"
89
+ },
90
+ "& svg": {
91
+ height: "100%",
92
+ width: "100%",
93
+ fill: isThemeDark ? token__namespace.color.white : token__namespace.color.black,
94
+ transition: "fill 0.5s"
95
+ },
96
+ "&:hover, &:focus": {
97
+ backgroundColor: isThemeDark ? token__namespace.color.redDark : token__namespace.color.red,
86
98
  "& svg": {
87
- height: "100%",
88
- width: "100%",
89
- fill: isThemeDark ? token__namespace.color.white : token__namespace.color.black,
90
- transition: "fill 0.5s"
91
- },
92
- "&:hover, &:focus": {
93
- backgroundColor: isThemeDark ? token__namespace.color.redDark : token__namespace.color.red,
94
- "& svg": {
95
- fill: token__namespace.color.white
96
- }
99
+ fill: token__namespace.color.white
97
100
  }
98
101
  }
99
102
  }
100
- });
101
- const srText = index.create({
102
- element: document.createElement("span"),
103
- className: "sr-only"
104
- });
105
- srText.element.textContent = altText;
106
- button.element.append(srText.element);
107
- button.element.insertAdjacentHTML("afterbegin", arrows.arrow_left);
103
+ }).withModifier((el) => {
104
+ el.append(srText.element);
105
+ el.insertAdjacentHTML("afterbegin", arrows.arrow_left);
106
+ }).build();
108
107
  return button;
109
108
  };
110
109
  const createIndicator = (slides, isThemeDark, callback) => {
@@ -1 +1 @@
1
- {"version":3,"file":"controls.js","sources":["../../../../source/composite/carousel/wide/controls.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport { arrow_left as iconArrowLeft } from '@universityofmaryland/web-icons-library/arrows';\nimport { animations } from 'atomic';\nimport { ElementModel } from 'model';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nexport const createControlButton = (\n type: 'prev' | 'next',\n isThemeDark?: boolean,\n) => {\n const isPrev = type === 'prev';\n const altText = isPrev\n ? 'Reverse to the previous Slide'\n : 'Advanced to the Next Slide';\n\n const buttonTabletPosition = `calc(10vw - (${token.spacing.md} + ${token.spacing.md}))`;\n const buttonDesktopPosition = `calc(15vw - (${token.spacing['xl']} + ${token.spacing.md}))`;\n const buttonHighPosition = `calc(20vw - (${token.spacing['xl']} + ${token.spacing.md}))`;\n\n const button = ElementModel.create({\n element: document.createElement('button'),\n className: isPrev\n ? 'umd-carousel-wide__control--prev'\n : 'umd-carousel-wide__control--next',\n elementStyles: {\n element: {\n backgroundColor: isThemeDark ? token.color.red : token.color.white,\n height: token.spacing.lg,\n padding: token.spacing.min,\n position: 'absolute',\n transform: `${isPrev ? ' rotate(180deg)' : ''}`,\n zIndex: 3,\n transition: 'background 0.5s',\n width: token.spacing.lg,\n\n [`@media (${token.media.queries.large.max})`]: {\n top: `calc(22vw + ${token.spacing.sm})`,\n left: isPrev ? 'auto' : `${token.spacing['xl']}`,\n right: isPrev ? `${token.spacing['xl']}` : 'auto',\n },\n\n [`@media (${token.media.queries.tablet.min})`]: {\n boxShadow: '0 0 5px 0 rgba(0, 0, 0, 0.4)',\n left: isPrev ? 'auto' : buttonTabletPosition,\n right: isPrev ? buttonTabletPosition : 'auto',\n bottom: '35%',\n },\n\n [`@media (${token.media.queries.desktop.min})`]: {\n width: token.spacing['2xl'],\n height: token.spacing['2xl'],\n padding: token.spacing.xs,\n left: isPrev ? 'auto' : buttonDesktopPosition,\n right: isPrev ? buttonDesktopPosition : 'auto',\n },\n\n [`@media (${token.media.queries.highDef.min})`]: {\n left: isPrev ? 'auto' : buttonHighPosition,\n right: isPrev ? buttonHighPosition : 'auto',\n },\n\n '& svg': {\n height: '100%',\n width: '100%',\n fill: isThemeDark ? token.color.white : token.color.black,\n transition: 'fill 0.5s',\n },\n\n '&:hover, &:focus': {\n backgroundColor: isThemeDark ? token.color.redDark : token.color.red,\n\n '& svg': {\n fill: token.color.white,\n },\n },\n },\n },\n });\n\n const srText = ElementModel.create({\n element: document.createElement('span'),\n className: 'sr-only',\n });\n srText.element.textContent = altText;\n\n button.element.append(srText.element);\n button.element.insertAdjacentHTML('afterbegin', iconArrowLeft);\n\n return button;\n};\n\nexport const createIndicator = (\n slides: CarouselWideProps['slides'],\n isThemeDark?: boolean,\n callback?: (index: number) => void,\n) => {\n const indicator = animations.actions.indicator({\n count: slides.length,\n isThemeDark,\n callback: callback || (() => {}),\n });\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__drawer',\n children: [indicator],\n elementStyles: {\n element: {\n display: 'flex',\n justifyContent: 'center',\n margin: 'auto',\n padding: token.spacing.md,\n\n [`@media (${token.media.queries.tablet.min})`]: {\n padding: 0,\n paddingTop: token.spacing.lg,\n },\n },\n },\n refs: {\n indicator,\n },\n });\n};\n"],"names":["token","ElementModel.create","iconArrowLeft","indicator","animations.actions.indicator","createElementWithRefs"],"mappings":"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"}
1
+ {"version":3,"file":"controls.js","sources":["../../../../source/composite/carousel/wide/controls.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport { arrow_left as iconArrowLeft } from '@universityofmaryland/web-icons-library/arrows';\nimport { animations } from 'atomic';\nimport { createElementWithRefs } from './_elementModel';\nimport { type CarouselWideProps } from '../_types';\n\nexport const createControlButton = (\n type: 'prev' | 'next',\n isThemeDark?: boolean,\n) => {\n const isPrev = type === 'prev';\n const altText = isPrev\n ? 'Reverse to the previous Slide'\n : 'Advanced to the Next Slide';\n\n const buttonTabletPosition = `calc(10vw - (${token.spacing.md} + ${token.spacing.md}))`;\n const buttonDesktopPosition = `calc(15vw - (${token.spacing['xl']} + ${token.spacing.md}))`;\n const buttonHighPosition = `calc(20vw - (${token.spacing['xl']} + ${token.spacing.md}))`;\n\n const srText = new ElementBuilder('span')\n .withClassName('sr-only')\n .withText(altText)\n .build();\n\n const button = new ElementBuilder('button')\n .withClassName(\n isPrev\n ? 'umd-carousel-wide__control--prev'\n : 'umd-carousel-wide__control--next',\n )\n .withStyles({\n element: {\n backgroundColor: isThemeDark ? token.color.red : token.color.white,\n height: token.spacing.lg,\n padding: token.spacing.min,\n position: 'absolute',\n transform: `${isPrev ? ' rotate(180deg)' : ''}`,\n zIndex: 3,\n transition: 'background 0.5s',\n width: token.spacing.lg,\n\n [`@media (${token.media.queries.large.max})`]: {\n top: `calc(22vw + ${token.spacing.sm})`,\n left: isPrev ? 'auto' : `${token.spacing['xl']}`,\n right: isPrev ? `${token.spacing['xl']}` : 'auto',\n },\n\n [`@media (${token.media.queries.tablet.min})`]: {\n boxShadow: '0 0 5px 0 rgba(0, 0, 0, 0.4)',\n left: isPrev ? 'auto' : buttonTabletPosition,\n right: isPrev ? buttonTabletPosition : 'auto',\n bottom: '35%',\n },\n\n [`@media (${token.media.queries.desktop.min})`]: {\n width: token.spacing['2xl'],\n height: token.spacing['2xl'],\n padding: token.spacing.xs,\n left: isPrev ? 'auto' : buttonDesktopPosition,\n right: isPrev ? buttonDesktopPosition : 'auto',\n },\n\n [`@media (${token.media.queries.highDef.min})`]: {\n left: isPrev ? 'auto' : buttonHighPosition,\n right: isPrev ? buttonHighPosition : 'auto',\n },\n\n '& svg': {\n height: '100%',\n width: '100%',\n fill: isThemeDark ? token.color.white : token.color.black,\n transition: 'fill 0.5s',\n },\n\n '&:hover, &:focus': {\n backgroundColor: isThemeDark ? token.color.redDark : token.color.red,\n\n '& svg': {\n fill: token.color.white,\n },\n },\n },\n })\n .withModifier((el) => {\n el.append(srText.element);\n el.insertAdjacentHTML('afterbegin', iconArrowLeft);\n })\n .build();\n\n return button;\n};\n\nexport const createIndicator = (\n slides: CarouselWideProps['slides'],\n isThemeDark?: boolean,\n callback?: (index: number) => void,\n) => {\n const indicator = animations.actions.indicator({\n count: slides.length,\n isThemeDark,\n callback: callback || (() => {}),\n });\n\n return createElementWithRefs({\n className: 'umd-carousel-wide__drawer',\n children: [indicator],\n elementStyles: {\n element: {\n display: 'flex',\n justifyContent: 'center',\n margin: 'auto',\n padding: token.spacing.md,\n\n [`@media (${token.media.queries.tablet.min})`]: {\n padding: 0,\n paddingTop: token.spacing.lg,\n },\n },\n },\n refs: {\n indicator,\n },\n });\n};\n"],"names":["token","ElementBuilder","iconArrowLeft","indicator","animations.actions.indicator","createElementWithRefs"],"mappings":"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"}