@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.
- package/README.md +1 -1
- package/dist/_types.d.ts +2 -9
- package/dist/_types.d.ts.map +1 -1
- package/dist/atomic/_types.d.ts +2 -2
- package/dist/atomic/_types.d.ts.map +1 -1
- package/dist/atomic/actions/icon.d.ts +1 -5
- package/dist/atomic/actions/icon.d.ts.map +1 -1
- package/dist/atomic/actions/icon.js +43 -48
- package/dist/atomic/actions/icon.js.map +1 -1
- package/dist/atomic/actions/icon.mjs +43 -48
- package/dist/atomic/actions/icon.mjs.map +1 -1
- package/dist/atomic/actions/text.d.ts +4 -16
- package/dist/atomic/actions/text.d.ts.map +1 -1
- package/dist/atomic/actions/text.js +82 -104
- package/dist/atomic/actions/text.js.map +1 -1
- package/dist/atomic/actions/text.mjs +81 -106
- package/dist/atomic/actions/text.mjs.map +1 -1
- package/dist/atomic/animations/actions/indicator.js +1 -1
- package/dist/atomic/animations/actions/indicator.js.map +1 -1
- package/dist/atomic/animations/actions/indicator.mjs +1 -1
- package/dist/atomic/animations/actions/indicator.mjs.map +1 -1
- package/dist/atomic/animations/brand/card-stack.d.ts +2 -1
- package/dist/atomic/animations/brand/card-stack.d.ts.map +1 -1
- package/dist/atomic/animations/brand/card-stack.js +148 -172
- package/dist/atomic/animations/brand/card-stack.js.map +1 -1
- package/dist/atomic/animations/brand/card-stack.mjs +140 -164
- package/dist/atomic/animations/brand/card-stack.mjs.map +1 -1
- package/dist/atomic/animations/brand/chevron-scroll.js +1 -1
- package/dist/atomic/animations/brand/chevron-scroll.js.map +1 -1
- package/dist/atomic/animations/brand/chevron-scroll.mjs +1 -1
- package/dist/atomic/animations/brand/chevron-scroll.mjs.map +1 -1
- package/dist/atomic/assets/image/background.d.ts +1 -5
- package/dist/atomic/assets/image/background.d.ts.map +1 -1
- package/dist/atomic/assets/image/background.js +40 -40
- package/dist/atomic/assets/image/background.js.map +1 -1
- package/dist/atomic/assets/image/background.mjs +23 -40
- package/dist/atomic/assets/image/background.mjs.map +1 -1
- package/dist/atomic/assets/image/gif.d.ts +1 -5
- package/dist/atomic/assets/image/gif.d.ts.map +1 -1
- package/dist/atomic/assets/image/gif.js +28 -12
- package/dist/atomic/assets/image/gif.js.map +1 -1
- package/dist/atomic/assets/image/gif.mjs +11 -12
- package/dist/atomic/assets/image/gif.mjs.map +1 -1
- package/dist/atomic/assets/image/placeholder.d.ts +1 -5
- package/dist/atomic/assets/image/placeholder.d.ts.map +1 -1
- package/dist/atomic/assets/video/observed-auto-play.d.ts +1 -9
- package/dist/atomic/assets/video/observed-auto-play.d.ts.map +1 -1
- package/dist/atomic/assets/video/observed-auto-play.js +9 -5
- package/dist/atomic/assets/video/observed-auto-play.js.map +1 -1
- package/dist/atomic/assets/video/observed-auto-play.mjs +9 -5
- package/dist/atomic/assets/video/observed-auto-play.mjs.map +1 -1
- package/dist/atomic/assets/video/toggle.d.ts +1 -9
- package/dist/atomic/assets/video/toggle.d.ts.map +1 -1
- package/dist/atomic/assets/video/toggle.js +38 -40
- package/dist/atomic/assets/video/toggle.js.map +1 -1
- package/dist/atomic/assets/video/toggle.mjs +21 -40
- package/dist/atomic/assets/video/toggle.mjs.map +1 -1
- package/dist/atomic/buttons/fullscreen.d.ts +1 -5
- package/dist/atomic/buttons/fullscreen.d.ts.map +1 -1
- package/dist/atomic/buttons/fullscreen.js +21 -15
- package/dist/atomic/buttons/fullscreen.js.map +1 -1
- package/dist/atomic/buttons/fullscreen.mjs +4 -15
- package/dist/atomic/buttons/fullscreen.mjs.map +1 -1
- package/dist/atomic/events/meta.d.ts +1 -5
- package/dist/atomic/events/meta.d.ts.map +1 -1
- package/dist/atomic/events/meta.js +48 -48
- package/dist/atomic/events/meta.js.map +1 -1
- package/dist/atomic/events/meta.mjs +31 -48
- package/dist/atomic/events/meta.mjs.map +1 -1
- package/dist/atomic/events/sign.d.ts +1 -5
- package/dist/atomic/events/sign.d.ts.map +1 -1
- package/dist/atomic/events/sign.js +84 -93
- package/dist/atomic/events/sign.js.map +1 -1
- package/dist/atomic/events/sign.mjs +82 -93
- package/dist/atomic/events/sign.mjs.map +1 -1
- package/dist/atomic/layout/block/stacked.d.ts +7 -19
- package/dist/atomic/layout/block/stacked.d.ts.map +1 -1
- package/dist/atomic/layout/block/stacked.js +14 -20
- package/dist/atomic/layout/block/stacked.js.map +1 -1
- package/dist/atomic/layout/block/stacked.mjs +14 -20
- package/dist/atomic/layout/block/stacked.mjs.map +1 -1
- package/dist/atomic/layout/overlay/modal.js +1 -1
- package/dist/atomic/layout/overlay/modal.js.map +1 -1
- package/dist/atomic/layout/overlay/modal.mjs +1 -1
- package/dist/atomic/layout/overlay/modal.mjs.map +1 -1
- package/dist/atomic/layout/person/columns.d.ts +4 -20
- package/dist/atomic/layout/person/columns.d.ts.map +1 -1
- package/dist/atomic/layout/person/columns.js +56 -66
- package/dist/atomic/layout/person/columns.js.map +1 -1
- package/dist/atomic/layout/person/columns.mjs +56 -66
- package/dist/atomic/layout/person/columns.mjs.map +1 -1
- package/dist/atomic/text/stat.d.ts +2 -3
- package/dist/atomic/text/stat.d.ts.map +1 -1
- package/dist/atomic/text/stat.js +101 -119
- package/dist/atomic/text/stat.js.map +1 -1
- package/dist/atomic/text/stat.mjs +100 -119
- package/dist/atomic/text/stat.mjs.map +1 -1
- package/dist/atomic/text-lockup/contact.d.ts +1 -5
- package/dist/atomic/text-lockup/contact.d.ts.map +1 -1
- package/dist/atomic/text-lockup/contact.js +65 -105
- package/dist/atomic/text-lockup/contact.js.map +1 -1
- package/dist/atomic/text-lockup/contact.mjs +60 -103
- package/dist/atomic/text-lockup/contact.mjs.map +1 -1
- package/dist/atomic/text-lockup/date.d.ts.map +1 -1
- package/dist/atomic/text-lockup/date.js +6 -1
- package/dist/atomic/text-lockup/date.js.map +1 -1
- package/dist/atomic/text-lockup/date.mjs +6 -1
- package/dist/atomic/text-lockup/date.mjs.map +1 -1
- package/dist/atomic/text-lockup/large.d.ts +3 -7
- package/dist/atomic/text-lockup/large.d.ts.map +1 -1
- package/dist/atomic/text-lockup/large.js +62 -71
- package/dist/atomic/text-lockup/large.js.map +1 -1
- package/dist/atomic/text-lockup/large.mjs +59 -71
- package/dist/atomic/text-lockup/large.mjs.map +1 -1
- package/dist/atomic/text-lockup/medium.d.ts +5 -9
- package/dist/atomic/text-lockup/medium.d.ts.map +1 -1
- package/dist/atomic/text-lockup/medium.js +76 -84
- package/dist/atomic/text-lockup/medium.js.map +1 -1
- package/dist/atomic/text-lockup/medium.mjs +70 -82
- package/dist/atomic/text-lockup/medium.mjs.map +1 -1
- package/dist/atomic/text-lockup/person.d.ts +1 -5
- package/dist/atomic/text-lockup/person.d.ts.map +1 -1
- package/dist/atomic/text-lockup/person.js +102 -101
- package/dist/atomic/text-lockup/person.js.map +1 -1
- package/dist/atomic/text-lockup/person.mjs +99 -101
- package/dist/atomic/text-lockup/person.mjs.map +1 -1
- package/dist/atomic/text-lockup/small-scaling.d.ts +1 -5
- package/dist/atomic/text-lockup/small-scaling.d.ts.map +1 -1
- package/dist/atomic/text-lockup/small-scaling.js +64 -39
- package/dist/atomic/text-lockup/small-scaling.js.map +1 -1
- package/dist/atomic/text-lockup/small-scaling.mjs +44 -38
- package/dist/atomic/text-lockup/small-scaling.mjs.map +1 -1
- package/dist/atomic/text-lockup/small.d.ts +11 -25
- package/dist/atomic/text-lockup/small.d.ts.map +1 -1
- package/dist/atomic/text-lockup/small.js +70 -69
- package/dist/atomic/text-lockup/small.js.map +1 -1
- package/dist/atomic/text-lockup/small.mjs +64 -66
- package/dist/atomic/text-lockup/small.mjs.map +1 -1
- package/dist/composite/alert/elements/closeButton.d.ts +7 -0
- package/dist/composite/alert/elements/closeButton.d.ts.map +1 -0
- package/dist/composite/alert/elements/closeButton.js +51 -0
- package/dist/composite/alert/elements/closeButton.js.map +1 -0
- package/dist/composite/alert/elements/closeButton.mjs +34 -0
- package/dist/composite/alert/elements/closeButton.mjs.map +1 -0
- package/dist/composite/alert/elements/text.d.ts +3 -13
- package/dist/composite/alert/elements/text.d.ts.map +1 -1
- package/dist/composite/alert/elements/text.js +60 -81
- package/dist/composite/alert/elements/text.js.map +1 -1
- package/dist/composite/alert/elements/text.mjs +56 -80
- package/dist/composite/alert/elements/text.mjs.map +1 -1
- package/dist/composite/alert/globals.d.ts +4 -0
- package/dist/composite/alert/globals.d.ts.map +1 -0
- package/dist/composite/alert/globals.js +7 -0
- package/dist/composite/alert/globals.js.map +1 -0
- package/dist/composite/alert/globals.mjs +7 -0
- package/dist/composite/alert/globals.mjs.map +1 -0
- package/dist/composite/alert/index.d.ts +2 -2
- package/dist/composite/alert/index.d.ts.map +1 -1
- package/dist/composite/alert/index.js +2 -2
- package/dist/composite/alert/index.mjs +4 -4
- package/dist/composite/alert/page.d.ts +5 -12
- package/dist/composite/alert/page.d.ts.map +1 -1
- package/dist/composite/alert/page.js +44 -113
- package/dist/composite/alert/page.js.map +1 -1
- package/dist/composite/alert/page.mjs +44 -112
- package/dist/composite/alert/page.mjs.map +1 -1
- package/dist/composite/alert/site.d.ts +5 -11
- package/dist/composite/alert/site.d.ts.map +1 -1
- package/dist/composite/alert/site.js +60 -109
- package/dist/composite/alert/site.js.map +1 -1
- package/dist/composite/alert/site.mjs +61 -109
- package/dist/composite/alert/site.mjs.map +1 -1
- package/dist/composite/banner/promo.js +1 -1
- package/dist/composite/banner/promo.js.map +1 -1
- package/dist/composite/banner/promo.mjs +1 -1
- package/dist/composite/banner/promo.mjs.map +1 -1
- package/dist/composite/card/block.d.ts +1 -5
- package/dist/composite/card/block.d.ts.map +1 -1
- package/dist/composite/card/block.js +7 -5
- package/dist/composite/card/block.js.map +1 -1
- package/dist/composite/card/block.mjs +7 -5
- package/dist/composite/card/block.mjs.map +1 -1
- package/dist/composite/card/list.d.ts +1 -5
- package/dist/composite/card/list.d.ts.map +1 -1
- package/dist/composite/card/list.js +52 -64
- package/dist/composite/card/list.js.map +1 -1
- package/dist/composite/card/list.mjs +52 -64
- package/dist/composite/card/list.mjs.map +1 -1
- package/dist/composite/card/overlay/color.d.ts +1 -5
- package/dist/composite/card/overlay/color.d.ts.map +1 -1
- package/dist/composite/card/overlay/color.js +36 -41
- package/dist/composite/card/overlay/color.js.map +1 -1
- package/dist/composite/card/overlay/color.mjs +36 -41
- package/dist/composite/card/overlay/color.mjs.map +1 -1
- package/dist/composite/card/overlay/icon.d.ts +1 -5
- package/dist/composite/card/overlay/icon.d.ts.map +1 -1
- package/dist/composite/card/overlay/icon.js +27 -31
- package/dist/composite/card/overlay/icon.js.map +1 -1
- package/dist/composite/card/overlay/icon.mjs +27 -31
- package/dist/composite/card/overlay/icon.mjs.map +1 -1
- package/dist/composite/card/overlay/image.d.ts +2 -1
- package/dist/composite/card/overlay/image.d.ts.map +1 -1
- package/dist/composite/card/overlay/image.js +74 -93
- package/dist/composite/card/overlay/image.js.map +1 -1
- package/dist/composite/card/overlay/image.mjs +73 -93
- package/dist/composite/card/overlay/image.mjs.map +1 -1
- package/dist/composite/card/video/block.d.ts +1 -9
- package/dist/composite/card/video/block.d.ts.map +1 -1
- package/dist/composite/card/video/block.js +7 -5
- package/dist/composite/card/video/block.js.map +1 -1
- package/dist/composite/card/video/block.mjs +7 -5
- package/dist/composite/card/video/block.mjs.map +1 -1
- package/dist/composite/card/video/short.d.ts +1 -5
- package/dist/composite/card/video/short.d.ts.map +1 -1
- package/dist/composite/card/video/short.js +16 -21
- package/dist/composite/card/video/short.js.map +1 -1
- package/dist/composite/card/video/short.mjs +16 -21
- package/dist/composite/card/video/short.mjs.map +1 -1
- package/dist/composite/carousel/_types.d.ts.map +1 -1
- package/dist/composite/carousel/default/index.js +1 -1
- package/dist/composite/carousel/default/index.js.map +1 -1
- package/dist/composite/carousel/default/index.mjs +1 -1
- package/dist/composite/carousel/default/index.mjs.map +1 -1
- package/dist/composite/carousel/elements/blocks.js +2 -2
- package/dist/composite/carousel/elements/blocks.js.map +1 -1
- package/dist/composite/carousel/elements/blocks.mjs +2 -2
- package/dist/composite/carousel/elements/blocks.mjs.map +1 -1
- package/dist/composite/carousel/elements/full-screen.js +7 -5
- package/dist/composite/carousel/elements/full-screen.js.map +1 -1
- package/dist/composite/carousel/elements/full-screen.mjs +7 -5
- package/dist/composite/carousel/elements/full-screen.mjs.map +1 -1
- package/dist/composite/carousel/elements/image.js +2 -2
- package/dist/composite/carousel/elements/image.js.map +1 -1
- package/dist/composite/carousel/elements/image.mjs +2 -2
- package/dist/composite/carousel/elements/image.mjs.map +1 -1
- package/dist/composite/carousel/elements/overlay.js +2 -2
- package/dist/composite/carousel/elements/overlay.js.map +1 -1
- package/dist/composite/carousel/elements/overlay.mjs +2 -2
- package/dist/composite/carousel/elements/overlay.mjs.map +1 -1
- package/dist/composite/carousel/image/multiple.js +11 -9
- package/dist/composite/carousel/image/multiple.js.map +1 -1
- package/dist/composite/carousel/image/multiple.mjs +11 -9
- package/dist/composite/carousel/image/multiple.mjs.map +1 -1
- package/dist/composite/carousel/image/standard.js +10 -8
- package/dist/composite/carousel/image/standard.js.map +1 -1
- package/dist/composite/carousel/image/standard.mjs +10 -8
- package/dist/composite/carousel/image/standard.mjs.map +1 -1
- package/dist/composite/carousel/thumbnail/index.js +1 -1
- package/dist/composite/carousel/thumbnail/index.js.map +1 -1
- package/dist/composite/carousel/thumbnail/index.mjs +1 -1
- package/dist/composite/carousel/thumbnail/index.mjs.map +1 -1
- package/dist/composite/carousel/wide/_elementModel.d.ts +2 -2
- package/dist/composite/carousel/wide/_elementModel.d.ts.map +1 -1
- package/dist/composite/carousel/wide/_elementModel.js +20 -7
- package/dist/composite/carousel/wide/_elementModel.js.map +1 -1
- package/dist/composite/carousel/wide/_elementModel.mjs +20 -7
- package/dist/composite/carousel/wide/_elementModel.mjs.map +1 -1
- package/dist/composite/carousel/wide/container.d.ts.map +1 -1
- package/dist/composite/carousel/wide/container.js +9 -15
- package/dist/composite/carousel/wide/container.js.map +1 -1
- package/dist/composite/carousel/wide/container.mjs +9 -15
- package/dist/composite/carousel/wide/container.mjs.map +1 -1
- package/dist/composite/carousel/wide/controls.d.ts +1 -5
- package/dist/composite/carousel/wide/controls.d.ts.map +1 -1
- package/dist/composite/carousel/wide/controls.js +55 -56
- package/dist/composite/carousel/wide/controls.js.map +1 -1
- package/dist/composite/carousel/wide/controls.mjs +55 -56
- package/dist/composite/carousel/wide/controls.mjs.map +1 -1
- package/dist/composite/carousel/wide/frames.d.ts.map +1 -1
- package/dist/composite/carousel/wide/frames.js +156 -171
- package/dist/composite/carousel/wide/frames.js.map +1 -1
- package/dist/composite/carousel/wide/frames.mjs +153 -169
- package/dist/composite/carousel/wide/frames.mjs.map +1 -1
- package/dist/composite/carousel/wide/index.d.ts +1 -5
- package/dist/composite/carousel/wide/index.d.ts.map +1 -1
- package/dist/composite/carousel/wide/index.js +23 -17
- package/dist/composite/carousel/wide/index.js.map +1 -1
- package/dist/composite/carousel/wide/index.mjs +23 -17
- package/dist/composite/carousel/wide/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/call-to-action.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/call-to-action.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/call-to-action.js +19 -28
- package/dist/composite/footer/elements/main-section/call-to-action.js.map +1 -1
- package/dist/composite/footer/elements/main-section/call-to-action.mjs +18 -28
- package/dist/composite/footer/elements/main-section/call-to-action.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/campaign.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.js +27 -35
- package/dist/composite/footer/elements/main-section/campaign.js.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.mjs +27 -35
- package/dist/composite/footer/elements/main-section/campaign.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/index.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/index.js +38 -50
- package/dist/composite/footer/elements/main-section/index.js.map +1 -1
- package/dist/composite/footer/elements/main-section/index.mjs +38 -50
- package/dist/composite/footer/elements/main-section/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/index.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/row-links/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/index.js +24 -36
- package/dist/composite/footer/elements/main-section/row-links/index.js.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/index.mjs +24 -36
- package/dist/composite/footer/elements/main-section/row-links/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/row-links/link-columns.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/link-columns.js +75 -95
- package/dist/composite/footer/elements/main-section/row-links/link-columns.js.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs +73 -93
- package/dist/composite/footer/elements/main-section/row-links/link-columns.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/row-logo/contact.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/contact.js +88 -98
- package/dist/composite/footer/elements/main-section/row-logo/contact.js.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/contact.mjs +88 -98
- package/dist/composite/footer/elements/main-section/row-logo/contact.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/index.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/row-logo/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/index.js +30 -43
- package/dist/composite/footer/elements/main-section/row-logo/index.js.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/index.mjs +30 -43
- package/dist/composite/footer/elements/main-section/row-logo/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/row-logo/logo.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/logo.js +24 -32
- package/dist/composite/footer/elements/main-section/row-logo/logo.js.map +1 -1
- package/dist/composite/footer/elements/main-section/row-logo/logo.mjs +24 -32
- package/dist/composite/footer/elements/main-section/row-logo/logo.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/social.d.ts +2 -2
- package/dist/composite/footer/elements/main-section/social.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/social.js +74 -97
- package/dist/composite/footer/elements/main-section/social.js.map +1 -1
- package/dist/composite/footer/elements/main-section/social.mjs +74 -97
- package/dist/composite/footer/elements/main-section/social.mjs.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.d.ts +1 -5
- package/dist/composite/footer/elements/utility-section/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.js +56 -83
- package/dist/composite/footer/elements/utility-section/index.js.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.mjs +56 -83
- package/dist/composite/footer/elements/utility-section/index.mjs.map +1 -1
- package/dist/composite/footer/options.d.ts +1 -4
- package/dist/composite/footer/options.d.ts.map +1 -1
- package/dist/composite/footer/options.js +19 -27
- package/dist/composite/footer/options.js.map +1 -1
- package/dist/composite/footer/options.mjs +19 -27
- package/dist/composite/footer/options.mjs.map +1 -1
- package/dist/composite/hero/_types.d.ts.map +1 -1
- package/dist/composite/hero/custom/expand.d.ts +3 -2
- package/dist/composite/hero/custom/expand.d.ts.map +1 -1
- package/dist/composite/hero/custom/expand.js +151 -192
- package/dist/composite/hero/custom/expand.js.map +1 -1
- package/dist/composite/hero/custom/expand.mjs +145 -187
- package/dist/composite/hero/custom/expand.mjs.map +1 -1
- package/dist/composite/hero/custom/grid.d.ts +1 -5
- package/dist/composite/hero/custom/grid.d.ts.map +1 -1
- package/dist/composite/hero/custom/grid.js +122 -171
- package/dist/composite/hero/custom/grid.js.map +1 -1
- package/dist/composite/hero/custom/grid.mjs +116 -166
- package/dist/composite/hero/custom/grid.mjs.map +1 -1
- package/dist/composite/hero/custom/video-arrow.d.ts +2 -1
- package/dist/composite/hero/custom/video-arrow.d.ts.map +1 -1
- package/dist/composite/hero/custom/video-arrow.js +83 -105
- package/dist/composite/hero/custom/video-arrow.js.map +1 -1
- package/dist/composite/hero/custom/video-arrow.mjs +77 -99
- package/dist/composite/hero/custom/video-arrow.mjs.map +1 -1
- package/dist/composite/hero/logo.d.ts +1 -5
- package/dist/composite/hero/logo.d.ts.map +1 -1
- package/dist/composite/hero/logo.js +71 -89
- package/dist/composite/hero/logo.js.map +1 -1
- package/dist/composite/hero/logo.mjs +68 -87
- package/dist/composite/hero/logo.mjs.map +1 -1
- package/dist/composite/hero/minimal.d.ts +1 -5
- package/dist/composite/hero/minimal.d.ts.map +1 -1
- package/dist/composite/hero/minimal.js +67 -86
- package/dist/composite/hero/minimal.js.map +1 -1
- package/dist/composite/hero/minimal.mjs +63 -83
- package/dist/composite/hero/minimal.mjs.map +1 -1
- package/dist/composite/hero/overlay.d.ts +1 -5
- package/dist/composite/hero/overlay.d.ts.map +1 -1
- package/dist/composite/hero/overlay.js +107 -135
- package/dist/composite/hero/overlay.js.map +1 -1
- package/dist/composite/hero/overlay.mjs +103 -132
- package/dist/composite/hero/overlay.mjs.map +1 -1
- package/dist/composite/hero/stacked.d.ts +1 -5
- package/dist/composite/hero/stacked.d.ts.map +1 -1
- package/dist/composite/hero/stacked.js +114 -137
- package/dist/composite/hero/stacked.js.map +1 -1
- package/dist/composite/hero/stacked.mjs +110 -134
- package/dist/composite/hero/stacked.mjs.map +1 -1
- package/dist/composite/hero/standard.d.ts +1 -5
- package/dist/composite/hero/standard.d.ts.map +1 -1
- package/dist/composite/hero/standard.js +103 -116
- package/dist/composite/hero/standard.js.map +1 -1
- package/dist/composite/hero/standard.mjs +100 -114
- package/dist/composite/hero/standard.mjs.map +1 -1
- package/dist/composite/layout/box/logo.js +1 -1
- package/dist/composite/layout/box/logo.js.map +1 -1
- package/dist/composite/layout/box/logo.mjs +1 -1
- package/dist/composite/layout/box/logo.mjs.map +1 -1
- package/dist/composite/layout/image/expand.js +1 -1
- package/dist/composite/layout/image/expand.js.map +1 -1
- package/dist/composite/layout/image/expand.mjs +1 -1
- package/dist/composite/layout/image/expand.mjs.map +1 -1
- package/dist/composite/layout/scroll-top/index.js +1 -1
- package/dist/composite/layout/scroll-top/index.js.map +1 -1
- package/dist/composite/layout/scroll-top/index.mjs +1 -1
- package/dist/composite/layout/scroll-top/index.mjs.map +1 -1
- package/dist/composite/layout/section-intro/small.d.ts +2 -1
- package/dist/composite/layout/section-intro/small.d.ts.map +1 -1
- package/dist/composite/layout/section-intro/small.js +97 -107
- package/dist/composite/layout/section-intro/small.js.map +1 -1
- package/dist/composite/layout/section-intro/small.mjs +95 -106
- package/dist/composite/layout/section-intro/small.mjs.map +1 -1
- package/dist/composite/layout/section-intro/wide.d.ts +2 -2
- package/dist/composite/layout/section-intro/wide.d.ts.map +1 -1
- package/dist/composite/layout/section-intro/wide.js +40 -53
- package/dist/composite/layout/section-intro/wide.js.map +1 -1
- package/dist/composite/layout/section-intro/wide.mjs +39 -53
- package/dist/composite/layout/section-intro/wide.mjs.map +1 -1
- package/dist/composite/layout/sticky-columns/index.js +1 -1
- package/dist/composite/layout/sticky-columns/index.js.map +1 -1
- package/dist/composite/layout/sticky-columns/index.mjs +1 -1
- package/dist/composite/layout/sticky-columns/index.mjs.map +1 -1
- package/dist/composite/media/elements/caption.js +1 -1
- package/dist/composite/media/elements/caption.js.map +1 -1
- package/dist/composite/media/elements/caption.mjs +1 -1
- package/dist/composite/media/elements/caption.mjs.map +1 -1
- package/dist/composite/media/elements/gif.d.ts +3 -2
- package/dist/composite/media/elements/gif.d.ts.map +1 -1
- package/dist/composite/media/elements/gif.js +25 -27
- package/dist/composite/media/elements/gif.js.map +1 -1
- package/dist/composite/media/elements/gif.mjs +25 -27
- package/dist/composite/media/elements/gif.mjs.map +1 -1
- package/dist/composite/media/inline/caption.js +2 -2
- package/dist/composite/media/inline/caption.js.map +1 -1
- package/dist/composite/media/inline/caption.mjs +2 -2
- package/dist/composite/media/inline/caption.mjs.map +1 -1
- package/dist/composite/media/inline/wrapped.js +2 -2
- package/dist/composite/media/inline/wrapped.js.map +1 -1
- package/dist/composite/media/inline/wrapped.mjs +2 -2
- package/dist/composite/media/inline/wrapped.mjs.map +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.js +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.js.map +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.mjs +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/drawer/index.js +1 -1
- package/dist/composite/navigation/elements/drawer/index.js.map +1 -1
- package/dist/composite/navigation/elements/drawer/index.mjs +1 -1
- package/dist/composite/navigation/elements/drawer/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/item/index.js +1 -1
- package/dist/composite/navigation/elements/item/index.js.map +1 -1
- package/dist/composite/navigation/elements/item/index.mjs +1 -1
- package/dist/composite/navigation/elements/item/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/menu-button/index.js +1 -1
- package/dist/composite/navigation/elements/menu-button/index.js.map +1 -1
- package/dist/composite/navigation/elements/menu-button/index.mjs +1 -1
- package/dist/composite/navigation/elements/menu-button/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/action.js +1 -1
- package/dist/composite/navigation/elements/slider/action.js.map +1 -1
- package/dist/composite/navigation/elements/slider/action.mjs +1 -1
- package/dist/composite/navigation/elements/slider/action.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/index.js +1 -1
- package/dist/composite/navigation/elements/slider/index.js.map +1 -1
- package/dist/composite/navigation/elements/slider/index.mjs +1 -1
- package/dist/composite/navigation/elements/slider/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.js +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.js.map +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.mjs +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/slides.js +1 -1
- package/dist/composite/navigation/elements/slider/slides.js.map +1 -1
- package/dist/composite/navigation/elements/slider/slides.mjs +1 -1
- package/dist/composite/navigation/elements/slider/slides.mjs.map +1 -1
- package/dist/composite/navigation/header.js +1 -1
- package/dist/composite/navigation/header.js.map +1 -1
- package/dist/composite/navigation/header.mjs +1 -1
- package/dist/composite/navigation/header.mjs.map +1 -1
- package/dist/composite/navigation/utility/alert.js +8 -4
- package/dist/composite/navigation/utility/alert.js.map +1 -1
- package/dist/composite/navigation/utility/alert.mjs +8 -4
- package/dist/composite/navigation/utility/alert.mjs.map +1 -1
- package/dist/composite/navigation/utility/index.d.ts.map +1 -1
- package/dist/composite/navigation/utility/index.js +90 -13
- package/dist/composite/navigation/utility/index.js.map +1 -1
- package/dist/composite/navigation/utility/index.mjs +90 -13
- package/dist/composite/navigation/utility/index.mjs.map +1 -1
- package/dist/composite/navigation/utility/search.js +1 -1
- package/dist/composite/navigation/utility/search.js.map +1 -1
- package/dist/composite/navigation/utility/search.mjs +1 -1
- package/dist/composite/navigation/utility/search.mjs.map +1 -1
- package/dist/composite/pathway/_common.d.ts +4 -20
- package/dist/composite/pathway/_common.d.ts.map +1 -1
- package/dist/composite/pathway/_common.js +62 -64
- package/dist/composite/pathway/_common.js.map +1 -1
- package/dist/composite/pathway/_common.mjs +56 -60
- package/dist/composite/pathway/_common.mjs.map +1 -1
- package/dist/composite/pathway/hero.d.ts +1 -5
- package/dist/composite/pathway/hero.d.ts.map +1 -1
- package/dist/composite/pathway/hero.js +119 -140
- package/dist/composite/pathway/hero.js.map +1 -1
- package/dist/composite/pathway/hero.mjs +113 -135
- package/dist/composite/pathway/hero.mjs.map +1 -1
- package/dist/composite/pathway/highlight.d.ts +1 -5
- package/dist/composite/pathway/highlight.d.ts.map +1 -1
- package/dist/composite/pathway/highlight.js +99 -129
- package/dist/composite/pathway/highlight.js.map +1 -1
- package/dist/composite/pathway/highlight.mjs +98 -129
- package/dist/composite/pathway/highlight.mjs.map +1 -1
- package/dist/composite/pathway/overlay.d.ts +2 -1
- package/dist/composite/pathway/overlay.d.ts.map +1 -1
- package/dist/composite/pathway/overlay.js +125 -153
- package/dist/composite/pathway/overlay.js.map +1 -1
- package/dist/composite/pathway/overlay.mjs +122 -151
- package/dist/composite/pathway/overlay.mjs.map +1 -1
- package/dist/composite/pathway/standard.d.ts +2 -1
- package/dist/composite/pathway/standard.d.ts.map +1 -1
- package/dist/composite/pathway/standard.js +96 -123
- package/dist/composite/pathway/standard.js.map +1 -1
- package/dist/composite/pathway/standard.mjs +95 -123
- package/dist/composite/pathway/standard.mjs.map +1 -1
- package/dist/composite/pathway/sticky.d.ts +1 -5
- package/dist/composite/pathway/sticky.d.ts.map +1 -1
- package/dist/composite/pathway/sticky.js +91 -116
- package/dist/composite/pathway/sticky.js.map +1 -1
- package/dist/composite/pathway/sticky.mjs +88 -114
- package/dist/composite/pathway/sticky.mjs.map +1 -1
- package/dist/composite/person/bio/full.d.ts +2 -5
- package/dist/composite/person/bio/full.d.ts.map +1 -1
- package/dist/composite/person/bio/full.js +53 -57
- package/dist/composite/person/bio/full.js.map +1 -1
- package/dist/composite/person/bio/full.mjs +52 -57
- package/dist/composite/person/bio/full.mjs.map +1 -1
- package/dist/composite/person/bio/small.d.ts +2 -5
- package/dist/composite/person/bio/small.d.ts.map +1 -1
- package/dist/composite/person/bio/small.js +85 -98
- package/dist/composite/person/bio/small.js.map +1 -1
- package/dist/composite/person/bio/small.mjs +84 -98
- package/dist/composite/person/bio/small.mjs.map +1 -1
- package/dist/composite/person/block.d.ts +2 -5
- package/dist/composite/person/block.d.ts.map +1 -1
- package/dist/composite/person/block.js +34 -42
- package/dist/composite/person/block.js.map +1 -1
- package/dist/composite/person/block.mjs +34 -42
- package/dist/composite/person/block.mjs.map +1 -1
- package/dist/composite/person/hero.d.ts +2 -5
- package/dist/composite/person/hero.d.ts.map +1 -1
- package/dist/composite/person/hero.js +160 -220
- package/dist/composite/person/hero.js.map +1 -1
- package/dist/composite/person/hero.mjs +159 -220
- package/dist/composite/person/hero.mjs.map +1 -1
- package/dist/composite/person/list.d.ts +2 -5
- package/dist/composite/person/list.d.ts.map +1 -1
- package/dist/composite/person/list.js +19 -19
- package/dist/composite/person/list.js.map +1 -1
- package/dist/composite/person/list.mjs +19 -19
- package/dist/composite/person/list.mjs.map +1 -1
- package/dist/composite/person/tabular.d.ts +2 -5
- package/dist/composite/person/tabular.d.ts.map +1 -1
- package/dist/composite/person/tabular.js +40 -36
- package/dist/composite/person/tabular.js.map +1 -1
- package/dist/composite/person/tabular.mjs +38 -36
- package/dist/composite/person/tabular.mjs.map +1 -1
- package/dist/composite/quote/elements/action.d.ts +1 -5
- package/dist/composite/quote/elements/action.d.ts.map +1 -1
- package/dist/composite/quote/elements/action.js +13 -17
- package/dist/composite/quote/elements/action.js.map +1 -1
- package/dist/composite/quote/elements/action.mjs +13 -17
- package/dist/composite/quote/elements/action.mjs.map +1 -1
- package/dist/composite/quote/elements/icon.d.ts +1 -5
- package/dist/composite/quote/elements/icon.d.ts.map +1 -1
- package/dist/composite/quote/elements/icon.js +37 -40
- package/dist/composite/quote/elements/icon.js.map +1 -1
- package/dist/composite/quote/elements/icon.mjs +37 -40
- package/dist/composite/quote/elements/icon.mjs.map +1 -1
- package/dist/composite/quote/elements/image.d.ts +1 -5
- package/dist/composite/quote/elements/image.d.ts.map +1 -1
- package/dist/composite/quote/elements/image.js +27 -35
- package/dist/composite/quote/elements/image.js.map +1 -1
- package/dist/composite/quote/elements/image.mjs +27 -35
- package/dist/composite/quote/elements/image.mjs.map +1 -1
- package/dist/composite/quote/elements/quote.d.ts +1 -5
- package/dist/composite/quote/elements/quote.d.ts.map +1 -1
- package/dist/composite/quote/elements/quote.js +37 -48
- package/dist/composite/quote/elements/quote.js.map +1 -1
- package/dist/composite/quote/elements/quote.mjs +35 -46
- package/dist/composite/quote/elements/quote.mjs.map +1 -1
- package/dist/composite/quote/elements/text.d.ts +1 -5
- package/dist/composite/quote/elements/text.d.ts.map +1 -1
- package/dist/composite/quote/elements/text.js +60 -73
- package/dist/composite/quote/elements/text.js.map +1 -1
- package/dist/composite/quote/elements/text.mjs +60 -73
- package/dist/composite/quote/elements/text.mjs.map +1 -1
- package/dist/composite/quote/featured.d.ts +2 -1
- package/dist/composite/quote/featured.d.ts.map +1 -1
- package/dist/composite/quote/featured.js +102 -135
- package/dist/composite/quote/featured.js.map +1 -1
- package/dist/composite/quote/featured.mjs +102 -135
- package/dist/composite/quote/featured.mjs.map +1 -1
- package/dist/composite/quote/helper/animation.d.ts +2 -2
- package/dist/composite/quote/helper/animation.d.ts.map +1 -1
- package/dist/composite/quote/helper/animation.js.map +1 -1
- package/dist/composite/quote/helper/animation.mjs.map +1 -1
- package/dist/composite/quote/inline.d.ts +2 -1
- package/dist/composite/quote/inline.d.ts.map +1 -1
- package/dist/composite/quote/inline.js +29 -45
- package/dist/composite/quote/inline.js.map +1 -1
- package/dist/composite/quote/inline.mjs +29 -45
- package/dist/composite/quote/inline.mjs.map +1 -1
- package/dist/composite/quote/statement.d.ts +1 -5
- package/dist/composite/quote/statement.d.ts.map +1 -1
- package/dist/composite/slider/events.js +1 -1
- package/dist/composite/slider/events.js.map +1 -1
- package/dist/composite/slider/events.mjs +1 -1
- package/dist/composite/slider/events.mjs.map +1 -1
- package/dist/composite/social/sharing.js +1 -1
- package/dist/composite/social/sharing.js.map +1 -1
- package/dist/composite/social/sharing.mjs +1 -1
- package/dist/composite/social/sharing.mjs.map +1 -1
- package/dist/composite/tabs/standard.d.ts.map +1 -1
- package/dist/composite/tabs/standard.js +3 -2
- package/dist/composite/tabs/standard.js.map +1 -1
- package/dist/composite/tabs/standard.mjs +3 -2
- package/dist/composite/tabs/standard.mjs.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -3
- package/dist/index.mjs.map +1 -1
- package/dist/layout/image.js +1 -1
- package/dist/layout/image.js.map +1 -1
- package/dist/layout/image.mjs +1 -1
- package/dist/layout/image.mjs.map +1 -1
- package/package.json +10 -9
- package/dist/model/elements/actions.d.ts +0 -62
- package/dist/model/elements/actions.d.ts.map +0 -1
- package/dist/model/elements/actions.js +0 -71
- package/dist/model/elements/actions.js.map +0 -1
- package/dist/model/elements/actions.mjs +0 -54
- package/dist/model/elements/actions.mjs.map +0 -1
- package/dist/model/elements/assets.d.ts +0 -30
- package/dist/model/elements/assets.d.ts.map +0 -1
- package/dist/model/elements/assets.js +0 -42
- package/dist/model/elements/assets.js.map +0 -1
- package/dist/model/elements/assets.mjs +0 -25
- package/dist/model/elements/assets.mjs.map +0 -1
- package/dist/model/elements/buttons.d.ts +0 -12
- package/dist/model/elements/buttons.d.ts.map +0 -1
- package/dist/model/elements/buttons.js +0 -26
- package/dist/model/elements/buttons.js.map +0 -1
- package/dist/model/elements/buttons.mjs +0 -9
- package/dist/model/elements/buttons.mjs.map +0 -1
- package/dist/model/elements/event.d.ts +0 -22
- package/dist/model/elements/event.d.ts.map +0 -1
- package/dist/model/elements/event.js +0 -30
- package/dist/model/elements/event.js.map +0 -1
- package/dist/model/elements/event.mjs +0 -13
- package/dist/model/elements/event.mjs.map +0 -1
- package/dist/model/elements/headline.d.ts +0 -67
- package/dist/model/elements/headline.d.ts.map +0 -1
- package/dist/model/elements/headline.js +0 -74
- package/dist/model/elements/headline.js.map +0 -1
- package/dist/model/elements/headline.mjs +0 -57
- package/dist/model/elements/headline.mjs.map +0 -1
- package/dist/model/elements/index.d.ts +0 -34
- package/dist/model/elements/index.d.ts.map +0 -1
- package/dist/model/elements/index.js +0 -37
- package/dist/model/elements/index.js.map +0 -1
- package/dist/model/elements/index.mjs +0 -37
- package/dist/model/elements/index.mjs.map +0 -1
- package/dist/model/elements/layout.d.ts +0 -64
- package/dist/model/elements/layout.d.ts.map +0 -1
- package/dist/model/elements/layout.js +0 -68
- package/dist/model/elements/layout.js.map +0 -1
- package/dist/model/elements/layout.mjs +0 -51
- package/dist/model/elements/layout.mjs.map +0 -1
- package/dist/model/elements/rich-text.d.ts +0 -27
- package/dist/model/elements/rich-text.d.ts.map +0 -1
- package/dist/model/elements/rich-text.js +0 -68
- package/dist/model/elements/rich-text.js.map +0 -1
- package/dist/model/elements/rich-text.mjs +0 -51
- package/dist/model/elements/rich-text.mjs.map +0 -1
- package/dist/model/elements/text.d.ts +0 -22
- package/dist/model/elements/text.d.ts.map +0 -1
- package/dist/model/elements/text.js +0 -30
- package/dist/model/elements/text.js.map +0 -1
- package/dist/model/elements/text.mjs +0 -13
- package/dist/model/elements/text.mjs.map +0 -1
- package/dist/model/index.d.ts +0 -2
- package/dist/model/index.d.ts.map +0 -1
- package/dist/model/modifiers/_types.d.ts +0 -41
- package/dist/model/modifiers/_types.d.ts.map +0 -1
- package/dist/model/modifiers/index.d.ts +0 -44
- package/dist/model/modifiers/index.d.ts.map +0 -1
- package/dist/model/modifiers/index.js +0 -136
- package/dist/model/modifiers/index.js.map +0 -1
- package/dist/model/modifiers/index.mjs +0 -136
- package/dist/model/modifiers/index.mjs.map +0 -1
- package/dist/model/modifiers/style.d.ts +0 -19
- package/dist/model/modifiers/style.d.ts.map +0 -1
- package/dist/model/modifiers/style.js +0 -122
- package/dist/model/modifiers/style.js.map +0 -1
- package/dist/model/modifiers/style.mjs +0 -105
- package/dist/model/modifiers/style.mjs.map +0 -1
- package/dist/model.d.ts +0 -2
- package/dist/model.js +0 -5
- package/dist/model.js.map +0 -1
- package/dist/model.mjs +0 -5
- package/dist/model.mjs.map +0 -1
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
2
|
+
const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
|
|
3
|
+
const token = require("@universityofmaryland/web-token-library");
|
|
3
4
|
const typography = require("@universityofmaryland/web-styles-library/typography");
|
|
4
5
|
const elementStyles = require("@universityofmaryland/web-styles-library/element");
|
|
5
6
|
const performance = require("@universityofmaryland/web-utilities-library/performance");
|
|
6
|
-
|
|
7
|
+
require("@universityofmaryland/web-styles-library/layout");
|
|
8
|
+
require("@universityofmaryland/web-styles-library/animation");
|
|
7
9
|
require("@universityofmaryland/web-utilities-library/media");
|
|
8
10
|
require("@universityofmaryland/web-utilities-library/dom");
|
|
9
11
|
require("@universityofmaryland/web-icons-library/controls");
|
|
@@ -15,17 +17,17 @@ require("../../../atomic/animations/actions/indicator.js");
|
|
|
15
17
|
const chevronFlow = require("../../../atomic/animations/brand/chevron-flow.js");
|
|
16
18
|
require("../../../atomic/animations/brand/chevron-scroll.js");
|
|
17
19
|
require("../../../atomic/animations/brand/card-stack.js");
|
|
20
|
+
require("@universityofmaryland/web-styles-library");
|
|
18
21
|
const observedAutoPlay = require("../../../atomic/assets/video/observed-auto-play.js");
|
|
19
22
|
require("@universityofmaryland/web-icons-library/location");
|
|
20
23
|
require("@universityofmaryland/web-icons-library/calendar");
|
|
24
|
+
require("@universityofmaryland/web-utilities-library/theme");
|
|
21
25
|
require("../../../atomic/layout/block/stacked.js");
|
|
22
26
|
require("../../../atomic/layout/overlay/modal.js");
|
|
23
27
|
require("../../../atomic/layout/person/columns.js");
|
|
24
28
|
require("@universityofmaryland/web-icons-library/social");
|
|
25
29
|
require("../../../atomic/text-lockup/date.js");
|
|
26
30
|
require("../../../atomic/text-lockup/small.js");
|
|
27
|
-
const headline = require("../../../model/elements/headline.js");
|
|
28
|
-
const richText = require("../../../model/elements/rich-text.js");
|
|
29
31
|
function _interopNamespaceDefault(e) {
|
|
30
32
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
31
33
|
if (e) {
|
|
@@ -58,47 +60,45 @@ const ANIMATION_CONFIG = {
|
|
|
58
60
|
EASING: "ease-in-out"
|
|
59
61
|
}
|
|
60
62
|
};
|
|
61
|
-
const createHeadline = (headline
|
|
62
|
-
if (!headline
|
|
63
|
-
return headline.
|
|
64
|
-
element:
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
marginTop: token__namespace.spacing.md
|
|
75
|
-
}
|
|
63
|
+
const createHeadline = (headline) => {
|
|
64
|
+
if (!headline) return null;
|
|
65
|
+
return new webBuilderLibrary.ElementBuilder(headline).styled(typography__namespace.campaign.extralarge).withStyles({
|
|
66
|
+
element: {
|
|
67
|
+
textTransform: "uppercase",
|
|
68
|
+
opacity: 0,
|
|
69
|
+
transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
|
|
70
|
+
transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
|
|
71
|
+
textWrap: "balance",
|
|
72
|
+
color: token__namespace.color.white
|
|
73
|
+
},
|
|
74
|
+
siblingAfter: {
|
|
75
|
+
marginTop: token__namespace.spacing.md
|
|
76
76
|
}
|
|
77
|
-
});
|
|
77
|
+
}).build();
|
|
78
78
|
};
|
|
79
79
|
const createText = (text) => {
|
|
80
80
|
if (!text) return null;
|
|
81
|
-
return
|
|
82
|
-
element:
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
return new webBuilderLibrary.ElementBuilder(text).styled(elementStyles__namespace.text.rich.simpleLargest).withStyles({
|
|
82
|
+
element: {
|
|
83
|
+
maxWidth: "720px",
|
|
84
|
+
marginLeft: "auto",
|
|
85
|
+
marginRight: "auto",
|
|
86
|
+
opacity: 0,
|
|
87
|
+
transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
|
|
88
|
+
transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
|
|
89
|
+
["& p"]: {
|
|
90
|
+
color: token__namespace.color.white
|
|
91
|
+
},
|
|
92
|
+
[`@media (max-width: 649px)`]: {
|
|
93
|
+
display: "none"
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
-
});
|
|
96
|
+
}).build();
|
|
97
97
|
};
|
|
98
98
|
const createTextChildren = (props) => {
|
|
99
|
-
const { headline
|
|
99
|
+
const { headline, text } = props;
|
|
100
100
|
const children = [];
|
|
101
|
-
const headlineElement = createHeadline(
|
|
101
|
+
const headlineElement = createHeadline(headline);
|
|
102
102
|
if (headlineElement) {
|
|
103
103
|
children.push(headlineElement);
|
|
104
104
|
}
|
|
@@ -111,41 +111,28 @@ const createTextChildren = (props) => {
|
|
|
111
111
|
const createTextContainer = (props) => {
|
|
112
112
|
const children = createTextChildren(props);
|
|
113
113
|
if (children.length === 0) return null;
|
|
114
|
-
const container =
|
|
115
|
-
element:
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
textAlign: "center",
|
|
122
|
-
width: `calc(100% - 24px)`,
|
|
123
|
-
maxWidth: "950px",
|
|
124
|
-
padding: `${token__namespace.spacing.xl} ${token__namespace.spacing.md}`,
|
|
125
|
-
["& *"]: {
|
|
126
|
-
color: token__namespace.color.white
|
|
127
|
-
}
|
|
128
|
-
}
|
|
114
|
+
const container = new webBuilderLibrary.ElementBuilder().withClassName("hero-logo-brand-text-container").withChildren(...children).withStyles({
|
|
115
|
+
element: {
|
|
116
|
+
zIndex: 99,
|
|
117
|
+
textAlign: "center",
|
|
118
|
+
width: `calc(100% - 24px)`,
|
|
119
|
+
maxWidth: "950px",
|
|
120
|
+
padding: `${token__namespace.spacing.xl} ${token__namespace.spacing.md}`
|
|
129
121
|
}
|
|
130
|
-
});
|
|
131
|
-
return
|
|
132
|
-
element:
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
backgroundColor: "rgba(0, 0, 0, 0.6)",
|
|
143
|
-
zIndex: 98,
|
|
144
|
-
opacity: 0,
|
|
145
|
-
transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
|
|
146
|
-
}
|
|
122
|
+
}).build();
|
|
123
|
+
return new webBuilderLibrary.ElementBuilder().withClassName(OVERLAY_CLASS).withChild(container).withStyles({
|
|
124
|
+
element: {
|
|
125
|
+
height: "100%",
|
|
126
|
+
width: "100%",
|
|
127
|
+
display: "flex",
|
|
128
|
+
justifyContent: "center",
|
|
129
|
+
alignItems: "center",
|
|
130
|
+
backgroundColor: "rgba(0, 0, 0, 0.6)",
|
|
131
|
+
zIndex: 98,
|
|
132
|
+
opacity: 0,
|
|
133
|
+
transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
|
|
147
134
|
}
|
|
148
|
-
});
|
|
135
|
+
}).build();
|
|
149
136
|
};
|
|
150
137
|
const createVideo = (video) => {
|
|
151
138
|
return observedAutoPlay({
|
|
@@ -165,14 +152,14 @@ const createAnimationSequence = (container) => {
|
|
|
165
152
|
const overlay = container.querySelector(
|
|
166
153
|
`.${OVERLAY_CLASS}`
|
|
167
154
|
);
|
|
168
|
-
const
|
|
155
|
+
const headline = container.querySelector(
|
|
169
156
|
`.${typography__namespace.campaign.fonts.extraLarge.className}`
|
|
170
157
|
);
|
|
171
158
|
const text = container.querySelector(
|
|
172
159
|
`.${elementStyles__namespace.text.rich.simpleLargest.className}`
|
|
173
160
|
);
|
|
174
161
|
if (overlay) overlay.style.opacity = "1";
|
|
175
|
-
if (
|
|
162
|
+
if (headline) headline.style.opacity = "1";
|
|
176
163
|
if (text) text.style.opacity = "1";
|
|
177
164
|
};
|
|
178
165
|
};
|
|
@@ -191,49 +178,40 @@ const createEventHandlers = (composite, overlay) => {
|
|
|
191
178
|
};
|
|
192
179
|
const videoArrow = (props) => {
|
|
193
180
|
const { video, isAnimationOnLoad } = props;
|
|
194
|
-
const composite = index.create({
|
|
195
|
-
element: document.createElement("section"),
|
|
196
|
-
className: "umd-element-hero-brand-video",
|
|
197
|
-
elementStyles: {
|
|
198
|
-
element: {
|
|
199
|
-
aspectRatio: "16 / 9",
|
|
200
|
-
width: "100%"
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
181
|
const videoElement = createVideo(video);
|
|
205
182
|
const textContainer = createTextContainer(props);
|
|
206
|
-
const
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
alignItems: "center",
|
|
223
|
-
justifyContent: "center"
|
|
224
|
-
}
|
|
183
|
+
const composite = new webBuilderLibrary.ElementBuilder("section").withClassName("umd-element-hero-brand-video").withStyles({
|
|
184
|
+
element: {
|
|
185
|
+
aspectRatio: "16 / 9",
|
|
186
|
+
width: "100%"
|
|
187
|
+
}
|
|
188
|
+
}).build();
|
|
189
|
+
const wrapper = new webBuilderLibrary.ElementBuilder().withClassName("hero-logo-brand-video-wrapper").withChild(videoElement).withStyles({
|
|
190
|
+
element: {
|
|
191
|
+
containerType: "inline-size",
|
|
192
|
+
position: "relative",
|
|
193
|
+
overflow: "hidden",
|
|
194
|
+
height: "100%",
|
|
195
|
+
width: "100%",
|
|
196
|
+
display: "flex",
|
|
197
|
+
alignItems: "center",
|
|
198
|
+
justifyContent: "center"
|
|
225
199
|
}
|
|
226
200
|
});
|
|
201
|
+
if (textContainer) {
|
|
202
|
+
wrapper.withChild(textContainer);
|
|
203
|
+
}
|
|
204
|
+
const wrapperBuilt = wrapper.build();
|
|
227
205
|
const overlay = chevronFlow({
|
|
228
206
|
sizedContainer: composite.element,
|
|
229
|
-
sizedWrapper:
|
|
207
|
+
sizedWrapper: wrapperBuilt.element,
|
|
230
208
|
completedCallback: createAnimationSequence(composite.element),
|
|
231
209
|
isAnimationOnLoad
|
|
232
210
|
});
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
composite.element.appendChild(
|
|
236
|
-
composite.styles +=
|
|
211
|
+
wrapperBuilt.element.appendChild(overlay.element);
|
|
212
|
+
wrapperBuilt.styles += overlay.styles;
|
|
213
|
+
composite.element.appendChild(wrapperBuilt.element);
|
|
214
|
+
composite.styles += wrapperBuilt.styles;
|
|
237
215
|
const events = createEventHandlers(composite, overlay);
|
|
238
216
|
return {
|
|
239
217
|
...composite,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video-arrow.js","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { ElementModel } from 'model';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementVisual } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return ElementModel.headline.campaignExtraLarge({\n element: headline,\n elementStyles: {\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n },\n });\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return ElementModel.richText.simpleLargest({\n element: text,\n elementStyles: {\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n },\n });\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementVisual[] => {\n const { headline, text } = props;\n const children: ElementVisual[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-text-container',\n children,\n elementStyles: {\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n\n ['& *']: {\n color: token.color.white,\n },\n },\n },\n });\n\n return ElementModel.create({\n element: document.createElement('div'),\n className: OVERLAY_CLASS,\n children: [container],\n elementStyles: {\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n },\n });\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementVisual,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const composite = ElementModel.create({\n element: document.createElement('section'),\n className: 'umd-element-hero-brand-video',\n elementStyles: {\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n },\n });\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const wrapperChildren: ElementVisual[] = [videoElement];\n if (textContainer) {\n wrapperChildren.push(textContainer);\n }\n\n const wrapper = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-video-wrapper',\n children: wrapperChildren,\n elementStyles: {\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n },\n });\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapper.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapper.element.appendChild(overlay.element);\n wrapper.styles += overlay.styles;\n\n composite.element.appendChild(wrapper.element);\n composite.styles += wrapper.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["headline","ElementModel.headline.campaignExtraLarge","token","ElementModel.richText.simpleLargest","ElementModel.create","assets.video.observedAutoPlay","typography","elementStyles","debounce","animations.brand.chevronFlow"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,MAAM,gBAAgB;AAEtB,MAAM,mBAAmB;AAAA,EACvB,WAAW;AAAA,IACT,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,YAAY;AAAA,EAAA;AAAA,EAEd,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,EAAA;AAEZ;AAEA,MAAM,iBAAiB,CAACA,eAAkC;AACxD,MAAI,CAACA,WAAU,QAAO;AAEtB,SAAOC,4BAAyC;AAAA,IAC9C,SAASD;AAAAA,IACT,eAAe;AAAA,MACb,SAAS;AAAA,QACP,eAAe;AAAA,QACf,SAAS;AAAA,QACT,YAAY,WAAW,iBAAiB,UAAU,QAAQ,IAAI,iBAAiB,UAAU,MAAM;AAAA,QAC/F,iBAAiB,iBAAiB,UAAU;AAAA,QAC5C,UAAU;AAAA,MAAA;AAAA,MAEZ,cAAc;AAAA,QACZ,WAAWE,iBAAM,QAAQ;AAAA,MAAA;AAAA,IAC3B;AAAA,EACF,CACD;AACH;AAEA,MAAM,aAAa,CAAC,SAA8B;AAChD,MAAI,CAAC,KAAM,QAAO;AAElB,SAAOC,uBAAoC;AAAA,IACzC,SAAS;AAAA,IACT,eAAe;AAAA,MACb,SAAS;AAAA,QACP,UAAU;AAAA,QACV,YAAY;AAAA,QACZ,aAAa;AAAA,QACb,SAAS;AAAA,QACT,YAAY,WAAW,iBAAiB,UAAU,QAAQ,IAAI,iBAAiB,UAAU,MAAM;AAAA,QAC/F,iBAAiB,iBAAiB,UAAU;AAAA,QAE5C,CAAC,2BAA2B,GAAG;AAAA,UAC7B,SAAS;AAAA,QAAA;AAAA,MACX;AAAA,IACF;AAAA,EACF,CACD;AACH;AAEA,MAAM,qBAAqB,CACzB,UACoB;AACpB,QAAM,EAAE,UAAAH,WAAU,KAAA,IAAS;AAC3B,QAAM,WAA4B,CAAA;AAElC,QAAM,kBAAkB,eAAeA,SAAQ;AAC/C,MAAI,iBAAiB;AACnB,aAAS,KAAK,eAAe;AAAA,EAC/B;AAEA,QAAM,cAAc,WAAW,IAAI;AACnC,MAAI,aAAa;AACf,aAAS,KAAK,WAAW;AAAA,EAC3B;AAEA,SAAO;AACT;AAEA,MAAM,sBAAsB,CAC1B,UACG;AACH,QAAM,WAAW,mBAAmB,KAAK;AAEzC,MAAI,SAAS,WAAW,EAAG,QAAO;AAElC,QAAM,YAAYI,MAAAA,OAAoB;AAAA,IACpC,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC,WAAW;AAAA,IACX;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,OAAO;AAAA,QACP,UAAU;AAAA,QACV,SAAS,GAAGF,iBAAM,QAAQ,EAAE,IAAIA,iBAAM,QAAQ,EAAE;AAAA,QAEhD,CAAC,KAAK,GAAG;AAAA,UACP,OAAOA,iBAAM,MAAM;AAAA,QAAA;AAAA,MACrB;AAAA,IACF;AAAA,EACF,CACD;AAED,SAAOE,aAAoB;AAAA,IACzB,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC,WAAW;AAAA,IACX,UAAU,CAAC,SAAS;AAAA,IACpB,eAAe;AAAA,MACb,SAAS;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,SAAS;AAAA,QACT,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,iBAAiB;AAAA,QACjB,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,YAAY,WAAW,iBAAiB,aAAa,QAAQ,IAAI,iBAAiB,aAAa,MAAM;AAAA,MAAA;AAAA,IACvG;AAAA,EACF,CACD;AACH;AAEA,MAAM,cAAc,CAAC,UAA4B;AAC/C,SAAOC,iBAA8B;AAAA,IACnC;AAAA,IACA,UAAU;AAAA,IACV,yBAAyB;AAAA,MACvB,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,KAAK;AAAA,MACL,MAAM;AAAA,IAAA;AAAA,EACR,CACD;AACH;AAEA,MAAM,0BAA0B,CAAC,cAA2B;AAC1D,SAAO,MAAM;AACX,UAAM,UAAU,UAAU;AAAA,MACxB,IAAI,aAAa;AAAA,IAAA;AAEnB,UAAML,YAAW,UAAU;AAAA,MACzB,IAAIM,sBAAW,SAAS,MAAM,WAAW,SAAS;AAAA,IAAA;AAEpD,UAAM,OAAO,UAAU;AAAA,MACrB,IAAIC,yBAAc,KAAK,KAAK,cAAc,SAAS;AAAA,IAAA;AAGrD,QAAI,QAAS,SAAQ,MAAM,UAAU;AACrC,QAAIP,UAAU,CAAAA,UAAS,MAAM,UAAU;AACvC,QAAI,KAAM,MAAK,MAAM,UAAU;AAAA,EACjC;AACF;AAEA,MAAM,sBAAsB,CAC1B,WACA,YACG;AACH,QAAM,cAAc,MAAM;AACxB,QAAI,UAAU,QAAQ,eAAe,OAAO,aAAa;AACvD,gBAAU,QAAQ,MAAM,SAAS,GAAG,OAAO,cAAc,GAAG;AAAA,IAC9D;AAAA,EACF;AAEA,QAAM,YAAY,MAAM;AACtB,YAAQ,OAAO,KAAA;AACf,gBAAA;AAAA,EACF;AAEA,SAAO,iBAAiB,UAAUQ,YAAAA,SAAS,aAAa,EAAE,CAAC;AAE3D,SAAO,EAAE,MAAM,UAAA;AACjB;AAEA,MAAA,aAAe,CAAC,UAA+B;AAC7C,QAAM,EAAE,OAAO,kBAAA,IAAsB;AAErC,QAAM,YAAYJ,MAAAA,OAAoB;AAAA,IACpC,SAAS,SAAS,cAAc,SAAS;AAAA,IACzC,WAAW;AAAA,IACX,eAAe;AAAA,MACb,SAAS;AAAA,QACP,aAAa;AAAA,QACb,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF,CACD;AAED,QAAM,eAAe,YAAY,KAAK;AACtC,QAAM,gBAAgB,oBAAoB,KAAK;AAE/C,QAAM,kBAAmC,CAAC,YAAY;AACtD,MAAI,eAAe;AACjB,oBAAgB,KAAK,aAAa;AAAA,EACpC;AAEA,QAAM,UAAUA,MAAAA,OAAoB;AAAA,IAClC,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC,WAAW;AAAA,IACX,UAAU;AAAA,IACV,eAAe;AAAA,MACb,SAAS;AAAA,QACP,eAAe;AAAA,QACf,UAAU;AAAA,QACV,UAAU;AAAA,QACV,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,SAAS;AAAA,QACT,YAAY;AAAA,QACZ,gBAAgB;AAAA,MAAA;AAAA,IAClB;AAAA,EACF,CACD;AAED,QAAM,UAAUK,YAA6B;AAAA,IAC3C,gBAAgB,UAAU;AAAA,IAC1B,cAAc,QAAQ;AAAA,IACtB,mBAAmB,wBAAwB,UAAU,OAAO;AAAA,IAC5D;AAAA,EAAA,CACD;AAED,UAAQ,QAAQ,YAAY,QAAQ,OAAO;AAC3C,UAAQ,UAAU,QAAQ;AAE1B,YAAU,QAAQ,YAAY,QAAQ,OAAO;AAC7C,YAAU,UAAU,QAAQ;AAE5B,QAAM,SAAS,oBAAoB,WAAW,OAAO;AAErD,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EAAA;AAEJ;;"}
|
|
1
|
+
{"version":3,"file":"video-arrow.js","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementModel } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return new ElementBuilder(headline)\n .styled(typography.campaign.extralarge)\n .withStyles({\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n color: token.color.white,\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n })\n .build();\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return new ElementBuilder(text)\n .styled(elementStyles.text.rich.simpleLargest)\n .withStyles({\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n ['& p']: {\n color: token.color.white,\n },\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n })\n .build();\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementModel<HTMLElement>[] => {\n const { headline, text } = props;\n const children: ElementModel<HTMLElement>[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = new ElementBuilder()\n .withClassName('hero-logo-brand-text-container')\n .withChildren(...children)\n .withStyles({\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n },\n })\n .build();\n\n return new ElementBuilder()\n .withClassName(OVERLAY_CLASS)\n .withChild(container)\n .withStyles({\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n })\n .build();\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementModel<HTMLElement>,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const composite = new ElementBuilder('section')\n .withClassName('umd-element-hero-brand-video')\n .withStyles({\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n })\n .build();\n\n const wrapper = new ElementBuilder()\n .withClassName('hero-logo-brand-video-wrapper')\n .withChild(videoElement)\n .withStyles({\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n });\n\n if (textContainer) {\n wrapper.withChild(textContainer);\n }\n\n const wrapperBuilt = wrapper.build();\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapperBuilt.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapperBuilt.element.appendChild(overlay.element);\n wrapperBuilt.styles += overlay.styles;\n\n composite.element.appendChild(wrapperBuilt.element);\n composite.styles += wrapperBuilt.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["ElementBuilder","typography","token","elementStyles","assets.video.observedAutoPlay","debounce","animations.brand.chevronFlow"],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ElementBuilder } from "@universityofmaryland/web-builder-library";
|
|
2
|
+
import * as token from "@universityofmaryland/web-token-library";
|
|
2
3
|
import * as typography from "@universityofmaryland/web-styles-library/typography";
|
|
3
4
|
import * as elementStyles from "@universityofmaryland/web-styles-library/element";
|
|
4
5
|
import { debounce } from "@universityofmaryland/web-utilities-library/performance";
|
|
5
|
-
import
|
|
6
|
+
import "@universityofmaryland/web-styles-library/layout";
|
|
7
|
+
import "@universityofmaryland/web-styles-library/animation";
|
|
6
8
|
import "@universityofmaryland/web-utilities-library/media";
|
|
7
9
|
import "@universityofmaryland/web-utilities-library/dom";
|
|
8
10
|
import "@universityofmaryland/web-icons-library/controls";
|
|
@@ -14,17 +16,17 @@ import "../../../atomic/animations/actions/indicator.mjs";
|
|
|
14
16
|
import chevronFlow from "../../../atomic/animations/brand/chevron-flow.mjs";
|
|
15
17
|
import "../../../atomic/animations/brand/chevron-scroll.mjs";
|
|
16
18
|
import "../../../atomic/animations/brand/card-stack.mjs";
|
|
19
|
+
import "@universityofmaryland/web-styles-library";
|
|
17
20
|
import observedAutoPlay from "../../../atomic/assets/video/observed-auto-play.mjs";
|
|
18
21
|
import "@universityofmaryland/web-icons-library/location";
|
|
19
22
|
import "@universityofmaryland/web-icons-library/calendar";
|
|
23
|
+
import "@universityofmaryland/web-utilities-library/theme";
|
|
20
24
|
import "../../../atomic/layout/block/stacked.mjs";
|
|
21
25
|
import "../../../atomic/layout/overlay/modal.mjs";
|
|
22
26
|
import "../../../atomic/layout/person/columns.mjs";
|
|
23
27
|
import "@universityofmaryland/web-icons-library/social";
|
|
24
28
|
import "../../../atomic/text-lockup/date.mjs";
|
|
25
29
|
import "../../../atomic/text-lockup/small.mjs";
|
|
26
|
-
import { campaignExtraLarge } from "../../../model/elements/headline.mjs";
|
|
27
|
-
import { simpleLargest } from "../../../model/elements/rich-text.mjs";
|
|
28
30
|
const OVERLAY_CLASS = "hero-logo-brand-text-overlay";
|
|
29
31
|
const ANIMATION_CONFIG = {
|
|
30
32
|
TEXT_FADE: {
|
|
@@ -40,40 +42,38 @@ const ANIMATION_CONFIG = {
|
|
|
40
42
|
};
|
|
41
43
|
const createHeadline = (headline) => {
|
|
42
44
|
if (!headline) return null;
|
|
43
|
-
return
|
|
44
|
-
element:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
marginTop: token.spacing.md
|
|
55
|
-
}
|
|
45
|
+
return new ElementBuilder(headline).styled(typography.campaign.extralarge).withStyles({
|
|
46
|
+
element: {
|
|
47
|
+
textTransform: "uppercase",
|
|
48
|
+
opacity: 0,
|
|
49
|
+
transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
|
|
50
|
+
transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,
|
|
51
|
+
textWrap: "balance",
|
|
52
|
+
color: token.color.white
|
|
53
|
+
},
|
|
54
|
+
siblingAfter: {
|
|
55
|
+
marginTop: token.spacing.md
|
|
56
56
|
}
|
|
57
|
-
});
|
|
57
|
+
}).build();
|
|
58
58
|
};
|
|
59
59
|
const createText = (text) => {
|
|
60
60
|
if (!text) return null;
|
|
61
|
-
return simpleLargest({
|
|
62
|
-
element:
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
61
|
+
return new ElementBuilder(text).styled(elementStyles.text.rich.simpleLargest).withStyles({
|
|
62
|
+
element: {
|
|
63
|
+
maxWidth: "720px",
|
|
64
|
+
marginLeft: "auto",
|
|
65
|
+
marginRight: "auto",
|
|
66
|
+
opacity: 0,
|
|
67
|
+
transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,
|
|
68
|
+
transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,
|
|
69
|
+
["& p"]: {
|
|
70
|
+
color: token.color.white
|
|
71
|
+
},
|
|
72
|
+
[`@media (max-width: 649px)`]: {
|
|
73
|
+
display: "none"
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
-
});
|
|
76
|
+
}).build();
|
|
77
77
|
};
|
|
78
78
|
const createTextChildren = (props) => {
|
|
79
79
|
const { headline, text } = props;
|
|
@@ -91,41 +91,28 @@ const createTextChildren = (props) => {
|
|
|
91
91
|
const createTextContainer = (props) => {
|
|
92
92
|
const children = createTextChildren(props);
|
|
93
93
|
if (children.length === 0) return null;
|
|
94
|
-
const container =
|
|
95
|
-
element:
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
textAlign: "center",
|
|
102
|
-
width: `calc(100% - 24px)`,
|
|
103
|
-
maxWidth: "950px",
|
|
104
|
-
padding: `${token.spacing.xl} ${token.spacing.md}`,
|
|
105
|
-
["& *"]: {
|
|
106
|
-
color: token.color.white
|
|
107
|
-
}
|
|
108
|
-
}
|
|
94
|
+
const container = new ElementBuilder().withClassName("hero-logo-brand-text-container").withChildren(...children).withStyles({
|
|
95
|
+
element: {
|
|
96
|
+
zIndex: 99,
|
|
97
|
+
textAlign: "center",
|
|
98
|
+
width: `calc(100% - 24px)`,
|
|
99
|
+
maxWidth: "950px",
|
|
100
|
+
padding: `${token.spacing.xl} ${token.spacing.md}`
|
|
109
101
|
}
|
|
110
|
-
});
|
|
111
|
-
return
|
|
112
|
-
element:
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
backgroundColor: "rgba(0, 0, 0, 0.6)",
|
|
123
|
-
zIndex: 98,
|
|
124
|
-
opacity: 0,
|
|
125
|
-
transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
|
|
126
|
-
}
|
|
102
|
+
}).build();
|
|
103
|
+
return new ElementBuilder().withClassName(OVERLAY_CLASS).withChild(container).withStyles({
|
|
104
|
+
element: {
|
|
105
|
+
height: "100%",
|
|
106
|
+
width: "100%",
|
|
107
|
+
display: "flex",
|
|
108
|
+
justifyContent: "center",
|
|
109
|
+
alignItems: "center",
|
|
110
|
+
backgroundColor: "rgba(0, 0, 0, 0.6)",
|
|
111
|
+
zIndex: 98,
|
|
112
|
+
opacity: 0,
|
|
113
|
+
transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`
|
|
127
114
|
}
|
|
128
|
-
});
|
|
115
|
+
}).build();
|
|
129
116
|
};
|
|
130
117
|
const createVideo = (video) => {
|
|
131
118
|
return observedAutoPlay({
|
|
@@ -171,49 +158,40 @@ const createEventHandlers = (composite, overlay) => {
|
|
|
171
158
|
};
|
|
172
159
|
const videoArrow = (props) => {
|
|
173
160
|
const { video, isAnimationOnLoad } = props;
|
|
174
|
-
const composite = create({
|
|
175
|
-
element: document.createElement("section"),
|
|
176
|
-
className: "umd-element-hero-brand-video",
|
|
177
|
-
elementStyles: {
|
|
178
|
-
element: {
|
|
179
|
-
aspectRatio: "16 / 9",
|
|
180
|
-
width: "100%"
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
});
|
|
184
161
|
const videoElement = createVideo(video);
|
|
185
162
|
const textContainer = createTextContainer(props);
|
|
186
|
-
const
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
alignItems: "center",
|
|
203
|
-
justifyContent: "center"
|
|
204
|
-
}
|
|
163
|
+
const composite = new ElementBuilder("section").withClassName("umd-element-hero-brand-video").withStyles({
|
|
164
|
+
element: {
|
|
165
|
+
aspectRatio: "16 / 9",
|
|
166
|
+
width: "100%"
|
|
167
|
+
}
|
|
168
|
+
}).build();
|
|
169
|
+
const wrapper = new ElementBuilder().withClassName("hero-logo-brand-video-wrapper").withChild(videoElement).withStyles({
|
|
170
|
+
element: {
|
|
171
|
+
containerType: "inline-size",
|
|
172
|
+
position: "relative",
|
|
173
|
+
overflow: "hidden",
|
|
174
|
+
height: "100%",
|
|
175
|
+
width: "100%",
|
|
176
|
+
display: "flex",
|
|
177
|
+
alignItems: "center",
|
|
178
|
+
justifyContent: "center"
|
|
205
179
|
}
|
|
206
180
|
});
|
|
181
|
+
if (textContainer) {
|
|
182
|
+
wrapper.withChild(textContainer);
|
|
183
|
+
}
|
|
184
|
+
const wrapperBuilt = wrapper.build();
|
|
207
185
|
const overlay = chevronFlow({
|
|
208
186
|
sizedContainer: composite.element,
|
|
209
|
-
sizedWrapper:
|
|
187
|
+
sizedWrapper: wrapperBuilt.element,
|
|
210
188
|
completedCallback: createAnimationSequence(composite.element),
|
|
211
189
|
isAnimationOnLoad
|
|
212
190
|
});
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
composite.element.appendChild(
|
|
216
|
-
composite.styles +=
|
|
191
|
+
wrapperBuilt.element.appendChild(overlay.element);
|
|
192
|
+
wrapperBuilt.styles += overlay.styles;
|
|
193
|
+
composite.element.appendChild(wrapperBuilt.element);
|
|
194
|
+
composite.styles += wrapperBuilt.styles;
|
|
217
195
|
const events = createEventHandlers(composite, overlay);
|
|
218
196
|
return {
|
|
219
197
|
...composite,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video-arrow.mjs","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { ElementModel } from 'model';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementVisual } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return ElementModel.headline.campaignExtraLarge({\n element: headline,\n elementStyles: {\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n },\n });\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return ElementModel.richText.simpleLargest({\n element: text,\n elementStyles: {\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n },\n });\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementVisual[] => {\n const { headline, text } = props;\n const children: ElementVisual[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-text-container',\n children,\n elementStyles: {\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n\n ['& *']: {\n color: token.color.white,\n },\n },\n },\n });\n\n return ElementModel.create({\n element: document.createElement('div'),\n className: OVERLAY_CLASS,\n children: [container],\n elementStyles: {\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n },\n });\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementVisual,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const composite = ElementModel.create({\n element: document.createElement('section'),\n className: 'umd-element-hero-brand-video',\n elementStyles: {\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n },\n });\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const wrapperChildren: ElementVisual[] = [videoElement];\n if (textContainer) {\n wrapperChildren.push(textContainer);\n }\n\n const wrapper = ElementModel.create({\n element: document.createElement('div'),\n className: 'hero-logo-brand-video-wrapper',\n children: wrapperChildren,\n elementStyles: {\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n },\n });\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapper.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapper.element.appendChild(overlay.element);\n wrapper.styles += overlay.styles;\n\n composite.element.appendChild(wrapper.element);\n composite.styles += wrapper.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["ElementModel.headline.campaignExtraLarge","ElementModel.richText.simpleLargest","ElementModel.create","assets.video.observedAutoPlay","animations.brand.chevronFlow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"video-arrow.mjs","sources":["../../../../source/composite/hero/custom/video-arrow.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { animations, assets } from 'atomic';\nimport { type HeroVideoArrowProps as BaseHeroVideoArrowProps } from '../_types';\nimport { type ElementModel } from '../../../_types';\n\ninterface HeroVideoArrowProps extends Omit<BaseHeroVideoArrowProps, 'video'> {\n video: HTMLVideoElement;\n isAnimationOnLoad?: boolean;\n}\n\nconst OVERLAY_CLASS = 'hero-logo-brand-text-overlay';\n\nconst ANIMATION_CONFIG = {\n TEXT_FADE: {\n DURATION: '1000ms',\n EASING: 'ease-in-out',\n HEADLINE_DELAY: '600ms',\n TEXT_DELAY: '1500ms',\n },\n OVERLAY_FADE: {\n DURATION: '1500ms',\n EASING: 'ease-in-out',\n },\n} as const;\n\nconst createHeadline = (headline?: HTMLElement | null) => {\n if (!headline) return null;\n\n return new ElementBuilder(headline)\n .styled(typography.campaign.extralarge)\n .withStyles({\n element: {\n textTransform: 'uppercase',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.HEADLINE_DELAY,\n textWrap: 'balance',\n color: token.color.white,\n },\n siblingAfter: {\n marginTop: token.spacing.md,\n },\n })\n .build();\n};\n\nconst createText = (text?: HTMLElement | null) => {\n if (!text) return null;\n\n return new ElementBuilder(text)\n .styled(elementStyles.text.rich.simpleLargest)\n .withStyles({\n element: {\n maxWidth: '720px',\n marginLeft: 'auto',\n marginRight: 'auto',\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.TEXT_FADE.DURATION} ${ANIMATION_CONFIG.TEXT_FADE.EASING}`,\n transitionDelay: ANIMATION_CONFIG.TEXT_FADE.TEXT_DELAY,\n\n ['& p']: {\n color: token.color.white,\n },\n\n [`@media (max-width: 649px)`]: {\n display: 'none',\n },\n },\n })\n .build();\n};\n\nconst createTextChildren = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n): ElementModel<HTMLElement>[] => {\n const { headline, text } = props;\n const children: ElementModel<HTMLElement>[] = [];\n\n const headlineElement = createHeadline(headline);\n if (headlineElement) {\n children.push(headlineElement);\n }\n\n const textElement = createText(text);\n if (textElement) {\n children.push(textElement);\n }\n\n return children;\n};\n\nconst createTextContainer = (\n props: Pick<HeroVideoArrowProps, 'headline' | 'text'>,\n) => {\n const children = createTextChildren(props);\n\n if (children.length === 0) return null;\n\n const container = new ElementBuilder()\n .withClassName('hero-logo-brand-text-container')\n .withChildren(...children)\n .withStyles({\n element: {\n zIndex: 99,\n textAlign: 'center',\n width: `calc(100% - 24px)`,\n maxWidth: '950px',\n padding: `${token.spacing.xl} ${token.spacing.md}`,\n },\n })\n .build();\n\n return new ElementBuilder()\n .withClassName(OVERLAY_CLASS)\n .withChild(container)\n .withStyles({\n element: {\n height: '100%',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.6)',\n zIndex: 98,\n opacity: 0,\n transition: `opacity ${ANIMATION_CONFIG.OVERLAY_FADE.DURATION} ${ANIMATION_CONFIG.OVERLAY_FADE.EASING}`,\n },\n })\n .build();\n};\n\nconst createVideo = (video: HTMLVideoElement) => {\n return assets.video.observedAutoPlay({\n video,\n isScaled: true,\n additionalElementStyles: {\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n },\n });\n};\n\nconst createAnimationSequence = (container: HTMLElement) => {\n return () => {\n const overlay = container.querySelector(\n `.${OVERLAY_CLASS}`,\n ) as HTMLDivElement;\n const headline = container.querySelector(\n `.${typography.campaign.fonts.extraLarge.className}`,\n ) as HTMLDivElement;\n const text = container.querySelector(\n `.${elementStyles.text.rich.simpleLargest.className}`,\n ) as HTMLDivElement;\n\n if (overlay) overlay.style.opacity = '1';\n if (headline) headline.style.opacity = '1';\n if (text) text.style.opacity = '1';\n };\n};\n\nconst createEventHandlers = (\n composite: ElementModel<HTMLElement>,\n overlay: ReturnType<typeof animations.brand.chevronFlow>,\n) => {\n const eventResize = () => {\n if (composite.element.offsetHeight > window.innerHeight) {\n composite.element.style.height = `${window.innerHeight * 0.9}px`;\n }\n };\n\n const eventLoad = () => {\n overlay.events.load();\n eventResize();\n };\n\n window.addEventListener('resize', debounce(eventResize, 20));\n\n return { load: eventLoad };\n};\n\nexport default (props: HeroVideoArrowProps) => {\n const { video, isAnimationOnLoad } = props;\n\n const videoElement = createVideo(video);\n const textContainer = createTextContainer(props);\n\n const composite = new ElementBuilder('section')\n .withClassName('umd-element-hero-brand-video')\n .withStyles({\n element: {\n aspectRatio: '16 / 9',\n width: '100%',\n },\n })\n .build();\n\n const wrapper = new ElementBuilder()\n .withClassName('hero-logo-brand-video-wrapper')\n .withChild(videoElement)\n .withStyles({\n element: {\n containerType: 'inline-size',\n position: 'relative',\n overflow: 'hidden',\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n });\n\n if (textContainer) {\n wrapper.withChild(textContainer);\n }\n\n const wrapperBuilt = wrapper.build();\n\n const overlay = animations.brand.chevronFlow({\n sizedContainer: composite.element,\n sizedWrapper: wrapperBuilt.element,\n completedCallback: createAnimationSequence(composite.element),\n isAnimationOnLoad,\n });\n\n wrapperBuilt.element.appendChild(overlay.element);\n wrapperBuilt.styles += overlay.styles;\n\n composite.element.appendChild(wrapperBuilt.element);\n composite.styles += wrapperBuilt.styles;\n\n const events = createEventHandlers(composite, overlay);\n\n return {\n ...composite,\n events,\n };\n};\n"],"names":["assets.video.observedAutoPlay","animations.brand.chevronFlow"],"mappings":"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"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { HeroLogoProps } from './_types';
|
|
2
|
-
declare const _default: (props: HeroLogoProps) =>
|
|
3
|
-
element: HTMLElement;
|
|
4
|
-
className: string;
|
|
5
|
-
styles: string;
|
|
6
|
-
};
|
|
2
|
+
declare const _default: (props: HeroLogoProps) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
|
|
7
3
|
export default _default;
|
|
8
4
|
//# sourceMappingURL=logo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../source/composite/hero/logo.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../source/composite/hero/logo.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;yBA2H9B,OAAO,aAAa;AAApC,wBA8BE"}
|