@universityofmaryland/web-elements-library 1.5.3 → 1.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (708) hide show
  1. package/README.md +1 -1
  2. package/dist/_types.d.ts +2 -9
  3. package/dist/_types.d.ts.map +1 -1
  4. package/dist/atomic/_types.d.ts +2 -2
  5. package/dist/atomic/_types.d.ts.map +1 -1
  6. package/dist/atomic/actions/icon.d.ts +1 -5
  7. package/dist/atomic/actions/icon.d.ts.map +1 -1
  8. package/dist/atomic/actions/icon.js +43 -48
  9. package/dist/atomic/actions/icon.js.map +1 -1
  10. package/dist/atomic/actions/icon.mjs +43 -48
  11. package/dist/atomic/actions/icon.mjs.map +1 -1
  12. package/dist/atomic/actions/text.d.ts +4 -16
  13. package/dist/atomic/actions/text.d.ts.map +1 -1
  14. package/dist/atomic/actions/text.js +82 -104
  15. package/dist/atomic/actions/text.js.map +1 -1
  16. package/dist/atomic/actions/text.mjs +81 -106
  17. package/dist/atomic/actions/text.mjs.map +1 -1
  18. package/dist/atomic/animations/actions/indicator.js +1 -1
  19. package/dist/atomic/animations/actions/indicator.js.map +1 -1
  20. package/dist/atomic/animations/actions/indicator.mjs +1 -1
  21. package/dist/atomic/animations/actions/indicator.mjs.map +1 -1
  22. package/dist/atomic/animations/brand/card-stack.d.ts +2 -1
  23. package/dist/atomic/animations/brand/card-stack.d.ts.map +1 -1
  24. package/dist/atomic/animations/brand/card-stack.js +148 -172
  25. package/dist/atomic/animations/brand/card-stack.js.map +1 -1
  26. package/dist/atomic/animations/brand/card-stack.mjs +140 -164
  27. package/dist/atomic/animations/brand/card-stack.mjs.map +1 -1
  28. package/dist/atomic/animations/brand/chevron-scroll.js +1 -1
  29. package/dist/atomic/animations/brand/chevron-scroll.js.map +1 -1
  30. package/dist/atomic/animations/brand/chevron-scroll.mjs +1 -1
  31. package/dist/atomic/animations/brand/chevron-scroll.mjs.map +1 -1
  32. package/dist/atomic/assets/image/background.d.ts +1 -5
  33. package/dist/atomic/assets/image/background.d.ts.map +1 -1
  34. package/dist/atomic/assets/image/background.js +40 -40
  35. package/dist/atomic/assets/image/background.js.map +1 -1
  36. package/dist/atomic/assets/image/background.mjs +23 -40
  37. package/dist/atomic/assets/image/background.mjs.map +1 -1
  38. package/dist/atomic/assets/image/gif.d.ts +1 -5
  39. package/dist/atomic/assets/image/gif.d.ts.map +1 -1
  40. package/dist/atomic/assets/image/gif.js +28 -12
  41. package/dist/atomic/assets/image/gif.js.map +1 -1
  42. package/dist/atomic/assets/image/gif.mjs +11 -12
  43. package/dist/atomic/assets/image/gif.mjs.map +1 -1
  44. package/dist/atomic/assets/image/placeholder.d.ts +1 -5
  45. package/dist/atomic/assets/image/placeholder.d.ts.map +1 -1
  46. package/dist/atomic/assets/video/observed-auto-play.d.ts +1 -9
  47. package/dist/atomic/assets/video/observed-auto-play.d.ts.map +1 -1
  48. package/dist/atomic/assets/video/observed-auto-play.js +9 -5
  49. package/dist/atomic/assets/video/observed-auto-play.js.map +1 -1
  50. package/dist/atomic/assets/video/observed-auto-play.mjs +9 -5
  51. package/dist/atomic/assets/video/observed-auto-play.mjs.map +1 -1
  52. package/dist/atomic/assets/video/toggle.d.ts +1 -9
  53. package/dist/atomic/assets/video/toggle.d.ts.map +1 -1
  54. package/dist/atomic/assets/video/toggle.js +38 -40
  55. package/dist/atomic/assets/video/toggle.js.map +1 -1
  56. package/dist/atomic/assets/video/toggle.mjs +21 -40
  57. package/dist/atomic/assets/video/toggle.mjs.map +1 -1
  58. package/dist/atomic/buttons/fullscreen.d.ts +1 -5
  59. package/dist/atomic/buttons/fullscreen.d.ts.map +1 -1
  60. package/dist/atomic/buttons/fullscreen.js +21 -15
  61. package/dist/atomic/buttons/fullscreen.js.map +1 -1
  62. package/dist/atomic/buttons/fullscreen.mjs +4 -15
  63. package/dist/atomic/buttons/fullscreen.mjs.map +1 -1
  64. package/dist/atomic/events/meta.d.ts +1 -5
  65. package/dist/atomic/events/meta.d.ts.map +1 -1
  66. package/dist/atomic/events/meta.js +48 -48
  67. package/dist/atomic/events/meta.js.map +1 -1
  68. package/dist/atomic/events/meta.mjs +31 -48
  69. package/dist/atomic/events/meta.mjs.map +1 -1
  70. package/dist/atomic/events/sign.d.ts +1 -5
  71. package/dist/atomic/events/sign.d.ts.map +1 -1
  72. package/dist/atomic/events/sign.js +84 -93
  73. package/dist/atomic/events/sign.js.map +1 -1
  74. package/dist/atomic/events/sign.mjs +82 -93
  75. package/dist/atomic/events/sign.mjs.map +1 -1
  76. package/dist/atomic/layout/block/stacked.d.ts +7 -19
  77. package/dist/atomic/layout/block/stacked.d.ts.map +1 -1
  78. package/dist/atomic/layout/block/stacked.js +14 -20
  79. package/dist/atomic/layout/block/stacked.js.map +1 -1
  80. package/dist/atomic/layout/block/stacked.mjs +14 -20
  81. package/dist/atomic/layout/block/stacked.mjs.map +1 -1
  82. package/dist/atomic/layout/overlay/modal.js +1 -1
  83. package/dist/atomic/layout/overlay/modal.js.map +1 -1
  84. package/dist/atomic/layout/overlay/modal.mjs +1 -1
  85. package/dist/atomic/layout/overlay/modal.mjs.map +1 -1
  86. package/dist/atomic/layout/person/columns.d.ts +4 -20
  87. package/dist/atomic/layout/person/columns.d.ts.map +1 -1
  88. package/dist/atomic/layout/person/columns.js +56 -66
  89. package/dist/atomic/layout/person/columns.js.map +1 -1
  90. package/dist/atomic/layout/person/columns.mjs +56 -66
  91. package/dist/atomic/layout/person/columns.mjs.map +1 -1
  92. package/dist/atomic/text/stat.d.ts +2 -3
  93. package/dist/atomic/text/stat.d.ts.map +1 -1
  94. package/dist/atomic/text/stat.js +101 -119
  95. package/dist/atomic/text/stat.js.map +1 -1
  96. package/dist/atomic/text/stat.mjs +100 -119
  97. package/dist/atomic/text/stat.mjs.map +1 -1
  98. package/dist/atomic/text-lockup/contact.d.ts +1 -5
  99. package/dist/atomic/text-lockup/contact.d.ts.map +1 -1
  100. package/dist/atomic/text-lockup/contact.js +65 -105
  101. package/dist/atomic/text-lockup/contact.js.map +1 -1
  102. package/dist/atomic/text-lockup/contact.mjs +60 -103
  103. package/dist/atomic/text-lockup/contact.mjs.map +1 -1
  104. package/dist/atomic/text-lockup/date.d.ts.map +1 -1
  105. package/dist/atomic/text-lockup/date.js +6 -1
  106. package/dist/atomic/text-lockup/date.js.map +1 -1
  107. package/dist/atomic/text-lockup/date.mjs +6 -1
  108. package/dist/atomic/text-lockup/date.mjs.map +1 -1
  109. package/dist/atomic/text-lockup/large.d.ts +3 -7
  110. package/dist/atomic/text-lockup/large.d.ts.map +1 -1
  111. package/dist/atomic/text-lockup/large.js +62 -71
  112. package/dist/atomic/text-lockup/large.js.map +1 -1
  113. package/dist/atomic/text-lockup/large.mjs +59 -71
  114. package/dist/atomic/text-lockup/large.mjs.map +1 -1
  115. package/dist/atomic/text-lockup/medium.d.ts +5 -9
  116. package/dist/atomic/text-lockup/medium.d.ts.map +1 -1
  117. package/dist/atomic/text-lockup/medium.js +76 -84
  118. package/dist/atomic/text-lockup/medium.js.map +1 -1
  119. package/dist/atomic/text-lockup/medium.mjs +70 -82
  120. package/dist/atomic/text-lockup/medium.mjs.map +1 -1
  121. package/dist/atomic/text-lockup/person.d.ts +1 -5
  122. package/dist/atomic/text-lockup/person.d.ts.map +1 -1
  123. package/dist/atomic/text-lockup/person.js +102 -101
  124. package/dist/atomic/text-lockup/person.js.map +1 -1
  125. package/dist/atomic/text-lockup/person.mjs +99 -101
  126. package/dist/atomic/text-lockup/person.mjs.map +1 -1
  127. package/dist/atomic/text-lockup/small-scaling.d.ts +1 -5
  128. package/dist/atomic/text-lockup/small-scaling.d.ts.map +1 -1
  129. package/dist/atomic/text-lockup/small-scaling.js +64 -39
  130. package/dist/atomic/text-lockup/small-scaling.js.map +1 -1
  131. package/dist/atomic/text-lockup/small-scaling.mjs +44 -38
  132. package/dist/atomic/text-lockup/small-scaling.mjs.map +1 -1
  133. package/dist/atomic/text-lockup/small.d.ts +11 -25
  134. package/dist/atomic/text-lockup/small.d.ts.map +1 -1
  135. package/dist/atomic/text-lockup/small.js +70 -69
  136. package/dist/atomic/text-lockup/small.js.map +1 -1
  137. package/dist/atomic/text-lockup/small.mjs +64 -66
  138. package/dist/atomic/text-lockup/small.mjs.map +1 -1
  139. package/dist/composite/alert/elements/closeButton.d.ts +7 -0
  140. package/dist/composite/alert/elements/closeButton.d.ts.map +1 -0
  141. package/dist/composite/alert/elements/closeButton.js +51 -0
  142. package/dist/composite/alert/elements/closeButton.js.map +1 -0
  143. package/dist/composite/alert/elements/closeButton.mjs +34 -0
  144. package/dist/composite/alert/elements/closeButton.mjs.map +1 -0
  145. package/dist/composite/alert/elements/text.d.ts +3 -13
  146. package/dist/composite/alert/elements/text.d.ts.map +1 -1
  147. package/dist/composite/alert/elements/text.js +60 -81
  148. package/dist/composite/alert/elements/text.js.map +1 -1
  149. package/dist/composite/alert/elements/text.mjs +56 -80
  150. package/dist/composite/alert/elements/text.mjs.map +1 -1
  151. package/dist/composite/alert/globals.d.ts +4 -0
  152. package/dist/composite/alert/globals.d.ts.map +1 -0
  153. package/dist/composite/alert/globals.js +7 -0
  154. package/dist/composite/alert/globals.js.map +1 -0
  155. package/dist/composite/alert/globals.mjs +7 -0
  156. package/dist/composite/alert/globals.mjs.map +1 -0
  157. package/dist/composite/alert/index.d.ts +2 -2
  158. package/dist/composite/alert/index.d.ts.map +1 -1
  159. package/dist/composite/alert/index.js +2 -2
  160. package/dist/composite/alert/index.mjs +4 -4
  161. package/dist/composite/alert/page.d.ts +5 -12
  162. package/dist/composite/alert/page.d.ts.map +1 -1
  163. package/dist/composite/alert/page.js +44 -113
  164. package/dist/composite/alert/page.js.map +1 -1
  165. package/dist/composite/alert/page.mjs +44 -112
  166. package/dist/composite/alert/page.mjs.map +1 -1
  167. package/dist/composite/alert/site.d.ts +5 -11
  168. package/dist/composite/alert/site.d.ts.map +1 -1
  169. package/dist/composite/alert/site.js +60 -109
  170. package/dist/composite/alert/site.js.map +1 -1
  171. package/dist/composite/alert/site.mjs +61 -109
  172. package/dist/composite/alert/site.mjs.map +1 -1
  173. package/dist/composite/banner/promo.js +1 -1
  174. package/dist/composite/banner/promo.js.map +1 -1
  175. package/dist/composite/banner/promo.mjs +1 -1
  176. package/dist/composite/banner/promo.mjs.map +1 -1
  177. package/dist/composite/card/block.d.ts +1 -5
  178. package/dist/composite/card/block.d.ts.map +1 -1
  179. package/dist/composite/card/block.js +7 -5
  180. package/dist/composite/card/block.js.map +1 -1
  181. package/dist/composite/card/block.mjs +7 -5
  182. package/dist/composite/card/block.mjs.map +1 -1
  183. package/dist/composite/card/list.d.ts +1 -5
  184. package/dist/composite/card/list.d.ts.map +1 -1
  185. package/dist/composite/card/list.js +52 -64
  186. package/dist/composite/card/list.js.map +1 -1
  187. package/dist/composite/card/list.mjs +52 -64
  188. package/dist/composite/card/list.mjs.map +1 -1
  189. package/dist/composite/card/overlay/color.d.ts +1 -5
  190. package/dist/composite/card/overlay/color.d.ts.map +1 -1
  191. package/dist/composite/card/overlay/color.js +36 -41
  192. package/dist/composite/card/overlay/color.js.map +1 -1
  193. package/dist/composite/card/overlay/color.mjs +36 -41
  194. package/dist/composite/card/overlay/color.mjs.map +1 -1
  195. package/dist/composite/card/overlay/icon.d.ts +1 -5
  196. package/dist/composite/card/overlay/icon.d.ts.map +1 -1
  197. package/dist/composite/card/overlay/icon.js +27 -31
  198. package/dist/composite/card/overlay/icon.js.map +1 -1
  199. package/dist/composite/card/overlay/icon.mjs +27 -31
  200. package/dist/composite/card/overlay/icon.mjs.map +1 -1
  201. package/dist/composite/card/overlay/image.d.ts +2 -1
  202. package/dist/composite/card/overlay/image.d.ts.map +1 -1
  203. package/dist/composite/card/overlay/image.js +74 -93
  204. package/dist/composite/card/overlay/image.js.map +1 -1
  205. package/dist/composite/card/overlay/image.mjs +73 -93
  206. package/dist/composite/card/overlay/image.mjs.map +1 -1
  207. package/dist/composite/card/video/block.d.ts +1 -9
  208. package/dist/composite/card/video/block.d.ts.map +1 -1
  209. package/dist/composite/card/video/block.js +7 -5
  210. package/dist/composite/card/video/block.js.map +1 -1
  211. package/dist/composite/card/video/block.mjs +7 -5
  212. package/dist/composite/card/video/block.mjs.map +1 -1
  213. package/dist/composite/card/video/short.d.ts +1 -5
  214. package/dist/composite/card/video/short.d.ts.map +1 -1
  215. package/dist/composite/card/video/short.js +16 -21
  216. package/dist/composite/card/video/short.js.map +1 -1
  217. package/dist/composite/card/video/short.mjs +16 -21
  218. package/dist/composite/card/video/short.mjs.map +1 -1
  219. package/dist/composite/carousel/_types.d.ts.map +1 -1
  220. package/dist/composite/carousel/default/index.js +1 -1
  221. package/dist/composite/carousel/default/index.js.map +1 -1
  222. package/dist/composite/carousel/default/index.mjs +1 -1
  223. package/dist/composite/carousel/default/index.mjs.map +1 -1
  224. package/dist/composite/carousel/elements/blocks.js +2 -2
  225. package/dist/composite/carousel/elements/blocks.js.map +1 -1
  226. package/dist/composite/carousel/elements/blocks.mjs +2 -2
  227. package/dist/composite/carousel/elements/blocks.mjs.map +1 -1
  228. package/dist/composite/carousel/elements/full-screen.js +7 -5
  229. package/dist/composite/carousel/elements/full-screen.js.map +1 -1
  230. package/dist/composite/carousel/elements/full-screen.mjs +7 -5
  231. package/dist/composite/carousel/elements/full-screen.mjs.map +1 -1
  232. package/dist/composite/carousel/elements/image.js +2 -2
  233. package/dist/composite/carousel/elements/image.js.map +1 -1
  234. package/dist/composite/carousel/elements/image.mjs +2 -2
  235. package/dist/composite/carousel/elements/image.mjs.map +1 -1
  236. package/dist/composite/carousel/elements/overlay.js +2 -2
  237. package/dist/composite/carousel/elements/overlay.js.map +1 -1
  238. package/dist/composite/carousel/elements/overlay.mjs +2 -2
  239. package/dist/composite/carousel/elements/overlay.mjs.map +1 -1
  240. package/dist/composite/carousel/image/multiple.js +11 -9
  241. package/dist/composite/carousel/image/multiple.js.map +1 -1
  242. package/dist/composite/carousel/image/multiple.mjs +11 -9
  243. package/dist/composite/carousel/image/multiple.mjs.map +1 -1
  244. package/dist/composite/carousel/image/standard.js +10 -8
  245. package/dist/composite/carousel/image/standard.js.map +1 -1
  246. package/dist/composite/carousel/image/standard.mjs +10 -8
  247. package/dist/composite/carousel/image/standard.mjs.map +1 -1
  248. package/dist/composite/carousel/thumbnail/index.js +1 -1
  249. package/dist/composite/carousel/thumbnail/index.js.map +1 -1
  250. package/dist/composite/carousel/thumbnail/index.mjs +1 -1
  251. package/dist/composite/carousel/thumbnail/index.mjs.map +1 -1
  252. package/dist/composite/carousel/wide/_elementModel.d.ts +2 -2
  253. package/dist/composite/carousel/wide/_elementModel.d.ts.map +1 -1
  254. package/dist/composite/carousel/wide/_elementModel.js +20 -7
  255. package/dist/composite/carousel/wide/_elementModel.js.map +1 -1
  256. package/dist/composite/carousel/wide/_elementModel.mjs +20 -7
  257. package/dist/composite/carousel/wide/_elementModel.mjs.map +1 -1
  258. package/dist/composite/carousel/wide/container.d.ts.map +1 -1
  259. package/dist/composite/carousel/wide/container.js +9 -15
  260. package/dist/composite/carousel/wide/container.js.map +1 -1
  261. package/dist/composite/carousel/wide/container.mjs +9 -15
  262. package/dist/composite/carousel/wide/container.mjs.map +1 -1
  263. package/dist/composite/carousel/wide/controls.d.ts +1 -5
  264. package/dist/composite/carousel/wide/controls.d.ts.map +1 -1
  265. package/dist/composite/carousel/wide/controls.js +55 -56
  266. package/dist/composite/carousel/wide/controls.js.map +1 -1
  267. package/dist/composite/carousel/wide/controls.mjs +55 -56
  268. package/dist/composite/carousel/wide/controls.mjs.map +1 -1
  269. package/dist/composite/carousel/wide/frames.d.ts.map +1 -1
  270. package/dist/composite/carousel/wide/frames.js +156 -171
  271. package/dist/composite/carousel/wide/frames.js.map +1 -1
  272. package/dist/composite/carousel/wide/frames.mjs +153 -169
  273. package/dist/composite/carousel/wide/frames.mjs.map +1 -1
  274. package/dist/composite/carousel/wide/index.d.ts +1 -5
  275. package/dist/composite/carousel/wide/index.d.ts.map +1 -1
  276. package/dist/composite/carousel/wide/index.js +23 -17
  277. package/dist/composite/carousel/wide/index.js.map +1 -1
  278. package/dist/composite/carousel/wide/index.mjs +23 -17
  279. package/dist/composite/carousel/wide/index.mjs.map +1 -1
  280. package/dist/composite/footer/elements/main-section/call-to-action.d.ts +2 -2
  281. package/dist/composite/footer/elements/main-section/call-to-action.d.ts.map +1 -1
  282. package/dist/composite/footer/elements/main-section/call-to-action.js +19 -28
  283. package/dist/composite/footer/elements/main-section/call-to-action.js.map +1 -1
  284. package/dist/composite/footer/elements/main-section/call-to-action.mjs +18 -28
  285. package/dist/composite/footer/elements/main-section/call-to-action.mjs.map +1 -1
  286. package/dist/composite/footer/elements/main-section/campaign.d.ts +2 -2
  287. package/dist/composite/footer/elements/main-section/campaign.d.ts.map +1 -1
  288. package/dist/composite/footer/elements/main-section/campaign.js +27 -35
  289. package/dist/composite/footer/elements/main-section/campaign.js.map +1 -1
  290. package/dist/composite/footer/elements/main-section/campaign.mjs +27 -35
  291. package/dist/composite/footer/elements/main-section/campaign.mjs.map +1 -1
  292. package/dist/composite/footer/elements/main-section/index.d.ts +2 -2
  293. package/dist/composite/footer/elements/main-section/index.d.ts.map +1 -1
  294. package/dist/composite/footer/elements/main-section/index.js +38 -50
  295. package/dist/composite/footer/elements/main-section/index.js.map +1 -1
  296. package/dist/composite/footer/elements/main-section/index.mjs +38 -50
  297. package/dist/composite/footer/elements/main-section/index.mjs.map +1 -1
  298. package/dist/composite/footer/elements/main-section/row-links/index.d.ts +2 -2
  299. package/dist/composite/footer/elements/main-section/row-links/index.d.ts.map +1 -1
  300. package/dist/composite/footer/elements/main-section/row-links/index.js +24 -36
  301. package/dist/composite/footer/elements/main-section/row-links/index.js.map +1 -1
  302. package/dist/composite/footer/elements/main-section/row-links/index.mjs +24 -36
  303. package/dist/composite/footer/elements/main-section/row-links/index.mjs.map +1 -1
  304. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts +2 -2
  305. package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts.map +1 -1
  306. package/dist/composite/footer/elements/main-section/row-links/link-columns.js +75 -95
  307. package/dist/composite/footer/elements/main-section/row-links/link-columns.js.map +1 -1
  308. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs +73 -93
  309. package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs.map +1 -1
  310. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts +2 -2
  311. package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts.map +1 -1
  312. package/dist/composite/footer/elements/main-section/row-logo/contact.js +88 -98
  313. package/dist/composite/footer/elements/main-section/row-logo/contact.js.map +1 -1
  314. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs +88 -98
  315. package/dist/composite/footer/elements/main-section/row-logo/contact.mjs.map +1 -1
  316. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts +2 -2
  317. package/dist/composite/footer/elements/main-section/row-logo/index.d.ts.map +1 -1
  318. package/dist/composite/footer/elements/main-section/row-logo/index.js +30 -43
  319. package/dist/composite/footer/elements/main-section/row-logo/index.js.map +1 -1
  320. package/dist/composite/footer/elements/main-section/row-logo/index.mjs +30 -43
  321. package/dist/composite/footer/elements/main-section/row-logo/index.mjs.map +1 -1
  322. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts +2 -2
  323. package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts.map +1 -1
  324. package/dist/composite/footer/elements/main-section/row-logo/logo.js +24 -32
  325. package/dist/composite/footer/elements/main-section/row-logo/logo.js.map +1 -1
  326. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs +24 -32
  327. package/dist/composite/footer/elements/main-section/row-logo/logo.mjs.map +1 -1
  328. package/dist/composite/footer/elements/main-section/social.d.ts +2 -2
  329. package/dist/composite/footer/elements/main-section/social.d.ts.map +1 -1
  330. package/dist/composite/footer/elements/main-section/social.js +74 -97
  331. package/dist/composite/footer/elements/main-section/social.js.map +1 -1
  332. package/dist/composite/footer/elements/main-section/social.mjs +74 -97
  333. package/dist/composite/footer/elements/main-section/social.mjs.map +1 -1
  334. package/dist/composite/footer/elements/utility-section/index.d.ts +1 -5
  335. package/dist/composite/footer/elements/utility-section/index.d.ts.map +1 -1
  336. package/dist/composite/footer/elements/utility-section/index.js +56 -83
  337. package/dist/composite/footer/elements/utility-section/index.js.map +1 -1
  338. package/dist/composite/footer/elements/utility-section/index.mjs +56 -83
  339. package/dist/composite/footer/elements/utility-section/index.mjs.map +1 -1
  340. package/dist/composite/footer/options.d.ts +1 -4
  341. package/dist/composite/footer/options.d.ts.map +1 -1
  342. package/dist/composite/footer/options.js +19 -27
  343. package/dist/composite/footer/options.js.map +1 -1
  344. package/dist/composite/footer/options.mjs +19 -27
  345. package/dist/composite/footer/options.mjs.map +1 -1
  346. package/dist/composite/hero/_types.d.ts.map +1 -1
  347. package/dist/composite/hero/custom/expand.d.ts +3 -2
  348. package/dist/composite/hero/custom/expand.d.ts.map +1 -1
  349. package/dist/composite/hero/custom/expand.js +151 -192
  350. package/dist/composite/hero/custom/expand.js.map +1 -1
  351. package/dist/composite/hero/custom/expand.mjs +145 -187
  352. package/dist/composite/hero/custom/expand.mjs.map +1 -1
  353. package/dist/composite/hero/custom/grid.d.ts +1 -5
  354. package/dist/composite/hero/custom/grid.d.ts.map +1 -1
  355. package/dist/composite/hero/custom/grid.js +122 -171
  356. package/dist/composite/hero/custom/grid.js.map +1 -1
  357. package/dist/composite/hero/custom/grid.mjs +116 -166
  358. package/dist/composite/hero/custom/grid.mjs.map +1 -1
  359. package/dist/composite/hero/custom/video-arrow.d.ts +2 -1
  360. package/dist/composite/hero/custom/video-arrow.d.ts.map +1 -1
  361. package/dist/composite/hero/custom/video-arrow.js +83 -105
  362. package/dist/composite/hero/custom/video-arrow.js.map +1 -1
  363. package/dist/composite/hero/custom/video-arrow.mjs +77 -99
  364. package/dist/composite/hero/custom/video-arrow.mjs.map +1 -1
  365. package/dist/composite/hero/logo.d.ts +1 -5
  366. package/dist/composite/hero/logo.d.ts.map +1 -1
  367. package/dist/composite/hero/logo.js +71 -89
  368. package/dist/composite/hero/logo.js.map +1 -1
  369. package/dist/composite/hero/logo.mjs +68 -87
  370. package/dist/composite/hero/logo.mjs.map +1 -1
  371. package/dist/composite/hero/minimal.d.ts +1 -5
  372. package/dist/composite/hero/minimal.d.ts.map +1 -1
  373. package/dist/composite/hero/minimal.js +67 -86
  374. package/dist/composite/hero/minimal.js.map +1 -1
  375. package/dist/composite/hero/minimal.mjs +63 -83
  376. package/dist/composite/hero/minimal.mjs.map +1 -1
  377. package/dist/composite/hero/overlay.d.ts +1 -5
  378. package/dist/composite/hero/overlay.d.ts.map +1 -1
  379. package/dist/composite/hero/overlay.js +107 -135
  380. package/dist/composite/hero/overlay.js.map +1 -1
  381. package/dist/composite/hero/overlay.mjs +103 -132
  382. package/dist/composite/hero/overlay.mjs.map +1 -1
  383. package/dist/composite/hero/stacked.d.ts +1 -5
  384. package/dist/composite/hero/stacked.d.ts.map +1 -1
  385. package/dist/composite/hero/stacked.js +114 -137
  386. package/dist/composite/hero/stacked.js.map +1 -1
  387. package/dist/composite/hero/stacked.mjs +110 -134
  388. package/dist/composite/hero/stacked.mjs.map +1 -1
  389. package/dist/composite/hero/standard.d.ts +1 -5
  390. package/dist/composite/hero/standard.d.ts.map +1 -1
  391. package/dist/composite/hero/standard.js +103 -116
  392. package/dist/composite/hero/standard.js.map +1 -1
  393. package/dist/composite/hero/standard.mjs +100 -114
  394. package/dist/composite/hero/standard.mjs.map +1 -1
  395. package/dist/composite/layout/box/logo.js +1 -1
  396. package/dist/composite/layout/box/logo.js.map +1 -1
  397. package/dist/composite/layout/box/logo.mjs +1 -1
  398. package/dist/composite/layout/box/logo.mjs.map +1 -1
  399. package/dist/composite/layout/image/expand.js +1 -1
  400. package/dist/composite/layout/image/expand.js.map +1 -1
  401. package/dist/composite/layout/image/expand.mjs +1 -1
  402. package/dist/composite/layout/image/expand.mjs.map +1 -1
  403. package/dist/composite/layout/scroll-top/index.js +1 -1
  404. package/dist/composite/layout/scroll-top/index.js.map +1 -1
  405. package/dist/composite/layout/scroll-top/index.mjs +1 -1
  406. package/dist/composite/layout/scroll-top/index.mjs.map +1 -1
  407. package/dist/composite/layout/section-intro/small.d.ts +2 -1
  408. package/dist/composite/layout/section-intro/small.d.ts.map +1 -1
  409. package/dist/composite/layout/section-intro/small.js +97 -107
  410. package/dist/composite/layout/section-intro/small.js.map +1 -1
  411. package/dist/composite/layout/section-intro/small.mjs +95 -106
  412. package/dist/composite/layout/section-intro/small.mjs.map +1 -1
  413. package/dist/composite/layout/section-intro/wide.d.ts +2 -2
  414. package/dist/composite/layout/section-intro/wide.d.ts.map +1 -1
  415. package/dist/composite/layout/section-intro/wide.js +40 -53
  416. package/dist/composite/layout/section-intro/wide.js.map +1 -1
  417. package/dist/composite/layout/section-intro/wide.mjs +39 -53
  418. package/dist/composite/layout/section-intro/wide.mjs.map +1 -1
  419. package/dist/composite/layout/sticky-columns/index.js +1 -1
  420. package/dist/composite/layout/sticky-columns/index.js.map +1 -1
  421. package/dist/composite/layout/sticky-columns/index.mjs +1 -1
  422. package/dist/composite/layout/sticky-columns/index.mjs.map +1 -1
  423. package/dist/composite/media/elements/caption.js +1 -1
  424. package/dist/composite/media/elements/caption.js.map +1 -1
  425. package/dist/composite/media/elements/caption.mjs +1 -1
  426. package/dist/composite/media/elements/caption.mjs.map +1 -1
  427. package/dist/composite/media/elements/gif.d.ts +3 -2
  428. package/dist/composite/media/elements/gif.d.ts.map +1 -1
  429. package/dist/composite/media/elements/gif.js +25 -27
  430. package/dist/composite/media/elements/gif.js.map +1 -1
  431. package/dist/composite/media/elements/gif.mjs +25 -27
  432. package/dist/composite/media/elements/gif.mjs.map +1 -1
  433. package/dist/composite/media/inline/caption.js +2 -2
  434. package/dist/composite/media/inline/caption.js.map +1 -1
  435. package/dist/composite/media/inline/caption.mjs +2 -2
  436. package/dist/composite/media/inline/caption.mjs.map +1 -1
  437. package/dist/composite/media/inline/wrapped.js +2 -2
  438. package/dist/composite/media/inline/wrapped.js.map +1 -1
  439. package/dist/composite/media/inline/wrapped.mjs +2 -2
  440. package/dist/composite/media/inline/wrapped.mjs.map +1 -1
  441. package/dist/composite/navigation/elements/breadcrumb/index.js +1 -1
  442. package/dist/composite/navigation/elements/breadcrumb/index.js.map +1 -1
  443. package/dist/composite/navigation/elements/breadcrumb/index.mjs +1 -1
  444. package/dist/composite/navigation/elements/breadcrumb/index.mjs.map +1 -1
  445. package/dist/composite/navigation/elements/drawer/index.js +1 -1
  446. package/dist/composite/navigation/elements/drawer/index.js.map +1 -1
  447. package/dist/composite/navigation/elements/drawer/index.mjs +1 -1
  448. package/dist/composite/navigation/elements/drawer/index.mjs.map +1 -1
  449. package/dist/composite/navigation/elements/item/index.js +1 -1
  450. package/dist/composite/navigation/elements/item/index.js.map +1 -1
  451. package/dist/composite/navigation/elements/item/index.mjs +1 -1
  452. package/dist/composite/navigation/elements/item/index.mjs.map +1 -1
  453. package/dist/composite/navigation/elements/menu-button/index.js +1 -1
  454. package/dist/composite/navigation/elements/menu-button/index.js.map +1 -1
  455. package/dist/composite/navigation/elements/menu-button/index.mjs +1 -1
  456. package/dist/composite/navigation/elements/menu-button/index.mjs.map +1 -1
  457. package/dist/composite/navigation/elements/slider/action.js +1 -1
  458. package/dist/composite/navigation/elements/slider/action.js.map +1 -1
  459. package/dist/composite/navigation/elements/slider/action.mjs +1 -1
  460. package/dist/composite/navigation/elements/slider/action.mjs.map +1 -1
  461. package/dist/composite/navigation/elements/slider/index.js +1 -1
  462. package/dist/composite/navigation/elements/slider/index.js.map +1 -1
  463. package/dist/composite/navigation/elements/slider/index.mjs +1 -1
  464. package/dist/composite/navigation/elements/slider/index.mjs.map +1 -1
  465. package/dist/composite/navigation/elements/slider/slide-first.js +1 -1
  466. package/dist/composite/navigation/elements/slider/slide-first.js.map +1 -1
  467. package/dist/composite/navigation/elements/slider/slide-first.mjs +1 -1
  468. package/dist/composite/navigation/elements/slider/slide-first.mjs.map +1 -1
  469. package/dist/composite/navigation/elements/slider/slides.js +1 -1
  470. package/dist/composite/navigation/elements/slider/slides.js.map +1 -1
  471. package/dist/composite/navigation/elements/slider/slides.mjs +1 -1
  472. package/dist/composite/navigation/elements/slider/slides.mjs.map +1 -1
  473. package/dist/composite/navigation/header.js +1 -1
  474. package/dist/composite/navigation/header.js.map +1 -1
  475. package/dist/composite/navigation/header.mjs +1 -1
  476. package/dist/composite/navigation/header.mjs.map +1 -1
  477. package/dist/composite/navigation/utility/alert.js +8 -4
  478. package/dist/composite/navigation/utility/alert.js.map +1 -1
  479. package/dist/composite/navigation/utility/alert.mjs +8 -4
  480. package/dist/composite/navigation/utility/alert.mjs.map +1 -1
  481. package/dist/composite/navigation/utility/index.d.ts.map +1 -1
  482. package/dist/composite/navigation/utility/index.js +90 -13
  483. package/dist/composite/navigation/utility/index.js.map +1 -1
  484. package/dist/composite/navigation/utility/index.mjs +90 -13
  485. package/dist/composite/navigation/utility/index.mjs.map +1 -1
  486. package/dist/composite/navigation/utility/search.js +1 -1
  487. package/dist/composite/navigation/utility/search.js.map +1 -1
  488. package/dist/composite/navigation/utility/search.mjs +1 -1
  489. package/dist/composite/navigation/utility/search.mjs.map +1 -1
  490. package/dist/composite/pathway/_common.d.ts +4 -20
  491. package/dist/composite/pathway/_common.d.ts.map +1 -1
  492. package/dist/composite/pathway/_common.js +62 -64
  493. package/dist/composite/pathway/_common.js.map +1 -1
  494. package/dist/composite/pathway/_common.mjs +56 -60
  495. package/dist/composite/pathway/_common.mjs.map +1 -1
  496. package/dist/composite/pathway/hero.d.ts +1 -5
  497. package/dist/composite/pathway/hero.d.ts.map +1 -1
  498. package/dist/composite/pathway/hero.js +119 -140
  499. package/dist/composite/pathway/hero.js.map +1 -1
  500. package/dist/composite/pathway/hero.mjs +113 -135
  501. package/dist/composite/pathway/hero.mjs.map +1 -1
  502. package/dist/composite/pathway/highlight.d.ts +1 -5
  503. package/dist/composite/pathway/highlight.d.ts.map +1 -1
  504. package/dist/composite/pathway/highlight.js +99 -129
  505. package/dist/composite/pathway/highlight.js.map +1 -1
  506. package/dist/composite/pathway/highlight.mjs +98 -129
  507. package/dist/composite/pathway/highlight.mjs.map +1 -1
  508. package/dist/composite/pathway/overlay.d.ts +2 -1
  509. package/dist/composite/pathway/overlay.d.ts.map +1 -1
  510. package/dist/composite/pathway/overlay.js +125 -153
  511. package/dist/composite/pathway/overlay.js.map +1 -1
  512. package/dist/composite/pathway/overlay.mjs +122 -151
  513. package/dist/composite/pathway/overlay.mjs.map +1 -1
  514. package/dist/composite/pathway/standard.d.ts +2 -1
  515. package/dist/composite/pathway/standard.d.ts.map +1 -1
  516. package/dist/composite/pathway/standard.js +96 -123
  517. package/dist/composite/pathway/standard.js.map +1 -1
  518. package/dist/composite/pathway/standard.mjs +95 -123
  519. package/dist/composite/pathway/standard.mjs.map +1 -1
  520. package/dist/composite/pathway/sticky.d.ts +1 -5
  521. package/dist/composite/pathway/sticky.d.ts.map +1 -1
  522. package/dist/composite/pathway/sticky.js +91 -116
  523. package/dist/composite/pathway/sticky.js.map +1 -1
  524. package/dist/composite/pathway/sticky.mjs +88 -114
  525. package/dist/composite/pathway/sticky.mjs.map +1 -1
  526. package/dist/composite/person/bio/full.d.ts +2 -5
  527. package/dist/composite/person/bio/full.d.ts.map +1 -1
  528. package/dist/composite/person/bio/full.js +53 -57
  529. package/dist/composite/person/bio/full.js.map +1 -1
  530. package/dist/composite/person/bio/full.mjs +52 -57
  531. package/dist/composite/person/bio/full.mjs.map +1 -1
  532. package/dist/composite/person/bio/small.d.ts +2 -5
  533. package/dist/composite/person/bio/small.d.ts.map +1 -1
  534. package/dist/composite/person/bio/small.js +85 -98
  535. package/dist/composite/person/bio/small.js.map +1 -1
  536. package/dist/composite/person/bio/small.mjs +84 -98
  537. package/dist/composite/person/bio/small.mjs.map +1 -1
  538. package/dist/composite/person/block.d.ts +2 -5
  539. package/dist/composite/person/block.d.ts.map +1 -1
  540. package/dist/composite/person/block.js +34 -42
  541. package/dist/composite/person/block.js.map +1 -1
  542. package/dist/composite/person/block.mjs +34 -42
  543. package/dist/composite/person/block.mjs.map +1 -1
  544. package/dist/composite/person/hero.d.ts +2 -5
  545. package/dist/composite/person/hero.d.ts.map +1 -1
  546. package/dist/composite/person/hero.js +160 -220
  547. package/dist/composite/person/hero.js.map +1 -1
  548. package/dist/composite/person/hero.mjs +159 -220
  549. package/dist/composite/person/hero.mjs.map +1 -1
  550. package/dist/composite/person/list.d.ts +2 -5
  551. package/dist/composite/person/list.d.ts.map +1 -1
  552. package/dist/composite/person/list.js +19 -19
  553. package/dist/composite/person/list.js.map +1 -1
  554. package/dist/composite/person/list.mjs +19 -19
  555. package/dist/composite/person/list.mjs.map +1 -1
  556. package/dist/composite/person/tabular.d.ts +2 -5
  557. package/dist/composite/person/tabular.d.ts.map +1 -1
  558. package/dist/composite/person/tabular.js +40 -36
  559. package/dist/composite/person/tabular.js.map +1 -1
  560. package/dist/composite/person/tabular.mjs +38 -36
  561. package/dist/composite/person/tabular.mjs.map +1 -1
  562. package/dist/composite/quote/elements/action.d.ts +1 -5
  563. package/dist/composite/quote/elements/action.d.ts.map +1 -1
  564. package/dist/composite/quote/elements/action.js +13 -17
  565. package/dist/composite/quote/elements/action.js.map +1 -1
  566. package/dist/composite/quote/elements/action.mjs +13 -17
  567. package/dist/composite/quote/elements/action.mjs.map +1 -1
  568. package/dist/composite/quote/elements/icon.d.ts +1 -5
  569. package/dist/composite/quote/elements/icon.d.ts.map +1 -1
  570. package/dist/composite/quote/elements/icon.js +37 -40
  571. package/dist/composite/quote/elements/icon.js.map +1 -1
  572. package/dist/composite/quote/elements/icon.mjs +37 -40
  573. package/dist/composite/quote/elements/icon.mjs.map +1 -1
  574. package/dist/composite/quote/elements/image.d.ts +1 -5
  575. package/dist/composite/quote/elements/image.d.ts.map +1 -1
  576. package/dist/composite/quote/elements/image.js +27 -35
  577. package/dist/composite/quote/elements/image.js.map +1 -1
  578. package/dist/composite/quote/elements/image.mjs +27 -35
  579. package/dist/composite/quote/elements/image.mjs.map +1 -1
  580. package/dist/composite/quote/elements/quote.d.ts +1 -5
  581. package/dist/composite/quote/elements/quote.d.ts.map +1 -1
  582. package/dist/composite/quote/elements/quote.js +37 -48
  583. package/dist/composite/quote/elements/quote.js.map +1 -1
  584. package/dist/composite/quote/elements/quote.mjs +35 -46
  585. package/dist/composite/quote/elements/quote.mjs.map +1 -1
  586. package/dist/composite/quote/elements/text.d.ts +1 -5
  587. package/dist/composite/quote/elements/text.d.ts.map +1 -1
  588. package/dist/composite/quote/elements/text.js +60 -73
  589. package/dist/composite/quote/elements/text.js.map +1 -1
  590. package/dist/composite/quote/elements/text.mjs +60 -73
  591. package/dist/composite/quote/elements/text.mjs.map +1 -1
  592. package/dist/composite/quote/featured.d.ts +2 -1
  593. package/dist/composite/quote/featured.d.ts.map +1 -1
  594. package/dist/composite/quote/featured.js +102 -135
  595. package/dist/composite/quote/featured.js.map +1 -1
  596. package/dist/composite/quote/featured.mjs +102 -135
  597. package/dist/composite/quote/featured.mjs.map +1 -1
  598. package/dist/composite/quote/helper/animation.d.ts +2 -2
  599. package/dist/composite/quote/helper/animation.d.ts.map +1 -1
  600. package/dist/composite/quote/helper/animation.js.map +1 -1
  601. package/dist/composite/quote/helper/animation.mjs.map +1 -1
  602. package/dist/composite/quote/inline.d.ts +2 -1
  603. package/dist/composite/quote/inline.d.ts.map +1 -1
  604. package/dist/composite/quote/inline.js +29 -45
  605. package/dist/composite/quote/inline.js.map +1 -1
  606. package/dist/composite/quote/inline.mjs +29 -45
  607. package/dist/composite/quote/inline.mjs.map +1 -1
  608. package/dist/composite/quote/statement.d.ts +1 -5
  609. package/dist/composite/quote/statement.d.ts.map +1 -1
  610. package/dist/composite/slider/events.js +1 -1
  611. package/dist/composite/slider/events.js.map +1 -1
  612. package/dist/composite/slider/events.mjs +1 -1
  613. package/dist/composite/slider/events.mjs.map +1 -1
  614. package/dist/composite/social/sharing.js +1 -1
  615. package/dist/composite/social/sharing.js.map +1 -1
  616. package/dist/composite/social/sharing.mjs +1 -1
  617. package/dist/composite/social/sharing.mjs.map +1 -1
  618. package/dist/composite/tabs/standard.d.ts.map +1 -1
  619. package/dist/composite/tabs/standard.js +3 -2
  620. package/dist/composite/tabs/standard.js.map +1 -1
  621. package/dist/composite/tabs/standard.mjs +3 -2
  622. package/dist/composite/tabs/standard.mjs.map +1 -1
  623. package/dist/index.d.ts +0 -1
  624. package/dist/index.d.ts.map +1 -1
  625. package/dist/index.js +0 -2
  626. package/dist/index.js.map +1 -1
  627. package/dist/index.mjs +1 -3
  628. package/dist/index.mjs.map +1 -1
  629. package/dist/layout/image.js +1 -1
  630. package/dist/layout/image.js.map +1 -1
  631. package/dist/layout/image.mjs +1 -1
  632. package/dist/layout/image.mjs.map +1 -1
  633. package/package.json +10 -9
  634. package/dist/model/elements/actions.d.ts +0 -62
  635. package/dist/model/elements/actions.d.ts.map +0 -1
  636. package/dist/model/elements/actions.js +0 -71
  637. package/dist/model/elements/actions.js.map +0 -1
  638. package/dist/model/elements/actions.mjs +0 -54
  639. package/dist/model/elements/actions.mjs.map +0 -1
  640. package/dist/model/elements/assets.d.ts +0 -30
  641. package/dist/model/elements/assets.d.ts.map +0 -1
  642. package/dist/model/elements/assets.js +0 -42
  643. package/dist/model/elements/assets.js.map +0 -1
  644. package/dist/model/elements/assets.mjs +0 -25
  645. package/dist/model/elements/assets.mjs.map +0 -1
  646. package/dist/model/elements/buttons.d.ts +0 -12
  647. package/dist/model/elements/buttons.d.ts.map +0 -1
  648. package/dist/model/elements/buttons.js +0 -26
  649. package/dist/model/elements/buttons.js.map +0 -1
  650. package/dist/model/elements/buttons.mjs +0 -9
  651. package/dist/model/elements/buttons.mjs.map +0 -1
  652. package/dist/model/elements/event.d.ts +0 -22
  653. package/dist/model/elements/event.d.ts.map +0 -1
  654. package/dist/model/elements/event.js +0 -30
  655. package/dist/model/elements/event.js.map +0 -1
  656. package/dist/model/elements/event.mjs +0 -13
  657. package/dist/model/elements/event.mjs.map +0 -1
  658. package/dist/model/elements/headline.d.ts +0 -67
  659. package/dist/model/elements/headline.d.ts.map +0 -1
  660. package/dist/model/elements/headline.js +0 -74
  661. package/dist/model/elements/headline.js.map +0 -1
  662. package/dist/model/elements/headline.mjs +0 -57
  663. package/dist/model/elements/headline.mjs.map +0 -1
  664. package/dist/model/elements/index.d.ts +0 -34
  665. package/dist/model/elements/index.d.ts.map +0 -1
  666. package/dist/model/elements/index.js +0 -37
  667. package/dist/model/elements/index.js.map +0 -1
  668. package/dist/model/elements/index.mjs +0 -37
  669. package/dist/model/elements/index.mjs.map +0 -1
  670. package/dist/model/elements/layout.d.ts +0 -64
  671. package/dist/model/elements/layout.d.ts.map +0 -1
  672. package/dist/model/elements/layout.js +0 -68
  673. package/dist/model/elements/layout.js.map +0 -1
  674. package/dist/model/elements/layout.mjs +0 -51
  675. package/dist/model/elements/layout.mjs.map +0 -1
  676. package/dist/model/elements/rich-text.d.ts +0 -27
  677. package/dist/model/elements/rich-text.d.ts.map +0 -1
  678. package/dist/model/elements/rich-text.js +0 -68
  679. package/dist/model/elements/rich-text.js.map +0 -1
  680. package/dist/model/elements/rich-text.mjs +0 -51
  681. package/dist/model/elements/rich-text.mjs.map +0 -1
  682. package/dist/model/elements/text.d.ts +0 -22
  683. package/dist/model/elements/text.d.ts.map +0 -1
  684. package/dist/model/elements/text.js +0 -30
  685. package/dist/model/elements/text.js.map +0 -1
  686. package/dist/model/elements/text.mjs +0 -13
  687. package/dist/model/elements/text.mjs.map +0 -1
  688. package/dist/model/index.d.ts +0 -2
  689. package/dist/model/index.d.ts.map +0 -1
  690. package/dist/model/modifiers/_types.d.ts +0 -41
  691. package/dist/model/modifiers/_types.d.ts.map +0 -1
  692. package/dist/model/modifiers/index.d.ts +0 -44
  693. package/dist/model/modifiers/index.d.ts.map +0 -1
  694. package/dist/model/modifiers/index.js +0 -136
  695. package/dist/model/modifiers/index.js.map +0 -1
  696. package/dist/model/modifiers/index.mjs +0 -136
  697. package/dist/model/modifiers/index.mjs.map +0 -1
  698. package/dist/model/modifiers/style.d.ts +0 -19
  699. package/dist/model/modifiers/style.d.ts.map +0 -1
  700. package/dist/model/modifiers/style.js +0 -122
  701. package/dist/model/modifiers/style.js.map +0 -1
  702. package/dist/model/modifiers/style.mjs +0 -105
  703. package/dist/model/modifiers/style.mjs.map +0 -1
  704. package/dist/model.d.ts +0 -2
  705. package/dist/model.js +0 -5
  706. package/dist/model.js.map +0 -1
  707. package/dist/model.mjs +0 -5
  708. package/dist/model.mjs.map +0 -1
@@ -1,10 +1,13 @@
1
- import * as token from "@universityofmaryland/web-styles-library/token";
1
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
2
+ import * as token from "@universityofmaryland/web-token-library";
3
+ import * as elementStyles from "@universityofmaryland/web-styles-library/element";
2
4
  import { sans, stats } from "@universityofmaryland/web-styles-library/typography";
3
- import { createDiv, create } from "../../model/elements/index.mjs";
4
- import { simpleLargest, simpleLarge } from "../../model/elements/rich-text.mjs";
5
5
  const BLOCK_TEXTURE = `<svg id="stat_block-texture" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" ><defs><style>.cls-1{opacity:.02;}.cls-1,.cls-2{fill:#454545;fill-rule:evenodd;isolation:isolate;stroke-width:0px;}.cls-2{opacity:.04;}</style></defs><path class="cls-1" d="M109.49,0H0v63.18l181.67,182.32L0,427.82v63.18h109.49l244.61-245.5L109.49,0Z"/><path class="cls-2" d="M108.94,0h172.44l244.61,245.5-244.61,245.5H108.94l244.61-245.5L108.94,0ZM0,179.11l58.16-58.29L0,62.54v116.57Z"/></svg>`;
6
- const createStat = (props) => {
7
- const { stat: statElement, isThemeDark, isSizeLarge } = props;
6
+ const createStat = ({
7
+ stat: statElement,
8
+ isThemeDark,
9
+ isSizeLarge
10
+ }) => {
8
11
  if (!statElement) return;
9
12
  let rawText = statElement.textContent;
10
13
  if (!rawText) return;
@@ -13,157 +16,135 @@ const createStat = (props) => {
13
16
  console.error("Stat text is too long. Please limit to 6 characters.");
14
17
  statElement.textContent = rawText.slice(0, 6);
15
18
  }
16
- return create({
17
- element: statElement,
18
- className: "stat-display",
19
- elementStyles: {
20
- siblingAfter: { marginTop: token.spacing.min },
21
- element: {
22
- ...stats.medium,
23
- color: token.color.red,
24
- WebkitFontSmoothing: "antialiased",
25
- ...isThemeDark && { color: token.color.gold },
26
- ...isSizeLarge && { ...stats.large },
27
- [`& *`]: {
28
- ...stats.medium,
29
- color: "currentColor",
30
- WebkitFontSmoothing: "antialiased",
31
- ...isSizeLarge && stats.large
32
- },
33
- [`& + *`]: { marginTop: token.spacing.min }
34
- }
35
- }
36
- });
19
+ return new ElementBuilder(statElement).withClassName("stat-display").styled(
20
+ stats.compose(isSizeLarge ? "large" : "medium", {
21
+ theme: isThemeDark ? "dark" : "light"
22
+ })
23
+ ).withStyles({
24
+ element: {
25
+ WebkitFontSmoothing: "antialiased",
26
+ [`& *`]: {
27
+ color: "currentColor",
28
+ WebkitFontSmoothing: "antialiased"
29
+ },
30
+ [`& + *`]: { marginTop: token.spacing.min }
31
+ },
32
+ siblingAfter: { marginTop: token.spacing.min }
33
+ }).build();
37
34
  };
38
35
  const createSubtext = (props) => {
39
36
  const { subText, isThemeDark, isSizeLarge } = props;
40
37
  if (!subText) return;
41
- return create({
42
- element: subText,
43
- className: "stat-sub-text",
44
- elementStyles: {
45
- element: {
46
- ...sans.min,
47
- marginTop: token.spacing.min,
48
- color: token.color.gray.mediumAA,
49
- ...isSizeLarge && sans.small,
50
- ...isThemeDark && { color: token.color.gray.light },
51
- ["& *"]: {
52
- ...sans.min,
53
- color: "currentColor",
54
- ...isSizeLarge && sans.small
55
- }
38
+ const fontStyle = isSizeLarge ? sans.small : sans.min;
39
+ return new ElementBuilder(subText).withClassName("stat-sub-text").styled(fontStyle).withStyles({
40
+ element: {
41
+ marginTop: token.spacing.min,
42
+ color: token.color.gray.mediumAA,
43
+ ...isThemeDark && { color: token.color.gray.light },
44
+ ["& *"]: {
45
+ color: "currentColor"
56
46
  }
57
47
  }
58
- });
48
+ }).build();
59
49
  };
60
50
  const createText = (props) => {
61
51
  const { text, isThemeDark, isSizeLarge } = props;
62
52
  if (!text) return;
63
- if (isSizeLarge) {
64
- return simpleLargest({
65
- element: text,
66
- isThemeDark,
67
- elementStyles: {
68
- siblingAfter: { marginTop: token.spacing.md }
69
- }
70
- });
71
- }
72
- return simpleLarge({
73
- element: text,
74
- isThemeDark,
75
- elementStyles: {
76
- siblingAfter: { marginTop: token.spacing.min }
77
- }
53
+ const styles = elementStyles.text.rich.composeSimple({
54
+ size: isSizeLarge ? "largest" : "large",
55
+ theme: isThemeDark ? "dark" : "light"
78
56
  });
57
+ const marginTop = isSizeLarge ? token.spacing.md : token.spacing.min;
58
+ return new ElementBuilder(text).styled(styles).withStyles({
59
+ siblingAfter: { marginTop }
60
+ }).build();
79
61
  };
80
62
  const createWrapper = (props) => {
81
63
  const { isThemeDark, hasLine, isSizeLarge, stat: stat2, text, subText } = props;
82
64
  const subTextElement = createSubtext({ subText, isThemeDark, isSizeLarge });
83
65
  const textElement = createText({ text, isThemeDark, isSizeLarge });
84
66
  const statElement = createStat({ stat: stat2, isThemeDark, isSizeLarge });
85
- const childElements = [statElement, textElement, subTextElement].filter(
86
- Boolean
87
- );
88
- return createDiv({
89
- className: "stat-wrapper",
90
- children: childElements,
91
- elementStyles: {
92
- element: {
93
- maxWidth: "720px",
94
- position: "relative",
95
- ...hasLine && {
96
- paddingLeft: token.spacing.md,
97
- borderLeft: `2px solid ${token.color.gold}`,
98
- [`@container umd-element-stat (min-width: 400px)`]: {
99
- paddingLeft: token.spacing.xl
100
- }
101
- },
102
- ...isThemeDark && {
103
- [`& .stat-sub-text`]: { color: token.color.gray.light }
67
+ const isDark = isThemeDark;
68
+ const wrapper = new ElementBuilder().withClassName("stat-wrapper").withStyles({
69
+ element: {
70
+ maxWidth: "720px",
71
+ position: "relative",
72
+ ...hasLine && {
73
+ paddingLeft: token.spacing.md,
74
+ borderLeft: `2px solid ${token.color.gold}`,
75
+ [`@container umd-element-stat (min-width: 400px)`]: {
76
+ paddingLeft: token.spacing.xl
104
77
  }
78
+ },
79
+ ...isDark && {
80
+ [`& .stat-sub-text`]: { color: token.color.gray.light }
105
81
  }
106
82
  }
107
83
  });
84
+ if (statElement) {
85
+ wrapper.withChild(statElement);
86
+ }
87
+ if (textElement) {
88
+ wrapper.withChild(textElement);
89
+ }
90
+ if (subTextElement) {
91
+ wrapper.withChild(subTextElement);
92
+ }
93
+ return wrapper.build();
108
94
  };
109
95
  const createDisplayBlock = (props) => {
110
96
  const { isDisplayBlock, wrapperElement } = props;
111
97
  if (!isDisplayBlock) return null;
112
- const block = createDiv({
113
- className: "stat-display-block",
114
- children: [wrapperElement],
115
- elementStyles: {
116
- element: {
117
- padding: `${token.spacing.lg} ${token.spacing.sm}`,
118
- borderTop: `2px solid ${token.color.red}`,
119
- backgroundColor: `${token.color.gray.lightest}`,
120
- position: "relative",
121
- overflow: "hidden",
122
- height: `100%`,
123
- display: `flex`,
124
- alignItems: `center`,
125
- [`@media (min-width: ${token.media.breakpoints.large.min})`]: {
126
- padding: token.spacing.lg
127
- },
128
- [`@media (min-width: ${token.media.breakpoints.highDef.min})`]: {
129
- padding: `${token.spacing["2xl"]} ${token.spacing["3xl"]}`
130
- },
131
- [`& > svg`]: {
132
- position: "absolute",
133
- top: 0,
134
- left: 0,
135
- width: "100%",
136
- height: "100%"
137
- }
98
+ return new ElementBuilder().withClassName("stat-display-block").withStyles({
99
+ element: {
100
+ padding: `${token.spacing.lg} ${token.spacing.sm}`,
101
+ borderTop: `2px solid ${token.color.red}`,
102
+ backgroundColor: `${token.color.gray.lightest}`,
103
+ position: "relative",
104
+ overflow: "hidden",
105
+ height: `100%`,
106
+ display: `flex`,
107
+ alignItems: `center`,
108
+ [`@media (min-width: ${token.media.breakpoints.large.min})`]: {
109
+ padding: token.spacing.lg
110
+ },
111
+ [`@media (min-width: ${token.media.breakpoints.highDef.min})`]: {
112
+ padding: `${token.spacing["2xl"]} ${token.spacing["3xl"]}`
113
+ },
114
+ [`& > svg`]: {
115
+ position: "absolute",
116
+ top: 0,
117
+ left: 0,
118
+ width: "100%",
119
+ height: "100%"
138
120
  }
139
121
  }
140
- });
141
- block.element.insertAdjacentHTML("afterbegin", BLOCK_TEXTURE);
142
- return block;
122
+ }).withModifier((el) => {
123
+ el.insertAdjacentHTML("afterbegin", BLOCK_TEXTURE);
124
+ }).withChild(wrapperElement).build();
143
125
  };
144
126
  const createContainer = (containerChild) => {
145
- return createDiv({
146
- className: "stat-container",
147
- children: [containerChild],
148
- elementStyles: {
149
- element: {
150
- container: `umd-element-stat / inline-size`,
151
- height: `inherit`
152
- }
127
+ const container = new ElementBuilder().withClassName("stat-container").withStyles({
128
+ element: {
129
+ containerType: `inline-size`,
130
+ height: `inherit`
153
131
  }
154
132
  });
133
+ if (containerChild) {
134
+ container.withChild(containerChild);
135
+ }
136
+ return container.build();
155
137
  };
156
138
  const stat = (props) => {
157
139
  const wrapperElement = createWrapper(props);
158
- const blockElement = createDisplayBlock({
159
- isDisplayBlock: props.isDisplayBlock,
160
- wrapperElement
161
- });
162
140
  if (props.isDisplayBlock) {
141
+ const blockElement = createDisplayBlock({
142
+ isDisplayBlock: props.isDisplayBlock,
143
+ wrapperElement
144
+ });
163
145
  return createContainer(blockElement);
164
- } else {
165
- return createContainer(wrapperElement);
166
146
  }
147
+ return createContainer(wrapperElement);
167
148
  };
168
149
  export {
169
150
  stat as default
@@ -1 +1 @@
1
- {"version":3,"file":"stat.mjs","sources":["../../../source/atomic/text/stat.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport {\n stats as statsFont,\n sans as sansFonts,\n} from '@universityofmaryland/web-styles-library/typography';\nimport { ElementModel } from 'model';\nimport { type ElementVisual } from '../../_types';\n\nexport interface StatProps {\n isThemeDark: boolean;\n isDisplayBlock: boolean;\n isSizeLarge: boolean;\n hasLine: boolean;\n stat?: HTMLElement;\n text?: HTMLElement;\n subText?: HTMLElement;\n}\n\nconst BLOCK_TEXTURE = `<svg id=\"stat_block-texture\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" ><defs><style>.cls-1{opacity:.02;}.cls-1,.cls-2{fill:#454545;fill-rule:evenodd;isolation:isolate;stroke-width:0px;}.cls-2{opacity:.04;}</style></defs><path class=\"cls-1\" d=\"M109.49,0H0v63.18l181.67,182.32L0,427.82v63.18h109.49l244.61-245.5L109.49,0Z\"/><path class=\"cls-2\" d=\"M108.94,0h172.44l244.61,245.5-244.61,245.5H108.94l244.61-245.5L108.94,0ZM0,179.11l58.16-58.29L0,62.54v116.57Z\"/></svg>`;\n\nconst createStat = (\n props: Pick<StatProps, 'stat' | 'isThemeDark' | 'isSizeLarge'>,\n) => {\n const { stat: statElement, isThemeDark, isSizeLarge } = props;\n if (!statElement) return;\n\n let rawText = statElement.textContent;\n if (!rawText) return;\n\n rawText = rawText.trim();\n if (rawText.length > 6) {\n console.error('Stat text is too long. Please limit to 6 characters.');\n statElement.textContent = rawText.slice(0, 6);\n }\n\n return ElementModel.create({\n element: statElement,\n className: 'stat-display',\n elementStyles: {\n siblingAfter: { marginTop: token.spacing.min },\n\n element: {\n ...statsFont.medium,\n color: token.color.red,\n WebkitFontSmoothing: 'antialiased',\n\n ...(isThemeDark && { color: token.color.gold }),\n ...(isSizeLarge && { ...statsFont.large }),\n\n [`& *`]: {\n ...statsFont.medium,\n color: 'currentColor',\n WebkitFontSmoothing: 'antialiased',\n\n ...(isSizeLarge && statsFont.large),\n },\n\n [`& + *`]: { marginTop: token.spacing.min },\n },\n },\n });\n};\n\nconst createSubtext = (\n props: Pick<StatProps, 'subText' | 'isThemeDark' | 'isSizeLarge'>,\n) => {\n const { subText, isThemeDark, isSizeLarge } = props;\n if (!subText) return;\n\n return ElementModel.create({\n element: subText,\n className: 'stat-sub-text',\n elementStyles: {\n element: {\n ...sansFonts.min,\n marginTop: token.spacing.min,\n color: token.color.gray.mediumAA,\n\n ...(isSizeLarge && sansFonts.small),\n ...(isThemeDark && { color: token.color.gray.light }),\n\n ['& *']: {\n ...sansFonts.min,\n color: 'currentColor',\n\n ...(isSizeLarge && sansFonts.small),\n },\n },\n },\n });\n};\n\nconst createText = (\n props: Pick<StatProps, 'text' | 'isThemeDark' | 'isSizeLarge'>,\n) => {\n const { text, isThemeDark, isSizeLarge } = props;\n if (!text) return;\n\n if (isSizeLarge) {\n return ElementModel.richText.simpleLargest({\n element: text,\n isThemeDark,\n elementStyles: {\n siblingAfter: { marginTop: token.spacing.md },\n },\n });\n }\n\n return ElementModel.richText.simpleLarge({\n element: text,\n isThemeDark,\n elementStyles: {\n siblingAfter: { marginTop: token.spacing.min },\n },\n });\n};\n\nconst createWrapper = (\n props: Pick<\n StatProps,\n 'isThemeDark' | 'hasLine' | 'isSizeLarge' | 'stat' | 'text' | 'subText'\n >,\n) => {\n const { isThemeDark, hasLine, isSizeLarge, stat, text, subText } = props;\n\n const subTextElement = createSubtext({ subText, isThemeDark, isSizeLarge });\n const textElement = createText({ text, isThemeDark, isSizeLarge });\n const statElement = createStat({ stat, isThemeDark, isSizeLarge });\n\n const childElements = [statElement, textElement, subTextElement].filter(\n Boolean,\n ) as ElementVisual[];\n\n return ElementModel.createDiv({\n className: 'stat-wrapper',\n children: childElements,\n elementStyles: {\n element: {\n maxWidth: '720px',\n position: 'relative',\n\n ...(hasLine && {\n paddingLeft: token.spacing.md,\n borderLeft: `2px solid ${token.color.gold}`,\n\n [`@container umd-element-stat (min-width: 400px)`]: {\n paddingLeft: token.spacing.xl,\n },\n }),\n\n ...(isThemeDark && {\n [`& .stat-sub-text`]: { color: token.color.gray.light },\n }),\n },\n },\n });\n};\n\nconst createDisplayBlock = (\n props: Pick<StatProps, 'isDisplayBlock'> & { wrapperElement: ElementVisual },\n) => {\n const { isDisplayBlock, wrapperElement } = props;\n if (!isDisplayBlock) return null;\n\n const block = ElementModel.createDiv({\n className: 'stat-display-block',\n children: [wrapperElement],\n elementStyles: {\n element: {\n padding: `${token.spacing.lg} ${token.spacing.sm}`,\n borderTop: `2px solid ${token.color.red}`,\n backgroundColor: `${token.color.gray.lightest}`,\n position: 'relative',\n overflow: 'hidden',\n height: `100%`,\n display: `flex`,\n alignItems: `center`,\n\n [`@media (min-width: ${token.media.breakpoints.large.min})`]: {\n padding: token.spacing.lg,\n },\n\n [`@media (min-width: ${token.media.breakpoints.highDef.min})`]: {\n padding: `${token.spacing['2xl']} ${token.spacing['3xl']}`,\n },\n\n [`& > svg`]: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n },\n },\n },\n });\n\n block.element.insertAdjacentHTML('afterbegin', BLOCK_TEXTURE);\n\n return block;\n};\n\nconst createContainer = (containerChild: ElementVisual) => {\n return ElementModel.createDiv({\n className: 'stat-container',\n children: [containerChild],\n elementStyles: {\n element: {\n container: `umd-element-stat / inline-size`,\n height: `inherit`,\n },\n },\n });\n};\n\nexport default (props: StatProps): ElementVisual => {\n const wrapperElement = createWrapper(props);\n const blockElement = createDisplayBlock({\n isDisplayBlock: props.isDisplayBlock,\n wrapperElement,\n });\n\n if (props.isDisplayBlock) {\n return createContainer(blockElement as ElementVisual);\n } else {\n return createContainer(wrapperElement as ElementVisual);\n }\n};\n"],"names":["ElementModel.create","statsFont","sansFonts","ElementModel.richText.simpleLargest","ElementModel.richText.simpleLarge","stat","ElementModel.createDiv"],"mappings":"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"}
1
+ {"version":3,"file":"stat.mjs","sources":["../../../source/atomic/text/stat.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport {\n stats as statsFont,\n sans as sansFonts,\n} from '@universityofmaryland/web-styles-library/typography';\nimport { type ElementModel } from '../../_types';\n\nexport interface StatProps {\n isThemeDark?: boolean;\n isDisplayBlock: boolean;\n isSizeLarge: boolean;\n hasLine: boolean;\n stat?: HTMLElement;\n text?: HTMLElement;\n subText?: HTMLElement;\n}\n\nconst BLOCK_TEXTURE = `<svg id=\"stat_block-texture\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" ><defs><style>.cls-1{opacity:.02;}.cls-1,.cls-2{fill:#454545;fill-rule:evenodd;isolation:isolate;stroke-width:0px;}.cls-2{opacity:.04;}</style></defs><path class=\"cls-1\" d=\"M109.49,0H0v63.18l181.67,182.32L0,427.82v63.18h109.49l244.61-245.5L109.49,0Z\"/><path class=\"cls-2\" d=\"M108.94,0h172.44l244.61,245.5-244.61,245.5H108.94l244.61-245.5L108.94,0ZM0,179.11l58.16-58.29L0,62.54v116.57Z\"/></svg>`;\n\nconst createStat = ({\n stat: statElement,\n isThemeDark,\n isSizeLarge,\n}: Pick<StatProps, 'stat' | 'isThemeDark' | 'isSizeLarge'>) => {\n if (!statElement) return;\n\n let rawText = statElement.textContent;\n if (!rawText) return;\n\n rawText = rawText.trim();\n\n if (rawText.length > 6) {\n console.error('Stat text is too long. Please limit to 6 characters.');\n statElement.textContent = rawText.slice(0, 6);\n }\n\n return new ElementBuilder(statElement)\n .withClassName('stat-display')\n .styled(\n statsFont.compose(isSizeLarge ? 'large' : 'medium', {\n theme: isThemeDark ? 'dark' : 'light',\n }),\n )\n .withStyles({\n element: {\n WebkitFontSmoothing: 'antialiased',\n\n [`& *`]: {\n color: 'currentColor',\n WebkitFontSmoothing: 'antialiased',\n },\n\n [`& + *`]: { marginTop: token.spacing.min },\n },\n\n siblingAfter: { marginTop: token.spacing.min },\n })\n .build();\n};\n\nconst createSubtext = (\n props: Pick<StatProps, 'subText' | 'isThemeDark' | 'isSizeLarge'>,\n) => {\n const { subText, isThemeDark, isSizeLarge } = props;\n if (!subText) return;\n\n const fontStyle = isSizeLarge ? sansFonts.small : sansFonts.min;\n\n return new ElementBuilder(subText)\n .withClassName('stat-sub-text')\n .styled(fontStyle)\n .withStyles({\n element: {\n marginTop: token.spacing.min,\n color: token.color.gray.mediumAA,\n\n ...(isThemeDark && { color: token.color.gray.light }),\n\n ['& *']: {\n color: 'currentColor',\n },\n },\n })\n .build();\n};\n\nconst createText = (\n props: Pick<StatProps, 'text' | 'isThemeDark' | 'isSizeLarge'>,\n) => {\n const { text, isThemeDark, isSizeLarge } = props;\n if (!text) return;\n\n const styles = elementStyles.text.rich.composeSimple({\n size: isSizeLarge ? 'largest' : 'large',\n theme: isThemeDark ? 'dark' : 'light',\n });\n\n const marginTop = isSizeLarge ? token.spacing.md : token.spacing.min;\n\n return new ElementBuilder(text)\n .styled(styles)\n .withStyles({\n siblingAfter: { marginTop },\n })\n .build();\n};\n\nconst createWrapper = (\n props: Pick<\n StatProps,\n 'isThemeDark' | 'hasLine' | 'isSizeLarge' | 'stat' | 'text' | 'subText'\n >,\n) => {\n const { isThemeDark, hasLine, isSizeLarge, stat, text, subText } = props;\n\n const subTextElement = createSubtext({ subText, isThemeDark, isSizeLarge });\n const textElement = createText({ text, isThemeDark, isSizeLarge });\n const statElement = createStat({ stat, isThemeDark, isSizeLarge });\n\n const isDark = isThemeDark;\n\n const wrapper = new ElementBuilder()\n .withClassName('stat-wrapper')\n .withStyles({\n element: {\n maxWidth: '720px',\n position: 'relative',\n\n ...(hasLine && {\n paddingLeft: token.spacing.md,\n borderLeft: `2px solid ${token.color.gold}`,\n\n [`@container umd-element-stat (min-width: 400px)`]: {\n paddingLeft: token.spacing.xl,\n },\n }),\n\n ...(isDark && {\n [`& .stat-sub-text`]: { color: token.color.gray.light },\n }),\n },\n });\n\n if (statElement) {\n wrapper.withChild(statElement);\n }\n\n if (textElement) {\n wrapper.withChild(textElement);\n }\n\n if (subTextElement) {\n wrapper.withChild(subTextElement);\n }\n\n return wrapper.build();\n};\n\nconst createDisplayBlock = (\n props: Pick<StatProps, 'isDisplayBlock'> & { wrapperElement: ElementModel },\n) => {\n const { isDisplayBlock, wrapperElement } = props;\n if (!isDisplayBlock) return null;\n\n return new ElementBuilder()\n .withClassName('stat-display-block')\n .withStyles({\n element: {\n padding: `${token.spacing.lg} ${token.spacing.sm}`,\n borderTop: `2px solid ${token.color.red}`,\n backgroundColor: `${token.color.gray.lightest}`,\n position: 'relative',\n overflow: 'hidden',\n height: `100%`,\n display: `flex`,\n alignItems: `center`,\n\n [`@media (min-width: ${token.media.breakpoints.large.min})`]: {\n padding: token.spacing.lg,\n },\n\n [`@media (min-width: ${token.media.breakpoints.highDef.min})`]: {\n padding: `${token.spacing['2xl']} ${token.spacing['3xl']}`,\n },\n\n [`& > svg`]: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n },\n },\n })\n .withModifier((el) => {\n el.insertAdjacentHTML('afterbegin', BLOCK_TEXTURE);\n })\n .withChild(wrapperElement)\n .build();\n};\n\nconst createContainer = (containerChild: ElementModel) => {\n const container = new ElementBuilder()\n .withClassName('stat-container')\n .withStyles({\n element: {\n containerType: `inline-size`,\n height: `inherit`,\n },\n });\n\n if (containerChild) {\n container.withChild(containerChild);\n }\n\n return container.build();\n};\n\nexport default (props: StatProps) => {\n const wrapperElement = createWrapper(props);\n\n if (props.isDisplayBlock) {\n const blockElement = createDisplayBlock({\n isDisplayBlock: props.isDisplayBlock,\n wrapperElement,\n });\n return createContainer(blockElement!);\n }\n\n return createContainer(wrapperElement);\n};\n"],"names":["statsFont","sansFonts","stat"],"mappings":"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"}
@@ -1,8 +1,4 @@
1
1
  import { PersonContactProps } from '../_types';
2
- declare const _default: ({ actions, address, email, isThemeDark, linkendIn, phone, }: PersonContactProps) => {
3
- element: HTMLElement;
4
- className: string;
5
- styles: string;
6
- };
2
+ declare const _default: ({ actions, address, email, isThemeDark, linkendIn, phone, }: PersonContactProps) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
7
3
  export default _default;
8
4
  //# sourceMappingURL=contact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../../source/atomic/text-lockup/contact.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;yBAwFpC,6DAOb,kBAAkB;;;;;AAPrB,wBA4FE"}
1
+ {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../../source/atomic/text-lockup/contact.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;yBA4FpC,6DAOb,kBAAkB;AAPrB,wBA8EE"}
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
- const token = require("@universityofmaryland/web-styles-library/token");
2
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
3
+ const token = require("@universityofmaryland/web-token-library");
4
+ const typography = require("@universityofmaryland/web-styles-library/typography");
5
+ const layout = require("@universityofmaryland/web-styles-library/layout");
6
+ const elementStyles = require("@universityofmaryland/web-styles-library/element");
7
+ const theme = require("@universityofmaryland/web-utilities-library/theme");
3
8
  const communication = require("@universityofmaryland/web-icons-library/communication");
4
9
  const location = require("@universityofmaryland/web-icons-library/location");
5
10
  const social = require("@universityofmaryland/web-icons-library/social");
6
- const index = require("../../model/elements/index.js");
7
- const layout = require("../../model/elements/layout.js");
8
- const headline = require("../../model/elements/headline.js");
9
- const actions = require("../../model/elements/actions.js");
10
11
  function _interopNamespaceDefault(e) {
11
12
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
12
13
  if (e) {
@@ -24,32 +25,32 @@ function _interopNamespaceDefault(e) {
24
25
  return Object.freeze(n);
25
26
  }
26
27
  const token__namespace = /* @__PURE__ */ _interopNamespaceDefault(token);
28
+ const typography__namespace = /* @__PURE__ */ _interopNamespaceDefault(typography);
29
+ const layout__namespace = /* @__PURE__ */ _interopNamespaceDefault(layout);
30
+ const elementStyles__namespace = /* @__PURE__ */ _interopNamespaceDefault(elementStyles);
27
31
  const makeIcon = ({
28
32
  icon,
29
33
  isThemeDark
30
34
  }) => {
31
- const iconElement = actions.iconSmall({
32
- element: document.createElement("span"),
33
- isThemeDark
34
- });
35
- iconElement.element.innerHTML = icon;
36
- return iconElement;
35
+ return new webBuilderLibrary.ElementBuilder("span").withHTML(icon).styled(
36
+ elementStyles__namespace.action.icon.composeIcon({
37
+ theme: theme.theme.variant(isThemeDark)
38
+ })
39
+ ).build();
37
40
  };
38
41
  const makeText = ({
39
42
  text,
40
43
  isThemeDark
41
44
  }) => {
42
- const textElement = headline.sansSmaller({
43
- element: document.createElement("span"),
44
- isThemeDark,
45
- elementStyles: {
46
- element: {
47
- color: `${token__namespace.color.gray.dark}`
48
- }
45
+ return new webBuilderLibrary.ElementBuilder("span").withHTML(text).styled(
46
+ typography__namespace.sans.compose("smaller", {
47
+ theme: theme.theme.fontColor(isThemeDark)
48
+ })
49
+ ).withStyles({
50
+ element: {
51
+ ...!isThemeDark && { color: `${token__namespace.color.gray.dark}` }
49
52
  }
50
- });
51
- textElement.element.innerHTML = text;
52
- return textElement;
53
+ }).build();
53
54
  };
54
55
  const makeContactLink = ({
55
56
  element,
@@ -64,115 +65,74 @@ const makeContactLink = ({
64
65
  marginTop: "4px",
65
66
  lineHeight: "1.2em",
66
67
  [`&a:hover, &a:focus`]: {
67
- textDecoration: "underline"
68
+ textDecoration: "underline",
69
+ ...isThemeDark && {
70
+ color: `${token__namespace.color.white}`
71
+ }
68
72
  }
69
73
  }
70
74
  };
71
75
  if (isLink) {
72
- const link = layout.gridInlineRow({
73
- element: document.createElement("a"),
74
- elementStyles: containerStyles,
75
- isThemeDark,
76
- children: [iconSpan, textSpan]
77
- });
78
76
  const ariaLabel = element.getAttribute("aria-label");
79
- link.element.setAttribute("href", element.getAttribute("href") || "");
80
- if (ariaLabel) link.element.setAttribute("aria-label", ariaLabel);
81
- return link;
77
+ const href = element.getAttribute("href") || "";
78
+ const linkBuilder = new webBuilderLibrary.ElementBuilder("a").styled(layout__namespace.grid.inline.row).withStyles(containerStyles).withChildren(iconSpan, textSpan).withAttribute("href", href);
79
+ if (ariaLabel) {
80
+ linkBuilder.withAttribute("aria-label", ariaLabel);
81
+ }
82
+ return linkBuilder.build();
82
83
  }
83
- return layout.gridInlineRow({
84
- element: document.createElement("div"),
85
- elementStyles: containerStyles,
86
- isThemeDark,
87
- children: [iconSpan, textSpan]
88
- });
84
+ return new webBuilderLibrary.ElementBuilder().styled(layout__namespace.grid.inline.row).withStyles(containerStyles).withChildren(iconSpan, textSpan).build();
89
85
  };
90
86
  const contact = ({
91
- actions: actions2,
87
+ actions,
92
88
  address,
93
89
  email,
94
90
  isThemeDark,
95
91
  linkendIn,
96
92
  phone
97
93
  }) => {
98
- let children = [];
94
+ const container = new webBuilderLibrary.ElementBuilder().withClassName("text-lockup-contact").withStyles({
95
+ element: {
96
+ marginTop: `${token__namespace.spacing.sm}`
97
+ }
98
+ });
99
99
  if (phone) {
100
- children.push(
101
- index.createDiv({
102
- className: "text-lockup-contact-phone",
103
- children: [
104
- makeContactLink({
105
- element: phone,
106
- icon: communication.phone,
107
- isThemeDark
108
- })
109
- ]
110
- })
111
- );
100
+ const phoneElement = new webBuilderLibrary.ElementBuilder().withClassName("text-lockup-contact-phone").withChild(
101
+ makeContactLink({ element: phone, icon: communication.phone, isThemeDark })
102
+ ).build();
103
+ container.withChild(phoneElement);
112
104
  }
113
105
  if (email) {
114
- children.push(
115
- index.createDiv({
116
- className: "text-lockup-contact-email",
117
- children: [
118
- makeContactLink({
119
- element: email,
120
- icon: communication.email,
121
- isThemeDark
122
- })
123
- ]
124
- })
125
- );
106
+ const emailElement = new webBuilderLibrary.ElementBuilder().withClassName("text-lockup-contact-email").withChild(
107
+ makeContactLink({ element: email, icon: communication.email, isThemeDark })
108
+ ).build();
109
+ container.withChild(emailElement);
126
110
  }
127
111
  if (linkendIn) {
128
- children.push(
129
- index.createDiv({
130
- className: "text-lockup-contact-linkedin",
131
- children: [
132
- makeContactLink({
133
- element: linkendIn,
134
- icon: social.linkedin,
135
- isThemeDark
136
- })
137
- ]
112
+ const linkedInElement = new webBuilderLibrary.ElementBuilder().withClassName("text-lockup-contact-linkedin").withChild(
113
+ makeContactLink({
114
+ element: linkendIn,
115
+ icon: social.linkedin,
116
+ isThemeDark
138
117
  })
139
- );
118
+ ).build();
119
+ container.withChild(linkedInElement);
140
120
  }
141
121
  if (address) {
142
- children.push(
143
- index.createDiv({
144
- className: "text-lockup-contact-address",
145
- children: [
146
- makeContactLink({
147
- element: address,
148
- icon: location.pin,
149
- isThemeDark
150
- })
151
- ]
152
- })
153
- );
154
- }
155
- if (actions2) {
156
- children.push(
157
- layout.gridInlineTabletRows({
158
- element: actions2,
159
- elementStyles: {
160
- element: {
161
- marginTop: token__namespace.spacing.sm
162
- }
163
- }
164
- })
165
- );
122
+ const addressElement = new webBuilderLibrary.ElementBuilder().withClassName("text-lockup-contact-address").withChild(
123
+ makeContactLink({ element: address, icon: location.pin, isThemeDark })
124
+ ).build();
125
+ container.withChild(addressElement);
166
126
  }
167
- return index.createDiv({
168
- className: "text-lockup-contact",
169
- children,
170
- elementStyles: {
127
+ if (actions) {
128
+ const actionsElement = new webBuilderLibrary.ElementBuilder(actions).styled(layout__namespace.grid.inline.tabletRows).withStyles({
171
129
  element: {
172
- marginTop: `${token__namespace.spacing.sm}`
130
+ marginTop: token__namespace.spacing.sm
173
131
  }
174
- }
175
- });
132
+ }).build();
133
+ container.withChild(actionsElement);
134
+ }
135
+ return container.build();
176
136
  };
177
137
  module.exports = contact;
178
138
  //# sourceMappingURL=contact.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact.js","sources":["../../../source/atomic/text-lockup/contact.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport {\n email as iconEmail,\n phone as iconPhone,\n} from '@universityofmaryland/web-icons-library/communication';\nimport { pin as iconPin } from '@universityofmaryland/web-icons-library/location';\nimport { linkedin as iconLinkedIn } from '@universityofmaryland/web-icons-library/social';\nimport { ElementModel } from 'model';\nimport { type ElementVisual } from '../../_types';\nimport { type PersonContactProps } from '../_types';\n\nconst makeIcon = ({\n icon,\n isThemeDark,\n}: {\n icon: string;\n isThemeDark?: boolean;\n}) => {\n const iconElement = ElementModel.actions.iconSmall({\n element: document.createElement('span'),\n isThemeDark,\n });\n\n iconElement.element.innerHTML = icon;\n\n return iconElement;\n};\n\nconst makeText = ({\n text,\n isThemeDark,\n}: {\n text: string;\n isThemeDark?: boolean;\n}) => {\n const textElement = ElementModel.headline.sansSmaller({\n element: document.createElement('span'),\n isThemeDark,\n elementStyles: {\n element: {\n color: `${token.color.gray.dark}`,\n },\n },\n });\n\n textElement.element.innerHTML = text;\n\n return textElement;\n};\n\nconst makeContactLink = ({\n element,\n icon,\n isThemeDark,\n}: {\n element: HTMLElement | HTMLAnchorElement;\n icon: string;\n isThemeDark?: boolean;\n}) => {\n const isLink = element.getAttribute('href') && icon !== iconPin;\n const textSpan = makeText({ text: element.innerHTML, isThemeDark });\n const iconSpan = makeIcon({ icon, isThemeDark });\n const containerStyles = {\n element: {\n marginTop: '4px',\n lineHeight: '1.2em',\n\n [`&a:hover, &a:focus`]: {\n textDecoration: 'underline',\n },\n },\n };\n\n if (isLink) {\n const link = ElementModel.layout.gridInlineRow({\n element: document.createElement('a'),\n elementStyles: containerStyles,\n isThemeDark,\n children: [iconSpan, textSpan],\n });\n\n const ariaLabel = element.getAttribute('aria-label');\n\n link.element.setAttribute('href', element.getAttribute('href') || '');\n if (ariaLabel) link.element.setAttribute('aria-label', ariaLabel);\n\n return link;\n }\n\n return ElementModel.layout.gridInlineRow({\n element: document.createElement('div'),\n elementStyles: containerStyles,\n isThemeDark,\n children: [iconSpan, textSpan],\n });\n};\n\nexport default ({\n actions,\n address,\n email,\n isThemeDark,\n linkendIn,\n phone,\n}: PersonContactProps) => {\n let children: ElementVisual[] = [];\n\n if (phone) {\n children.push(\n ElementModel.createDiv({\n className: 'text-lockup-contact-phone',\n children: [\n makeContactLink({\n element: phone,\n icon: iconPhone,\n isThemeDark,\n }),\n ],\n }),\n );\n }\n\n if (email) {\n children.push(\n ElementModel.createDiv({\n className: 'text-lockup-contact-email',\n children: [\n makeContactLink({\n element: email,\n icon: iconEmail,\n isThemeDark,\n }),\n ],\n }),\n );\n }\n\n if (linkendIn) {\n children.push(\n ElementModel.createDiv({\n className: 'text-lockup-contact-linkedin',\n children: [\n makeContactLink({\n element: linkendIn,\n icon: iconLinkedIn,\n isThemeDark,\n }),\n ],\n }),\n );\n }\n\n if (address) {\n children.push(\n ElementModel.createDiv({\n className: 'text-lockup-contact-address',\n children: [\n makeContactLink({\n element: address,\n icon: iconPin,\n isThemeDark,\n }),\n ],\n }),\n );\n }\n\n if (actions) {\n children.push(\n ElementModel.layout.gridInlineTabletRows({\n element: actions,\n elementStyles: {\n element: {\n marginTop: token.spacing.sm,\n },\n },\n }),\n );\n }\n\n return ElementModel.createDiv({\n className: 'text-lockup-contact',\n children,\n elementStyles: {\n element: {\n marginTop: `${token.spacing.sm}`,\n },\n },\n });\n};\n"],"names":["ElementModel.actions.iconSmall","ElementModel.headline.sansSmaller","token","iconPin","ElementModel.layout.gridInlineRow","actions","ElementModel.createDiv","iconPhone","iconEmail","iconLinkedIn","ElementModel.layout.gridInlineTabletRows"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AACF,MAGM;AACJ,QAAM,cAAcA,QAAAA,UAA+B;AAAA,IACjD,SAAS,SAAS,cAAc,MAAM;AAAA,IACtC;AAAA,EAAA,CACD;AAED,cAAY,QAAQ,YAAY;AAEhC,SAAO;AACT;AAEA,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AACF,MAGM;AACJ,QAAM,cAAcC,SAAAA,YAAkC;AAAA,IACpD,SAAS,SAAS,cAAc,MAAM;AAAA,IACtC;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,OAAO,GAAGC,iBAAM,MAAM,KAAK,IAAI;AAAA,MAAA;AAAA,IACjC;AAAA,EACF,CACD;AAED,cAAY,QAAQ,YAAY;AAEhC,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AACF,MAIM;AACJ,QAAM,SAAS,QAAQ,aAAa,MAAM,KAAK,SAASC,SAAAA;AACxD,QAAM,WAAW,SAAS,EAAE,MAAM,QAAQ,WAAW,aAAa;AAClE,QAAM,WAAW,SAAS,EAAE,MAAM,aAAa;AAC/C,QAAM,kBAAkB;AAAA,IACtB,SAAS;AAAA,MACP,WAAW;AAAA,MACX,YAAY;AAAA,MAEZ,CAAC,oBAAoB,GAAG;AAAA,QACtB,gBAAgB;AAAA,MAAA;AAAA,IAClB;AAAA,EACF;AAGF,MAAI,QAAQ;AACV,UAAM,OAAOC,OAAAA,cAAkC;AAAA,MAC7C,SAAS,SAAS,cAAc,GAAG;AAAA,MACnC,eAAe;AAAA,MACf;AAAA,MACA,UAAU,CAAC,UAAU,QAAQ;AAAA,IAAA,CAC9B;AAED,UAAM,YAAY,QAAQ,aAAa,YAAY;AAEnD,SAAK,QAAQ,aAAa,QAAQ,QAAQ,aAAa,MAAM,KAAK,EAAE;AACpE,QAAI,UAAW,MAAK,QAAQ,aAAa,cAAc,SAAS;AAEhE,WAAO;AAAA,EACT;AAEA,SAAOA,qBAAkC;AAAA,IACvC,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC,eAAe;AAAA,IACf;AAAA,IACA,UAAU,CAAC,UAAU,QAAQ;AAAA,EAAA,CAC9B;AACH;AAEA,MAAA,UAAe,CAAC;AAAA,EACd,SAAAC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAA0B;AACxB,MAAI,WAA4B,CAAA;AAEhC,MAAI,OAAO;AACT,aAAS;AAAA,MACPC,gBAAuB;AAAA,QACrB,WAAW;AAAA,QACX,UAAU;AAAA,UACR,gBAAgB;AAAA,YACd,SAAS;AAAA,YACT,MAAMC,cAAAA;AAAAA,YACN;AAAA,UAAA,CACD;AAAA,QAAA;AAAA,MACH,CACD;AAAA,IAAA;AAAA,EAEL;AAEA,MAAI,OAAO;AACT,aAAS;AAAA,MACPD,gBAAuB;AAAA,QACrB,WAAW;AAAA,QACX,UAAU;AAAA,UACR,gBAAgB;AAAA,YACd,SAAS;AAAA,YACT,MAAME,cAAAA;AAAAA,YACN;AAAA,UAAA,CACD;AAAA,QAAA;AAAA,MACH,CACD;AAAA,IAAA;AAAA,EAEL;AAEA,MAAI,WAAW;AACb,aAAS;AAAA,MACPF,gBAAuB;AAAA,QACrB,WAAW;AAAA,QACX,UAAU;AAAA,UACR,gBAAgB;AAAA,YACd,SAAS;AAAA,YACT,MAAMG,OAAAA;AAAAA,YACN;AAAA,UAAA,CACD;AAAA,QAAA;AAAA,MACH,CACD;AAAA,IAAA;AAAA,EAEL;AAEA,MAAI,SAAS;AACX,aAAS;AAAA,MACPH,gBAAuB;AAAA,QACrB,WAAW;AAAA,QACX,UAAU;AAAA,UACR,gBAAgB;AAAA,YACd,SAAS;AAAA,YACT,MAAMH,SAAAA;AAAAA,YACN;AAAA,UAAA,CACD;AAAA,QAAA;AAAA,MACH,CACD;AAAA,IAAA;AAAA,EAEL;AAEA,MAAIE,UAAS;AACX,aAAS;AAAA,MACPK,4BAAyC;AAAA,QACvC,SAASL;AAAA,QACT,eAAe;AAAA,UACb,SAAS;AAAA,YACP,WAAWH,iBAAM,QAAQ;AAAA,UAAA;AAAA,QAC3B;AAAA,MACF,CACD;AAAA,IAAA;AAAA,EAEL;AAEA,SAAOI,gBAAuB;AAAA,IAC5B,WAAW;AAAA,IACX;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,WAAW,GAAGJ,iBAAM,QAAQ,EAAE;AAAA,MAAA;AAAA,IAChC;AAAA,EACF,CACD;AACH;;"}
1
+ {"version":3,"file":"contact.js","sources":["../../../source/atomic/text-lockup/contact.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as layout from '@universityofmaryland/web-styles-library/layout';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { theme } from '@universityofmaryland/web-utilities-library/theme';\nimport {\n email as iconEmail,\n phone as iconPhone,\n} from '@universityofmaryland/web-icons-library/communication';\nimport { pin as iconPin } from '@universityofmaryland/web-icons-library/location';\nimport { linkedin as iconLinkedIn } from '@universityofmaryland/web-icons-library/social';\nimport { type PersonContactProps } from '../_types';\n\nconst makeIcon = ({\n icon,\n isThemeDark,\n}: {\n icon: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(icon)\n .styled(\n elementStyles.action.icon.composeIcon({\n theme: theme.variant(isThemeDark),\n }),\n )\n .build();\n};\n\nconst makeText = ({\n text,\n isThemeDark,\n}: {\n text: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(text)\n .styled(\n typography.sans.compose('smaller', {\n theme: theme.fontColor(isThemeDark),\n }),\n )\n .withStyles({\n element: {\n ...(!isThemeDark && { color: `${token.color.gray.dark}` }),\n },\n })\n .build();\n};\n\nconst makeContactLink = ({\n element,\n icon,\n isThemeDark,\n}: {\n element: HTMLElement | HTMLAnchorElement;\n icon: string;\n isThemeDark?: boolean;\n}) => {\n const isLink = element.getAttribute('href') && icon !== iconPin;\n const textSpan = makeText({ text: element.innerHTML, isThemeDark });\n const iconSpan = makeIcon({ icon, isThemeDark });\n const containerStyles = {\n element: {\n marginTop: '4px',\n lineHeight: '1.2em',\n\n [`&a:hover, &a:focus`]: {\n textDecoration: 'underline',\n\n ...(isThemeDark && {\n color: `${token.color.white}`,\n }),\n },\n },\n };\n\n if (isLink) {\n const ariaLabel = element.getAttribute('aria-label');\n const href = element.getAttribute('href') || '';\n\n const linkBuilder = new ElementBuilder('a')\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .withAttribute('href', href);\n\n if (ariaLabel) {\n linkBuilder.withAttribute('aria-label', ariaLabel);\n }\n\n return linkBuilder.build();\n }\n\n return new ElementBuilder()\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .build();\n};\n\nexport default ({\n actions,\n address,\n email,\n isThemeDark,\n linkendIn,\n phone,\n}: PersonContactProps) => {\n const container = new ElementBuilder()\n .withClassName('text-lockup-contact')\n .withStyles({\n element: {\n marginTop: `${token.spacing.sm}`,\n },\n });\n\n if (phone) {\n const phoneElement = new ElementBuilder()\n .withClassName('text-lockup-contact-phone')\n .withChild(\n makeContactLink({ element: phone, icon: iconPhone, isThemeDark }),\n )\n .build();\n\n container.withChild(phoneElement);\n }\n\n if (email) {\n const emailElement = new ElementBuilder()\n .withClassName('text-lockup-contact-email')\n .withChild(\n makeContactLink({ element: email, icon: iconEmail, isThemeDark }),\n )\n .build();\n\n container.withChild(emailElement);\n }\n\n if (linkendIn) {\n const linkedInElement = new ElementBuilder()\n .withClassName('text-lockup-contact-linkedin')\n .withChild(\n makeContactLink({\n element: linkendIn,\n icon: iconLinkedIn,\n isThemeDark,\n }),\n )\n .build();\n\n container.withChild(linkedInElement);\n }\n\n if (address) {\n const addressElement = new ElementBuilder()\n .withClassName('text-lockup-contact-address')\n .withChild(\n makeContactLink({ element: address, icon: iconPin, isThemeDark }),\n )\n .build();\n\n container.withChild(addressElement);\n }\n\n if (actions) {\n const actionsElement = new ElementBuilder(actions)\n .styled(layout.grid.inline.tabletRows)\n .withStyles({\n element: {\n marginTop: token.spacing.sm,\n },\n })\n .build();\n\n container.withChild(actionsElement);\n }\n\n return container.build();\n};\n"],"names":["ElementBuilder","elementStyles","theme","typography","token","iconPin","layout","iconPhone","iconEmail","iconLinkedIn"],"mappings":"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"}