@universityofmaryland/web-elements-library 1.4.7 → 1.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/atomic/actions/icon.d.ts.map +1 -1
- package/dist/atomic/actions/icon.js +21 -22
- package/dist/atomic/actions/icon.js.map +1 -1
- package/dist/atomic/actions/icon.mjs +20 -21
- package/dist/atomic/actions/icon.mjs.map +1 -1
- package/dist/atomic/actions/text.d.ts.map +1 -1
- package/dist/atomic/actions/text.js +22 -19
- package/dist/atomic/actions/text.js.map +1 -1
- package/dist/atomic/actions/text.mjs +21 -19
- package/dist/atomic/actions/text.mjs.map +1 -1
- package/dist/atomic/animations/actions/indicator.d.ts.map +1 -1
- package/dist/atomic/animations/actions/indicator.js +32 -21
- package/dist/atomic/animations/actions/indicator.js.map +1 -1
- package/dist/atomic/animations/actions/indicator.mjs +3 -9
- package/dist/atomic/animations/actions/indicator.mjs.map +1 -1
- package/dist/atomic/animations/brand/card-stack.d.ts.map +1 -1
- package/dist/atomic/animations/brand/card-stack.js +42 -32
- package/dist/atomic/animations/brand/card-stack.js.map +1 -1
- package/dist/atomic/animations/brand/card-stack.mjs +21 -11
- package/dist/atomic/animations/brand/card-stack.mjs.map +1 -1
- package/dist/atomic/animations/brand/chevron-scroll.js +25 -8
- 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/gif.d.ts.map +1 -1
- package/dist/atomic/assets/image/gif.js +5 -8
- package/dist/atomic/assets/image/gif.js.map +1 -1
- package/dist/atomic/assets/image/gif.mjs +4 -7
- package/dist/atomic/assets/image/gif.mjs.map +1 -1
- package/dist/atomic/assets/video/observed-auto-play.js +2 -5
- package/dist/atomic/assets/video/observed-auto-play.js.map +1 -1
- package/dist/atomic/assets/video/observed-auto-play.mjs +2 -5
- package/dist/atomic/assets/video/observed-auto-play.mjs.map +1 -1
- package/dist/atomic/assets/video/toggle.d.ts.map +1 -1
- package/dist/atomic/assets/video/toggle.js +4 -7
- package/dist/atomic/assets/video/toggle.js.map +1 -1
- package/dist/atomic/assets/video/toggle.mjs +4 -7
- package/dist/atomic/assets/video/toggle.mjs.map +1 -1
- package/dist/atomic/buttons/fullscreen.js +2 -5
- package/dist/atomic/buttons/fullscreen.js.map +1 -1
- package/dist/atomic/buttons/fullscreen.mjs +2 -5
- package/dist/atomic/buttons/fullscreen.mjs.map +1 -1
- package/dist/atomic/events/meta.d.ts.map +1 -1
- package/dist/atomic/events/meta.js +8 -10
- package/dist/atomic/events/meta.js.map +1 -1
- package/dist/atomic/events/meta.mjs +5 -7
- package/dist/atomic/events/meta.mjs.map +1 -1
- package/dist/atomic/events/sign.js +19 -2
- package/dist/atomic/events/sign.js.map +1 -1
- package/dist/atomic/events/sign.mjs +2 -2
- package/dist/atomic/events/sign.mjs.map +1 -1
- package/dist/atomic/layout/block/stacked.d.ts.map +1 -1
- package/dist/atomic/layout/block/stacked.js +37 -55
- package/dist/atomic/layout/block/stacked.js.map +1 -1
- package/dist/atomic/layout/block/stacked.mjs +36 -54
- package/dist/atomic/layout/block/stacked.mjs.map +1 -1
- package/dist/atomic/layout/overlay/modal.d.ts.map +1 -1
- package/dist/atomic/layout/overlay/modal.js +22 -8
- package/dist/atomic/layout/overlay/modal.js.map +1 -1
- package/dist/atomic/layout/overlay/modal.mjs +3 -6
- package/dist/atomic/layout/overlay/modal.mjs.map +1 -1
- package/dist/atomic/layout/person/columns.d.ts.map +1 -1
- package/dist/atomic/layout/person/columns.js +36 -34
- package/dist/atomic/layout/person/columns.js.map +1 -1
- package/dist/atomic/layout/person/columns.mjs +35 -33
- package/dist/atomic/layout/person/columns.mjs.map +1 -1
- package/dist/atomic/text/stat.d.ts.map +1 -1
- package/dist/atomic/text/stat.js +47 -29
- package/dist/atomic/text/stat.js.map +1 -1
- package/dist/atomic/text/stat.mjs +30 -29
- package/dist/atomic/text/stat.mjs.map +1 -1
- package/dist/atomic/text-lockup/contact.d.ts.map +1 -1
- package/dist/atomic/text-lockup/contact.js +13 -15
- package/dist/atomic/text-lockup/contact.js.map +1 -1
- package/dist/atomic/text-lockup/contact.mjs +18 -20
- 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 +24 -20
- package/dist/atomic/text-lockup/date.js.map +1 -1
- package/dist/atomic/text-lockup/date.mjs +11 -9
- package/dist/atomic/text-lockup/date.mjs.map +1 -1
- package/dist/atomic/text-lockup/large.js +7 -7
- package/dist/atomic/text-lockup/large.js.map +1 -1
- package/dist/atomic/text-lockup/large.mjs +6 -6
- package/dist/atomic/text-lockup/large.mjs.map +1 -1
- package/dist/atomic/text-lockup/medium.js +9 -9
- package/dist/atomic/text-lockup/medium.js.map +1 -1
- package/dist/atomic/text-lockup/medium.mjs +8 -8
- package/dist/atomic/text-lockup/medium.mjs.map +1 -1
- package/dist/atomic/text-lockup/person.js +5 -5
- package/dist/atomic/text-lockup/person.js.map +1 -1
- package/dist/atomic/text-lockup/person.mjs +4 -4
- package/dist/atomic/text-lockup/person.mjs.map +1 -1
- package/dist/atomic/text-lockup/small.d.ts.map +1 -1
- package/dist/atomic/text-lockup/small.js +15 -14
- package/dist/atomic/text-lockup/small.js.map +1 -1
- package/dist/atomic/text-lockup/small.mjs +3 -3
- package/dist/atomic/text-lockup/small.mjs.map +1 -1
- package/dist/composite/accordion/item.d.ts.map +1 -1
- package/dist/composite/accordion/item.js +5 -5
- package/dist/composite/accordion/item.js.map +1 -1
- package/dist/composite/accordion/item.mjs +4 -4
- package/dist/composite/accordion/item.mjs.map +1 -1
- package/dist/composite/alert/elements/text.d.ts.map +1 -1
- package/dist/composite/alert/elements/text.js +34 -14
- package/dist/composite/alert/elements/text.js.map +1 -1
- package/dist/composite/alert/elements/text.mjs +5 -3
- package/dist/composite/alert/elements/text.mjs.map +1 -1
- package/dist/composite/alert/page.d.ts.map +1 -1
- package/dist/composite/alert/page.js +37 -22
- package/dist/composite/alert/page.js.map +1 -1
- package/dist/composite/alert/page.mjs +6 -8
- package/dist/composite/alert/page.mjs.map +1 -1
- package/dist/composite/alert/site.d.ts.map +1 -1
- package/dist/composite/alert/site.js +46 -27
- package/dist/composite/alert/site.js.map +1 -1
- package/dist/composite/alert/site.mjs +10 -9
- package/dist/composite/alert/site.mjs.map +1 -1
- package/dist/composite/banner/promo.d.ts.map +1 -1
- package/dist/composite/banner/promo.js +7 -8
- package/dist/composite/banner/promo.js.map +1 -1
- package/dist/composite/banner/promo.mjs +6 -7
- package/dist/composite/banner/promo.mjs.map +1 -1
- package/dist/composite/card/block.js +21 -9
- package/dist/composite/card/block.js.map +1 -1
- package/dist/composite/card/block.mjs +20 -8
- package/dist/composite/card/block.mjs.map +1 -1
- package/dist/composite/card/list.d.ts.map +1 -1
- package/dist/composite/card/list.js +47 -48
- package/dist/composite/card/list.js.map +1 -1
- package/dist/composite/card/list.mjs +46 -47
- package/dist/composite/card/list.mjs.map +1 -1
- package/dist/composite/card/overlay/color.d.ts.map +1 -1
- package/dist/composite/card/overlay/color.js +24 -12
- package/dist/composite/card/overlay/color.js.map +1 -1
- package/dist/composite/card/overlay/color.mjs +22 -11
- package/dist/composite/card/overlay/color.mjs.map +1 -1
- package/dist/composite/card/overlay/icon.js +21 -10
- package/dist/composite/card/overlay/icon.js.map +1 -1
- package/dist/composite/card/overlay/icon.mjs +20 -9
- package/dist/composite/card/overlay/icon.mjs.map +1 -1
- package/dist/composite/card/overlay/image.d.ts.map +1 -1
- package/dist/composite/card/overlay/image.js +29 -20
- package/dist/composite/card/overlay/image.js.map +1 -1
- package/dist/composite/card/overlay/image.mjs +27 -18
- package/dist/composite/card/overlay/image.mjs.map +1 -1
- package/dist/composite/card/video/block.js +15 -4
- package/dist/composite/card/video/block.js.map +1 -1
- package/dist/composite/card/video/block.mjs +15 -4
- package/dist/composite/card/video/block.mjs.map +1 -1
- package/dist/composite/carousel/cards/index.js +6 -6
- package/dist/composite/carousel/cards/index.js.map +1 -1
- package/dist/composite/carousel/cards/index.mjs +6 -6
- package/dist/composite/carousel/cards/index.mjs.map +1 -1
- package/dist/composite/carousel/default/index.js +24 -7
- 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.d.ts.map +1 -1
- package/dist/composite/carousel/elements/blocks.js +20 -22
- package/dist/composite/carousel/elements/blocks.js.map +1 -1
- package/dist/composite/carousel/elements/blocks.mjs +11 -14
- package/dist/composite/carousel/elements/blocks.mjs.map +1 -1
- package/dist/composite/carousel/elements/full-screen.js +36 -8
- package/dist/composite/carousel/elements/full-screen.js.map +1 -1
- package/dist/composite/carousel/elements/full-screen.mjs +17 -6
- package/dist/composite/carousel/elements/full-screen.mjs.map +1 -1
- package/dist/composite/carousel/elements/image.d.ts.map +1 -1
- package/dist/composite/carousel/elements/image.js +32 -21
- package/dist/composite/carousel/elements/image.js.map +1 -1
- package/dist/composite/carousel/elements/image.mjs +8 -14
- package/dist/composite/carousel/elements/image.mjs.map +1 -1
- package/dist/composite/carousel/elements/overlay.js +19 -2
- package/dist/composite/carousel/elements/overlay.js.map +1 -1
- package/dist/composite/carousel/elements/overlay.mjs +1 -1
- package/dist/composite/carousel/elements/overlay.mjs.map +1 -1
- package/dist/composite/carousel/image/multiple.d.ts.map +1 -1
- package/dist/composite/carousel/image/multiple.js +24 -12
- package/dist/composite/carousel/image/multiple.js.map +1 -1
- package/dist/composite/carousel/image/multiple.mjs +17 -6
- package/dist/composite/carousel/image/multiple.mjs.map +1 -1
- package/dist/composite/carousel/image/standard.d.ts.map +1 -1
- package/dist/composite/carousel/image/standard.js +44 -47
- package/dist/composite/carousel/image/standard.js.map +1 -1
- package/dist/composite/carousel/image/standard.mjs +19 -5
- package/dist/composite/carousel/image/standard.mjs.map +1 -1
- package/dist/composite/carousel/thumbnail/index.js +29 -12
- 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/controls.d.ts.map +1 -1
- package/dist/composite/carousel/wide/controls.js +40 -30
- package/dist/composite/carousel/wide/controls.js.map +1 -1
- package/dist/composite/carousel/wide/controls.mjs +39 -29
- package/dist/composite/carousel/wide/controls.mjs.map +1 -1
- package/dist/composite/carousel/wide/frames.js +44 -33
- package/dist/composite/carousel/wide/frames.js.map +1 -1
- package/dist/composite/carousel/wide/frames.mjs +43 -32
- package/dist/composite/carousel/wide/frames.mjs.map +1 -1
- package/dist/composite/carousel/wide/index.d.ts.map +1 -1
- package/dist/composite/carousel/wide/index.js +17 -6
- package/dist/composite/carousel/wide/index.js.map +1 -1
- package/dist/composite/carousel/wide/index.mjs +16 -5
- package/dist/composite/carousel/wide/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/call-to-action.d.ts +5 -4
- 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 +56 -37
- 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 +40 -37
- package/dist/composite/footer/elements/main-section/call-to-action.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.d.ts +3 -3
- package/dist/composite/footer/elements/main-section/campaign.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.js +57 -22
- package/dist/composite/footer/elements/main-section/campaign.js.map +1 -1
- package/dist/composite/footer/elements/main-section/campaign.mjs +40 -22
- package/dist/composite/footer/elements/main-section/campaign.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/index.d.ts +3 -2
- package/dist/composite/footer/elements/main-section/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/index.js +81 -94
- package/dist/composite/footer/elements/main-section/index.js.map +1 -1
- package/dist/composite/footer/elements/main-section/index.mjs +82 -95
- package/dist/composite/footer/elements/main-section/index.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/row-links/index.d.ts +5 -5
- 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 +44 -72
- 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 +48 -75
- 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 +5 -3
- 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 +178 -223
- 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 +180 -224
- 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 +5 -4
- 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 +165 -199
- 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 +166 -199
- 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 +6 -3
- 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 +54 -95
- 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 +59 -99
- 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 +4 -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 +78 -71
- 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 +64 -74
- package/dist/composite/footer/elements/main-section/row-logo/logo.mjs.map +1 -1
- package/dist/composite/footer/elements/main-section/social.d.ts +5 -6
- package/dist/composite/footer/elements/main-section/social.d.ts.map +1 -1
- package/dist/composite/footer/elements/main-section/social.js +128 -202
- package/dist/composite/footer/elements/main-section/social.js.map +1 -1
- package/dist/composite/footer/elements/main-section/social.mjs +130 -203
- package/dist/composite/footer/elements/main-section/social.mjs.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.d.ts +4 -2
- package/dist/composite/footer/elements/utility-section/index.d.ts.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.js +107 -116
- package/dist/composite/footer/elements/utility-section/index.js.map +1 -1
- package/dist/composite/footer/elements/utility-section/index.mjs +109 -117
- package/dist/composite/footer/elements/utility-section/index.mjs.map +1 -1
- package/dist/composite/footer/globals.d.ts +0 -32
- package/dist/composite/footer/globals.d.ts.map +1 -1
- package/dist/composite/footer/globals.js +0 -19
- package/dist/composite/footer/globals.js.map +1 -1
- package/dist/composite/footer/globals.mjs +1 -20
- package/dist/composite/footer/globals.mjs.map +1 -1
- package/dist/composite/footer/options.d.ts +1 -1
- package/dist/composite/footer/options.d.ts.map +1 -1
- package/dist/composite/footer/options.js +52 -30
- package/dist/composite/footer/options.js.map +1 -1
- package/dist/composite/footer/options.mjs +37 -33
- package/dist/composite/footer/options.mjs.map +1 -1
- package/dist/composite/hero/custom/expand.d.ts.map +1 -1
- package/dist/composite/hero/custom/expand.js +36 -25
- package/dist/composite/hero/custom/expand.js.map +1 -1
- package/dist/composite/hero/custom/expand.mjs +30 -19
- package/dist/composite/hero/custom/expand.mjs.map +1 -1
- package/dist/composite/hero/custom/grid.d.ts.map +1 -1
- package/dist/composite/hero/custom/grid.js +44 -31
- package/dist/composite/hero/custom/grid.js.map +1 -1
- package/dist/composite/hero/custom/grid.mjs +38 -25
- package/dist/composite/hero/custom/grid.mjs.map +1 -1
- package/dist/composite/hero/custom/video-arrow.d.ts.map +1 -1
- package/dist/composite/hero/custom/video-arrow.js +23 -15
- package/dist/composite/hero/custom/video-arrow.js.map +1 -1
- package/dist/composite/hero/custom/video-arrow.mjs +20 -14
- package/dist/composite/hero/custom/video-arrow.mjs.map +1 -1
- package/dist/composite/hero/logo.d.ts.map +1 -1
- package/dist/composite/hero/logo.js +28 -16
- package/dist/composite/hero/logo.js.map +1 -1
- package/dist/composite/hero/logo.mjs +26 -15
- package/dist/composite/hero/logo.mjs.map +1 -1
- package/dist/composite/hero/minimal.d.ts.map +1 -1
- package/dist/composite/hero/minimal.js +33 -22
- package/dist/composite/hero/minimal.js.map +1 -1
- package/dist/composite/hero/minimal.mjs +32 -21
- package/dist/composite/hero/minimal.mjs.map +1 -1
- package/dist/composite/hero/overlay.d.ts.map +1 -1
- package/dist/composite/hero/overlay.js +32 -21
- package/dist/composite/hero/overlay.js.map +1 -1
- package/dist/composite/hero/overlay.mjs +30 -20
- package/dist/composite/hero/overlay.mjs.map +1 -1
- package/dist/composite/hero/stacked.d.ts.map +1 -1
- package/dist/composite/hero/stacked.js +45 -34
- package/dist/composite/hero/stacked.js.map +1 -1
- package/dist/composite/hero/stacked.mjs +40 -30
- package/dist/composite/hero/stacked.mjs.map +1 -1
- package/dist/composite/hero/standard.d.ts.map +1 -1
- package/dist/composite/hero/standard.js +38 -27
- package/dist/composite/hero/standard.js.map +1 -1
- package/dist/composite/hero/standard.mjs +36 -26
- package/dist/composite/hero/standard.mjs.map +1 -1
- package/dist/composite/layout/box/logo.d.ts.map +1 -1
- package/dist/composite/layout/box/logo.js +33 -14
- package/dist/composite/layout/box/logo.js.map +1 -1
- package/dist/composite/layout/box/logo.mjs +5 -4
- package/dist/composite/layout/box/logo.mjs.map +1 -1
- package/dist/composite/layout/image/expand.d.ts.map +1 -1
- package/dist/composite/layout/image/expand.js +32 -13
- package/dist/composite/layout/image/expand.js.map +1 -1
- package/dist/composite/layout/image/expand.mjs +7 -6
- package/dist/composite/layout/image/expand.mjs.map +1 -1
- package/dist/composite/layout/scroll-top/index.d.ts.map +1 -1
- package/dist/composite/layout/scroll-top/index.js +25 -11
- package/dist/composite/layout/scroll-top/index.js.map +1 -1
- package/dist/composite/layout/scroll-top/index.mjs +4 -7
- package/dist/composite/layout/scroll-top/index.mjs.map +1 -1
- package/dist/composite/layout/section-intro/small.d.ts.map +1 -1
- package/dist/composite/layout/section-intro/small.js +33 -14
- package/dist/composite/layout/section-intro/small.js.map +1 -1
- package/dist/composite/layout/section-intro/small.mjs +2 -1
- package/dist/composite/layout/section-intro/small.mjs.map +1 -1
- package/dist/composite/layout/section-intro/wide.js +20 -3
- package/dist/composite/layout/section-intro/wide.js.map +1 -1
- package/dist/composite/layout/section-intro/wide.mjs +1 -1
- package/dist/composite/layout/section-intro/wide.mjs.map +1 -1
- package/dist/composite/layout/sticky-columns/index.d.ts.map +1 -1
- package/dist/composite/layout/sticky-columns/index.js +26 -8
- package/dist/composite/layout/sticky-columns/index.js.map +1 -1
- package/dist/composite/layout/sticky-columns/index.mjs +4 -4
- package/dist/composite/layout/sticky-columns/index.mjs.map +1 -1
- package/dist/composite/media/elements/caption.d.ts.map +1 -1
- package/dist/composite/media/elements/caption.js +28 -9
- package/dist/composite/media/elements/caption.js.map +1 -1
- package/dist/composite/media/elements/caption.mjs +5 -4
- package/dist/composite/media/elements/caption.mjs.map +1 -1
- package/dist/composite/media/elements/gif.js +15 -4
- package/dist/composite/media/elements/gif.js.map +1 -1
- package/dist/composite/media/elements/gif.mjs +15 -4
- package/dist/composite/media/elements/gif.mjs.map +1 -1
- package/dist/composite/media/inline/caption.js +21 -8
- package/dist/composite/media/inline/caption.js.map +1 -1
- package/dist/composite/media/inline/caption.mjs +2 -6
- package/dist/composite/media/inline/caption.mjs.map +1 -1
- package/dist/composite/media/inline/wrapped.js +23 -10
- package/dist/composite/media/inline/wrapped.js.map +1 -1
- package/dist/composite/media/inline/wrapped.mjs +2 -6
- package/dist/composite/media/inline/wrapped.mjs.map +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.d.ts.map +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.js +35 -16
- package/dist/composite/navigation/elements/breadcrumb/index.js.map +1 -1
- package/dist/composite/navigation/elements/breadcrumb/index.mjs +7 -6
- package/dist/composite/navigation/elements/breadcrumb/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/drawer/index.d.ts.map +1 -1
- package/dist/composite/navigation/elements/drawer/index.js +27 -13
- package/dist/composite/navigation/elements/drawer/index.js.map +1 -1
- package/dist/composite/navigation/elements/drawer/index.mjs +5 -8
- package/dist/composite/navigation/elements/drawer/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/item/index.d.ts.map +1 -1
- package/dist/composite/navigation/elements/item/index.js +47 -28
- package/dist/composite/navigation/elements/item/index.js.map +1 -1
- package/dist/composite/navigation/elements/item/index.mjs +13 -12
- package/dist/composite/navigation/elements/item/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/menu-button/index.js +20 -3
- 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.d.ts.map +1 -1
- package/dist/composite/navigation/elements/slider/action.js +32 -13
- package/dist/composite/navigation/elements/slider/action.js.map +1 -1
- package/dist/composite/navigation/elements/slider/action.mjs +6 -5
- package/dist/composite/navigation/elements/slider/action.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/index.d.ts.map +1 -1
- package/dist/composite/navigation/elements/slider/index.js +35 -21
- package/dist/composite/navigation/elements/slider/index.js.map +1 -1
- package/dist/composite/navigation/elements/slider/index.mjs +3 -6
- package/dist/composite/navigation/elements/slider/index.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.d.ts.map +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.js +29 -10
- package/dist/composite/navigation/elements/slider/slide-first.js.map +1 -1
- package/dist/composite/navigation/elements/slider/slide-first.mjs +4 -3
- package/dist/composite/navigation/elements/slider/slide-first.mjs.map +1 -1
- package/dist/composite/navigation/elements/slider/slides.d.ts.map +1 -1
- package/dist/composite/navigation/elements/slider/slides.js +38 -19
- package/dist/composite/navigation/elements/slider/slides.js.map +1 -1
- package/dist/composite/navigation/elements/slider/slides.mjs +8 -7
- package/dist/composite/navigation/elements/slider/slides.mjs.map +1 -1
- package/dist/composite/navigation/elements/sticky/index.js +2 -5
- package/dist/composite/navigation/elements/sticky/index.js.map +1 -1
- package/dist/composite/navigation/elements/sticky/index.mjs +1 -4
- package/dist/composite/navigation/elements/sticky/index.mjs.map +1 -1
- package/dist/composite/navigation/header.d.ts.map +1 -1
- package/dist/composite/navigation/header.js +55 -36
- package/dist/composite/navigation/header.js.map +1 -1
- package/dist/composite/navigation/header.mjs +9 -8
- package/dist/composite/navigation/header.mjs.map +1 -1
- package/dist/composite/navigation/utility/alert.d.ts.map +1 -1
- package/dist/composite/navigation/utility/alert.js +18 -9
- package/dist/composite/navigation/utility/alert.js.map +1 -1
- package/dist/composite/navigation/utility/alert.mjs +18 -9
- 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 +45 -41
- package/dist/composite/navigation/utility/index.js.map +1 -1
- package/dist/composite/navigation/utility/index.mjs +15 -13
- package/dist/composite/navigation/utility/index.mjs.map +1 -1
- package/dist/composite/navigation/utility/search.js +23 -6
- 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.js +14 -3
- package/dist/composite/pathway/_common.js.map +1 -1
- package/dist/composite/pathway/_common.mjs +14 -3
- package/dist/composite/pathway/_common.mjs.map +1 -1
- package/dist/composite/pathway/hero.js +29 -19
- package/dist/composite/pathway/hero.js.map +1 -1
- package/dist/composite/pathway/hero.mjs +26 -16
- package/dist/composite/pathway/hero.mjs.map +1 -1
- package/dist/composite/pathway/highlight.js +21 -21
- package/dist/composite/pathway/highlight.js.map +1 -1
- package/dist/composite/pathway/highlight.mjs +20 -20
- package/dist/composite/pathway/highlight.mjs.map +1 -1
- package/dist/composite/pathway/overlay.js +19 -20
- package/dist/composite/pathway/overlay.js.map +1 -1
- package/dist/composite/pathway/overlay.mjs +14 -16
- package/dist/composite/pathway/overlay.mjs.map +1 -1
- package/dist/composite/pathway/standard.js +12 -15
- package/dist/composite/pathway/standard.js.map +1 -1
- package/dist/composite/pathway/standard.mjs +9 -12
- package/dist/composite/pathway/standard.mjs.map +1 -1
- package/dist/composite/pathway/sticky.d.ts.map +1 -1
- package/dist/composite/pathway/sticky.js +12 -10
- package/dist/composite/pathway/sticky.js.map +1 -1
- package/dist/composite/pathway/sticky.mjs +10 -9
- package/dist/composite/pathway/sticky.mjs.map +1 -1
- package/dist/composite/person/bio/full.d.ts.map +1 -1
- package/dist/composite/person/bio/full.js +24 -13
- package/dist/composite/person/bio/full.js.map +1 -1
- package/dist/composite/person/bio/full.mjs +22 -12
- package/dist/composite/person/bio/full.mjs.map +1 -1
- package/dist/composite/person/bio/small.js +33 -23
- package/dist/composite/person/bio/small.js.map +1 -1
- package/dist/composite/person/bio/small.mjs +32 -22
- package/dist/composite/person/bio/small.mjs.map +1 -1
- package/dist/composite/person/block.d.ts.map +1 -1
- package/dist/composite/person/block.js +26 -21
- package/dist/composite/person/block.js.map +1 -1
- package/dist/composite/person/block.mjs +24 -19
- package/dist/composite/person/block.mjs.map +1 -1
- package/dist/composite/person/hero.d.ts.map +1 -1
- package/dist/composite/person/hero.js +70 -43
- package/dist/composite/person/hero.js.map +1 -1
- package/dist/composite/person/hero.mjs +14 -4
- package/dist/composite/person/hero.mjs.map +1 -1
- package/dist/composite/person/list.d.ts.map +1 -1
- package/dist/composite/person/list.js +28 -21
- package/dist/composite/person/list.js.map +1 -1
- package/dist/composite/person/list.mjs +27 -20
- package/dist/composite/person/list.mjs.map +1 -1
- package/dist/composite/person/tabular.js +22 -11
- package/dist/composite/person/tabular.js.map +1 -1
- package/dist/composite/person/tabular.mjs +21 -10
- package/dist/composite/person/tabular.mjs.map +1 -1
- package/dist/composite/quote/_constants.d.ts +3 -0
- package/dist/composite/quote/_constants.d.ts.map +1 -0
- package/dist/composite/quote/_constants.js +7 -0
- package/dist/composite/quote/_constants.js.map +1 -0
- package/dist/composite/quote/_constants.mjs +7 -0
- package/dist/composite/quote/_constants.mjs.map +1 -0
- package/dist/composite/quote/_types.d.ts +24 -0
- package/dist/composite/quote/_types.d.ts.map +1 -0
- package/dist/composite/quote/elements/action.d.ts +11 -0
- package/dist/composite/quote/elements/action.d.ts.map +1 -0
- package/dist/composite/quote/elements/action.js +46 -0
- package/dist/composite/quote/elements/action.js.map +1 -0
- package/dist/composite/quote/elements/action.mjs +29 -0
- package/dist/composite/quote/elements/action.mjs.map +1 -0
- package/dist/composite/quote/elements/icon.d.ts +10 -0
- package/dist/composite/quote/elements/icon.d.ts.map +1 -0
- package/dist/composite/quote/elements/icon.js +67 -0
- package/dist/composite/quote/elements/icon.js.map +1 -0
- package/dist/composite/quote/elements/icon.mjs +51 -0
- package/dist/composite/quote/elements/icon.mjs.map +1 -0
- package/dist/composite/quote/elements/image.d.ts +7 -10
- package/dist/composite/quote/elements/image.d.ts.map +1 -1
- package/dist/composite/quote/elements/image.js +71 -12
- package/dist/composite/quote/elements/image.js.map +1 -1
- package/dist/composite/quote/elements/image.mjs +54 -12
- package/dist/composite/quote/elements/image.mjs.map +1 -1
- package/dist/composite/quote/elements/index.d.ts +4 -24
- package/dist/composite/quote/elements/index.d.ts.map +1 -1
- package/dist/composite/quote/elements/index.js +7 -5
- package/dist/composite/quote/elements/index.js.map +1 -1
- package/dist/composite/quote/elements/index.mjs +8 -7
- package/dist/composite/quote/elements/index.mjs.map +1 -1
- package/dist/composite/quote/elements/text.d.ts +5 -20
- package/dist/composite/quote/elements/text.d.ts.map +1 -1
- package/dist/composite/quote/elements/text.js +217 -194
- package/dist/composite/quote/elements/text.js.map +1 -1
- package/dist/composite/quote/elements/text.mjs +199 -194
- package/dist/composite/quote/elements/text.mjs.map +1 -1
- package/dist/composite/quote/featured.d.ts +4 -8
- package/dist/composite/quote/featured.d.ts.map +1 -1
- package/dist/composite/quote/featured.js +195 -243
- package/dist/composite/quote/featured.js.map +1 -1
- package/dist/composite/quote/featured.mjs +177 -242
- package/dist/composite/quote/featured.mjs.map +1 -1
- package/dist/composite/quote/helper/animation.d.ts +8 -0
- package/dist/composite/quote/helper/animation.d.ts.map +1 -0
- package/dist/composite/quote/helper/animation.js +74 -0
- package/dist/composite/quote/helper/animation.js.map +1 -0
- package/dist/composite/quote/helper/animation.mjs +74 -0
- package/dist/composite/quote/helper/animation.mjs.map +1 -0
- package/dist/composite/quote/index.d.ts +1 -1
- package/dist/composite/quote/index.d.ts.map +1 -1
- package/dist/composite/quote/index.mjs +6 -6
- package/dist/composite/quote/inline.d.ts +4 -9
- package/dist/composite/quote/inline.d.ts.map +1 -1
- package/dist/composite/quote/inline.js +72 -271
- package/dist/composite/quote/inline.js.map +1 -1
- package/dist/composite/quote/inline.mjs +56 -272
- package/dist/composite/quote/inline.mjs.map +1 -1
- package/dist/composite/quote/statement.d.ts +5 -7
- package/dist/composite/quote/statement.d.ts.map +1 -1
- package/dist/composite/slider/events.d.ts.map +1 -1
- package/dist/composite/slider/events.js +60 -46
- package/dist/composite/slider/events.js.map +1 -1
- package/dist/composite/slider/events.mjs +12 -16
- package/dist/composite/slider/events.mjs.map +1 -1
- package/dist/composite/social/sharing.d.ts.map +1 -1
- package/dist/composite/social/sharing.js +38 -23
- package/dist/composite/social/sharing.js.map +1 -1
- package/dist/composite/social/sharing.mjs +9 -11
- 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 +44 -30
- package/dist/composite/tabs/standard.js.map +1 -1
- package/dist/composite/tabs/standard.mjs +9 -13
- 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.d.ts.map +1 -1
- package/dist/layout/image.js +25 -6
- package/dist/layout/image.js.map +1 -1
- package/dist/layout/image.mjs +4 -3
- package/dist/layout/image.mjs.map +1 -1
- package/dist/model/modifiers/index.d.ts +1 -1
- package/dist/model/modifiers/index.d.ts.map +1 -1
- package/dist/model/modifiers/index.js +12 -12
- package/dist/model/modifiers/index.js.map +1 -1
- package/dist/model/modifiers/index.mjs +2 -2
- package/dist/model/modifiers/index.mjs.map +1 -1
- package/dist/model/modifiers/style.js +7 -7
- package/dist/model/modifiers/style.js.map +1 -1
- package/dist/model/modifiers/style.mjs +2 -2
- package/dist/model/modifiers/style.mjs.map +1 -1
- package/package.json +17 -18
- package/dist/_virtual/___vite-browser-external.js +0 -8
- package/dist/_virtual/___vite-browser-external.js.map +0 -1
- package/dist/_virtual/___vite-browser-external.mjs +0 -7
- package/dist/_virtual/___vite-browser-external.mjs.map +0 -1
- package/dist/_virtual/__vite-browser-external.js +0 -4
- package/dist/_virtual/__vite-browser-external.js.map +0 -1
- package/dist/_virtual/__vite-browser-external.mjs +0 -5
- package/dist/_virtual/__vite-browser-external.mjs.map +0 -1
- package/dist/_virtual/_commonjsHelpers.js +0 -39
- package/dist/_virtual/_commonjsHelpers.js.map +0 -1
- package/dist/_virtual/_commonjsHelpers.mjs +0 -39
- package/dist/_virtual/_commonjsHelpers.mjs.map +0 -1
- package/dist/_virtual/attribute.js +0 -5
- package/dist/_virtual/attribute.js.map +0 -1
- package/dist/_virtual/attribute.mjs +0 -5
- package/dist/_virtual/attribute.mjs.map +0 -1
- package/dist/_virtual/className.js +0 -5
- package/dist/_virtual/className.js.map +0 -1
- package/dist/_virtual/className.mjs +0 -5
- package/dist/_virtual/className.mjs.map +0 -1
- package/dist/_virtual/combinator.js +0 -5
- package/dist/_virtual/combinator.js.map +0 -1
- package/dist/_virtual/combinator.mjs +0 -5
- package/dist/_virtual/combinator.mjs.map +0 -1
- package/dist/_virtual/comment.js +0 -5
- package/dist/_virtual/comment.js.map +0 -1
- package/dist/_virtual/comment.mjs +0 -5
- package/dist/_virtual/comment.mjs.map +0 -1
- package/dist/_virtual/constructors.js +0 -5
- package/dist/_virtual/constructors.js.map +0 -1
- package/dist/_virtual/constructors.mjs +0 -5
- package/dist/_virtual/constructors.mjs.map +0 -1
- package/dist/_virtual/container.js +0 -5
- package/dist/_virtual/container.js.map +0 -1
- package/dist/_virtual/container.mjs +0 -5
- package/dist/_virtual/container.mjs.map +0 -1
- package/dist/_virtual/ensureObject.js +0 -5
- package/dist/_virtual/ensureObject.js.map +0 -1
- package/dist/_virtual/ensureObject.mjs +0 -5
- package/dist/_virtual/ensureObject.mjs.map +0 -1
- package/dist/_virtual/getProp.js +0 -5
- package/dist/_virtual/getProp.js.map +0 -1
- package/dist/_virtual/getProp.mjs +0 -5
- package/dist/_virtual/getProp.mjs.map +0 -1
- package/dist/_virtual/guards.js +0 -5
- package/dist/_virtual/guards.js.map +0 -1
- package/dist/_virtual/guards.mjs +0 -5
- package/dist/_virtual/guards.mjs.map +0 -1
- package/dist/_virtual/id.js +0 -5
- package/dist/_virtual/id.js.map +0 -1
- package/dist/_virtual/id.mjs +0 -5
- package/dist/_virtual/id.mjs.map +0 -1
- package/dist/_virtual/index.js +0 -7
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/index.mjs +0 -8
- package/dist/_virtual/index.mjs.map +0 -1
- package/dist/_virtual/index2.js +0 -7
- package/dist/_virtual/index2.js.map +0 -1
- package/dist/_virtual/index2.mjs +0 -8
- package/dist/_virtual/index2.mjs.map +0 -1
- package/dist/_virtual/index3.js +0 -5
- package/dist/_virtual/index3.js.map +0 -1
- package/dist/_virtual/index3.mjs +0 -5
- package/dist/_virtual/index3.mjs.map +0 -1
- package/dist/_virtual/index4.js +0 -5
- package/dist/_virtual/index4.js.map +0 -1
- package/dist/_virtual/index4.mjs +0 -5
- package/dist/_virtual/index4.mjs.map +0 -1
- package/dist/_virtual/index5.js +0 -5
- package/dist/_virtual/index5.js.map +0 -1
- package/dist/_virtual/index5.mjs +0 -5
- package/dist/_virtual/index5.mjs.map +0 -1
- package/dist/_virtual/namespace.js +0 -5
- package/dist/_virtual/namespace.js.map +0 -1
- package/dist/_virtual/namespace.mjs +0 -5
- package/dist/_virtual/namespace.mjs.map +0 -1
- package/dist/_virtual/nesting.js +0 -5
- package/dist/_virtual/nesting.js.map +0 -1
- package/dist/_virtual/nesting.mjs +0 -5
- package/dist/_virtual/nesting.mjs.map +0 -1
- package/dist/_virtual/node.js +0 -5
- package/dist/_virtual/node.js.map +0 -1
- package/dist/_virtual/node.mjs +0 -5
- package/dist/_virtual/node.mjs.map +0 -1
- package/dist/_virtual/parser.js +0 -5
- package/dist/_virtual/parser.js.map +0 -1
- package/dist/_virtual/parser.mjs +0 -5
- package/dist/_virtual/parser.mjs.map +0 -1
- package/dist/_virtual/picocolors.browser.js +0 -5
- package/dist/_virtual/picocolors.browser.js.map +0 -1
- package/dist/_virtual/picocolors.browser.mjs +0 -5
- package/dist/_virtual/picocolors.browser.mjs.map +0 -1
- package/dist/_virtual/postcss.js +0 -7
- package/dist/_virtual/postcss.js.map +0 -1
- package/dist/_virtual/postcss.mjs +0 -8
- package/dist/_virtual/postcss.mjs.map +0 -1
- package/dist/_virtual/processor.js +0 -5
- package/dist/_virtual/processor.js.map +0 -1
- package/dist/_virtual/processor.mjs +0 -5
- package/dist/_virtual/processor.mjs.map +0 -1
- package/dist/_virtual/pseudo.js +0 -5
- package/dist/_virtual/pseudo.js.map +0 -1
- package/dist/_virtual/pseudo.mjs +0 -5
- package/dist/_virtual/pseudo.mjs.map +0 -1
- package/dist/_virtual/root.js +0 -5
- package/dist/_virtual/root.js.map +0 -1
- package/dist/_virtual/root.mjs +0 -5
- package/dist/_virtual/root.mjs.map +0 -1
- package/dist/_virtual/selector.js +0 -5
- package/dist/_virtual/selector.js.map +0 -1
- package/dist/_virtual/selector.mjs +0 -5
- package/dist/_virtual/selector.mjs.map +0 -1
- package/dist/_virtual/sortAscending.js +0 -5
- package/dist/_virtual/sortAscending.js.map +0 -1
- package/dist/_virtual/sortAscending.mjs +0 -5
- package/dist/_virtual/sortAscending.mjs.map +0 -1
- package/dist/_virtual/string.js +0 -5
- package/dist/_virtual/string.js.map +0 -1
- package/dist/_virtual/string.mjs +0 -5
- package/dist/_virtual/string.mjs.map +0 -1
- package/dist/_virtual/stripComments.js +0 -5
- package/dist/_virtual/stripComments.js.map +0 -1
- package/dist/_virtual/stripComments.mjs +0 -5
- package/dist/_virtual/stripComments.mjs.map +0 -1
- package/dist/_virtual/symbols.js +0 -5
- package/dist/_virtual/symbols.js.map +0 -1
- package/dist/_virtual/symbols.mjs +0 -5
- package/dist/_virtual/symbols.mjs.map +0 -1
- package/dist/_virtual/tag.js +0 -5
- package/dist/_virtual/tag.js.map +0 -1
- package/dist/_virtual/tag.mjs +0 -5
- package/dist/_virtual/tag.mjs.map +0 -1
- package/dist/_virtual/tokenTypes.js +0 -5
- package/dist/_virtual/tokenTypes.js.map +0 -1
- package/dist/_virtual/tokenTypes.mjs +0 -5
- package/dist/_virtual/tokenTypes.mjs.map +0 -1
- package/dist/_virtual/tokenize.js +0 -5
- package/dist/_virtual/tokenize.js.map +0 -1
- package/dist/_virtual/tokenize.mjs +0 -5
- package/dist/_virtual/tokenize.mjs.map +0 -1
- package/dist/_virtual/types.js +0 -5
- package/dist/_virtual/types.js.map +0 -1
- package/dist/_virtual/types.mjs +0 -5
- package/dist/_virtual/types.mjs.map +0 -1
- package/dist/_virtual/unesc.js +0 -5
- package/dist/_virtual/unesc.js.map +0 -1
- package/dist/_virtual/unesc.mjs +0 -5
- package/dist/_virtual/unesc.mjs.map +0 -1
- package/dist/_virtual/universal.js +0 -5
- package/dist/_virtual/universal.js.map +0 -1
- package/dist/_virtual/universal.mjs +0 -5
- package/dist/_virtual/universal.mjs.map +0 -1
- package/dist/node_modules/@csstools/selector-specificity/dist/index.js +0 -96
- package/dist/node_modules/@csstools/selector-specificity/dist/index.js.map +0 -1
- package/dist/node_modules/@csstools/selector-specificity/dist/index.mjs +0 -96
- package/dist/node_modules/@csstools/selector-specificity/dist/index.mjs.map +0 -1
- package/dist/node_modules/camelcase-css/index-es5.js +0 -26
- package/dist/node_modules/camelcase-css/index-es5.js.map +0 -1
- package/dist/node_modules/camelcase-css/index-es5.mjs +0 -26
- package/dist/node_modules/camelcase-css/index-es5.mjs.map +0 -1
- package/dist/node_modules/cssesc/cssesc.js +0 -95
- package/dist/node_modules/cssesc/cssesc.js.map +0 -1
- package/dist/node_modules/cssesc/cssesc.mjs +0 -95
- package/dist/node_modules/cssesc/cssesc.mjs.map +0 -1
- package/dist/node_modules/nanoid/non-secure/index.js +0 -31
- package/dist/node_modules/nanoid/non-secure/index.js.map +0 -1
- package/dist/node_modules/nanoid/non-secure/index.mjs +0 -31
- package/dist/node_modules/nanoid/non-secure/index.mjs.map +0 -1
- package/dist/node_modules/picocolors/picocolors.browser.js +0 -17
- package/dist/node_modules/picocolors/picocolors.browser.js.map +0 -1
- package/dist/node_modules/picocolors/picocolors.browser.mjs +0 -17
- package/dist/node_modules/picocolors/picocolors.browser.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/at-rule.js +0 -30
- package/dist/node_modules/postcss/lib/at-rule.js.map +0 -1
- package/dist/node_modules/postcss/lib/at-rule.mjs +0 -30
- package/dist/node_modules/postcss/lib/at-rule.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/comment.js +0 -21
- package/dist/node_modules/postcss/lib/comment.js.map +0 -1
- package/dist/node_modules/postcss/lib/comment.mjs +0 -21
- package/dist/node_modules/postcss/lib/comment.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/container.js +0 -383
- package/dist/node_modules/postcss/lib/container.js.map +0 -1
- package/dist/node_modules/postcss/lib/container.mjs +0 -383
- package/dist/node_modules/postcss/lib/container.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/css-syntax-error.js +0 -92
- package/dist/node_modules/postcss/lib/css-syntax-error.js.map +0 -1
- package/dist/node_modules/postcss/lib/css-syntax-error.mjs +0 -92
- package/dist/node_modules/postcss/lib/css-syntax-error.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/declaration.js +0 -27
- package/dist/node_modules/postcss/lib/declaration.js.map +0 -1
- package/dist/node_modules/postcss/lib/declaration.mjs +0 -27
- package/dist/node_modules/postcss/lib/declaration.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/document.js +0 -34
- package/dist/node_modules/postcss/lib/document.js.map +0 -1
- package/dist/node_modules/postcss/lib/document.mjs +0 -34
- package/dist/node_modules/postcss/lib/document.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/fromJSON.js +0 -67
- package/dist/node_modules/postcss/lib/fromJSON.js.map +0 -1
- package/dist/node_modules/postcss/lib/fromJSON.mjs +0 -67
- package/dist/node_modules/postcss/lib/fromJSON.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/input.js +0 -216
- package/dist/node_modules/postcss/lib/input.js.map +0 -1
- package/dist/node_modules/postcss/lib/input.mjs +0 -216
- package/dist/node_modules/postcss/lib/input.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/lazy-result.js +0 -467
- package/dist/node_modules/postcss/lib/lazy-result.js.map +0 -1
- package/dist/node_modules/postcss/lib/lazy-result.mjs +0 -467
- package/dist/node_modules/postcss/lib/lazy-result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/list.js +0 -60
- package/dist/node_modules/postcss/lib/list.js.map +0 -1
- package/dist/node_modules/postcss/lib/list.mjs +0 -60
- package/dist/node_modules/postcss/lib/list.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/map-generator.js +0 -314
- package/dist/node_modules/postcss/lib/map-generator.js.map +0 -1
- package/dist/node_modules/postcss/lib/map-generator.mjs +0 -314
- package/dist/node_modules/postcss/lib/map-generator.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/no-work-result.js +0 -113
- package/dist/node_modules/postcss/lib/no-work-result.js.map +0 -1
- package/dist/node_modules/postcss/lib/no-work-result.mjs +0 -113
- package/dist/node_modules/postcss/lib/no-work-result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/node.js +0 -335
- package/dist/node_modules/postcss/lib/node.js.map +0 -1
- package/dist/node_modules/postcss/lib/node.mjs +0 -335
- package/dist/node_modules/postcss/lib/node.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/parse.js +0 -30
- package/dist/node_modules/postcss/lib/parse.js.map +0 -1
- package/dist/node_modules/postcss/lib/parse.mjs +0 -30
- package/dist/node_modules/postcss/lib/parse.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/parser.js +0 -543
- package/dist/node_modules/postcss/lib/parser.js.map +0 -1
- package/dist/node_modules/postcss/lib/parser.mjs +0 -543
- package/dist/node_modules/postcss/lib/parser.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/postcss.js +0 -28
- package/dist/node_modules/postcss/lib/postcss.js.map +0 -1
- package/dist/node_modules/postcss/lib/postcss.mjs +0 -29
- package/dist/node_modules/postcss/lib/postcss.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/postcss2.js +0 -110
- package/dist/node_modules/postcss/lib/postcss2.js.map +0 -1
- package/dist/node_modules/postcss/lib/postcss2.mjs +0 -110
- package/dist/node_modules/postcss/lib/postcss2.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/previous-map.js +0 -123
- package/dist/node_modules/postcss/lib/previous-map.js.map +0 -1
- package/dist/node_modules/postcss/lib/previous-map.mjs +0 -123
- package/dist/node_modules/postcss/lib/previous-map.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/processor.js +0 -61
- package/dist/node_modules/postcss/lib/processor.js.map +0 -1
- package/dist/node_modules/postcss/lib/processor.mjs +0 -61
- package/dist/node_modules/postcss/lib/processor.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/result.js +0 -44
- package/dist/node_modules/postcss/lib/result.js.map +0 -1
- package/dist/node_modules/postcss/lib/result.mjs +0 -44
- package/dist/node_modules/postcss/lib/result.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/root.js +0 -58
- package/dist/node_modules/postcss/lib/root.js.map +0 -1
- package/dist/node_modules/postcss/lib/root.mjs +0 -58
- package/dist/node_modules/postcss/lib/root.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/rule.js +0 -33
- package/dist/node_modules/postcss/lib/rule.js.map +0 -1
- package/dist/node_modules/postcss/lib/rule.mjs +0 -33
- package/dist/node_modules/postcss/lib/rule.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/stringifier.js +0 -308
- package/dist/node_modules/postcss/lib/stringifier.js.map +0 -1
- package/dist/node_modules/postcss/lib/stringifier.mjs +0 -308
- package/dist/node_modules/postcss/lib/stringifier.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/stringify.js +0 -19
- package/dist/node_modules/postcss/lib/stringify.js.map +0 -1
- package/dist/node_modules/postcss/lib/stringify.mjs +0 -19
- package/dist/node_modules/postcss/lib/stringify.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/symbols.js +0 -13
- package/dist/node_modules/postcss/lib/symbols.js.map +0 -1
- package/dist/node_modules/postcss/lib/symbols.mjs +0 -13
- package/dist/node_modules/postcss/lib/symbols.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/tokenize.js +0 -219
- package/dist/node_modules/postcss/lib/tokenize.js.map +0 -1
- package/dist/node_modules/postcss/lib/tokenize.mjs +0 -219
- package/dist/node_modules/postcss/lib/tokenize.mjs.map +0 -1
- package/dist/node_modules/postcss/lib/warning.js +0 -40
- package/dist/node_modules/postcss/lib/warning.js.map +0 -1
- package/dist/node_modules/postcss/lib/warning.mjs +0 -40
- package/dist/node_modules/postcss/lib/warning.mjs.map +0 -1
- package/dist/node_modules/postcss-js/async.js +0 -27
- package/dist/node_modules/postcss-js/async.js.map +0 -1
- package/dist/node_modules/postcss-js/async.mjs +0 -27
- package/dist/node_modules/postcss-js/async.mjs.map +0 -1
- package/dist/node_modules/postcss-js/index.js +0 -8
- package/dist/node_modules/postcss-js/index.js.map +0 -1
- package/dist/node_modules/postcss-js/index.mjs +0 -9
- package/dist/node_modules/postcss-js/index.mjs.map +0 -1
- package/dist/node_modules/postcss-js/index2.js +0 -25
- package/dist/node_modules/postcss-js/index2.js.map +0 -1
- package/dist/node_modules/postcss-js/index2.mjs +0 -25
- package/dist/node_modules/postcss-js/index2.mjs.map +0 -1
- package/dist/node_modules/postcss-js/objectifier.js +0 -92
- package/dist/node_modules/postcss-js/objectifier.js.map +0 -1
- package/dist/node_modules/postcss-js/objectifier.mjs +0 -92
- package/dist/node_modules/postcss-js/objectifier.mjs.map +0 -1
- package/dist/node_modules/postcss-js/parser.js +0 -102
- package/dist/node_modules/postcss-js/parser.js.map +0 -1
- package/dist/node_modules/postcss-js/parser.mjs +0 -102
- package/dist/node_modules/postcss-js/parser.mjs.map +0 -1
- package/dist/node_modules/postcss-js/process-result.js +0 -22
- package/dist/node_modules/postcss-js/process-result.js.map +0 -1
- package/dist/node_modules/postcss-js/process-result.mjs +0 -22
- package/dist/node_modules/postcss-js/process-result.mjs.map +0 -1
- package/dist/node_modules/postcss-js/sync.js +0 -24
- package/dist/node_modules/postcss-js/sync.js.map +0 -1
- package/dist/node_modules/postcss-js/sync.mjs +0 -24
- package/dist/node_modules/postcss-js/sync.mjs.map +0 -1
- package/dist/node_modules/postcss-nesting/dist/index.js +0 -267
- package/dist/node_modules/postcss-nesting/dist/index.js.map +0 -1
- package/dist/node_modules/postcss-nesting/dist/index.mjs +0 -268
- package/dist/node_modules/postcss-nesting/dist/index.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/index.js +0 -67
- package/dist/node_modules/postcss-selector-parser/dist/index.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/index.mjs +0 -67
- package/dist/node_modules/postcss-selector-parser/dist/index.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/parser.js +0 -1038
- package/dist/node_modules/postcss-selector-parser/dist/parser.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/parser.mjs +0 -1038
- package/dist/node_modules/postcss-selector-parser/dist/parser.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/processor.js +0 -137
- package/dist/node_modules/postcss-selector-parser/dist/processor.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/processor.mjs +0 -137
- package/dist/node_modules/postcss-selector-parser/dist/processor.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/attribute.js +0 -404
- package/dist/node_modules/postcss-selector-parser/dist/selectors/attribute.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/attribute.mjs +0 -404
- package/dist/node_modules/postcss-selector-parser/dist/selectors/attribute.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/className.js +0 -89
- package/dist/node_modules/postcss-selector-parser/dist/selectors/className.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/className.mjs +0 -89
- package/dist/node_modules/postcss-selector-parser/dist/selectors/className.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/combinator.js +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/combinator.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/combinator.mjs +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/combinator.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/comment.js +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/comment.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/comment.mjs +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/comment.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/constructors.js +0 -88
- package/dist/node_modules/postcss-selector-parser/dist/selectors/constructors.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/constructors.mjs +0 -88
- package/dist/node_modules/postcss-selector-parser/dist/selectors/constructors.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/container.js +0 -391
- package/dist/node_modules/postcss-selector-parser/dist/selectors/container.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/container.mjs +0 -391
- package/dist/node_modules/postcss-selector-parser/dist/selectors/container.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/guards.js +0 -68
- package/dist/node_modules/postcss-selector-parser/dist/selectors/guards.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/guards.mjs +0 -68
- package/dist/node_modules/postcss-selector-parser/dist/selectors/guards.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/id.js +0 -50
- package/dist/node_modules/postcss-selector-parser/dist/selectors/id.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/id.mjs +0 -50
- package/dist/node_modules/postcss-selector-parser/dist/selectors/id.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/index.js +0 -35
- package/dist/node_modules/postcss-selector-parser/dist/selectors/index.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/index.mjs +0 -35
- package/dist/node_modules/postcss-selector-parser/dist/selectors/index.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/namespace.js +0 -117
- package/dist/node_modules/postcss-selector-parser/dist/selectors/namespace.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/namespace.mjs +0 -117
- package/dist/node_modules/postcss-selector-parser/dist/selectors/namespace.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/nesting.js +0 -47
- package/dist/node_modules/postcss-selector-parser/dist/selectors/nesting.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/nesting.mjs +0 -47
- package/dist/node_modules/postcss-selector-parser/dist/selectors/nesting.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/node.js +0 -183
- package/dist/node_modules/postcss-selector-parser/dist/selectors/node.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/node.mjs +0 -183
- package/dist/node_modules/postcss-selector-parser/dist/selectors/node.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/pseudo.js +0 -51
- package/dist/node_modules/postcss-selector-parser/dist/selectors/pseudo.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/pseudo.mjs +0 -51
- package/dist/node_modules/postcss-selector-parser/dist/selectors/pseudo.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/root.js +0 -81
- package/dist/node_modules/postcss-selector-parser/dist/selectors/root.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/root.mjs +0 -81
- package/dist/node_modules/postcss-selector-parser/dist/selectors/root.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/selector.js +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/selector.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/selector.mjs +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/selector.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/string.js +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/string.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/string.mjs +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/string.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/tag.js +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/tag.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/tag.mjs +0 -46
- package/dist/node_modules/postcss-selector-parser/dist/selectors/tag.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/types.js +0 -37
- package/dist/node_modules/postcss-selector-parser/dist/selectors/types.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/types.mjs +0 -37
- package/dist/node_modules/postcss-selector-parser/dist/selectors/types.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/universal.js +0 -47
- package/dist/node_modules/postcss-selector-parser/dist/selectors/universal.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/selectors/universal.mjs +0 -47
- package/dist/node_modules/postcss-selector-parser/dist/selectors/universal.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/sortAscending.js +0 -21
- package/dist/node_modules/postcss-selector-parser/dist/sortAscending.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/sortAscending.mjs +0 -21
- package/dist/node_modules/postcss-selector-parser/dist/sortAscending.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/tokenTypes.js +0 -75
- package/dist/node_modules/postcss-selector-parser/dist/tokenTypes.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/tokenTypes.mjs +0 -75
- package/dist/node_modules/postcss-selector-parser/dist/tokenTypes.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/tokenize.js +0 -264
- package/dist/node_modules/postcss-selector-parser/dist/tokenize.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/tokenize.mjs +0 -264
- package/dist/node_modules/postcss-selector-parser/dist/tokenize.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/ensureObject.js +0 -28
- package/dist/node_modules/postcss-selector-parser/dist/util/ensureObject.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/ensureObject.mjs +0 -28
- package/dist/node_modules/postcss-selector-parser/dist/util/ensureObject.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/getProp.js +0 -29
- package/dist/node_modules/postcss-selector-parser/dist/util/getProp.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/getProp.mjs +0 -29
- package/dist/node_modules/postcss-selector-parser/dist/util/getProp.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/index.js +0 -28
- package/dist/node_modules/postcss-selector-parser/dist/util/index.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/index.mjs +0 -28
- package/dist/node_modules/postcss-selector-parser/dist/util/index.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/stripComments.js +0 -32
- package/dist/node_modules/postcss-selector-parser/dist/util/stripComments.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/stripComments.mjs +0 -32
- package/dist/node_modules/postcss-selector-parser/dist/util/stripComments.mjs.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/unesc.js +0 -68
- package/dist/node_modules/postcss-selector-parser/dist/util/unesc.js.map +0 -1
- package/dist/node_modules/postcss-selector-parser/dist/util/unesc.mjs +0 -68
- package/dist/node_modules/postcss-selector-parser/dist/util/unesc.mjs.map +0 -1
- package/dist/node_modules/util-deprecate/browser.js +0 -43
- package/dist/node_modules/util-deprecate/browser.js.map +0 -1
- package/dist/node_modules/util-deprecate/browser.mjs +0 -43
- package/dist/node_modules/util-deprecate/browser.mjs.map +0 -1
- package/dist/utilities/accessibility/index.d.ts +0 -13
- package/dist/utilities/accessibility/index.d.ts.map +0 -1
- package/dist/utilities/accessibility/index.js +0 -89
- package/dist/utilities/accessibility/index.js.map +0 -1
- package/dist/utilities/accessibility/index.mjs +0 -89
- package/dist/utilities/accessibility/index.mjs.map +0 -1
- package/dist/utilities/assets/icons.d.ts +0 -26
- package/dist/utilities/assets/icons.d.ts.map +0 -1
- package/dist/utilities/assets/icons.js +0 -53
- package/dist/utilities/assets/icons.js.map +0 -1
- package/dist/utilities/assets/icons.mjs +0 -53
- package/dist/utilities/assets/icons.mjs.map +0 -1
- package/dist/utilities/assets/index.d.ts +0 -4
- package/dist/utilities/assets/index.d.ts.map +0 -1
- package/dist/utilities/assets/index.js +0 -9
- package/dist/utilities/assets/index.js.map +0 -1
- package/dist/utilities/assets/index.mjs +0 -9
- package/dist/utilities/assets/index.mjs.map +0 -1
- package/dist/utilities/assets/logos.d.ts +0 -6
- package/dist/utilities/assets/logos.d.ts.map +0 -1
- package/dist/utilities/assets/logos.js +0 -14
- package/dist/utilities/assets/logos.js.map +0 -1
- package/dist/utilities/assets/logos.mjs +0 -14
- package/dist/utilities/assets/logos.mjs.map +0 -1
- package/dist/utilities/assets/social.d.ts +0 -8
- package/dist/utilities/assets/social.d.ts.map +0 -1
- package/dist/utilities/assets/social.js +0 -17
- package/dist/utilities/assets/social.js.map +0 -1
- package/dist/utilities/assets/social.mjs +0 -17
- package/dist/utilities/assets/social.mjs.map +0 -1
- package/dist/utilities/date.d.ts +0 -12
- package/dist/utilities/date.d.ts.map +0 -1
- package/dist/utilities/date.js +0 -36
- package/dist/utilities/date.js.map +0 -1
- package/dist/utilities/date.mjs +0 -36
- package/dist/utilities/date.mjs.map +0 -1
- package/dist/utilities/index.d.ts +0 -10
- package/dist/utilities/index.d.ts.map +0 -1
- package/dist/utilities/js-events/index.d.ts +0 -5
- package/dist/utilities/js-events/index.d.ts.map +0 -1
- package/dist/utilities/js-events/index.js +0 -37
- package/dist/utilities/js-events/index.js.map +0 -1
- package/dist/utilities/js-events/index.mjs +0 -37
- package/dist/utilities/js-events/index.mjs.map +0 -1
- package/dist/utilities/markup/create.d.ts +0 -13
- package/dist/utilities/markup/create.d.ts.map +0 -1
- package/dist/utilities/markup/create.js +0 -95
- package/dist/utilities/markup/create.js.map +0 -1
- package/dist/utilities/markup/create.mjs +0 -95
- package/dist/utilities/markup/create.mjs.map +0 -1
- package/dist/utilities/markup/get.d.ts +0 -4
- package/dist/utilities/markup/get.d.ts.map +0 -1
- package/dist/utilities/markup/get.js +0 -18
- package/dist/utilities/markup/get.js.map +0 -1
- package/dist/utilities/markup/get.mjs +0 -18
- package/dist/utilities/markup/get.mjs.map +0 -1
- package/dist/utilities/markup/index.d.ts +0 -5
- package/dist/utilities/markup/index.d.ts.map +0 -1
- package/dist/utilities/markup/index.js +0 -11
- package/dist/utilities/markup/index.js.map +0 -1
- package/dist/utilities/markup/index.mjs +0 -11
- package/dist/utilities/markup/index.mjs.map +0 -1
- package/dist/utilities/markup/locate.d.ts +0 -5
- package/dist/utilities/markup/locate.d.ts.map +0 -1
- package/dist/utilities/markup/locate.js +0 -26
- package/dist/utilities/markup/locate.js.map +0 -1
- package/dist/utilities/markup/locate.mjs +0 -26
- package/dist/utilities/markup/locate.mjs.map +0 -1
- package/dist/utilities/markup/modify.d.ts +0 -21
- package/dist/utilities/markup/modify.d.ts.map +0 -1
- package/dist/utilities/markup/modify.js +0 -93
- package/dist/utilities/markup/modify.js.map +0 -1
- package/dist/utilities/markup/modify.mjs +0 -93
- package/dist/utilities/markup/modify.mjs.map +0 -1
- package/dist/utilities/network/index.d.ts +0 -10
- package/dist/utilities/network/index.d.ts.map +0 -1
- package/dist/utilities/network/index.js +0 -35
- package/dist/utilities/network/index.js.map +0 -1
- package/dist/utilities/network/index.mjs +0 -35
- package/dist/utilities/network/index.mjs.map +0 -1
- package/dist/utilities/performance/index.d.ts +0 -2
- package/dist/utilities/performance/index.d.ts.map +0 -1
- package/dist/utilities/performance/index.js +0 -12
- package/dist/utilities/performance/index.js.map +0 -1
- package/dist/utilities/performance/index.mjs +0 -12
- package/dist/utilities/performance/index.mjs.map +0 -1
- package/dist/utilities/storage/index.d.ts +0 -2
- package/dist/utilities/storage/index.d.ts.map +0 -1
- package/dist/utilities/storage/index.js +0 -5
- package/dist/utilities/storage/index.js.map +0 -1
- package/dist/utilities/storage/index.mjs +0 -5
- package/dist/utilities/storage/index.mjs.map +0 -1
- package/dist/utilities/storage/local.d.ts +0 -7
- package/dist/utilities/storage/local.d.ts.map +0 -1
- package/dist/utilities/storage/local.js +0 -14
- package/dist/utilities/storage/local.js.map +0 -1
- package/dist/utilities/storage/local.mjs +0 -14
- package/dist/utilities/storage/local.mjs.map +0 -1
- package/dist/utilities/theme/animations.d.ts +0 -9
- package/dist/utilities/theme/animations.d.ts.map +0 -1
- package/dist/utilities/theme/animations.js +0 -70
- package/dist/utilities/theme/animations.js.map +0 -1
- package/dist/utilities/theme/animations.mjs +0 -70
- package/dist/utilities/theme/animations.mjs.map +0 -1
- package/dist/utilities/theme/assets.d.ts +0 -6
- package/dist/utilities/theme/assets.d.ts.map +0 -1
- package/dist/utilities/theme/assets.js +0 -17
- package/dist/utilities/theme/assets.js.map +0 -1
- package/dist/utilities/theme/assets.mjs +0 -17
- package/dist/utilities/theme/assets.mjs.map +0 -1
- package/dist/utilities/theme/index.d.ts +0 -11
- package/dist/utilities/theme/index.d.ts.map +0 -1
- package/dist/utilities/theme/index.js +0 -28
- package/dist/utilities/theme/index.js.map +0 -1
- package/dist/utilities/theme/index.mjs +0 -28
- package/dist/utilities/theme/index.mjs.map +0 -1
- package/dist/utilities/theme/media.d.ts +0 -12
- package/dist/utilities/theme/media.d.ts.map +0 -1
- package/dist/utilities/theme/media.js +0 -21
- package/dist/utilities/theme/media.js.map +0 -1
- package/dist/utilities/theme/media.mjs +0 -21
- package/dist/utilities/theme/media.mjs.map +0 -1
- package/dist/utilities.d.ts +0 -2
- package/dist/utilities.js +0 -21
- package/dist/utilities.js.map +0 -1
- package/dist/utilities.mjs +0 -21
- package/dist/utilities.mjs.map +0 -1
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import "
|
|
6
|
-
import "../../node_modules/postcss-nesting/dist/index.mjs";
|
|
7
|
-
import "../../node_modules/postcss-js/index.mjs";
|
|
1
|
+
import * as token from "@universityofmaryland/web-styles-library/token";
|
|
2
|
+
import { debounce } from "@universityofmaryland/web-utilities-library/performance";
|
|
3
|
+
import { facebook, x } from "@universityofmaryland/web-icons-library/social";
|
|
4
|
+
import { email } from "@universityofmaryland/web-icons-library/communication";
|
|
5
|
+
import { print } from "@universityofmaryland/web-icons-library/controls";
|
|
8
6
|
const ATTRIBUTE_FIXED = "fixed";
|
|
9
7
|
const IS_FIXED = `[${ATTRIBUTE_FIXED}]`;
|
|
10
8
|
const ELEMENT_NAME = "umd-element-social-sharing";
|
|
@@ -86,7 +84,7 @@ const STYLES_SOCIAL_SHARING_ELEMENT = `
|
|
|
86
84
|
`;
|
|
87
85
|
const CreateFacebook = () => {
|
|
88
86
|
const button = document.createElement("button");
|
|
89
|
-
button.innerHTML =
|
|
87
|
+
button.innerHTML = facebook;
|
|
90
88
|
button.setAttribute("aria-label", "share this page on facebook");
|
|
91
89
|
button.addEventListener("click", () => {
|
|
92
90
|
const shareURL = `http://www.facebook.com/share.php?u=${encodeURIComponent(
|
|
@@ -102,7 +100,7 @@ const CreateFacebook = () => {
|
|
|
102
100
|
};
|
|
103
101
|
const CreateTwitter = ({ url, title }) => {
|
|
104
102
|
const button = document.createElement("button");
|
|
105
|
-
button.innerHTML =
|
|
103
|
+
button.innerHTML = x;
|
|
106
104
|
button.setAttribute("aria-label", "share this page on twitter");
|
|
107
105
|
button.addEventListener("click", () => {
|
|
108
106
|
const shareURL = `http://twitter.com/share?url=${url}&text=${title}`;
|
|
@@ -115,12 +113,12 @@ const CreateEmail = ({ url, title }) => {
|
|
|
115
113
|
link.href = `mailto:?subject=${title}&body=${url}`;
|
|
116
114
|
link.setAttribute("aria-label", "email this page");
|
|
117
115
|
link.setAttribute("target", "_blank");
|
|
118
|
-
link.innerHTML =
|
|
116
|
+
link.innerHTML = email;
|
|
119
117
|
return link;
|
|
120
118
|
};
|
|
121
119
|
const CreatePrint = () => {
|
|
122
120
|
const button = document.createElement("button");
|
|
123
|
-
button.innerHTML =
|
|
121
|
+
button.innerHTML = print;
|
|
124
122
|
button.setAttribute("aria-label", "print this page");
|
|
125
123
|
button.addEventListener("click", () => window.print());
|
|
126
124
|
return button;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharing.mjs","sources":["../../../source/composite/social/sharing.ts"],"sourcesContent":["import { token } from '@universityofmaryland/web-styles-library';\nimport * as Utility from 'utilities';\n\ntype TypeSocialSharingProps = {\n isFixed?: boolean;\n includeFacebook?: boolean;\n includeTwitter?: boolean;\n includeEmail?: boolean;\n includePrint?: boolean;\n title?: string | null;\n url?: string | null;\n};\n\nconst ATTRIBUTE_FIXED = 'fixed';\n\nconst IS_FIXED = `[${ATTRIBUTE_FIXED}]`;\n\nconst ELEMENT_NAME = 'umd-element-social-sharing';\nconst ELEMENT_SOCIAL_SHARING_DECLARATION = 'social-sharing-declarion';\nconst ELEMENT_SOCIAL_SHARING_CONTAINER = 'social-sharing-container';\n\nconst OVERWRITE_FIXED_CONTAINER = `.${ELEMENT_SOCIAL_SHARING_CONTAINER}${IS_FIXED}`;\n\n// prettier-ignore\nconst OverwriteFixed = `\n @media (${token.media.queries.tablet.min}) {\n ${OVERWRITE_FIXED_CONTAINER} {\n flex-direction: column;\n }\n }\n\n @media (${token.media.queries.tablet.min}) {\n ${OVERWRITE_FIXED_CONTAINER} > *:not(:last-child) {\n border-right: 1px solid ${token.color.gray.light};\n border-bottom: none;\n }\n }\n`\n\n// prettier-ignore\nconst ContainerStyles = `\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} {\n display: flex;\n transition: transform 250ms ease-in-out;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > * {\n height: ${token.spacing['2xl']};\n width: ${token.spacing['2xl']};\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid ${token.color.gray.light};\n background-color: ${token.color.white};\n transition: background-color 250ms ease-in-out;\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > button:hover,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > button:focus,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > a:hover,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > a:focus {\n background-color: ${token.color.gray.dark};\n\n & svg path {\n fill: ${token.color.white};\n }\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > *:not(:last-child) {\n border-right: none;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg {\n display: block;\n transition: fill 250ms ease-in-out;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg path {\n fill: ${token.color.black};\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg#icon_facebook {\n width: 34px;\n height: 30px;\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg#icon_email {\n width: 21px;\n height: 20px;\n }\n`\n\n// prettier-ignore\nconst STYLES_SOCIAL_SHARING_ELEMENT = `\n .${ELEMENT_SOCIAL_SHARING_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n ${ContainerStyles}\n ${OverwriteFixed}\n`;\n\nconst CreateFacebook = () => {\n const button = document.createElement('button');\n\n button.innerHTML = Utility.asset.social.FACEBOOK;\n button.setAttribute('aria-label', 'share this page on facebook');\n\n button.addEventListener('click', () => {\n const shareURL = `http://www.facebook.com/share.php?u=${encodeURIComponent(\n window.location.toString(),\n )}`;\n\n window.open(\n shareURL,\n 'Facebook',\n 'toolbar=0,status=0,width=626,height=436',\n );\n });\n\n return button;\n};\n\nconst CreateTwitter = ({ url, title }: { url: string; title: string }) => {\n const button = document.createElement('button');\n\n button.innerHTML = Utility.asset.social.X;\n button.setAttribute('aria-label', 'share this page on twitter');\n\n button.addEventListener('click', () => {\n const shareURL = `http://twitter.com/share?url=${url}&text=${title}`;\n\n window.open(shareURL, 'sharer', 'toolbar=0,status=0,width=626,height=436');\n });\n\n return button;\n};\n\nconst CreateEmail = ({ url, title }: { url: string; title: string }) => {\n const link = document.createElement('a');\n\n link.href = `mailto:?subject=${title}&body=${url}`;\n link.setAttribute('aria-label', 'email this page');\n link.setAttribute('target', '_blank');\n\n link.innerHTML = Utility.asset.icon.EMAIL;\n\n return link;\n};\n\nconst CreatePrint = () => {\n const button = document.createElement('button');\n\n button.innerHTML = Utility.asset.icon.PRINTER;\n button.setAttribute('aria-label', 'print this page');\n button.addEventListener('click', () => window.print());\n\n return button;\n};\n\nconst CreateSocialSharingElement = (props: TypeSocialSharingProps) =>\n (() => {\n const {\n includeFacebook = true,\n includeTwitter = true,\n includeEmail = false,\n includePrint = false,\n title: defaultTitle,\n url: defaultUrl,\n isFixed = false,\n } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const defaultStartingPosition = `translateX(-100vh)`;\n const title = defaultTitle || document.title;\n const url = defaultUrl || window.location.toString();\n\n const getSpacing = () => (window.innerWidth > 768 ? 40 : 8);\n let startingPosition: null | number = null;\n let isShowing = false;\n\n const eventResize = () => {\n startingPosition = declaration.getBoundingClientRect().left;\n };\n\n const eventScroll = () => {\n const windowHeight = window.innerHeight;\n const pagePosition = window.scrollY;\n const isNearBottom =\n pagePosition + windowHeight >=\n document.body.scrollHeight - windowHeight / 2;\n const showWindow = !isNearBottom;\n\n if (showWindow) {\n setVisiblePosition();\n } else {\n setHiddenPosition();\n }\n };\n\n const setVisiblePosition = () => {\n if (!isShowing) {\n container.style.transform = 'translateX(0)';\n isShowing = true;\n }\n };\n\n const setHiddenPosition = () => {\n if (isShowing) {\n isShowing = false;\n\n if (startingPosition) {\n const spacing = getSpacing();\n const translateAmount = window.innerWidth - startingPosition;\n const position = translateAmount + spacing + container.offsetWidth;\n\n container.style.transform = `translateX(-${position}px)`;\n } else {\n container.style.transform = defaultStartingPosition;\n }\n }\n };\n\n const load = () => {\n startingPosition = declaration.getBoundingClientRect().left;\n container.style.transition = 'none';\n setHiddenPosition();\n\n setTimeout(() => {\n container.style.transition = 'transform 250ms ease-in-out';\n }, 100);\n };\n\n container.classList.add(ELEMENT_SOCIAL_SHARING_CONTAINER);\n\n if (includeFacebook) {\n container.appendChild(CreateFacebook());\n }\n\n if (includeTwitter) {\n container.appendChild(\n CreateTwitter({\n title,\n url,\n }),\n );\n }\n\n if (includeEmail) {\n container.appendChild(\n CreateEmail({\n title,\n url,\n }),\n );\n }\n\n if (includePrint) {\n container.appendChild(CreatePrint());\n }\n\n declaration.appendChild(container);\n declaration.classList.add(ELEMENT_SOCIAL_SHARING_DECLARATION);\n\n if (isFixed) {\n container.setAttribute(ATTRIBUTE_FIXED, '');\n window.addEventListener(\n 'scroll',\n Utility.performance.debounce(() => eventScroll(), 20),\n );\n\n window.addEventListener(\n 'resize',\n Utility.performance.debounce(() => eventResize(), 20),\n );\n }\n\n return {\n element: declaration,\n events: {\n load,\n },\n styles: STYLES_SOCIAL_SHARING_ELEMENT,\n };\n })();\n\nexport default CreateSocialSharingElement;\n"],"names":["Utility.asset.social.FACEBOOK","Utility.asset.social.X","Utility.asset.icon.EMAIL","Utility.asset.icon.PRINTER","Utility.performance.debounce"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sharing.mjs","sources":["../../../source/composite/social/sharing.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { facebook as iconFacebook, x as iconX } from '@universityofmaryland/web-icons-library/social';\nimport { email as iconEmail } from '@universityofmaryland/web-icons-library/communication';\nimport { print as iconPrint } from '@universityofmaryland/web-icons-library/controls';\n\ntype TypeSocialSharingProps = {\n isFixed?: boolean;\n includeFacebook?: boolean;\n includeTwitter?: boolean;\n includeEmail?: boolean;\n includePrint?: boolean;\n title?: string | null;\n url?: string | null;\n};\n\nconst ATTRIBUTE_FIXED = 'fixed';\n\nconst IS_FIXED = `[${ATTRIBUTE_FIXED}]`;\n\nconst ELEMENT_NAME = 'umd-element-social-sharing';\nconst ELEMENT_SOCIAL_SHARING_DECLARATION = 'social-sharing-declarion';\nconst ELEMENT_SOCIAL_SHARING_CONTAINER = 'social-sharing-container';\n\nconst OVERWRITE_FIXED_CONTAINER = `.${ELEMENT_SOCIAL_SHARING_CONTAINER}${IS_FIXED}`;\n\n// prettier-ignore\nconst OverwriteFixed = `\n @media (${token.media.queries.tablet.min}) {\n ${OVERWRITE_FIXED_CONTAINER} {\n flex-direction: column;\n }\n }\n\n @media (${token.media.queries.tablet.min}) {\n ${OVERWRITE_FIXED_CONTAINER} > *:not(:last-child) {\n border-right: 1px solid ${token.color.gray.light};\n border-bottom: none;\n }\n }\n`\n\n// prettier-ignore\nconst ContainerStyles = `\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} {\n display: flex;\n transition: transform 250ms ease-in-out;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > * {\n height: ${token.spacing['2xl']};\n width: ${token.spacing['2xl']};\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid ${token.color.gray.light};\n background-color: ${token.color.white};\n transition: background-color 250ms ease-in-out;\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > button:hover,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > button:focus,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > a:hover,\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > a:focus {\n background-color: ${token.color.gray.dark};\n\n & svg path {\n fill: ${token.color.white};\n }\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} > *:not(:last-child) {\n border-right: none;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg {\n display: block;\n transition: fill 250ms ease-in-out;\n }\n \n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg path {\n fill: ${token.color.black};\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg#icon_facebook {\n width: 34px;\n height: 30px;\n }\n\n .${ELEMENT_SOCIAL_SHARING_CONTAINER} svg#icon_email {\n width: 21px;\n height: 20px;\n }\n`\n\n// prettier-ignore\nconst STYLES_SOCIAL_SHARING_ELEMENT = `\n .${ELEMENT_SOCIAL_SHARING_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n }\n\n ${ContainerStyles}\n ${OverwriteFixed}\n`;\n\nconst CreateFacebook = () => {\n const button = document.createElement('button');\n\n button.innerHTML = iconFacebook;\n button.setAttribute('aria-label', 'share this page on facebook');\n\n button.addEventListener('click', () => {\n const shareURL = `http://www.facebook.com/share.php?u=${encodeURIComponent(\n window.location.toString(),\n )}`;\n\n window.open(\n shareURL,\n 'Facebook',\n 'toolbar=0,status=0,width=626,height=436',\n );\n });\n\n return button;\n};\n\nconst CreateTwitter = ({ url, title }: { url: string; title: string }) => {\n const button = document.createElement('button');\n\n button.innerHTML = iconX;\n button.setAttribute('aria-label', 'share this page on twitter');\n\n button.addEventListener('click', () => {\n const shareURL = `http://twitter.com/share?url=${url}&text=${title}`;\n\n window.open(shareURL, 'sharer', 'toolbar=0,status=0,width=626,height=436');\n });\n\n return button;\n};\n\nconst CreateEmail = ({ url, title }: { url: string; title: string }) => {\n const link = document.createElement('a');\n\n link.href = `mailto:?subject=${title}&body=${url}`;\n link.setAttribute('aria-label', 'email this page');\n link.setAttribute('target', '_blank');\n\n link.innerHTML = iconEmail;\n\n return link;\n};\n\nconst CreatePrint = () => {\n const button = document.createElement('button');\n\n button.innerHTML = iconPrint;\n button.setAttribute('aria-label', 'print this page');\n button.addEventListener('click', () => window.print());\n\n return button;\n};\n\nconst CreateSocialSharingElement = (props: TypeSocialSharingProps) =>\n (() => {\n const {\n includeFacebook = true,\n includeTwitter = true,\n includeEmail = false,\n includePrint = false,\n title: defaultTitle,\n url: defaultUrl,\n isFixed = false,\n } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const defaultStartingPosition = `translateX(-100vh)`;\n const title = defaultTitle || document.title;\n const url = defaultUrl || window.location.toString();\n\n const getSpacing = () => (window.innerWidth > 768 ? 40 : 8);\n let startingPosition: null | number = null;\n let isShowing = false;\n\n const eventResize = () => {\n startingPosition = declaration.getBoundingClientRect().left;\n };\n\n const eventScroll = () => {\n const windowHeight = window.innerHeight;\n const pagePosition = window.scrollY;\n const isNearBottom =\n pagePosition + windowHeight >=\n document.body.scrollHeight - windowHeight / 2;\n const showWindow = !isNearBottom;\n\n if (showWindow) {\n setVisiblePosition();\n } else {\n setHiddenPosition();\n }\n };\n\n const setVisiblePosition = () => {\n if (!isShowing) {\n container.style.transform = 'translateX(0)';\n isShowing = true;\n }\n };\n\n const setHiddenPosition = () => {\n if (isShowing) {\n isShowing = false;\n\n if (startingPosition) {\n const spacing = getSpacing();\n const translateAmount = window.innerWidth - startingPosition;\n const position = translateAmount + spacing + container.offsetWidth;\n\n container.style.transform = `translateX(-${position}px)`;\n } else {\n container.style.transform = defaultStartingPosition;\n }\n }\n };\n\n const load = () => {\n startingPosition = declaration.getBoundingClientRect().left;\n container.style.transition = 'none';\n setHiddenPosition();\n\n setTimeout(() => {\n container.style.transition = 'transform 250ms ease-in-out';\n }, 100);\n };\n\n container.classList.add(ELEMENT_SOCIAL_SHARING_CONTAINER);\n\n if (includeFacebook) {\n container.appendChild(CreateFacebook());\n }\n\n if (includeTwitter) {\n container.appendChild(\n CreateTwitter({\n title,\n url,\n }),\n );\n }\n\n if (includeEmail) {\n container.appendChild(\n CreateEmail({\n title,\n url,\n }),\n );\n }\n\n if (includePrint) {\n container.appendChild(CreatePrint());\n }\n\n declaration.appendChild(container);\n declaration.classList.add(ELEMENT_SOCIAL_SHARING_DECLARATION);\n\n if (isFixed) {\n container.setAttribute(ATTRIBUTE_FIXED, '');\n window.addEventListener(\n 'scroll',\n debounce(() => eventScroll(), 20),\n );\n\n window.addEventListener(\n 'resize',\n debounce(() => eventResize(), 20),\n );\n }\n\n return {\n element: declaration,\n events: {\n load,\n },\n styles: STYLES_SOCIAL_SHARING_ELEMENT,\n };\n })();\n\nexport default CreateSocialSharingElement;\n"],"names":["iconFacebook","iconX","iconEmail","iconPrint"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../../source/composite/tabs/standard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../../source/composite/tabs/standard.ts"],"names":[],"mappings":"AAMA,KAAK,aAAa,GAAG;IACnB,aAAa,EAAE,WAAW,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;yBAyPc,OAAO,aAAa;;;;;;;;AAApC,wBA6HO"}
|
|
@@ -1,8 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
2
|
+
const token = require("@universityofmaryland/web-styles-library/token");
|
|
3
|
+
const typography = require("@universityofmaryland/web-styles-library/typography");
|
|
4
|
+
const animation = require("@universityofmaryland/web-utilities-library/animation");
|
|
5
|
+
const performance = require("@universityofmaryland/web-utilities-library/performance");
|
|
6
|
+
const styles = require("@universityofmaryland/web-utilities-library/styles");
|
|
7
|
+
function _interopNamespaceDefault(e) {
|
|
8
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
9
|
+
if (e) {
|
|
10
|
+
for (const k in e) {
|
|
11
|
+
if (k !== "default") {
|
|
12
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: () => e[k]
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
n.default = e;
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
const token__namespace = /* @__PURE__ */ _interopNamespaceDefault(token);
|
|
24
|
+
const typography__namespace = /* @__PURE__ */ _interopNamespaceDefault(typography);
|
|
6
25
|
const ATTRIBUTE_LAYOUT_HORIZONTAL = "data-layout-horizontal";
|
|
7
26
|
const ATTRIBUTE_ARIA_EXPANDED = "aria-expanded";
|
|
8
27
|
const ATTRIBUTE_THEME = "theme";
|
|
@@ -21,7 +40,7 @@ const OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CONTAINER}${IS_THEME_DARK}`;
|
|
|
21
40
|
const OVERWRITE_THEME_DARK_LINE = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;
|
|
22
41
|
const OverwriteThemeStyles = `
|
|
23
42
|
${OVERWRITE_THEME_DARK_LINE} {
|
|
24
|
-
background-color: ${
|
|
43
|
+
background-color: ${token__namespace.color.gray.dark};
|
|
25
44
|
}
|
|
26
45
|
`;
|
|
27
46
|
const DisplayLineStyles = `
|
|
@@ -31,7 +50,7 @@ const DisplayLineStyles = `
|
|
|
31
50
|
top: 0;
|
|
32
51
|
left: -2px;
|
|
33
52
|
width: 2px;
|
|
34
|
-
background-color: ${
|
|
53
|
+
background-color: ${token__namespace.color.gray.light};
|
|
35
54
|
z-index: -1;
|
|
36
55
|
}
|
|
37
56
|
|
|
@@ -46,7 +65,7 @@ const DisplayLineStyles = `
|
|
|
46
65
|
width: 0;
|
|
47
66
|
height: 0;
|
|
48
67
|
display: block;
|
|
49
|
-
background-color: ${
|
|
68
|
+
background-color: ${token__namespace.color.red};
|
|
50
69
|
transform: translate(0);
|
|
51
70
|
}
|
|
52
71
|
`;
|
|
@@ -92,26 +111,26 @@ const SetDisplay = ({
|
|
|
92
111
|
const activeTab = getActiveTab();
|
|
93
112
|
const buttonWidths = getButtonWidths();
|
|
94
113
|
const buttonHeights = getButtonHeights();
|
|
95
|
-
const SetActiveContent = () => contents.map((content,
|
|
114
|
+
const SetActiveContent = () => contents.map((content, index) => {
|
|
96
115
|
if (!content) return;
|
|
97
|
-
if (
|
|
116
|
+
if (index === activeTab) {
|
|
98
117
|
content.style.display = "block";
|
|
99
118
|
} else {
|
|
100
119
|
content.style.display = "none";
|
|
101
120
|
}
|
|
102
121
|
});
|
|
103
|
-
const SetActiveButton = () => buttons.map((button,
|
|
104
|
-
if (
|
|
122
|
+
const SetActiveButton = () => buttons.map((button, index) => {
|
|
123
|
+
if (index === activeTab) {
|
|
105
124
|
button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, "true");
|
|
106
|
-
if (getIsThemeDark) button.style.color = `${
|
|
125
|
+
if (getIsThemeDark) button.style.color = `${token__namespace.color.white}`;
|
|
107
126
|
} else {
|
|
108
127
|
button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, "false");
|
|
109
|
-
if (getIsThemeDark) button.style.color = `${
|
|
128
|
+
if (getIsThemeDark) button.style.color = `${token__namespace.color.gray.light}`;
|
|
110
129
|
}
|
|
111
130
|
});
|
|
112
131
|
const SetContentPosition = () => {
|
|
113
132
|
const activeContent = contents[activeTab];
|
|
114
|
-
const space = isFlexLayout ?
|
|
133
|
+
const space = isFlexLayout ? styles.parsePixelValue(token__namespace.spacing.xl) : styles.parsePixelValue(token__namespace.spacing.md);
|
|
115
134
|
if (activeContent) {
|
|
116
135
|
if (transition) {
|
|
117
136
|
strip.style.transition = "height 0.5s";
|
|
@@ -122,11 +141,9 @@ const SetDisplay = ({
|
|
|
122
141
|
activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;
|
|
123
142
|
activeContent.style.width = "100%";
|
|
124
143
|
if (!isFlexLayout && transition) {
|
|
125
|
-
const convertedSpace =
|
|
126
|
-
Styles.token.spacing.md
|
|
127
|
-
);
|
|
144
|
+
const convertedSpace = styles.parsePixelValue(token__namespace.spacing.md);
|
|
128
145
|
const spread = additionalSpread ? convertedSpace + additionalSpread : convertedSpace;
|
|
129
|
-
|
|
146
|
+
animation.smoothScrollToElement({
|
|
130
147
|
element: activeContent,
|
|
131
148
|
spread
|
|
132
149
|
});
|
|
@@ -223,8 +240,8 @@ const standard = (props) => (() => {
|
|
|
223
240
|
getIsThemeDark: isThemeDark || false
|
|
224
241
|
};
|
|
225
242
|
const GetContext = { GetElements, GetState };
|
|
226
|
-
const SetActiveTab = (
|
|
227
|
-
activeTab =
|
|
243
|
+
const SetActiveTab = (index) => {
|
|
244
|
+
activeTab = index;
|
|
228
245
|
SetDisplay({ ...GetContext, additionalSpread });
|
|
229
246
|
};
|
|
230
247
|
const SetDisplayLayout = () => {
|
|
@@ -239,20 +256,20 @@ const standard = (props) => (() => {
|
|
|
239
256
|
isFlexLayout = buttonWidths < container.offsetWidth;
|
|
240
257
|
};
|
|
241
258
|
const SetLoadStyles = () => {
|
|
242
|
-
buttons.forEach((button,
|
|
243
|
-
button.addEventListener("click", () => SetActiveTab(
|
|
259
|
+
buttons.forEach((button, index) => {
|
|
260
|
+
button.addEventListener("click", () => SetActiveTab(index));
|
|
244
261
|
button.style.position = "relative";
|
|
245
262
|
button.style.textAlign = "left";
|
|
246
263
|
button.style.display = "inline-block";
|
|
247
|
-
button.style.padding = `${
|
|
264
|
+
button.style.padding = `${token__namespace.spacing.sm} ${token__namespace.spacing.md}`;
|
|
248
265
|
button.style.border = "none";
|
|
249
266
|
button.style.background = "transparent";
|
|
250
|
-
Object.keys(
|
|
267
|
+
Object.keys(typography__namespace.sans.large).forEach((key) => {
|
|
251
268
|
const keyRef = key;
|
|
252
|
-
button.style[keyRef] =
|
|
269
|
+
button.style[keyRef] = typography__namespace.sans.large[keyRef];
|
|
253
270
|
});
|
|
254
271
|
if (isThemeDark) {
|
|
255
|
-
button.style.color =
|
|
272
|
+
button.style.color = token__namespace.color.white;
|
|
256
273
|
}
|
|
257
274
|
});
|
|
258
275
|
contents.forEach((content) => {
|
|
@@ -292,10 +309,7 @@ const standard = (props) => (() => {
|
|
|
292
309
|
if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);
|
|
293
310
|
declaration.classList.add(ELEMENT_DECLARATION);
|
|
294
311
|
declaration.appendChild(container);
|
|
295
|
-
window.addEventListener(
|
|
296
|
-
"resize",
|
|
297
|
-
index.debounce(EventResize, 10)
|
|
298
|
-
);
|
|
312
|
+
window.addEventListener("resize", performance.debounce(EventResize, 10));
|
|
299
313
|
return {
|
|
300
314
|
element: declaration,
|
|
301
315
|
styles: STYLES_TABS_ELEMENT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standard.js","sources":["../../../source/composite/tabs/standard.ts"],"sourcesContent":["import { token, typography } from '@universityofmaryland/web-styles-library';\nimport * as Utility from 'utilities';\n\ntype TypeTabsProps = {\n tabsContainer: HTMLElement;\n isThemeDark?: boolean;\n shadowContent?: HTMLSlotElement;\n topPosition?: string | null;\n};\n\ntype TypeGetElements = {\n getContainer: () => HTMLElement;\n getTabsContainer: () => HTMLElement;\n getDisplayLineStrip: () => HTMLElement;\n getDisplayLine: () => HTMLElement;\n getContentStrip: () => HTMLElement;\n getButtons: () => HTMLElement[];\n getContents: () => HTMLElement[];\n};\n\ntype TypeGetState = {\n getActiveTab: () => number;\n getIsFlexLayout: () => boolean;\n getButtonWidths: () => number;\n getButtonHeights: () => number;\n getIsThemeDark: boolean;\n};\n\nconst ATTRIBUTE_LAYOUT_HORIZONTAL = 'data-layout-horizontal';\nconst ATTRIBUTE_ARIA_EXPANDED = 'aria-expanded';\nconst ATTRIBUTE_THEME = 'theme';\nconst THEME_DARK = 'dark';\n\nconst ELEMENT_NAME = 'umd-element-tabs';\nconst ELEMENT_DECLARATION = 'tabs-declaration';\nconst ELEMENT_CONTAINER = 'tabs-container';\nconst ELEMENT_CONTENT_STRIP = 'tabs-content-strip';\nconst ELEMENT_ACTIVE_LINE_STRIP = 'tab-active-line-strip';\nconst ELEMENT_ACTIVE_LINE = 'tab-active-line';\n\nconst IS_LAYOUT_HORIZONTAL = `[${ATTRIBUTE_LAYOUT_HORIZONTAL}]`;\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst OVERWRITE_VERTICAL_LAYOUT_CONTAINER = `.${ELEMENT_CONTAINER}${IS_LAYOUT_HORIZONTAL}`;\nconst OVERWRITE_VERTICAL_LAYOUT_LINE = `${OVERWRITE_VERTICAL_LAYOUT_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_LINE = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\n// prettier-ignore\nconst OverwriteThemeStyles = `\n ${OVERWRITE_THEME_DARK_LINE} {\n background-color: ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst DisplayLineStyles = `\n .${ELEMENT_ACTIVE_LINE_STRIP} {\n position: absolute;\n height: 100%;\n top: 0;\n left: -2px;\n width: 2px;\n background-color: ${token.color.gray.light};\n z-index: -1;\n }\n\n ${OVERWRITE_VERTICAL_LAYOUT_LINE} {\n height: 2px;\n left: 0;\n top: inherit;\n }\n\n .${ELEMENT_ACTIVE_LINE} {\n position: absolute;\n width: 0;\n height: 0;\n display: block;\n background-color: ${token.color.red};\n transform: translate(0);\n }\n`;\n\n// prettier-ignore\nconst STYLES_TABS_ELEMENT = `\n .${ELEMENT_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n position: relative;\n }\n\n ${DisplayLineStyles}\n ${OverwriteThemeStyles}\n`;\n\nconst SetDisplay = ({\n GetElements,\n GetState,\n transition = true,\n additionalSpread,\n}: {\n GetElements: TypeGetElements;\n GetState: TypeGetState;\n transition?: boolean;\n additionalSpread?: number | null;\n}) => {\n const {\n getContainer,\n getTabsContainer,\n getDisplayLineStrip,\n getDisplayLine,\n getContentStrip,\n getButtons,\n getContents,\n } = GetElements;\n const {\n getActiveTab,\n getIsFlexLayout,\n getButtonWidths,\n getButtonHeights,\n getIsThemeDark,\n } = GetState;\n\n const container = getContainer();\n const tabsContainer = getTabsContainer();\n const displayLineStrip = getDisplayLineStrip();\n const displayLine = getDisplayLine();\n const strip = getContentStrip();\n const buttons = getButtons();\n const contents = getContents();\n const isFlexLayout = getIsFlexLayout();\n const activeTab = getActiveTab();\n const buttonWidths = getButtonWidths();\n const buttonHeights = getButtonHeights();\n\n const SetActiveContent = () =>\n contents.map((content, index) => {\n if (!content) return;\n\n if (index === activeTab) {\n content.style.display = 'block';\n } else {\n content.style.display = 'none';\n }\n });\n\n const SetActiveButton = () =>\n buttons.map((button, index) => {\n if (index === activeTab) {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'true');\n if (getIsThemeDark) button.style.color = `${token.color.white}`;\n } else {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'false');\n if (getIsThemeDark) button.style.color = `${token.color.gray.light}`;\n }\n });\n\n const SetContentPosition = () => {\n const activeContent = contents[activeTab];\n const space = isFlexLayout\n ? Utility.theme.convertPixelStringToNumber(token.spacing.xl)\n : Utility.theme.convertPixelStringToNumber(token.spacing.md);\n\n if (activeContent) {\n if (transition) {\n strip.style.transition = 'height 0.5s';\n } else {\n strip.style.transition = 'none';\n }\n\n strip.style.height = `${activeContent.offsetHeight + space}px`;\n activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;\n activeContent.style.width = '100%';\n\n if (!isFlexLayout && transition) {\n const convertedSpace = Utility.theme.convertPixelStringToNumber(\n token.spacing.md,\n );\n const spread = additionalSpread\n ? convertedSpace + additionalSpread\n : convertedSpace;\n\n Utility.theme.animations.scrollTo({\n element: activeContent,\n spread,\n });\n }\n }\n };\n\n const SetContainerStyles = () => {\n if (isFlexLayout) {\n container.setAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL, '');\n } else {\n container.removeAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL);\n }\n };\n\n const StyleWrapperStyles = () => {\n if (isFlexLayout) {\n tabsContainer.style.display = 'flex';\n } else {\n tabsContainer.style.display = 'block';\n }\n };\n\n const SetLineStyles = () => {\n const activeButton = buttons[activeTab];\n\n if (transition) {\n displayLine.style.transition =\n 'width 0.5s ease-in-out, height 0.5s ease-in-out, transform 0.5s ease-in-out';\n } else {\n displayLine.style.transition = 'none';\n }\n\n if (isFlexLayout) {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetWidth;\n }\n }\n\n displayLineStrip.style.width = `${buttonWidths}px`;\n displayLineStrip.style.height = `2px`;\n displayLine.style.top = `inherit`;\n displayLine.style.left = `0`;\n displayLine.style.width = `${activeButton.offsetWidth}px`;\n displayLine.style.height = `2px`;\n displayLine.style.transform = `translate(${offset}px, 0)`;\n } else {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetHeight;\n }\n }\n\n displayLineStrip.style.width = `2px`;\n displayLineStrip.style.height = `${buttonHeights}px`;\n displayLine.style.top = `0`;\n displayLine.style.left = `-2px`;\n displayLine.style.width = `2px`;\n displayLine.style.height = `${activeButton.offsetHeight}px`;\n displayLine.style.transform = `translate(0, ${offset}px)`;\n }\n };\n\n SetActiveContent();\n SetActiveButton();\n SetContainerStyles();\n StyleWrapperStyles();\n SetLineStyles();\n SetContentPosition();\n};\n\nexport default (props: TypeTabsProps) =>\n (() => {\n const { isThemeDark, tabsContainer, shadowContent, topPosition } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const contentStrip = document.createElement('div');\n const displayLineStrip = document.createElement('div');\n const displayLine = document.createElement('span');\n const children = Array.from(tabsContainer.children);\n const buttons = Array.from(tabsContainer.querySelectorAll('button'));\n const additionalSpread = topPosition ? parseInt(topPosition) : null;\n const contents = children.filter((child) =>\n buttons.find(\n (button) =>\n button.getAttribute('aria-controls') === child.getAttribute('id'),\n ),\n ) as HTMLElement[];\n const GetElements = {\n getContainer: () => container,\n getTabsContainer: () => tabsContainer,\n getDisplayLineStrip: () => displayLineStrip,\n getDisplayLine: () => displayLine,\n getContentStrip: () => contentStrip,\n getButtons: () => buttons,\n getContents: () => contents,\n };\n const GetState = {\n getActiveTab: () => activeTab,\n getIsFlexLayout: () => isFlexLayout,\n getButtonWidths: () => buttonWidths,\n getButtonHeights: () => buttonHeights,\n getIsThemeDark: isThemeDark || false,\n };\n const GetContext = { GetElements, GetState };\n const SetActiveTab = (index: number) => {\n activeTab = index;\n SetDisplay({ ...GetContext, additionalSpread });\n };\n const SetDisplayLayout = () => {\n buttonWidths = buttons.reduce(\n (acc, button) => acc + button.offsetWidth,\n 0,\n );\n\n buttonHeights = buttons.reduce(\n (acc, button) => acc + button.offsetHeight,\n 0,\n );\n\n isFlexLayout = buttonWidths < container.offsetWidth;\n };\n const SetLoadStyles = () => {\n buttons.forEach((button, index) => {\n button.addEventListener('click', () => SetActiveTab(index));\n button.style.position = 'relative';\n button.style.textAlign = 'left';\n button.style.display = 'inline-block';\n button.style.padding = `${token.spacing.sm} ${token.spacing.md}`;\n button.style.border = 'none';\n button.style.background = 'transparent';\n\n Object.keys(typography.sans.large).forEach((key) => {\n const keyRef = key as keyof typeof typography.sans.large;\n (button.style as any)[keyRef] = typography.sans.large[keyRef];\n });\n\n if (isThemeDark) {\n button.style.color = token.color.white;\n }\n });\n\n contents.forEach((content) => {\n if (!content) return;\n content.style.display = 'none';\n content.style.position = 'absolute';\n content.style.top = '0';\n content.style.left = '0';\n });\n };\n let activeTab = 0;\n let isFlexLayout = false;\n let buttonWidths = 0;\n let buttonHeights = 0;\n\n const EventResize = () => {\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n const EventLoad = () => {\n SetLoadStyles();\n SetDisplay({ ...GetContext, transition: false });\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n\n contentStrip.classList.add(ELEMENT_CONTENT_STRIP);\n\n if (shadowContent) {\n container.appendChild(shadowContent);\n } else {\n container.appendChild(tabsContainer);\n }\n\n displayLineStrip.classList.add(ELEMENT_ACTIVE_LINE_STRIP);\n container.appendChild(displayLineStrip);\n displayLine.classList.add(ELEMENT_ACTIVE_LINE);\n container.appendChild(displayLine);\n\n container.appendChild(contentStrip);\n container.classList.add(ELEMENT_CONTAINER);\n if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n declaration.classList.add(ELEMENT_DECLARATION);\n declaration.appendChild(container);\n\n window.addEventListener(\n 'resize',\n Utility.performance.debounce(EventResize, 10),\n );\n\n return {\n element: declaration,\n styles: STYLES_TABS_ELEMENT,\n events: {\n resize: EventResize,\n load: EventLoad,\n },\n };\n })();\n"],"names":["token","index","Utility.theme.convertPixelStringToNumber","Utility.theme.animations.scrollTo","typography","Utility.performance.debounce"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standard.js","sources":["../../../source/composite/tabs/standard.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport { smoothScrollToElement } from '@universityofmaryland/web-utilities-library/animation';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { parsePixelValue } from '@universityofmaryland/web-utilities-library/styles';\n\ntype TypeTabsProps = {\n tabsContainer: HTMLElement;\n isThemeDark?: boolean;\n shadowContent?: HTMLSlotElement;\n topPosition?: string | null;\n};\n\ntype TypeGetElements = {\n getContainer: () => HTMLElement;\n getTabsContainer: () => HTMLElement;\n getDisplayLineStrip: () => HTMLElement;\n getDisplayLine: () => HTMLElement;\n getContentStrip: () => HTMLElement;\n getButtons: () => HTMLElement[];\n getContents: () => HTMLElement[];\n};\n\ntype TypeGetState = {\n getActiveTab: () => number;\n getIsFlexLayout: () => boolean;\n getButtonWidths: () => number;\n getButtonHeights: () => number;\n getIsThemeDark: boolean;\n};\n\nconst ATTRIBUTE_LAYOUT_HORIZONTAL = 'data-layout-horizontal';\nconst ATTRIBUTE_ARIA_EXPANDED = 'aria-expanded';\nconst ATTRIBUTE_THEME = 'theme';\nconst THEME_DARK = 'dark';\n\nconst ELEMENT_NAME = 'umd-element-tabs';\nconst ELEMENT_DECLARATION = 'tabs-declaration';\nconst ELEMENT_CONTAINER = 'tabs-container';\nconst ELEMENT_CONTENT_STRIP = 'tabs-content-strip';\nconst ELEMENT_ACTIVE_LINE_STRIP = 'tab-active-line-strip';\nconst ELEMENT_ACTIVE_LINE = 'tab-active-line';\n\nconst IS_LAYOUT_HORIZONTAL = `[${ATTRIBUTE_LAYOUT_HORIZONTAL}]`;\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst OVERWRITE_VERTICAL_LAYOUT_CONTAINER = `.${ELEMENT_CONTAINER}${IS_LAYOUT_HORIZONTAL}`;\nconst OVERWRITE_VERTICAL_LAYOUT_LINE = `${OVERWRITE_VERTICAL_LAYOUT_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_LINE = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\n// prettier-ignore\nconst OverwriteThemeStyles = `\n ${OVERWRITE_THEME_DARK_LINE} {\n background-color: ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst DisplayLineStyles = `\n .${ELEMENT_ACTIVE_LINE_STRIP} {\n position: absolute;\n height: 100%;\n top: 0;\n left: -2px;\n width: 2px;\n background-color: ${token.color.gray.light};\n z-index: -1;\n }\n\n ${OVERWRITE_VERTICAL_LAYOUT_LINE} {\n height: 2px;\n left: 0;\n top: inherit;\n }\n\n .${ELEMENT_ACTIVE_LINE} {\n position: absolute;\n width: 0;\n height: 0;\n display: block;\n background-color: ${token.color.red};\n transform: translate(0);\n }\n`;\n\n// prettier-ignore\nconst STYLES_TABS_ELEMENT = `\n .${ELEMENT_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n position: relative;\n }\n\n ${DisplayLineStyles}\n ${OverwriteThemeStyles}\n`;\n\nconst SetDisplay = ({\n GetElements,\n GetState,\n transition = true,\n additionalSpread,\n}: {\n GetElements: TypeGetElements;\n GetState: TypeGetState;\n transition?: boolean;\n additionalSpread?: number | null;\n}) => {\n const {\n getContainer,\n getTabsContainer,\n getDisplayLineStrip,\n getDisplayLine,\n getContentStrip,\n getButtons,\n getContents,\n } = GetElements;\n const {\n getActiveTab,\n getIsFlexLayout,\n getButtonWidths,\n getButtonHeights,\n getIsThemeDark,\n } = GetState;\n\n const container = getContainer();\n const tabsContainer = getTabsContainer();\n const displayLineStrip = getDisplayLineStrip();\n const displayLine = getDisplayLine();\n const strip = getContentStrip();\n const buttons = getButtons();\n const contents = getContents();\n const isFlexLayout = getIsFlexLayout();\n const activeTab = getActiveTab();\n const buttonWidths = getButtonWidths();\n const buttonHeights = getButtonHeights();\n\n const SetActiveContent = () =>\n contents.map((content, index) => {\n if (!content) return;\n\n if (index === activeTab) {\n content.style.display = 'block';\n } else {\n content.style.display = 'none';\n }\n });\n\n const SetActiveButton = () =>\n buttons.map((button, index) => {\n if (index === activeTab) {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'true');\n if (getIsThemeDark) button.style.color = `${token.color.white}`;\n } else {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'false');\n if (getIsThemeDark) button.style.color = `${token.color.gray.light}`;\n }\n });\n\n const SetContentPosition = () => {\n const activeContent = contents[activeTab];\n const space = isFlexLayout\n ? parsePixelValue(token.spacing.xl)\n : parsePixelValue(token.spacing.md);\n\n if (activeContent) {\n if (transition) {\n strip.style.transition = 'height 0.5s';\n } else {\n strip.style.transition = 'none';\n }\n\n strip.style.height = `${activeContent.offsetHeight + space}px`;\n activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;\n activeContent.style.width = '100%';\n\n if (!isFlexLayout && transition) {\n const convertedSpace = parsePixelValue(token.spacing.md);\n const spread = additionalSpread\n ? convertedSpace + additionalSpread\n : convertedSpace;\n\n smoothScrollToElement({\n element: activeContent,\n spread,\n });\n }\n }\n };\n\n const SetContainerStyles = () => {\n if (isFlexLayout) {\n container.setAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL, '');\n } else {\n container.removeAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL);\n }\n };\n\n const StyleWrapperStyles = () => {\n if (isFlexLayout) {\n tabsContainer.style.display = 'flex';\n } else {\n tabsContainer.style.display = 'block';\n }\n };\n\n const SetLineStyles = () => {\n const activeButton = buttons[activeTab];\n\n if (transition) {\n displayLine.style.transition =\n 'width 0.5s ease-in-out, height 0.5s ease-in-out, transform 0.5s ease-in-out';\n } else {\n displayLine.style.transition = 'none';\n }\n\n if (isFlexLayout) {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetWidth;\n }\n }\n\n displayLineStrip.style.width = `${buttonWidths}px`;\n displayLineStrip.style.height = `2px`;\n displayLine.style.top = `inherit`;\n displayLine.style.left = `0`;\n displayLine.style.width = `${activeButton.offsetWidth}px`;\n displayLine.style.height = `2px`;\n displayLine.style.transform = `translate(${offset}px, 0)`;\n } else {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetHeight;\n }\n }\n\n displayLineStrip.style.width = `2px`;\n displayLineStrip.style.height = `${buttonHeights}px`;\n displayLine.style.top = `0`;\n displayLine.style.left = `-2px`;\n displayLine.style.width = `2px`;\n displayLine.style.height = `${activeButton.offsetHeight}px`;\n displayLine.style.transform = `translate(0, ${offset}px)`;\n }\n };\n\n SetActiveContent();\n SetActiveButton();\n SetContainerStyles();\n StyleWrapperStyles();\n SetLineStyles();\n SetContentPosition();\n};\n\nexport default (props: TypeTabsProps) =>\n (() => {\n const { isThemeDark, tabsContainer, shadowContent, topPosition } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const contentStrip = document.createElement('div');\n const displayLineStrip = document.createElement('div');\n const displayLine = document.createElement('span');\n const children = Array.from(tabsContainer.children);\n const buttons = Array.from(tabsContainer.querySelectorAll('button'));\n const additionalSpread = topPosition ? parseInt(topPosition) : null;\n const contents = children.filter((child) =>\n buttons.find(\n (button) =>\n button.getAttribute('aria-controls') === child.getAttribute('id'),\n ),\n ) as HTMLElement[];\n const GetElements = {\n getContainer: () => container,\n getTabsContainer: () => tabsContainer,\n getDisplayLineStrip: () => displayLineStrip,\n getDisplayLine: () => displayLine,\n getContentStrip: () => contentStrip,\n getButtons: () => buttons,\n getContents: () => contents,\n };\n const GetState = {\n getActiveTab: () => activeTab,\n getIsFlexLayout: () => isFlexLayout,\n getButtonWidths: () => buttonWidths,\n getButtonHeights: () => buttonHeights,\n getIsThemeDark: isThemeDark || false,\n };\n const GetContext = { GetElements, GetState };\n const SetActiveTab = (index: number) => {\n activeTab = index;\n SetDisplay({ ...GetContext, additionalSpread });\n };\n const SetDisplayLayout = () => {\n buttonWidths = buttons.reduce(\n (acc, button) => acc + button.offsetWidth,\n 0,\n );\n\n buttonHeights = buttons.reduce(\n (acc, button) => acc + button.offsetHeight,\n 0,\n );\n\n isFlexLayout = buttonWidths < container.offsetWidth;\n };\n const SetLoadStyles = () => {\n buttons.forEach((button, index) => {\n button.addEventListener('click', () => SetActiveTab(index));\n button.style.position = 'relative';\n button.style.textAlign = 'left';\n button.style.display = 'inline-block';\n button.style.padding = `${token.spacing.sm} ${token.spacing.md}`;\n button.style.border = 'none';\n button.style.background = 'transparent';\n\n Object.keys(typography.sans.large).forEach((key) => {\n const keyRef = key as keyof typeof typography.sans.large;\n (button.style as any)[keyRef] = typography.sans.large[keyRef];\n });\n\n if (isThemeDark) {\n button.style.color = token.color.white;\n }\n });\n\n contents.forEach((content) => {\n if (!content) return;\n content.style.display = 'none';\n content.style.position = 'absolute';\n content.style.top = '0';\n content.style.left = '0';\n });\n };\n let activeTab = 0;\n let isFlexLayout = false;\n let buttonWidths = 0;\n let buttonHeights = 0;\n\n const EventResize = () => {\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n const EventLoad = () => {\n SetLoadStyles();\n SetDisplay({ ...GetContext, transition: false });\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n\n contentStrip.classList.add(ELEMENT_CONTENT_STRIP);\n\n if (shadowContent) {\n container.appendChild(shadowContent);\n } else {\n container.appendChild(tabsContainer);\n }\n\n displayLineStrip.classList.add(ELEMENT_ACTIVE_LINE_STRIP);\n container.appendChild(displayLineStrip);\n displayLine.classList.add(ELEMENT_ACTIVE_LINE);\n container.appendChild(displayLine);\n\n container.appendChild(contentStrip);\n container.classList.add(ELEMENT_CONTAINER);\n if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n declaration.classList.add(ELEMENT_DECLARATION);\n declaration.appendChild(container);\n\n window.addEventListener('resize', debounce(EventResize, 10));\n\n return {\n element: declaration,\n styles: STYLES_TABS_ELEMENT,\n events: {\n resize: EventResize,\n load: EventLoad,\n },\n };\n })();\n"],"names":["token","parsePixelValue","smoothScrollToElement","typography","debounce"],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import * as token from "@universityofmaryland/web-styles-library/token";
|
|
2
|
+
import * as typography from "@universityofmaryland/web-styles-library/typography";
|
|
3
|
+
import { smoothScrollToElement } from "@universityofmaryland/web-utilities-library/animation";
|
|
4
|
+
import { debounce } from "@universityofmaryland/web-utilities-library/performance";
|
|
5
|
+
import { parsePixelValue } from "@universityofmaryland/web-utilities-library/styles";
|
|
5
6
|
const ATTRIBUTE_LAYOUT_HORIZONTAL = "data-layout-horizontal";
|
|
6
7
|
const ATTRIBUTE_ARIA_EXPANDED = "aria-expanded";
|
|
7
8
|
const ATTRIBUTE_THEME = "theme";
|
|
@@ -110,7 +111,7 @@ const SetDisplay = ({
|
|
|
110
111
|
});
|
|
111
112
|
const SetContentPosition = () => {
|
|
112
113
|
const activeContent = contents[activeTab];
|
|
113
|
-
const space = isFlexLayout ?
|
|
114
|
+
const space = isFlexLayout ? parsePixelValue(token.spacing.xl) : parsePixelValue(token.spacing.md);
|
|
114
115
|
if (activeContent) {
|
|
115
116
|
if (transition) {
|
|
116
117
|
strip.style.transition = "height 0.5s";
|
|
@@ -121,11 +122,9 @@ const SetDisplay = ({
|
|
|
121
122
|
activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;
|
|
122
123
|
activeContent.style.width = "100%";
|
|
123
124
|
if (!isFlexLayout && transition) {
|
|
124
|
-
const convertedSpace =
|
|
125
|
-
token.spacing.md
|
|
126
|
-
);
|
|
125
|
+
const convertedSpace = parsePixelValue(token.spacing.md);
|
|
127
126
|
const spread = additionalSpread ? convertedSpace + additionalSpread : convertedSpace;
|
|
128
|
-
|
|
127
|
+
smoothScrollToElement({
|
|
129
128
|
element: activeContent,
|
|
130
129
|
spread
|
|
131
130
|
});
|
|
@@ -291,10 +290,7 @@ const standard = (props) => (() => {
|
|
|
291
290
|
if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);
|
|
292
291
|
declaration.classList.add(ELEMENT_DECLARATION);
|
|
293
292
|
declaration.appendChild(container);
|
|
294
|
-
window.addEventListener(
|
|
295
|
-
"resize",
|
|
296
|
-
debounce(EventResize, 10)
|
|
297
|
-
);
|
|
293
|
+
window.addEventListener("resize", debounce(EventResize, 10));
|
|
298
294
|
return {
|
|
299
295
|
element: declaration,
|
|
300
296
|
styles: STYLES_TABS_ELEMENT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standard.mjs","sources":["../../../source/composite/tabs/standard.ts"],"sourcesContent":["import { token, typography } from '@universityofmaryland/web-styles-library';\nimport * as Utility from 'utilities';\n\ntype TypeTabsProps = {\n tabsContainer: HTMLElement;\n isThemeDark?: boolean;\n shadowContent?: HTMLSlotElement;\n topPosition?: string | null;\n};\n\ntype TypeGetElements = {\n getContainer: () => HTMLElement;\n getTabsContainer: () => HTMLElement;\n getDisplayLineStrip: () => HTMLElement;\n getDisplayLine: () => HTMLElement;\n getContentStrip: () => HTMLElement;\n getButtons: () => HTMLElement[];\n getContents: () => HTMLElement[];\n};\n\ntype TypeGetState = {\n getActiveTab: () => number;\n getIsFlexLayout: () => boolean;\n getButtonWidths: () => number;\n getButtonHeights: () => number;\n getIsThemeDark: boolean;\n};\n\nconst ATTRIBUTE_LAYOUT_HORIZONTAL = 'data-layout-horizontal';\nconst ATTRIBUTE_ARIA_EXPANDED = 'aria-expanded';\nconst ATTRIBUTE_THEME = 'theme';\nconst THEME_DARK = 'dark';\n\nconst ELEMENT_NAME = 'umd-element-tabs';\nconst ELEMENT_DECLARATION = 'tabs-declaration';\nconst ELEMENT_CONTAINER = 'tabs-container';\nconst ELEMENT_CONTENT_STRIP = 'tabs-content-strip';\nconst ELEMENT_ACTIVE_LINE_STRIP = 'tab-active-line-strip';\nconst ELEMENT_ACTIVE_LINE = 'tab-active-line';\n\nconst IS_LAYOUT_HORIZONTAL = `[${ATTRIBUTE_LAYOUT_HORIZONTAL}]`;\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst OVERWRITE_VERTICAL_LAYOUT_CONTAINER = `.${ELEMENT_CONTAINER}${IS_LAYOUT_HORIZONTAL}`;\nconst OVERWRITE_VERTICAL_LAYOUT_LINE = `${OVERWRITE_VERTICAL_LAYOUT_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_LINE = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\n// prettier-ignore\nconst OverwriteThemeStyles = `\n ${OVERWRITE_THEME_DARK_LINE} {\n background-color: ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst DisplayLineStyles = `\n .${ELEMENT_ACTIVE_LINE_STRIP} {\n position: absolute;\n height: 100%;\n top: 0;\n left: -2px;\n width: 2px;\n background-color: ${token.color.gray.light};\n z-index: -1;\n }\n\n ${OVERWRITE_VERTICAL_LAYOUT_LINE} {\n height: 2px;\n left: 0;\n top: inherit;\n }\n\n .${ELEMENT_ACTIVE_LINE} {\n position: absolute;\n width: 0;\n height: 0;\n display: block;\n background-color: ${token.color.red};\n transform: translate(0);\n }\n`;\n\n// prettier-ignore\nconst STYLES_TABS_ELEMENT = `\n .${ELEMENT_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n position: relative;\n }\n\n ${DisplayLineStyles}\n ${OverwriteThemeStyles}\n`;\n\nconst SetDisplay = ({\n GetElements,\n GetState,\n transition = true,\n additionalSpread,\n}: {\n GetElements: TypeGetElements;\n GetState: TypeGetState;\n transition?: boolean;\n additionalSpread?: number | null;\n}) => {\n const {\n getContainer,\n getTabsContainer,\n getDisplayLineStrip,\n getDisplayLine,\n getContentStrip,\n getButtons,\n getContents,\n } = GetElements;\n const {\n getActiveTab,\n getIsFlexLayout,\n getButtonWidths,\n getButtonHeights,\n getIsThemeDark,\n } = GetState;\n\n const container = getContainer();\n const tabsContainer = getTabsContainer();\n const displayLineStrip = getDisplayLineStrip();\n const displayLine = getDisplayLine();\n const strip = getContentStrip();\n const buttons = getButtons();\n const contents = getContents();\n const isFlexLayout = getIsFlexLayout();\n const activeTab = getActiveTab();\n const buttonWidths = getButtonWidths();\n const buttonHeights = getButtonHeights();\n\n const SetActiveContent = () =>\n contents.map((content, index) => {\n if (!content) return;\n\n if (index === activeTab) {\n content.style.display = 'block';\n } else {\n content.style.display = 'none';\n }\n });\n\n const SetActiveButton = () =>\n buttons.map((button, index) => {\n if (index === activeTab) {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'true');\n if (getIsThemeDark) button.style.color = `${token.color.white}`;\n } else {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'false');\n if (getIsThemeDark) button.style.color = `${token.color.gray.light}`;\n }\n });\n\n const SetContentPosition = () => {\n const activeContent = contents[activeTab];\n const space = isFlexLayout\n ? Utility.theme.convertPixelStringToNumber(token.spacing.xl)\n : Utility.theme.convertPixelStringToNumber(token.spacing.md);\n\n if (activeContent) {\n if (transition) {\n strip.style.transition = 'height 0.5s';\n } else {\n strip.style.transition = 'none';\n }\n\n strip.style.height = `${activeContent.offsetHeight + space}px`;\n activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;\n activeContent.style.width = '100%';\n\n if (!isFlexLayout && transition) {\n const convertedSpace = Utility.theme.convertPixelStringToNumber(\n token.spacing.md,\n );\n const spread = additionalSpread\n ? convertedSpace + additionalSpread\n : convertedSpace;\n\n Utility.theme.animations.scrollTo({\n element: activeContent,\n spread,\n });\n }\n }\n };\n\n const SetContainerStyles = () => {\n if (isFlexLayout) {\n container.setAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL, '');\n } else {\n container.removeAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL);\n }\n };\n\n const StyleWrapperStyles = () => {\n if (isFlexLayout) {\n tabsContainer.style.display = 'flex';\n } else {\n tabsContainer.style.display = 'block';\n }\n };\n\n const SetLineStyles = () => {\n const activeButton = buttons[activeTab];\n\n if (transition) {\n displayLine.style.transition =\n 'width 0.5s ease-in-out, height 0.5s ease-in-out, transform 0.5s ease-in-out';\n } else {\n displayLine.style.transition = 'none';\n }\n\n if (isFlexLayout) {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetWidth;\n }\n }\n\n displayLineStrip.style.width = `${buttonWidths}px`;\n displayLineStrip.style.height = `2px`;\n displayLine.style.top = `inherit`;\n displayLine.style.left = `0`;\n displayLine.style.width = `${activeButton.offsetWidth}px`;\n displayLine.style.height = `2px`;\n displayLine.style.transform = `translate(${offset}px, 0)`;\n } else {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetHeight;\n }\n }\n\n displayLineStrip.style.width = `2px`;\n displayLineStrip.style.height = `${buttonHeights}px`;\n displayLine.style.top = `0`;\n displayLine.style.left = `-2px`;\n displayLine.style.width = `2px`;\n displayLine.style.height = `${activeButton.offsetHeight}px`;\n displayLine.style.transform = `translate(0, ${offset}px)`;\n }\n };\n\n SetActiveContent();\n SetActiveButton();\n SetContainerStyles();\n StyleWrapperStyles();\n SetLineStyles();\n SetContentPosition();\n};\n\nexport default (props: TypeTabsProps) =>\n (() => {\n const { isThemeDark, tabsContainer, shadowContent, topPosition } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const contentStrip = document.createElement('div');\n const displayLineStrip = document.createElement('div');\n const displayLine = document.createElement('span');\n const children = Array.from(tabsContainer.children);\n const buttons = Array.from(tabsContainer.querySelectorAll('button'));\n const additionalSpread = topPosition ? parseInt(topPosition) : null;\n const contents = children.filter((child) =>\n buttons.find(\n (button) =>\n button.getAttribute('aria-controls') === child.getAttribute('id'),\n ),\n ) as HTMLElement[];\n const GetElements = {\n getContainer: () => container,\n getTabsContainer: () => tabsContainer,\n getDisplayLineStrip: () => displayLineStrip,\n getDisplayLine: () => displayLine,\n getContentStrip: () => contentStrip,\n getButtons: () => buttons,\n getContents: () => contents,\n };\n const GetState = {\n getActiveTab: () => activeTab,\n getIsFlexLayout: () => isFlexLayout,\n getButtonWidths: () => buttonWidths,\n getButtonHeights: () => buttonHeights,\n getIsThemeDark: isThemeDark || false,\n };\n const GetContext = { GetElements, GetState };\n const SetActiveTab = (index: number) => {\n activeTab = index;\n SetDisplay({ ...GetContext, additionalSpread });\n };\n const SetDisplayLayout = () => {\n buttonWidths = buttons.reduce(\n (acc, button) => acc + button.offsetWidth,\n 0,\n );\n\n buttonHeights = buttons.reduce(\n (acc, button) => acc + button.offsetHeight,\n 0,\n );\n\n isFlexLayout = buttonWidths < container.offsetWidth;\n };\n const SetLoadStyles = () => {\n buttons.forEach((button, index) => {\n button.addEventListener('click', () => SetActiveTab(index));\n button.style.position = 'relative';\n button.style.textAlign = 'left';\n button.style.display = 'inline-block';\n button.style.padding = `${token.spacing.sm} ${token.spacing.md}`;\n button.style.border = 'none';\n button.style.background = 'transparent';\n\n Object.keys(typography.sans.large).forEach((key) => {\n const keyRef = key as keyof typeof typography.sans.large;\n (button.style as any)[keyRef] = typography.sans.large[keyRef];\n });\n\n if (isThemeDark) {\n button.style.color = token.color.white;\n }\n });\n\n contents.forEach((content) => {\n if (!content) return;\n content.style.display = 'none';\n content.style.position = 'absolute';\n content.style.top = '0';\n content.style.left = '0';\n });\n };\n let activeTab = 0;\n let isFlexLayout = false;\n let buttonWidths = 0;\n let buttonHeights = 0;\n\n const EventResize = () => {\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n const EventLoad = () => {\n SetLoadStyles();\n SetDisplay({ ...GetContext, transition: false });\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n\n contentStrip.classList.add(ELEMENT_CONTENT_STRIP);\n\n if (shadowContent) {\n container.appendChild(shadowContent);\n } else {\n container.appendChild(tabsContainer);\n }\n\n displayLineStrip.classList.add(ELEMENT_ACTIVE_LINE_STRIP);\n container.appendChild(displayLineStrip);\n displayLine.classList.add(ELEMENT_ACTIVE_LINE);\n container.appendChild(displayLine);\n\n container.appendChild(contentStrip);\n container.classList.add(ELEMENT_CONTAINER);\n if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n declaration.classList.add(ELEMENT_DECLARATION);\n declaration.appendChild(container);\n\n window.addEventListener(\n 'resize',\n Utility.performance.debounce(EventResize, 10),\n );\n\n return {\n element: declaration,\n styles: STYLES_TABS_ELEMENT,\n events: {\n resize: EventResize,\n load: EventLoad,\n },\n };\n })();\n"],"names":["Utility.theme.convertPixelStringToNumber","Utility.theme.animations.scrollTo","Utility.performance.debounce"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standard.mjs","sources":["../../../source/composite/tabs/standard.ts"],"sourcesContent":["import * as token from '@universityofmaryland/web-styles-library/token';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport { smoothScrollToElement } from '@universityofmaryland/web-utilities-library/animation';\nimport { debounce } from '@universityofmaryland/web-utilities-library/performance';\nimport { parsePixelValue } from '@universityofmaryland/web-utilities-library/styles';\n\ntype TypeTabsProps = {\n tabsContainer: HTMLElement;\n isThemeDark?: boolean;\n shadowContent?: HTMLSlotElement;\n topPosition?: string | null;\n};\n\ntype TypeGetElements = {\n getContainer: () => HTMLElement;\n getTabsContainer: () => HTMLElement;\n getDisplayLineStrip: () => HTMLElement;\n getDisplayLine: () => HTMLElement;\n getContentStrip: () => HTMLElement;\n getButtons: () => HTMLElement[];\n getContents: () => HTMLElement[];\n};\n\ntype TypeGetState = {\n getActiveTab: () => number;\n getIsFlexLayout: () => boolean;\n getButtonWidths: () => number;\n getButtonHeights: () => number;\n getIsThemeDark: boolean;\n};\n\nconst ATTRIBUTE_LAYOUT_HORIZONTAL = 'data-layout-horizontal';\nconst ATTRIBUTE_ARIA_EXPANDED = 'aria-expanded';\nconst ATTRIBUTE_THEME = 'theme';\nconst THEME_DARK = 'dark';\n\nconst ELEMENT_NAME = 'umd-element-tabs';\nconst ELEMENT_DECLARATION = 'tabs-declaration';\nconst ELEMENT_CONTAINER = 'tabs-container';\nconst ELEMENT_CONTENT_STRIP = 'tabs-content-strip';\nconst ELEMENT_ACTIVE_LINE_STRIP = 'tab-active-line-strip';\nconst ELEMENT_ACTIVE_LINE = 'tab-active-line';\n\nconst IS_LAYOUT_HORIZONTAL = `[${ATTRIBUTE_LAYOUT_HORIZONTAL}]`;\nconst IS_THEME_DARK = `[${ATTRIBUTE_THEME}=\"${THEME_DARK}\"]`;\n\nconst OVERWRITE_VERTICAL_LAYOUT_CONTAINER = `.${ELEMENT_CONTAINER}${IS_LAYOUT_HORIZONTAL}`;\nconst OVERWRITE_VERTICAL_LAYOUT_LINE = `${OVERWRITE_VERTICAL_LAYOUT_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\nconst OVERWRITE_THEME_DARK_CONTAINER = `.${ELEMENT_CONTAINER}${IS_THEME_DARK}`;\nconst OVERWRITE_THEME_DARK_LINE = `${OVERWRITE_THEME_DARK_CONTAINER} .${ELEMENT_ACTIVE_LINE_STRIP}`;\n\n// prettier-ignore\nconst OverwriteThemeStyles = `\n ${OVERWRITE_THEME_DARK_LINE} {\n background-color: ${token.color.gray.dark};\n }\n`;\n\n// prettier-ignore\nconst DisplayLineStyles = `\n .${ELEMENT_ACTIVE_LINE_STRIP} {\n position: absolute;\n height: 100%;\n top: 0;\n left: -2px;\n width: 2px;\n background-color: ${token.color.gray.light};\n z-index: -1;\n }\n\n ${OVERWRITE_VERTICAL_LAYOUT_LINE} {\n height: 2px;\n left: 0;\n top: inherit;\n }\n\n .${ELEMENT_ACTIVE_LINE} {\n position: absolute;\n width: 0;\n height: 0;\n display: block;\n background-color: ${token.color.red};\n transform: translate(0);\n }\n`;\n\n// prettier-ignore\nconst STYLES_TABS_ELEMENT = `\n .${ELEMENT_DECLARATION} {\n container: ${ELEMENT_NAME} / inline-size;\n position: relative;\n }\n\n ${DisplayLineStyles}\n ${OverwriteThemeStyles}\n`;\n\nconst SetDisplay = ({\n GetElements,\n GetState,\n transition = true,\n additionalSpread,\n}: {\n GetElements: TypeGetElements;\n GetState: TypeGetState;\n transition?: boolean;\n additionalSpread?: number | null;\n}) => {\n const {\n getContainer,\n getTabsContainer,\n getDisplayLineStrip,\n getDisplayLine,\n getContentStrip,\n getButtons,\n getContents,\n } = GetElements;\n const {\n getActiveTab,\n getIsFlexLayout,\n getButtonWidths,\n getButtonHeights,\n getIsThemeDark,\n } = GetState;\n\n const container = getContainer();\n const tabsContainer = getTabsContainer();\n const displayLineStrip = getDisplayLineStrip();\n const displayLine = getDisplayLine();\n const strip = getContentStrip();\n const buttons = getButtons();\n const contents = getContents();\n const isFlexLayout = getIsFlexLayout();\n const activeTab = getActiveTab();\n const buttonWidths = getButtonWidths();\n const buttonHeights = getButtonHeights();\n\n const SetActiveContent = () =>\n contents.map((content, index) => {\n if (!content) return;\n\n if (index === activeTab) {\n content.style.display = 'block';\n } else {\n content.style.display = 'none';\n }\n });\n\n const SetActiveButton = () =>\n buttons.map((button, index) => {\n if (index === activeTab) {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'true');\n if (getIsThemeDark) button.style.color = `${token.color.white}`;\n } else {\n button.setAttribute(ATTRIBUTE_ARIA_EXPANDED, 'false');\n if (getIsThemeDark) button.style.color = `${token.color.gray.light}`;\n }\n });\n\n const SetContentPosition = () => {\n const activeContent = contents[activeTab];\n const space = isFlexLayout\n ? parsePixelValue(token.spacing.xl)\n : parsePixelValue(token.spacing.md);\n\n if (activeContent) {\n if (transition) {\n strip.style.transition = 'height 0.5s';\n } else {\n strip.style.transition = 'none';\n }\n\n strip.style.height = `${activeContent.offsetHeight + space}px`;\n activeContent.style.top = `${tabsContainer.offsetHeight + space}px`;\n activeContent.style.width = '100%';\n\n if (!isFlexLayout && transition) {\n const convertedSpace = parsePixelValue(token.spacing.md);\n const spread = additionalSpread\n ? convertedSpace + additionalSpread\n : convertedSpace;\n\n smoothScrollToElement({\n element: activeContent,\n spread,\n });\n }\n }\n };\n\n const SetContainerStyles = () => {\n if (isFlexLayout) {\n container.setAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL, '');\n } else {\n container.removeAttribute(ATTRIBUTE_LAYOUT_HORIZONTAL);\n }\n };\n\n const StyleWrapperStyles = () => {\n if (isFlexLayout) {\n tabsContainer.style.display = 'flex';\n } else {\n tabsContainer.style.display = 'block';\n }\n };\n\n const SetLineStyles = () => {\n const activeButton = buttons[activeTab];\n\n if (transition) {\n displayLine.style.transition =\n 'width 0.5s ease-in-out, height 0.5s ease-in-out, transform 0.5s ease-in-out';\n } else {\n displayLine.style.transition = 'none';\n }\n\n if (isFlexLayout) {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetWidth;\n }\n }\n\n displayLineStrip.style.width = `${buttonWidths}px`;\n displayLineStrip.style.height = `2px`;\n displayLine.style.top = `inherit`;\n displayLine.style.left = `0`;\n displayLine.style.width = `${activeButton.offsetWidth}px`;\n displayLine.style.height = `2px`;\n displayLine.style.transform = `translate(${offset}px, 0)`;\n } else {\n let offset = 0;\n\n if (activeTab > 0) {\n for (let i = 0; i < activeTab; i++) {\n offset += buttons[i].offsetHeight;\n }\n }\n\n displayLineStrip.style.width = `2px`;\n displayLineStrip.style.height = `${buttonHeights}px`;\n displayLine.style.top = `0`;\n displayLine.style.left = `-2px`;\n displayLine.style.width = `2px`;\n displayLine.style.height = `${activeButton.offsetHeight}px`;\n displayLine.style.transform = `translate(0, ${offset}px)`;\n }\n };\n\n SetActiveContent();\n SetActiveButton();\n SetContainerStyles();\n StyleWrapperStyles();\n SetLineStyles();\n SetContentPosition();\n};\n\nexport default (props: TypeTabsProps) =>\n (() => {\n const { isThemeDark, tabsContainer, shadowContent, topPosition } = props;\n const declaration = document.createElement('div');\n const container = document.createElement('div');\n const contentStrip = document.createElement('div');\n const displayLineStrip = document.createElement('div');\n const displayLine = document.createElement('span');\n const children = Array.from(tabsContainer.children);\n const buttons = Array.from(tabsContainer.querySelectorAll('button'));\n const additionalSpread = topPosition ? parseInt(topPosition) : null;\n const contents = children.filter((child) =>\n buttons.find(\n (button) =>\n button.getAttribute('aria-controls') === child.getAttribute('id'),\n ),\n ) as HTMLElement[];\n const GetElements = {\n getContainer: () => container,\n getTabsContainer: () => tabsContainer,\n getDisplayLineStrip: () => displayLineStrip,\n getDisplayLine: () => displayLine,\n getContentStrip: () => contentStrip,\n getButtons: () => buttons,\n getContents: () => contents,\n };\n const GetState = {\n getActiveTab: () => activeTab,\n getIsFlexLayout: () => isFlexLayout,\n getButtonWidths: () => buttonWidths,\n getButtonHeights: () => buttonHeights,\n getIsThemeDark: isThemeDark || false,\n };\n const GetContext = { GetElements, GetState };\n const SetActiveTab = (index: number) => {\n activeTab = index;\n SetDisplay({ ...GetContext, additionalSpread });\n };\n const SetDisplayLayout = () => {\n buttonWidths = buttons.reduce(\n (acc, button) => acc + button.offsetWidth,\n 0,\n );\n\n buttonHeights = buttons.reduce(\n (acc, button) => acc + button.offsetHeight,\n 0,\n );\n\n isFlexLayout = buttonWidths < container.offsetWidth;\n };\n const SetLoadStyles = () => {\n buttons.forEach((button, index) => {\n button.addEventListener('click', () => SetActiveTab(index));\n button.style.position = 'relative';\n button.style.textAlign = 'left';\n button.style.display = 'inline-block';\n button.style.padding = `${token.spacing.sm} ${token.spacing.md}`;\n button.style.border = 'none';\n button.style.background = 'transparent';\n\n Object.keys(typography.sans.large).forEach((key) => {\n const keyRef = key as keyof typeof typography.sans.large;\n (button.style as any)[keyRef] = typography.sans.large[keyRef];\n });\n\n if (isThemeDark) {\n button.style.color = token.color.white;\n }\n });\n\n contents.forEach((content) => {\n if (!content) return;\n content.style.display = 'none';\n content.style.position = 'absolute';\n content.style.top = '0';\n content.style.left = '0';\n });\n };\n let activeTab = 0;\n let isFlexLayout = false;\n let buttonWidths = 0;\n let buttonHeights = 0;\n\n const EventResize = () => {\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n const EventLoad = () => {\n SetLoadStyles();\n SetDisplay({ ...GetContext, transition: false });\n SetDisplayLayout();\n SetDisplay({ ...GetContext, transition: false });\n };\n\n contentStrip.classList.add(ELEMENT_CONTENT_STRIP);\n\n if (shadowContent) {\n container.appendChild(shadowContent);\n } else {\n container.appendChild(tabsContainer);\n }\n\n displayLineStrip.classList.add(ELEMENT_ACTIVE_LINE_STRIP);\n container.appendChild(displayLineStrip);\n displayLine.classList.add(ELEMENT_ACTIVE_LINE);\n container.appendChild(displayLine);\n\n container.appendChild(contentStrip);\n container.classList.add(ELEMENT_CONTAINER);\n if (isThemeDark) container.setAttribute(ATTRIBUTE_THEME, THEME_DARK);\n\n declaration.classList.add(ELEMENT_DECLARATION);\n declaration.appendChild(container);\n\n window.addEventListener('resize', debounce(EventResize, 10));\n\n return {\n element: declaration,\n styles: STYLES_TABS_ELEMENT,\n events: {\n resize: EventResize,\n load: EventLoad,\n },\n };\n })();\n"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,10 +4,8 @@ const atomic = require("./atomic.js");
|
|
|
4
4
|
const composite = require("./composite.js");
|
|
5
5
|
const layout = require("./layout.js");
|
|
6
6
|
const model = require("./model.js");
|
|
7
|
-
const utilities = require("./utilities.js");
|
|
8
7
|
exports.Atomic = atomic;
|
|
9
8
|
exports.Composite = composite;
|
|
10
9
|
exports.Layout = layout;
|
|
11
10
|
exports.Model = model;
|
|
12
|
-
exports.Utilities = utilities;
|
|
13
11
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
package/dist/index.mjs
CHANGED
|
@@ -2,12 +2,10 @@ import * as atomic from "./atomic.mjs";
|
|
|
2
2
|
import * as composite from "./composite.mjs";
|
|
3
3
|
import * as layout from "./layout.mjs";
|
|
4
4
|
import * as model from "./model.mjs";
|
|
5
|
-
import * as utilities from "./utilities.mjs";
|
|
6
5
|
export {
|
|
7
6
|
atomic as Atomic,
|
|
8
7
|
composite as Composite,
|
|
9
8
|
layout as Layout,
|
|
10
|
-
model as Model
|
|
11
|
-
utilities as Utilities
|
|
9
|
+
model as Model
|
|
12
10
|
};
|
|
13
11
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../source/layout/image.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../source/layout/image.ts"],"names":[],"mappings":";6CA6DG;QACD,KAAK,EAAE,gBAAgB,GAAG,WAAW,GAAG,MAAM,CAAC;QAC/C,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB;;;;;;AAsCD,wBAME"}
|
package/dist/layout/image.js
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
3
|
-
const
|
|
2
|
+
const token = require("@universityofmaryland/web-styles-library/token");
|
|
3
|
+
const typography = require("@universityofmaryland/web-styles-library/typography");
|
|
4
|
+
const styles = require("@universityofmaryland/web-utilities-library/styles");
|
|
5
|
+
function _interopNamespaceDefault(e) {
|
|
6
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
7
|
+
if (e) {
|
|
8
|
+
for (const k in e) {
|
|
9
|
+
if (k !== "default") {
|
|
10
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
11
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: () => e[k]
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
n.default = e;
|
|
19
|
+
return Object.freeze(n);
|
|
20
|
+
}
|
|
21
|
+
const token__namespace = /* @__PURE__ */ _interopNamespaceDefault(token);
|
|
22
|
+
const typography__namespace = /* @__PURE__ */ _interopNamespaceDefault(typography);
|
|
4
23
|
const ATTRIBUTE_CAPTION = "data-caption";
|
|
5
24
|
const ATTRIBUTE_CREDIT = "data-credit";
|
|
6
25
|
const ELEMENT_IMAGE_CONTAINER = "image-container";
|
|
@@ -10,9 +29,9 @@ const STYLES_IMAGE_CONTAINER = `
|
|
|
10
29
|
display: inline-block;
|
|
11
30
|
}
|
|
12
31
|
|
|
13
|
-
${
|
|
32
|
+
${styles.jssToCSS({
|
|
14
33
|
styleObj: {
|
|
15
|
-
[`.${ELEMENT_IMAGE_CONTAINER} > span`]:
|
|
34
|
+
[`.${ELEMENT_IMAGE_CONTAINER} > span`]: typography__namespace.sans.min
|
|
16
35
|
}
|
|
17
36
|
})}
|
|
18
37
|
|
|
@@ -22,9 +41,9 @@ const STYLES_IMAGE_CONTAINER = `
|
|
|
22
41
|
right: 0;
|
|
23
42
|
height: auto !important;
|
|
24
43
|
width: auto !important;
|
|
25
|
-
padding: ${
|
|
44
|
+
padding: ${token__namespace.spacing.min};
|
|
26
45
|
background-color: rgba(0, 0, 0, 0.5);
|
|
27
|
-
color: ${
|
|
46
|
+
color: ${token__namespace.color.white};
|
|
28
47
|
z-index: 99;
|
|
29
48
|
}
|
|
30
49
|
|