@ulu/frontend 0.1.0-beta.1 → 0.1.0-beta.100
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/CHANGELOG.md +681 -2
- package/README.dev.md +3 -3
- package/README.md +14 -4
- package/dist/ulu-frontend.min.css +1 -1
- package/dist/ulu-frontend.min.js +36 -29
- package/docs-dev/.nojekyll +1 -0
- package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +37 -0
- package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
- package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
- package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
- package/docs-dev/assets/favicons/browserconfig.xml +9 -0
- package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
- package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
- package/docs-dev/assets/favicons/favicon.ico +0 -0
- package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
- package/docs-dev/assets/favicons/safari-pinned-tab.svg +1 -0
- package/docs-dev/assets/favicons/site.webmanifest +19 -0
- package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
- package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
- package/docs-dev/assets/fonts/inter/LICENSE.txt +92 -0
- package/docs-dev/assets/fonts/inter/inter.css +37 -0
- package/docs-dev/assets/main.js +23312 -0
- package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +2 -0
- package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
- package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
- package/docs-dev/assets/placeholder/icon-check.svg +1 -0
- package/docs-dev/assets/placeholder/image-1-attribution.txt +7 -0
- package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
- package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
- package/docs-dev/assets/placeholder/image-1.jpg +0 -0
- package/docs-dev/assets/style.css +19153 -0
- package/docs-dev/changelog/index.html +7184 -0
- package/docs-dev/demos/accordion/index.html +5811 -0
- package/docs-dev/demos/badge/index.html +5655 -0
- package/docs-dev/demos/badge-stack/index.html +5636 -0
- package/docs-dev/demos/badge.1/index.html +5595 -0
- package/docs-dev/demos/basic-hero/index.html +111 -0
- package/docs-dev/demos/breakpoints-manager/index.html +5666 -0
- package/docs-dev/demos/button/index.html +5665 -0
- package/docs-dev/demos/button-group/index.html +5652 -0
- package/docs-dev/demos/button-verbose/index.html +5658 -0
- package/docs-dev/demos/callout/index.html +5704 -0
- package/docs-dev/demos/captioned-figure/index.html +5686 -0
- package/docs-dev/demos/card/index.html +5682 -0
- package/docs-dev/demos/card-grid/index.html +5777 -0
- package/docs-dev/demos/counter-list/index.html +5660 -0
- package/docs-dev/demos/css-icons/index.html +6298 -0
- package/docs-dev/demos/data-grid/index.html +6529 -0
- package/docs-dev/demos/data-table/index.html +5833 -0
- package/docs-dev/demos/details-group/index.html +5687 -0
- package/docs-dev/demos/file-save/index.html +5675 -0
- package/docs-dev/demos/flipcard/index.html +6224 -0
- package/docs-dev/demos/form-theme/index.html +5842 -0
- package/docs-dev/demos/headline-label/index.html +5622 -0
- package/docs-dev/demos/hero/index.html +309 -0
- package/docs-dev/demos/image-grid/index.html +165 -0
- package/docs-dev/demos/index.html +5613 -0
- package/docs-dev/demos/list-inline/index.html +5640 -0
- package/docs-dev/demos/list-lines/index.html +5630 -0
- package/docs-dev/demos/menu-stack/index.html +5769 -0
- package/docs-dev/demos/modals/index.html +5844 -0
- package/docs-dev/demos/nav-strip/index.html +5725 -0
- package/docs-dev/demos/overlay-section/index.html +5701 -0
- package/docs-dev/demos/panel/index.html +5682 -0
- package/docs-dev/demos/popovers/index.html +5873 -0
- package/docs-dev/demos/print/index.html +5633 -0
- package/docs-dev/demos/pull-quote/index.html +5632 -0
- package/docs-dev/demos/rail/index.html +5730 -0
- package/docs-dev/demos/rule/index.html +5694 -0
- package/docs-dev/demos/scroll-slider/index.html +170 -0
- package/docs-dev/demos/scrollpoints/index.html +5651 -0
- package/docs-dev/demos/skeleton/index.html +5678 -0
- package/docs-dev/demos/slider/index.html +172 -0
- package/docs-dev/demos/spoke-spinner/index.html +5628 -0
- package/docs-dev/demos/sticky-list/index.html +5643 -0
- package/docs-dev/demos/tabs/index.html +5753 -0
- package/docs-dev/demos/tag/index.html +5633 -0
- package/docs-dev/demos/theme-toggle/index.html +5699 -0
- package/docs-dev/demos/tile-grid-overlay/index.html +390 -0
- package/docs-dev/demos/tiles/index.html +5882 -0
- package/docs-dev/demos/tooltip/index.html +5661 -0
- package/docs-dev/demos/wysiwyg/index.html +5672 -0
- package/docs-dev/guide/building-stylesheet/index.html +5682 -0
- package/docs-dev/guide/developing-ulu-scss-module/index.html +5734 -0
- package/docs-dev/guide/index.html +5615 -0
- package/docs-dev/index.html +5662 -0
- package/docs-dev/javascript/events/index.html +5811 -0
- package/docs-dev/javascript/index.html +5628 -0
- package/docs-dev/javascript/settings/index.html +5825 -0
- package/docs-dev/javascript/ui-breakpoints/index.html +6071 -0
- package/docs-dev/javascript/ui-collapsible/index.html +5738 -0
- package/docs-dev/javascript/ui-details-group/index.html +5742 -0
- package/docs-dev/javascript/ui-dialog/index.html +5787 -0
- package/docs-dev/javascript/ui-flipcard/index.html +5678 -0
- package/docs-dev/javascript/ui-grid/index.html +5653 -0
- package/docs-dev/javascript/ui-modal-builder/index.html +5901 -0
- package/docs-dev/javascript/ui-overflow-scroller/index.html +5611 -0
- package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +5629 -0
- package/docs-dev/javascript/ui-page/index.html +5626 -0
- package/docs-dev/javascript/ui-popover/index.html +5661 -0
- package/docs-dev/javascript/ui-print/index.html +5670 -0
- package/docs-dev/javascript/ui-print-details/index.html +5641 -0
- package/docs-dev/javascript/ui-programmatic-modal/index.html +5611 -0
- package/docs-dev/javascript/ui-proxy-click/index.html +5740 -0
- package/docs-dev/javascript/ui-resizer/index.html +5946 -0
- package/docs-dev/javascript/ui-scroll-slider/index.html +5672 -0
- package/docs-dev/javascript/ui-scrollpoint/index.html +5851 -0
- package/docs-dev/javascript/ui-slider/index.html +5813 -0
- package/docs-dev/javascript/ui-tabs/index.html +5706 -0
- package/docs-dev/javascript/ui-theme-toggle/index.html +5830 -0
- package/docs-dev/javascript/ui-tooltip/index.html +5754 -0
- package/docs-dev/javascript/utils-class-logger/index.html +5746 -0
- package/docs-dev/javascript/utils-css/index.html +5644 -0
- package/docs-dev/javascript/utils-dom/index.html +5711 -0
- package/docs-dev/javascript/utils-file-save/index.html +5783 -0
- package/docs-dev/javascript/utils-floating-ui/index.html +5643 -0
- package/docs-dev/javascript/utils-id/index.html +5653 -0
- package/docs-dev/javascript/utils-pause-youtube-video/index.html +5661 -0
- package/docs-dev/javascript/utils-system/index.html +5947 -0
- package/docs-dev/sass/base/color/index.html +5644 -0
- package/docs-dev/sass/base/elements/index.html +5815 -0
- package/docs-dev/sass/base/index/index.html +5814 -0
- package/docs-dev/sass/base/index.html +5622 -0
- package/docs-dev/sass/base/keyframes/index.html +5646 -0
- package/docs-dev/sass/base/layout/index.html +5806 -0
- package/docs-dev/sass/base/normalize/index.html +5654 -0
- package/docs-dev/sass/base/print/index.html +5650 -0
- package/docs-dev/sass/base/root/index.html +5670 -0
- package/docs-dev/sass/base/typography/index.html +5670 -0
- package/docs-dev/sass/components/accordion/index.html +5979 -0
- package/docs-dev/sass/components/adaptive-spacing/index.html +5915 -0
- package/docs-dev/sass/components/badge/index.html +5881 -0
- package/docs-dev/sass/components/badge-stack/index.html +5811 -0
- package/docs-dev/sass/components/basic-hero/index.html +5805 -0
- package/docs-dev/sass/components/button/index.html +5799 -0
- package/docs-dev/sass/components/button-group/index.html +5803 -0
- package/docs-dev/sass/components/button-verbose/index.html +5986 -0
- package/docs-dev/sass/components/callout/index.html +5961 -0
- package/docs-dev/sass/components/captioned-figure/index.html +5904 -0
- package/docs-dev/sass/components/card/index.html +6219 -0
- package/docs-dev/sass/components/card-grid/index.html +5813 -0
- package/docs-dev/sass/components/counter-list/index.html +5887 -0
- package/docs-dev/sass/components/css-icon/index.html +5917 -0
- package/docs-dev/sass/components/data-grid/index.html +6052 -0
- package/docs-dev/sass/components/data-table/index.html +5988 -0
- package/docs-dev/sass/components/fill-context/index.html +5679 -0
- package/docs-dev/sass/components/flipcard/index.html +5980 -0
- package/docs-dev/sass/components/flipcard-grid/index.html +5800 -0
- package/docs-dev/sass/components/form-theme/index.html +6525 -0
- package/docs-dev/sass/components/headline-label/index.html +5833 -0
- package/docs-dev/sass/components/hero/index.html +5849 -0
- package/docs-dev/sass/components/horizontal-rule/index.html +5798 -0
- package/docs-dev/sass/components/image-grid/index.html +5805 -0
- package/docs-dev/sass/components/index/index.html +5859 -0
- package/docs-dev/sass/components/index.html +5622 -0
- package/docs-dev/sass/components/links/index.html +5649 -0
- package/docs-dev/sass/components/list-inline/index.html +5819 -0
- package/docs-dev/sass/components/list-lines/index.html +5840 -0
- package/docs-dev/sass/components/list-ordered/index.html +5645 -0
- package/docs-dev/sass/components/list-unordered/index.html +5649 -0
- package/docs-dev/sass/components/menu-stack/index.html +5992 -0
- package/docs-dev/sass/components/modal/index.html +6068 -0
- package/docs-dev/sass/components/nav-strip/index.html +5899 -0
- package/docs-dev/sass/components/overlay-section/index.html +5843 -0
- package/docs-dev/sass/components/pager/index.html +5961 -0
- package/docs-dev/sass/components/panel/index.html +6033 -0
- package/docs-dev/sass/components/placeholder-block/index.html +5883 -0
- package/docs-dev/sass/components/popover/index.html +5994 -0
- package/docs-dev/sass/components/pull-quote/index.html +5857 -0
- package/docs-dev/sass/components/rail/index.html +5823 -0
- package/docs-dev/sass/components/ratio-box/index.html +5803 -0
- package/docs-dev/sass/components/rule/index.html +5805 -0
- package/docs-dev/sass/components/scroll-slider/index.html +5904 -0
- package/docs-dev/sass/components/skeleton/index.html +5861 -0
- package/docs-dev/sass/components/skip-link/index.html +5789 -0
- package/docs-dev/sass/components/slider/index.html +5913 -0
- package/docs-dev/sass/components/spoke-spinner/index.html +5863 -0
- package/docs-dev/sass/components/sticky-list/index.html +6023 -0
- package/docs-dev/sass/components/table-sticky/index.html +5677 -0
- package/docs-dev/sass/components/tabs/index.html +5954 -0
- package/docs-dev/sass/components/tag/index.html +5964 -0
- package/docs-dev/sass/components/tile-button/index.html +5844 -0
- package/docs-dev/sass/components/tile-grid/index.html +5979 -0
- package/docs-dev/sass/components/tile-grid-overlay/index.html +5780 -0
- package/docs-dev/sass/components/vignette/index.html +5799 -0
- package/docs-dev/sass/components/wysiwyg/index.html +5827 -0
- package/docs-dev/sass/core/breakpoint/index.html +6454 -0
- package/docs-dev/sass/core/button/index.html +6538 -0
- package/docs-dev/sass/core/color/index.html +6520 -0
- package/docs-dev/sass/core/cssvar/index.html +6411 -0
- package/docs-dev/sass/core/element/index.html +6816 -0
- package/docs-dev/sass/core/index.html +5609 -0
- package/docs-dev/sass/core/layout/index.html +6388 -0
- package/docs-dev/sass/core/path/index.html +5778 -0
- package/docs-dev/sass/core/selector/index.html +5857 -0
- package/docs-dev/sass/core/typography/index.html +6783 -0
- package/docs-dev/sass/core/units/index.html +5822 -0
- package/docs-dev/sass/core/utils/index.html +8406 -0
- package/docs-dev/sass/helpers/color/index.html +5644 -0
- package/docs-dev/sass/helpers/display/index.html +5649 -0
- package/docs-dev/sass/helpers/index/index.html +5811 -0
- package/docs-dev/sass/helpers/index.html +5622 -0
- package/docs-dev/sass/helpers/print/index.html +5199 -0
- package/docs-dev/sass/helpers/typography/index.html +5672 -0
- package/docs-dev/sass/helpers/units/index.html +5818 -0
- package/docs-dev/sass/helpers/utilities/index.html +5649 -0
- package/docs-dev/sass/index.html +5673 -0
- package/js/events/index.js +17 -5
- package/js/index.js +1 -0
- package/js/settings.js +97 -0
- package/js/ui/breakpoints.js +19 -16
- package/js/ui/collapsible.js +8 -1
- package/js/ui/details-group.js +112 -0
- package/js/ui/dialog.js +103 -44
- package/js/ui/dialog.todo +2 -36
- package/js/ui/flipcard.js +37 -57
- package/js/ui/grid.js +15 -13
- package/js/ui/index.js +1 -0
- package/js/ui/modal-builder.js +127 -70
- package/js/ui/overflow-scroller.js +6 -4
- package/js/ui/page.js +2 -2
- package/js/ui/popover.js +38 -38
- package/js/ui/print.js +16 -25
- package/js/ui/programmatic-modal.js +9 -3
- package/js/ui/proxy-click.js +50 -36
- package/js/ui/resizer.js +408 -39
- package/js/ui/scroll-slider.js +24 -30
- package/js/ui/scrollpoint.js +29 -64
- package/js/ui/slider.js +108 -63
- package/js/ui/tabs.js +46 -39
- package/js/ui/theme-toggle.js +332 -94
- package/js/ui/tooltip.js +27 -32
- package/js/utils/class-logger.js +3 -3
- package/js/utils/css.js +13 -0
- package/js/utils/dom.js +23 -64
- package/js/utils/font-awesome.js +19 -0
- package/js/utils/index.js +2 -1
- package/js/utils/system.js +155 -0
- package/package.json +25 -11
- package/scss/README.md +9 -0
- package/scss/_breakpoint.scss +39 -5
- package/scss/_button.scss +7 -5
- package/scss/_color.scss +42 -9
- package/scss/_element.scss +124 -2
- package/scss/_layout.scss +7 -8
- package/scss/_units.scss +3 -2
- package/scss/_utils.scss +387 -16
- package/scss/base/_elements.scss +0 -1
- package/scss/base/_index.scss +1 -1
- package/scss/base/_keyframes.scss +15 -0
- package/scss/base/_layout.scss +1 -0
- package/scss/base/_print.scss +2 -0
- package/scss/base/_root.scss +2 -0
- package/scss/base/_typography.scss +7 -7
- package/scss/components/README.todos +14 -0
- package/scss/components/_accordion.scss +46 -32
- package/scss/components/_adaptive-spacing.scss +3 -3
- package/scss/components/_badge-stack.scss +84 -0
- package/scss/components/_badge.scss +35 -11
- package/scss/components/_basic-hero.scss +112 -0
- package/scss/components/_button-group.scss +90 -0
- package/scss/components/_button-verbose.scss +122 -40
- package/scss/components/_button.scss +2 -0
- package/scss/components/_callout.scss +129 -81
- package/scss/components/_captioned-figure.scss +25 -8
- package/scss/components/_card-grid.scss +3 -3
- package/scss/components/_card.scss +267 -91
- package/scss/components/_counter-list.scss +151 -0
- package/scss/components/_css-icon.scss +45 -30
- package/scss/components/_data-grid.scss +57 -14
- package/scss/components/_data-table.scss +46 -6
- package/scss/components/_flipcard-grid.scss +2 -2
- package/scss/components/_flipcard.scss +23 -17
- package/scss/components/_form-theme.scss +148 -137
- package/scss/components/_headline-label.scss +83 -0
- package/scss/components/_hero.scss +14 -12
- package/scss/components/_image-grid.scss +2 -2
- package/scss/components/_index.scss +60 -0
- package/scss/components/_list-inline.scss +80 -0
- package/scss/components/_list-lines.scss +46 -35
- package/scss/components/_list-ordered.scss +0 -1
- package/scss/components/_menu-stack.scss +44 -28
- package/scss/components/_modal.scss +75 -56
- package/scss/components/_nav-strip.scss +28 -19
- package/scss/components/_overlay-section.scss +6 -9
- package/scss/components/_pager.scss +11 -11
- package/scss/components/_panel.scss +246 -0
- package/scss/components/_placeholder-block.scss +6 -6
- package/scss/components/_popover.scss +176 -75
- package/scss/components/_pull-quote.scss +15 -15
- package/scss/components/_rail.scss +127 -0
- package/scss/components/_ratio-box.scss +4 -7
- package/scss/components/_rule.scss +6 -6
- package/scss/components/_scroll-slider.scss +4 -8
- package/scss/components/_skeleton.scss +126 -0
- package/scss/components/_skip-link.scss +2 -1
- package/scss/components/_slider.scss +53 -112
- package/scss/components/_spoke-spinner.scss +2 -2
- package/scss/components/_sticky-list.scss +206 -0
- package/scss/components/_tabs.scss +135 -51
- package/scss/components/_tag.scss +3 -3
- package/scss/components/_vignette.scss +3 -5
- package/scss/components/_wysiwyg.scss +21 -13
- package/scss/helpers/_display.scss +15 -18
- package/scss/helpers/_print.scss +12 -7
- package/scss/helpers/_utilities.scss +41 -31
- package/types/events/index.d.ts +10 -1
- package/types/events/index.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/settings.d.ts +70 -0
- package/types/settings.d.ts.map +1 -0
- package/types/ui/breakpoints.d.ts +14 -14
- package/types/ui/breakpoints.d.ts.map +1 -1
- package/types/ui/collapsible.d.ts.map +1 -1
- package/types/ui/details-group.d.ts +38 -0
- package/types/ui/details-group.d.ts.map +1 -0
- package/types/ui/dialog.d.ts +20 -14
- package/types/ui/dialog.d.ts.map +1 -1
- package/types/ui/flipcard.d.ts +16 -10
- package/types/ui/flipcard.d.ts.map +1 -1
- package/types/ui/grid.d.ts +4 -6
- package/types/ui/grid.d.ts.map +1 -1
- package/types/ui/index.d.ts +2 -1
- package/types/ui/modal-builder.d.ts +116 -11
- package/types/ui/modal-builder.d.ts.map +1 -1
- package/types/ui/overflow-scroller.d.ts +2 -2
- package/types/ui/overflow-scroller.d.ts.map +1 -1
- package/types/ui/popover.d.ts +6 -7
- package/types/ui/popover.d.ts.map +1 -1
- package/types/ui/print.d.ts +0 -4
- package/types/ui/print.d.ts.map +1 -1
- package/types/ui/programmatic-modal.d.ts.map +1 -1
- package/types/ui/proxy-click.d.ts +19 -3
- package/types/ui/proxy-click.d.ts.map +1 -1
- package/types/ui/resizer.d.ts +116 -16
- package/types/ui/resizer.d.ts.map +1 -1
- package/types/ui/scroll-slider.d.ts +5 -7
- package/types/ui/scroll-slider.d.ts.map +1 -1
- package/types/ui/scrollpoint.d.ts +3 -8
- package/types/ui/scrollpoint.d.ts.map +1 -1
- package/types/ui/slider.d.ts +33 -14
- package/types/ui/slider.d.ts.map +1 -1
- package/types/ui/tabs.d.ts +6 -8
- package/types/ui/tabs.d.ts.map +1 -1
- package/types/ui/theme-toggle.d.ts +51 -7
- package/types/ui/theme-toggle.d.ts.map +1 -1
- package/types/ui/tooltip.d.ts +3 -5
- package/types/ui/tooltip.d.ts.map +1 -1
- package/types/utils/css.d.ts +11 -0
- package/types/utils/css.d.ts.map +1 -0
- package/types/utils/dom.d.ts +12 -32
- package/types/utils/dom.d.ts.map +1 -1
- package/types/utils/font-awesome.d.ts +5 -0
- package/types/utils/font-awesome.d.ts.map +1 -0
- package/types/utils/index.d.ts +2 -1
- package/types/utils/system.d.ts +113 -0
- package/types/utils/system.d.ts.map +1 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group counter-list
|
|
3
|
+
/// Outputs a styled list with counters
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
@use "sass:selector" as sassSelector;
|
|
7
|
+
|
|
8
|
+
@use "../utils";
|
|
9
|
+
@use "../selector";
|
|
10
|
+
@use "../color";
|
|
11
|
+
@use "../breakpoint";
|
|
12
|
+
|
|
13
|
+
/// Module Settings
|
|
14
|
+
/// @type Map
|
|
15
|
+
/// @prop {List|CssUnit} margin [(2rem 0)] The top and bottom margin of the list.
|
|
16
|
+
/// @prop {List|CssUnit} item-margin [((0 0 1rem 0))] The margin applied to each list item.
|
|
17
|
+
/// @prop {Keyword} align-items [baseline] How to align the counter (flexbox align-items values)
|
|
18
|
+
/// @prop {CssUnit} counter-width [2.4em] The width and height (if height is falsy)
|
|
19
|
+
/// @prop {CssUnit} counter-height [null] The height (optional)
|
|
20
|
+
/// @prop {CssUnit} counter-gap [1em] The gap between the counter and the list item content.
|
|
21
|
+
/// @prop {String} counter-style [numeric] The list-style-type used for the counter.
|
|
22
|
+
/// @prop {Keyword|Percentage} counter-border-radius [50%] The border-radius of the counter element.
|
|
23
|
+
/// @prop {CssUnit} counter-font-size [1.2em] The font-size of the counter text.
|
|
24
|
+
/// @prop {Color|String} counter-color [white] The text color of the counter. Accepts color names or hex codes.
|
|
25
|
+
/// @prop {Color|String} counter-background-color ["accent"] The background color of the counter. Refers to a color in the color module.
|
|
26
|
+
/// @prop {String} extra-selector [null] Additional selectors to include table styling.
|
|
27
|
+
|
|
28
|
+
$config: (
|
|
29
|
+
"margin" : (2rem 0),
|
|
30
|
+
"item-margin" : (0 0 1rem 0),
|
|
31
|
+
"align-items" : baseline,
|
|
32
|
+
"counter-width" : 2.4em,
|
|
33
|
+
"counter-height" : null,
|
|
34
|
+
"counter-gap" : 1em,
|
|
35
|
+
"counter-style" : numeric,
|
|
36
|
+
"counter-border-radius" : 50%,
|
|
37
|
+
"counter-font-size" : 1.2em,
|
|
38
|
+
"counter-font-weight" : null,
|
|
39
|
+
"counter-font-family" : null,
|
|
40
|
+
"counter-color" : white,
|
|
41
|
+
"counter-background-color" : "accent",
|
|
42
|
+
"extra-selector" : null
|
|
43
|
+
) !default;
|
|
44
|
+
|
|
45
|
+
/// Change modules $config
|
|
46
|
+
/// @param {Map} $changes Map of changes
|
|
47
|
+
/// @example scss
|
|
48
|
+
/// @include ulu.component-counter-list-set(( "property" : value ));
|
|
49
|
+
|
|
50
|
+
@mixin set($changes) {
|
|
51
|
+
$config: map.merge($config, $changes) !global;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/// Get a config option
|
|
55
|
+
/// @param {Map} $name Name of property
|
|
56
|
+
/// @example scss
|
|
57
|
+
/// @include ulu.component-counter-list-get("property");
|
|
58
|
+
|
|
59
|
+
@function get($name) {
|
|
60
|
+
@return utils.require-map-get($config, $name, "counter-list [config]");
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/// Output counter-list component styles
|
|
64
|
+
/// @demo counter-list
|
|
65
|
+
/// @example html {preview}
|
|
66
|
+
/// <ol class="counter-list">
|
|
67
|
+
/// <li class="counter-list__item">This is a item that will get counted</li>
|
|
68
|
+
/// <li class="counter-list__item">Another item that has more content to show line wrapping. Lorem ipsum et depsi anu. Dolor et anu.</li>
|
|
69
|
+
/// <li class="counter-list__item">Small Amount of Text</li>
|
|
70
|
+
/// </ol>
|
|
71
|
+
|
|
72
|
+
@mixin styles {
|
|
73
|
+
$prefix: selector.class("counter-list");
|
|
74
|
+
$prefix-item: sassSelector.parse("#{ $prefix }__item");
|
|
75
|
+
$extra-selector: get("extra-selector");
|
|
76
|
+
|
|
77
|
+
$selector: $prefix;
|
|
78
|
+
$selector-item: sassSelector.parse("#{ $prefix } > li, #{ $prefix-item }");
|
|
79
|
+
|
|
80
|
+
@if ($extra-selector) {
|
|
81
|
+
$selector: sassSelector.parse("#{ $prefix }, #{ $extra-selector }");
|
|
82
|
+
$selector-item: sassSelector.parse("#{ $selector-item }, #{ $extra-selector } > li");
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
#{ $selector } {
|
|
86
|
+
margin: get("margin");
|
|
87
|
+
counter-reset: ulu-counter-list;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
#{ $selector-item } {
|
|
91
|
+
$width: get("counter-width");
|
|
92
|
+
$height: utils.fallback(get("counter-height"), $width);
|
|
93
|
+
|
|
94
|
+
display: flex;
|
|
95
|
+
gap: get("counter-gap");
|
|
96
|
+
align-items: get("align-items");
|
|
97
|
+
margin: get("item-margin");
|
|
98
|
+
min-height: $height;
|
|
99
|
+
&::before {
|
|
100
|
+
display: flex;
|
|
101
|
+
align-items: center;
|
|
102
|
+
justify-content: center;
|
|
103
|
+
width: $width;
|
|
104
|
+
height: $height;
|
|
105
|
+
flex: 0 0 $width;
|
|
106
|
+
counter-increment: ulu-counter-list;
|
|
107
|
+
content: counter(ulu-counter-list, get("counter-style"));
|
|
108
|
+
font-size: get("counter-font-size");
|
|
109
|
+
font-family: get("counter-font-family");
|
|
110
|
+
font-weight: get("counter-font-weight");
|
|
111
|
+
color: color.get(get("counter-color"));
|
|
112
|
+
background-color: color.get(get("counter-background-color"));
|
|
113
|
+
border-radius: get("counter-border-radius");
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// Keeping this could be useful
|
|
117
|
+
// but we need to think about how its setup
|
|
118
|
+
// - Probably should be a modifier (choice)
|
|
119
|
+
// - May need either option for how align-items is set (flex-start vs center)
|
|
120
|
+
// - This could be useful when used in grid
|
|
121
|
+
// - May need to be pervasive and not linked to a breakpoint (alternate style)
|
|
122
|
+
// - It's also just useful to know you could override the layout like this
|
|
123
|
+
// to get useful variations (maybe we don't need to include it but users
|
|
124
|
+
// can do specific)
|
|
125
|
+
// @if ( get("counter-mobile-toggle") ) {
|
|
126
|
+
// @include breakpoint.max("small") {
|
|
127
|
+
// padding-left: 0;
|
|
128
|
+
// padding-top: calc(get("counter-width") + get("counter-gap-mobile"));
|
|
129
|
+
// flex-direction: column;
|
|
130
|
+
// align-items: center;
|
|
131
|
+
// }
|
|
132
|
+
// }
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Modifiers
|
|
136
|
+
#{ $prefix }--alphabetical {
|
|
137
|
+
& > li::before,
|
|
138
|
+
& > #{ $prefix-item }::before {
|
|
139
|
+
content: counter(ulu-counter-list, upper-alpha);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
#{ $prefix }--numeric {
|
|
143
|
+
& > li::before,
|
|
144
|
+
& > #{ $prefix-item }::before {
|
|
145
|
+
content: counter(ulu-counter-list, numeric);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
#{ $prefix }--no-reset {
|
|
149
|
+
counter-reset: none;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
@use "sass:map";
|
|
19
19
|
@use "sass:math";
|
|
20
|
+
@use "../color";
|
|
20
21
|
|
|
21
22
|
@use "../utils";
|
|
22
23
|
|
|
@@ -29,6 +30,7 @@
|
|
|
29
30
|
/// @prop {Dimension} size [1.1em] The width, height and font size of the css-icon.
|
|
30
31
|
/// @prop {Dimension} stroke-border-radius [1px] The rounding of the strokes for css-icon.
|
|
31
32
|
/// @prop {Dimension} stroke-width [0.15em] The stroke width of the css-icon.
|
|
33
|
+
/// @prop {Dimension} drag-gap-multiplier [0.75] Multiplier used to adjust the space between drag-x/drag-y icons (used for all stroke sizes)
|
|
32
34
|
/// @prop {Dimension} text-offset [0.05em] When using an icon with text, adds a margin to match the text height.
|
|
33
35
|
/// @prop {Dimension} text-size [1em] font-size of the icon when using text.
|
|
34
36
|
/// @prop {Dimension} vertical-align [-0.2em] Vertical-align for css-icon
|
|
@@ -44,6 +46,7 @@ $config: (
|
|
|
44
46
|
"size" : 1.15em,
|
|
45
47
|
"stroke-border-radius" : null,
|
|
46
48
|
"stroke-width" : 3px,
|
|
49
|
+
"drag-gap-multiplier" : 0.75,
|
|
47
50
|
"text-offset" : 0.05em,
|
|
48
51
|
"text-size" : 1em,
|
|
49
52
|
"vertical-align" : -0.25em,
|
|
@@ -59,7 +62,7 @@ $config: (
|
|
|
59
62
|
|
|
60
63
|
/// Change modules $config
|
|
61
64
|
/// @param {Map} $changes Map of changes
|
|
62
|
-
/// @example
|
|
65
|
+
/// @example scss
|
|
63
66
|
/// @include ulu.component-css-icon-set(( "property" : value ));
|
|
64
67
|
|
|
65
68
|
@mixin set($changes) {
|
|
@@ -68,7 +71,7 @@ $config: (
|
|
|
68
71
|
|
|
69
72
|
/// Get a config option
|
|
70
73
|
/// @param {Map} $name Name of property
|
|
71
|
-
/// @example
|
|
74
|
+
/// @example scss
|
|
72
75
|
/// @include ulu.component-css-icon-get("property");
|
|
73
76
|
|
|
74
77
|
@function get($name) {
|
|
@@ -100,7 +103,7 @@ $config: (
|
|
|
100
103
|
/// @include ulu.component-css-icon-styles();
|
|
101
104
|
|
|
102
105
|
@mixin styles {
|
|
103
|
-
$border: get("stroke-width") solid get("color");
|
|
106
|
+
$border: get("stroke-width") solid color.get(get("color"));
|
|
104
107
|
$size: get("size");
|
|
105
108
|
$stroke-width: get("stroke-width");
|
|
106
109
|
$half-height: math.div(get("size"), 2);
|
|
@@ -121,8 +124,8 @@ $config: (
|
|
|
121
124
|
-moz-osx-font-smoothing: grayscale;
|
|
122
125
|
-webkit-font-smoothing: antialiased;
|
|
123
126
|
// Icons that share pseudos for strokes
|
|
124
|
-
|
|
125
|
-
|
|
127
|
+
&::before,
|
|
128
|
+
&::after {
|
|
126
129
|
// content: "";
|
|
127
130
|
display: block;
|
|
128
131
|
position: absolute;
|
|
@@ -130,7 +133,7 @@ $config: (
|
|
|
130
133
|
height: $stroke-width;
|
|
131
134
|
top: 50%;
|
|
132
135
|
left: 50%;
|
|
133
|
-
background-color: get("color");
|
|
136
|
+
background-color: color.get(get("color"));
|
|
134
137
|
transform: translateX(-50%);
|
|
135
138
|
margin-top: -($half-stroke-width);
|
|
136
139
|
border-radius: get("stroke-border-radius");
|
|
@@ -158,7 +161,7 @@ $config: (
|
|
|
158
161
|
// Solid icons
|
|
159
162
|
[class*="css-icon--circle"],
|
|
160
163
|
[class*="css-icon--square"] {
|
|
161
|
-
background-color: get("color");
|
|
164
|
+
background-color: color.get(get("color"));
|
|
162
165
|
}
|
|
163
166
|
[class*="css-icon--circle"] {
|
|
164
167
|
border-radius: 50%;
|
|
@@ -185,14 +188,14 @@ $config: (
|
|
|
185
188
|
|
|
186
189
|
.css-icon--circle-info,
|
|
187
190
|
.css-icon--circle-question {
|
|
188
|
-
|
|
191
|
+
&::before {
|
|
189
192
|
content: "i";
|
|
190
193
|
text-align: center;
|
|
191
194
|
font-size: get("text-size");
|
|
192
195
|
font-family: get("font-family");
|
|
193
196
|
font-weight: bold;
|
|
194
197
|
margin-top: get("text-offset");
|
|
195
|
-
color: get("color");
|
|
198
|
+
color: color.get(get("color"));
|
|
196
199
|
height: auto;
|
|
197
200
|
left: 0;
|
|
198
201
|
right: 0;
|
|
@@ -205,7 +208,7 @@ $config: (
|
|
|
205
208
|
}
|
|
206
209
|
}
|
|
207
210
|
.css-icon--circle-question {
|
|
208
|
-
|
|
211
|
+
&::before {
|
|
209
212
|
content: "?";
|
|
210
213
|
}
|
|
211
214
|
}
|
|
@@ -222,17 +225,17 @@ $config: (
|
|
|
222
225
|
// Arrow uses same equilateral triangle
|
|
223
226
|
[class*="css-icon--triangle"],
|
|
224
227
|
[class*="css-icon--arrow"]::after {
|
|
225
|
-
background-color: get("color");
|
|
228
|
+
background-color: color.get(get("color"));
|
|
226
229
|
clip-path: polygon(10% 10%, 90% 50%, 10% 90%);
|
|
227
230
|
}
|
|
228
231
|
[class*="css-icon--arrow"] {
|
|
229
|
-
|
|
232
|
+
&::before {
|
|
230
233
|
content: "";
|
|
231
234
|
width: 70%;
|
|
232
235
|
left: 0;
|
|
233
236
|
}
|
|
234
237
|
// Note triangle clip-path is defined above with the solid triangle
|
|
235
|
-
|
|
238
|
+
&::after {
|
|
236
239
|
content: "";
|
|
237
240
|
border-radius: 0;
|
|
238
241
|
height: 100%;
|
|
@@ -243,8 +246,8 @@ $config: (
|
|
|
243
246
|
}
|
|
244
247
|
[class*="css-icon--angle"] {
|
|
245
248
|
transform: rotate(135deg);
|
|
246
|
-
|
|
247
|
-
|
|
249
|
+
&::before,
|
|
250
|
+
&::after {
|
|
248
251
|
content: "";
|
|
249
252
|
top: 30%;
|
|
250
253
|
left: 30%;
|
|
@@ -252,14 +255,14 @@ $config: (
|
|
|
252
255
|
transform: none;
|
|
253
256
|
margin-top: 0;
|
|
254
257
|
}
|
|
255
|
-
|
|
258
|
+
&::after {
|
|
256
259
|
width: $stroke-width;
|
|
257
260
|
height: 70%;
|
|
258
261
|
}
|
|
259
262
|
}
|
|
260
263
|
@include for-each-stroke() using ($alt-width, $alt-border-radius) {
|
|
261
264
|
&[class*="css-icon--angle"] {
|
|
262
|
-
|
|
265
|
+
&::after {
|
|
263
266
|
width: $alt-width;
|
|
264
267
|
}
|
|
265
268
|
}
|
|
@@ -282,26 +285,26 @@ $config: (
|
|
|
282
285
|
|
|
283
286
|
.css-icon--plus,
|
|
284
287
|
.css-icon--plus-to-minus {
|
|
285
|
-
|
|
288
|
+
&::before {
|
|
286
289
|
transform: translateX(-50%) rotate(90deg);
|
|
287
290
|
}
|
|
288
|
-
|
|
291
|
+
&::after {
|
|
289
292
|
transform: translateX(-50%);
|
|
290
293
|
}
|
|
291
294
|
}
|
|
292
295
|
.css-icon--minus {
|
|
293
|
-
|
|
296
|
+
&::before {
|
|
294
297
|
content: none;
|
|
295
298
|
}
|
|
296
|
-
|
|
299
|
+
&::after {
|
|
297
300
|
transform: translateX(-50%);
|
|
298
301
|
}
|
|
299
302
|
}
|
|
300
303
|
.css-icon--close {
|
|
301
|
-
|
|
304
|
+
&::before {
|
|
302
305
|
transform: translate(-50%) rotate(45deg);
|
|
303
306
|
}
|
|
304
|
-
|
|
307
|
+
&::after {
|
|
305
308
|
transform: translate(-50%) rotate(-45deg);
|
|
306
309
|
}
|
|
307
310
|
}
|
|
@@ -309,21 +312,23 @@ $config: (
|
|
|
309
312
|
&::before {
|
|
310
313
|
content: "";
|
|
311
314
|
// Make up for margin-top by default
|
|
312
|
-
margin-top: -($stroke-width + $stroke-width);
|
|
315
|
+
margin-top: -(($stroke-width + $stroke-width) * get("drag-gap-multiplier"));
|
|
313
316
|
}
|
|
314
317
|
&::after {
|
|
315
318
|
content: "";
|
|
316
|
-
margin-top: $stroke-width;
|
|
319
|
+
margin-top: $stroke-width * get("drag-gap-multiplier");
|
|
317
320
|
}
|
|
318
321
|
}
|
|
319
322
|
|
|
320
323
|
@include for-each-stroke() using ($alt-width, $alt-border-radius) {
|
|
324
|
+
// $drag-gap-multiplier: map.get($props, "drag-gap-multiplier");
|
|
325
|
+
// $drag-gap-multiplier: if($drag-gap-multiplier, $drag-gap-multiplier, 0);
|
|
321
326
|
&[class*="css-icon--drag"] {
|
|
322
327
|
&::before {
|
|
323
|
-
margin-top: -($alt-width + $alt-width);
|
|
328
|
+
margin-top: -(($alt-width + $alt-width) * get("drag-gap-multiplier"));
|
|
324
329
|
}
|
|
325
330
|
&::after {
|
|
326
|
-
margin-top: $alt-width;
|
|
331
|
+
margin-top: $alt-width * get("drag-gap-multiplier");
|
|
327
332
|
}
|
|
328
333
|
}
|
|
329
334
|
}
|
|
@@ -344,7 +349,7 @@ $config: (
|
|
|
344
349
|
margin-top: 0;
|
|
345
350
|
}
|
|
346
351
|
&::before {
|
|
347
|
-
box-shadow: 0px ($stroke-width * 2 + 1px) get("color");
|
|
352
|
+
box-shadow: 0px ($stroke-width * 2 + 1px) color.get(get("color"));
|
|
348
353
|
margin-bottom: ($stroke-width * 3) + 2px;
|
|
349
354
|
}
|
|
350
355
|
}
|
|
@@ -352,7 +357,7 @@ $config: (
|
|
|
352
357
|
&.css-icon--menu,
|
|
353
358
|
&.css-icon--menu-to-close {
|
|
354
359
|
&::before {
|
|
355
|
-
box-shadow: 0px ($alt-width * 2 + 1px) get("color");
|
|
360
|
+
box-shadow: 0px ($alt-width * 2 + 1px) color.get(get("color"));
|
|
356
361
|
margin-bottom: ($alt-width * 3) + 2px;
|
|
357
362
|
}
|
|
358
363
|
}
|
|
@@ -372,6 +377,16 @@ $config: (
|
|
|
372
377
|
.css-icon--arrow-down {
|
|
373
378
|
transform: rotate(90deg);
|
|
374
379
|
}
|
|
380
|
+
.css-icon--drag-both {
|
|
381
|
+
transform: rotate(-45deg);
|
|
382
|
+
&::before {
|
|
383
|
+
transform: translateX(-50%) scale(0.8);
|
|
384
|
+
margin-top: -($stroke-width);
|
|
385
|
+
}
|
|
386
|
+
&::after {
|
|
387
|
+
transform: translateX(-50%) scaleX(0.5) scaleY(0.8);
|
|
388
|
+
}
|
|
389
|
+
}
|
|
375
390
|
|
|
376
391
|
// Active icons
|
|
377
392
|
.css-icon--plus-to-minus {
|
|
@@ -424,7 +439,7 @@ $config: (
|
|
|
424
439
|
transition: none;
|
|
425
440
|
transform: translate(-50%) rotate(-45deg);
|
|
426
441
|
}
|
|
427
|
-
|
|
442
|
+
&::before {
|
|
428
443
|
box-shadow: none;
|
|
429
444
|
transform: translate(-50%) rotate(45deg);
|
|
430
445
|
}
|
|
@@ -3,9 +3,6 @@
|
|
|
3
3
|
/// A page grid layout component that uses data attribute instead of class names, for brevity and readability
|
|
4
4
|
////
|
|
5
5
|
|
|
6
|
-
/// Content Block
|
|
7
|
-
/// @demo data-grid
|
|
8
|
-
|
|
9
6
|
@use "sass:map";
|
|
10
7
|
@use "sass:math";
|
|
11
8
|
|
|
@@ -38,6 +35,7 @@
|
|
|
38
35
|
$config: (
|
|
39
36
|
"attribute": "data-grid",
|
|
40
37
|
"attribute-container": "data-grid-container",
|
|
38
|
+
"attribute-init": "data-grid-init",
|
|
41
39
|
"breakpoint": false, // Fallback to default
|
|
42
40
|
"columns": 12,
|
|
43
41
|
"gutter": 14px,
|
|
@@ -49,6 +47,7 @@ $config: (
|
|
|
49
47
|
"sticky-top": var(--ulu-sticky-top-offset, 0),
|
|
50
48
|
"rule-color" : "rule",
|
|
51
49
|
"rule-size" : 1px,
|
|
50
|
+
"rule-fade-duration" : 400ms,
|
|
52
51
|
"extra-breakpoints": (
|
|
53
52
|
"medium" : (
|
|
54
53
|
"breakpoint": "medium",
|
|
@@ -73,7 +72,7 @@ $config: (
|
|
|
73
72
|
|
|
74
73
|
/// Change modules $config
|
|
75
74
|
/// @param {Map} $changes Map of changes
|
|
76
|
-
/// @example
|
|
75
|
+
/// @example scss
|
|
77
76
|
/// @include ulu.component-data-grid-set(( "property" : value ));
|
|
78
77
|
|
|
79
78
|
@mixin set($changes) {
|
|
@@ -82,7 +81,7 @@ $config: (
|
|
|
82
81
|
|
|
83
82
|
/// Get a config option
|
|
84
83
|
/// @param {Map} $name Name of property
|
|
85
|
-
/// @example
|
|
84
|
+
/// @example scss
|
|
86
85
|
/// @include ulu.component-data-grid-get("property");
|
|
87
86
|
|
|
88
87
|
@function get($name) {
|
|
@@ -134,6 +133,7 @@ $config: (
|
|
|
134
133
|
/// @param {Map} $extra-rule-styles Map of other rule styles to add (map of maps of size, and color), key is the styles name ("name": ("size" : 4px, "color" : "color name" || color))
|
|
135
134
|
/// @param {String} $extra-gutter-scales A map of gutter scales used like `data-grid="gutter-scale: large`, configuration map property becomes scale name and value is the amount (multiplier) to apply to the grid's gutter ie `( "large" : 2.25 )`
|
|
136
135
|
/// @param {Map} $attribute Attribute to use for selecting grid and children. Children attribute get's "-item" as a suffix ("ie. data-grid, data-grid-item")
|
|
136
|
+
/// @param {CssDuration} $rule-fade-duration The amount of time for rules to fade in (after init, script positioning), set to falsey value to disable rule fade in (rules will always be shown)
|
|
137
137
|
|
|
138
138
|
@mixin create(
|
|
139
139
|
$columns: get("columns"),
|
|
@@ -146,17 +146,20 @@ $config: (
|
|
|
146
146
|
$extra-rule-styles: get("extra-rule-styles"),
|
|
147
147
|
$extra-gutter-scales: get("extra-gutter-scales"),
|
|
148
148
|
$attribute: get("attribute"),
|
|
149
|
+
$attribute-init: get("attribute-init"),
|
|
149
150
|
$include-container: true,
|
|
150
151
|
$container-attribute: get("attribute-container"),
|
|
151
152
|
$container-gutter-scales: true,
|
|
152
153
|
$sticky-top: get("sticky-top"),
|
|
153
|
-
$sticky-bottom: get("sticky-bottom")
|
|
154
|
+
$sticky-bottom: get("sticky-bottom"),
|
|
155
|
+
$rule-fade-duration: get("rule-fade-duration")
|
|
154
156
|
) {
|
|
155
157
|
$attribute-item: "#{ $attribute }-item";
|
|
156
158
|
$select-grid: '[#{ $attribute }*="columns: #{ $columns }"]';
|
|
159
|
+
$select-grid-not-init: '[#{ $attribute }]:not([#{ $attribute-init }])';
|
|
157
160
|
$select-item: '[#{ $attribute-item }]';
|
|
158
|
-
$select-rule-col: "
|
|
159
|
-
$select-rule-row: "
|
|
161
|
+
$select-rule-col: "::before";
|
|
162
|
+
$select-rule-row: "::after";
|
|
160
163
|
$select-container: "[#{ $container-attribute }]";
|
|
161
164
|
// These through off syntax highlighting when inside interpolation
|
|
162
165
|
$position-class-column-first: get("position-class-column-first");
|
|
@@ -215,6 +218,20 @@ $config: (
|
|
|
215
218
|
}
|
|
216
219
|
}
|
|
217
220
|
}
|
|
221
|
+
// Rules: Applies to both column and row
|
|
222
|
+
&#{'[#{ $attribute }*="rules"]'} {
|
|
223
|
+
> #{ $select-item } {
|
|
224
|
+
position: relative;
|
|
225
|
+
@if ($rule-fade-duration) {
|
|
226
|
+
&#{ $select-rule-col },
|
|
227
|
+
&#{ $select-rule-row } {
|
|
228
|
+
// For when grid init fades them in
|
|
229
|
+
opacity: 1;
|
|
230
|
+
transition: opacity $rule-fade-duration ease-in;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
218
235
|
// Rules: Row
|
|
219
236
|
&#{'[#{ $attribute }*="rules-row:"]'} {
|
|
220
237
|
> #{ $select-item } {
|
|
@@ -227,12 +244,6 @@ $config: (
|
|
|
227
244
|
}
|
|
228
245
|
}
|
|
229
246
|
}
|
|
230
|
-
// Rules: Applies to both column and row
|
|
231
|
-
&#{'[#{ $attribute }*="rules"]'} {
|
|
232
|
-
> #{ $select-item } {
|
|
233
|
-
position: relative;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
247
|
// Rules: Column
|
|
237
248
|
&#{'[#{ $attribute }*="rules-column:"]'} {
|
|
238
249
|
> #{ $select-item } {
|
|
@@ -580,6 +591,21 @@ $config: (
|
|
|
580
591
|
}
|
|
581
592
|
}
|
|
582
593
|
}
|
|
594
|
+
|
|
595
|
+
// Disable grid rules until init attribute it present (from positioning script)
|
|
596
|
+
// - In order to keep the rules for this compact it will only hide them if the init
|
|
597
|
+
// is not present
|
|
598
|
+
|
|
599
|
+
@if ($rule-fade-duration) {
|
|
600
|
+
#{ $select-grid-not-init } {
|
|
601
|
+
> #{ $select-item } {
|
|
602
|
+
&#{ $select-rule-col },
|
|
603
|
+
&#{ $select-rule-row } {
|
|
604
|
+
opacity: 0 !important;
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
}
|
|
583
609
|
}
|
|
584
610
|
|
|
585
611
|
@mixin -create-extra-breakpoint(
|
|
@@ -635,6 +661,23 @@ $config: (
|
|
|
635
661
|
}
|
|
636
662
|
}
|
|
637
663
|
|
|
664
|
+
&#{'[#{ $attribute }*="gutters-row:"]'} {
|
|
665
|
+
> #{ $select-item } {
|
|
666
|
+
padding-top: $gutter;
|
|
667
|
+
padding-bottom: $gutter;
|
|
668
|
+
}
|
|
669
|
+
@if $extra-gutter-scales {
|
|
670
|
+
@each $scale, $amount in $extra-gutter-scales {
|
|
671
|
+
&#{'[#{ $attribute }*="gutter-scale: #{ $scale }"]'} {
|
|
672
|
+
> #{ $select-item } {
|
|
673
|
+
padding-top: $gutter * $amount;
|
|
674
|
+
padding-bottom: $gutter * $amount;
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
|
|
638
681
|
@include -create-column-widths(
|
|
639
682
|
$columns: $columns,
|
|
640
683
|
$attribute-item: $attribute-item,
|
|
@@ -24,16 +24,47 @@ $-fallbacks: (
|
|
|
24
24
|
|
|
25
25
|
/// Module Settings
|
|
26
26
|
/// @type Map
|
|
27
|
+
/// @prop {Dimension} cell-padding [(0.5em,)] Padding of the th and td elements.
|
|
28
|
+
/// @prop {CssValue} text-align [left] Text align of the table.
|
|
29
|
+
/// @prop {String} type-size ["small"] Font size of the table.
|
|
30
|
+
/// @prop {Color} background-color [white] Background color of table container.
|
|
31
|
+
/// @prop {Color} header-background-color [#f5f4f4] Background color of the the table header.
|
|
32
|
+
/// @prop {Color} body-background-color [white] Background color of table body.
|
|
33
|
+
/// @prop {Color} footer-background-color [#f3f3f3] Background color of table footer.
|
|
34
|
+
/// @prop {Color} color ["type-secondary"] Font color of the table.
|
|
35
|
+
/// @prop {Color} header-color ["headline"] Font color for the table header.
|
|
36
|
+
/// @prop {Color} footer-color [null] Font color for the table footer.
|
|
37
|
+
/// @prop {Number} line-height [true] Line height for the table.
|
|
38
|
+
/// @prop {Dimension} column-min-width [6em] Min-width of the th element.
|
|
39
|
+
/// @prop {Dimension} first-column-large-min-width [15em] When using "--large-first" style, the min width of the first th element.
|
|
40
|
+
/// @prop {Dimension} border-width [1px] Border width of the table.
|
|
41
|
+
/// @prop {Color} border-color [#dddddd] Border color for the table.
|
|
42
|
+
/// @prop {Color} striped-row-background-color [#eeeeee] Background color for even rows if using "--striped" styling.
|
|
43
|
+
/// @prop {Color} muted-row-background-color [#ccc] Background color for odd rows if using "--striped" styling.
|
|
44
|
+
/// @prop {Color} muted-row-border-color [null] Border color for odd rows if using "--striped" styling.
|
|
45
|
+
/// @prop {Color} highlighted-row-background-color [#ccc] Background color row if using "__row-highlighted" styling.
|
|
46
|
+
/// @prop {Color} highlighted-row-border-color [null] Border color row if using "__row-highlighted" styling.
|
|
47
|
+
/// @prop {Dimension} large-header-cell-padding-y [1em] Vertical padding of header if using "--large-header" styling.
|
|
48
|
+
/// @prop {String} caption-type-size ["large"] Type size of table caption.
|
|
49
|
+
/// @prop {Color} caption-background-color [null] Background color of table caption.
|
|
50
|
+
/// @prop {CssValue} caption-font-weight [bold] Font weight of caption.
|
|
51
|
+
/// @prop {CssBalue} caption-border-bottom [null] Bottom border of the caption.
|
|
52
|
+
/// @prop {Dimension} caption-margin [(0,)] Margin of the caption.
|
|
53
|
+
/// @prop {Dimension} caption-padding [(0.65em 0)] Padding of the caption.
|
|
54
|
+
/// @prop {CssValue} caption-text-align [left] Text align of the caption.
|
|
55
|
+
/// @prop {String} extra-selector [".wysiwyg table"] Additional selectors to include table styling.
|
|
27
56
|
|
|
28
57
|
$config: (
|
|
29
58
|
"cell-padding" : (0.5em,),
|
|
30
59
|
"text-align" : left,
|
|
31
60
|
"type-size" : "small",
|
|
32
61
|
"background-color" : white,
|
|
33
|
-
"header-background-color" : #
|
|
62
|
+
"header-background-color" : #f5f4f4,
|
|
34
63
|
"body-background-color" : white,
|
|
35
64
|
"footer-background-color" : #f3f3f3,
|
|
36
65
|
"color" : "type-secondary",
|
|
66
|
+
"header-color" : "headline",
|
|
67
|
+
"footer-color" : null,
|
|
37
68
|
"line-height" : true,
|
|
38
69
|
"column-min-width" : 6em,
|
|
39
70
|
"first-column-large-min-width" : 15em,
|
|
@@ -46,15 +77,18 @@ $config: (
|
|
|
46
77
|
"highlighted-row-border-color" : null,
|
|
47
78
|
"large-header-cell-padding-y" : 1em,
|
|
48
79
|
"caption-type-size" : "large",
|
|
80
|
+
"caption-background-color" : null,
|
|
49
81
|
"caption-font-weight" : bold,
|
|
50
|
-
"caption-
|
|
51
|
-
"caption-
|
|
82
|
+
"caption-border-bottom" : null,
|
|
83
|
+
"caption-margin" : (0,),
|
|
84
|
+
"caption-padding" : (0.65em 0),
|
|
85
|
+
"caption-text-align" : left,
|
|
52
86
|
"extra-selector" : ".wysiwyg table"
|
|
53
87
|
) !default;
|
|
54
88
|
|
|
55
89
|
/// Change modules $config
|
|
56
90
|
/// @param {Map} $changes Map of changes
|
|
57
|
-
/// @example
|
|
91
|
+
/// @example scss
|
|
58
92
|
/// @include ulu.component-data-table-set(( "property" : value ));
|
|
59
93
|
|
|
60
94
|
@mixin set($changes) {
|
|
@@ -63,7 +97,7 @@ $config: (
|
|
|
63
97
|
|
|
64
98
|
/// Get a config option
|
|
65
99
|
/// @param {Map} $name Name of property
|
|
66
|
-
/// @example
|
|
100
|
+
/// @example scss
|
|
67
101
|
/// @include ulu.component-data-table-get("property");
|
|
68
102
|
|
|
69
103
|
@function get($name) {
|
|
@@ -107,9 +141,11 @@ $config: (
|
|
|
107
141
|
@include typography.size(get("caption-type-size"));
|
|
108
142
|
}
|
|
109
143
|
font-weight: get("caption-font-weight");
|
|
110
|
-
text-align:
|
|
144
|
+
text-align: get("caption-text-align");
|
|
111
145
|
margin: get("caption-margin");
|
|
112
146
|
padding: get("caption-padding");
|
|
147
|
+
background-color: get("caption-background-color");
|
|
148
|
+
border-bottom: get("caption-border-bottom");
|
|
113
149
|
}
|
|
114
150
|
th,
|
|
115
151
|
tr,
|
|
@@ -133,11 +169,15 @@ $config: (
|
|
|
133
169
|
thead tr {
|
|
134
170
|
background-color: color.get(get("header-background-color"));
|
|
135
171
|
}
|
|
172
|
+
thead th {
|
|
173
|
+
color: color.get(get("header-color"));
|
|
174
|
+
}
|
|
136
175
|
tbody tr {
|
|
137
176
|
background-color: color.get(get("body-background-color"));
|
|
138
177
|
}
|
|
139
178
|
tfoot tr {
|
|
140
179
|
background-color: color.get(get("footer-background-color"));
|
|
180
|
+
color: color.get(get("footer-color"));
|
|
141
181
|
}
|
|
142
182
|
th,
|
|
143
183
|
td {
|
|
@@ -23,7 +23,7 @@ $config: (
|
|
|
23
23
|
|
|
24
24
|
/// Change modules $config
|
|
25
25
|
/// @param {Map} $changes Map of changes
|
|
26
|
-
/// @example
|
|
26
|
+
/// @example scss
|
|
27
27
|
/// @include ulu.component-flipcard-grid-set(( "property" : value ));
|
|
28
28
|
|
|
29
29
|
@mixin set($changes) {
|
|
@@ -32,7 +32,7 @@ $config: (
|
|
|
32
32
|
|
|
33
33
|
/// Get a config option
|
|
34
34
|
/// @param {Map} $name Name of property
|
|
35
|
-
/// @example
|
|
35
|
+
/// @example scss
|
|
36
36
|
/// @include ulu.component-flipcard-grid-get("property");
|
|
37
37
|
|
|
38
38
|
@function get($name) {
|