@watermarkinsights/ripple 0.0.1 → 0.1.0-alpha.1
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/dist/cjs/app-globals-3db2fdd3.js +103 -0
- package/dist/cjs/chartFunctions-0d47b1f4.js +906 -0
- package/dist/cjs/functions-761cb9f2.js +10694 -0
- package/dist/cjs/index-bb947bd5.js +1843 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/interfaces-33cd6161.js +82 -0
- package/dist/cjs/intl-9e9388a7.js +291 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/cjs/priv-calendar.cjs.entry.js +580 -0
- package/dist/cjs/priv-chart-popover-old.cjs.entry.js +146 -0
- package/dist/cjs/priv-chart-popover_2.cjs.entry.js +204 -0
- package/dist/cjs/priv-navigator-button.cjs.entry.js +29 -0
- package/dist/cjs/priv-navigator-item.cjs.entry.js +35 -0
- package/dist/cjs/priv-option-list.cjs.entry.js +391 -0
- package/dist/cjs/ripple.cjs.js +25 -0
- package/dist/cjs/wm-action-menu_2.cjs.entry.js +525 -0
- package/dist/cjs/wm-button.cjs.entry.js +280 -0
- package/dist/cjs/wm-chart-bar.cjs.entry.js +444 -0
- package/dist/cjs/wm-chart-column.cjs.entry.js +629 -0
- package/dist/cjs/wm-chart-slice.cjs.entry.js +27 -0
- package/dist/cjs/wm-chart-stack.cjs.entry.js +447 -0
- package/dist/cjs/wm-chart.cjs.entry.js +163 -0
- package/dist/cjs/wm-date-range.cjs.entry.js +591 -0
- package/dist/cjs/wm-datepicker.cjs.entry.js +399 -0
- package/dist/{ripple/wm-tab-panel.entry.js → cjs/wm-file-list.cjs.entry.js} +15 -24
- package/dist/cjs/wm-file.cjs.entry.js +210 -0
- package/dist/cjs/wm-flyout.cjs.entry.js +178 -0
- package/dist/{ripple/wm-modal.entry.js → cjs/wm-input.cjs.entry.js} +108 -110
- package/dist/cjs/wm-line-chart.cjs.entry.js +541 -0
- package/dist/cjs/wm-modal-pss_3.cjs.entry.js +220 -0
- package/dist/cjs/wm-modal_3.cjs.entry.js +238 -0
- package/dist/cjs/wm-navigation_3.cjs.entry.js +188 -0
- package/dist/cjs/wm-navigator.cjs.entry.js +334 -0
- package/dist/cjs/wm-nested-select.cjs.entry.js +322 -0
- package/dist/{ripple/wm-textarea.entry.js → cjs/wm-optgroup.cjs.entry.js} +62 -57
- package/dist/cjs/wm-option_2.cjs.entry.js +536 -0
- package/dist/{ripple/wm-navigation.entry.js → cjs/wm-pagination.cjs.entry.js} +204 -91
- package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +204 -0
- package/dist/{ripple/wm-flyout.entry.js → cjs/wm-search.cjs.entry.js} +168 -139
- package/dist/{ripple/wm-datepicker.entry.js → cjs/wm-snackbar.cjs.entry.js} +152 -223
- package/dist/cjs/wm-tab-item_3.cjs.entry.js +357 -0
- package/dist/cjs/wm-tag-input.cjs.entry.js +985 -0
- package/dist/cjs/wm-tag-option.cjs.entry.js +51 -0
- package/dist/{ripple/wm-modal-pss.entry.js → cjs/wm-textarea.cjs.entry.js} +70 -111
- package/dist/{ripple/wm-progress-indicator.entry.js → cjs/wm-timepicker.cjs.entry.js} +296 -78
- package/dist/cjs/wm-toggletip.cjs.entry.js +252 -0
- package/dist/cjs/wm-uploader.cjs.entry.js +341 -0
- package/dist/cjs/wm-wrapper.cjs.entry.js +21 -0
- package/dist/collection/collection-manifest.json +207 -0
- package/dist/collection/components/charts/chartFunctions.js +831 -0
- package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +995 -0
- package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +345 -0
- package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.css +990 -0
- package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.js +268 -0
- package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +177 -0
- package/dist/collection/components/charts/wm-chart/wm-chart.css +1326 -0
- package/dist/collection/components/charts/wm-chart/wm-chart.js +549 -0
- package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.css +1236 -0
- package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.js +725 -0
- package/dist/collection/components/charts/wm-chart-column/wm-chart-column.css +1335 -0
- package/dist/collection/components/charts/wm-chart-column/wm-chart-column.js +914 -0
- package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.css +1006 -0
- package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.js +310 -0
- package/dist/collection/components/charts/wm-chart-stack/wm-chart-stack.css +1466 -0
- package/dist/collection/components/charts/wm-chart-stack/wm-chart-stack.js +709 -0
- package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +1208 -0
- package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +999 -0
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +1326 -0
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +320 -0
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +967 -0
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +232 -0
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +167 -0
- package/dist/collection/components/datepickers/datepicker.css +1147 -0
- package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +1415 -0
- package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +857 -0
- package/dist/collection/components/datepickers/wm-date-range.js +1158 -0
- package/dist/collection/components/datepickers/wm-datepicker.js +875 -0
- package/dist/collection/components/selects/priv-option-list/priv-option-list.css +999 -0
- package/dist/collection/components/selects/priv-option-list/priv-option-list.js +784 -0
- package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1259 -0
- package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +805 -0
- package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +909 -0
- package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +363 -0
- package/dist/collection/components/selects/wm-option/wm-option.css +1033 -0
- package/dist/collection/components/selects/wm-option/wm-option.js +665 -0
- package/dist/collection/components/selects/wm-select/wm-select.css +1174 -0
- package/dist/collection/components/selects/wm-select/wm-select.js +878 -0
- package/dist/collection/components/wm-action-menu/wm-action-menu.css +1690 -0
- package/dist/collection/components/wm-action-menu/wm-action-menu.js +932 -0
- package/dist/collection/components/wm-button/wm-button.css +1630 -0
- package/dist/collection/components/wm-button/wm-button.js +794 -0
- package/dist/collection/components/wm-file/wm-file.css +1086 -0
- package/dist/collection/components/wm-file/wm-file.js +536 -0
- package/dist/collection/components/wm-file-list/wm-file-list.css +899 -0
- package/dist/collection/components/wm-file-list/wm-file-list.js +118 -0
- package/dist/collection/components/wm-flyout/wm-flyout.css +1091 -0
- package/dist/collection/components/wm-flyout/wm-flyout.js +651 -0
- package/dist/collection/components/wm-input/wm-input.css +1095 -0
- package/dist/collection/components/wm-input/wm-input.js +653 -0
- package/dist/collection/components/wm-menuitem/wm-menuitem.css +982 -0
- package/dist/collection/components/wm-menuitem/wm-menuitem.js +515 -0
- package/dist/collection/components/wm-modal/wm-modal-footer.css +927 -0
- package/dist/collection/components/wm-modal/wm-modal-footer.js +199 -0
- package/dist/collection/components/wm-modal/wm-modal-header.css +926 -0
- package/dist/collection/components/wm-modal/wm-modal-header.js +110 -0
- package/dist/collection/components/wm-modal/wm-modal.css +983 -0
- package/dist/collection/components/wm-modal/wm-modal.js +534 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +931 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +142 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +925 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +86 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +1007 -0
- package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +369 -0
- package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +926 -0
- package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +153 -0
- package/dist/collection/components/wm-navigation/wm-navigation-item.css +935 -0
- package/dist/collection/components/wm-navigation/wm-navigation-item.js +140 -0
- package/dist/collection/components/wm-navigation/wm-navigation.css +977 -0
- package/dist/collection/components/wm-navigation/wm-navigation.js +246 -0
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +929 -0
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +90 -0
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +918 -0
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +128 -0
- package/dist/collection/components/wm-navigator/wm-navigator.css +990 -0
- package/dist/collection/components/wm-navigator/wm-navigator.js +597 -0
- package/dist/collection/components/wm-pagination/wm-pagination.css +1044 -0
- package/dist/collection/components/wm-pagination/wm-pagination.js +487 -0
- package/dist/collection/components/wm-search/wm-search.css +983 -0
- package/dist/collection/components/wm-search/wm-search.js +604 -0
- package/dist/collection/components/wm-snackbar/wm-snackbar.css +1150 -0
- package/dist/collection/components/wm-snackbar/wm-snackbar.js +363 -0
- package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +958 -0
- package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +233 -0
- package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +966 -0
- package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +461 -0
- package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +906 -0
- package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +132 -0
- package/dist/collection/components/wm-tag-input/wm-tag-input.css +1423 -0
- package/dist/collection/components/wm-tag-input/wm-tag-input.js +1511 -0
- package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +328 -0
- package/dist/collection/components/wm-textarea/wm-textarea.css +1065 -0
- package/dist/collection/components/wm-textarea/wm-textarea.js +423 -0
- package/dist/collection/components/wm-timepicker/wm-timepicker.css +1174 -0
- package/dist/collection/components/wm-timepicker/wm-timepicker.js +728 -0
- package/dist/collection/components/wm-toggletip/wm-toggletip.css +1296 -0
- package/dist/collection/components/wm-toggletip/wm-toggletip.js +455 -0
- package/dist/collection/components/wm-uploader/wm-uploader.css +1987 -0
- package/dist/collection/components/wm-uploader/wm-uploader.js +760 -0
- package/dist/collection/components/wm-wrapper/wm-wrapper.js +31 -0
- package/dist/collection/dev/action-menu.js +18 -0
- package/dist/collection/dev/button.js +12 -0
- package/dist/collection/dev/chart-bar.js +430 -0
- package/dist/collection/dev/chart-column.js +459 -0
- package/dist/collection/dev/chart-small.js +56 -0
- package/dist/collection/dev/chart-stack.js +205 -0
- package/dist/collection/dev/chart.js +18 -0
- package/dist/collection/dev/date-range.js +14 -0
- package/dist/collection/dev/datepicker.js +46 -0
- package/dist/collection/dev/file-list.js +16 -0
- package/dist/collection/dev/file.js +0 -0
- package/dist/collection/dev/flyout.js +194 -0
- package/dist/collection/dev/input.js +6 -0
- package/dist/collection/dev/line-chart.js +45 -0
- package/dist/collection/dev/modal.js +48 -0
- package/dist/collection/dev/navigation.js +13 -0
- package/dist/collection/dev/navigator.js +34 -0
- package/dist/collection/dev/nested-select.js +36 -0
- package/dist/collection/dev/pagination.js +7 -0
- package/dist/collection/dev/progress-monitor.js +0 -0
- package/dist/collection/dev/pss-modal.js +8 -0
- package/dist/collection/dev/scripts.js +49 -0
- package/dist/collection/dev/search.js +72 -0
- package/dist/collection/dev/select.js +57 -0
- package/dist/collection/dev/snackbar.js +68 -0
- package/dist/collection/dev/tabs.js +44 -0
- package/dist/collection/dev/tag-input.js +32 -0
- package/dist/collection/dev/textarea.js +28 -0
- package/dist/collection/dev/timepicker.js +32 -0
- package/dist/collection/dev/toggletip.js +9 -0
- package/dist/collection/dev/uploader.js +139 -0
- package/dist/collection/global/__mocks__/functions.js +6 -0
- package/dist/collection/global/functions.js +907 -0
- package/dist/{ripple/app-globals-B7cOtGhY.js → collection/global/global.js} +16 -87
- package/dist/collection/global/interfaces.js +94 -0
- package/dist/collection/global/intl.js +281 -0
- package/dist/collection/global/services/__mocks__/http-service.js +130 -0
- package/dist/collection/global/services/http-service.js +50 -0
- package/dist/collection/lang/lang.js +5 -0
- package/dist/collection/lang/missing.js +43 -0
- package/dist/collection/lang/piglatin.js +101 -0
- package/dist/docs/docs.d.ts +435 -0
- package/dist/docs/docs.json +14178 -0
- package/dist/docs/props-reference.json +2079 -0
- package/dist/docs/skill/index.md +33 -0
- package/dist/docs/skill/wm-action-menu.md +116 -0
- package/dist/docs/skill/wm-button.md +121 -0
- package/dist/docs/skill/wm-chart-bar.md +156 -0
- package/dist/docs/skill/wm-chart-column.md +122 -0
- package/dist/docs/skill/wm-chart-legend.md +91 -0
- package/dist/docs/skill/wm-chart-slice.md +101 -0
- package/dist/docs/skill/wm-chart-stack.md +147 -0
- package/dist/docs/skill/wm-chart.md +139 -0
- package/dist/docs/skill/wm-date-range.md +176 -0
- package/dist/docs/skill/wm-datepicker.md +153 -0
- package/dist/docs/skill/wm-file-list.md +105 -0
- package/dist/docs/skill/wm-file.md +91 -0
- package/dist/docs/skill/wm-flyout.md +209 -0
- package/dist/docs/skill/wm-input.md +134 -0
- package/dist/docs/skill/wm-line-chart.md +135 -0
- package/dist/docs/skill/wm-menuitem.md +64 -0
- package/dist/docs/skill/wm-modal-footer.md +81 -0
- package/dist/docs/skill/wm-modal-header.md +71 -0
- package/dist/docs/skill/wm-modal.md +172 -0
- package/dist/docs/skill/wm-navigation-hamburger.md +61 -0
- package/dist/docs/skill/wm-navigation-item.md +78 -0
- package/dist/docs/skill/wm-navigation.md +82 -0
- package/dist/docs/skill/wm-navigator.md +106 -0
- package/dist/docs/skill/wm-nested-select.md +160 -0
- package/dist/docs/skill/wm-optgroup.md +72 -0
- package/dist/docs/skill/wm-option.md +67 -0
- package/dist/docs/skill/wm-pagination.md +114 -0
- package/dist/docs/skill/wm-progress-indicator.md +75 -0
- package/dist/docs/skill/wm-progress-monitor.md +120 -0
- package/dist/docs/skill/wm-progress-slice.md +67 -0
- package/dist/docs/skill/wm-search.md +180 -0
- package/dist/docs/skill/wm-select.md +169 -0
- package/dist/docs/skill/wm-snackbar.md +130 -0
- package/dist/docs/skill/wm-tab-item.md +45 -0
- package/dist/docs/skill/wm-tab-list.md +139 -0
- package/dist/docs/skill/wm-tab-panel.md +39 -0
- package/dist/docs/skill/wm-tag-input.md +187 -0
- package/dist/docs/skill/wm-tag-option.md +60 -0
- package/dist/docs/skill/wm-textarea.md +102 -0
- package/dist/docs/skill/wm-timepicker.md +156 -0
- package/dist/docs/skill/wm-toggletip.md +98 -0
- package/dist/docs/skill/wm-uploader.md +154 -0
- package/dist/docs/skill/wm-wrapper.md +5 -0
- package/dist/esm/app-globals-a1092590.js +101 -0
- package/dist/{ripple/chartFunctions-CmeM8Tyx.js → esm/chartFunctions-58637dc9.js} +159 -3
- package/dist/{ripple/functions-DVLl0rH_.js → esm/functions-65f1594c.js} +374 -7830
- package/dist/esm/index-3425d80d.js +1813 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/interfaces-8778346d.js +77 -0
- package/dist/{ripple/intl-7p27BJSM.js → esm/intl-d518f362.js} +11 -4
- package/dist/esm/loader.js +11 -0
- package/dist/{ripple → esm}/priv-calendar.entry.js +143 -133
- package/dist/esm/priv-chart-popover-old.entry.js +142 -0
- package/dist/esm/priv-chart-popover_2.entry.js +199 -0
- package/dist/{ripple → esm}/priv-navigator-button.entry.js +5 -4
- package/dist/{ripple → esm}/priv-navigator-item.entry.js +5 -4
- package/dist/{ripple → esm}/priv-option-list.entry.js +18 -16
- package/dist/esm/ripple.js +20 -0
- package/dist/esm/wm-action-menu_2.entry.js +520 -0
- package/dist/{ripple/wm-modal-header.entry.js → esm/wm-button.entry.js} +264 -24
- package/dist/esm/wm-chart-bar.entry.js +440 -0
- package/dist/esm/wm-chart-column.entry.js +625 -0
- package/dist/{ripple → esm}/wm-chart-slice.entry.js +6 -1
- package/dist/esm/wm-chart-stack.entry.js +443 -0
- package/dist/esm/wm-chart.entry.js +159 -0
- package/dist/{ripple → esm}/wm-date-range.entry.js +224 -114
- package/dist/esm/wm-datepicker.entry.js +395 -0
- package/dist/{ripple → esm}/wm-file-list.entry.js +5 -4
- package/dist/{ripple → esm}/wm-file.entry.js +48 -24
- package/dist/esm/wm-flyout.entry.js +174 -0
- package/dist/{ripple → esm}/wm-input.entry.js +23 -7
- package/dist/{ripple → esm}/wm-line-chart.entry.js +182 -94
- package/dist/esm/wm-modal-pss_3.entry.js +214 -0
- package/dist/esm/wm-modal_3.entry.js +232 -0
- package/dist/esm/wm-navigation_3.entry.js +182 -0
- package/dist/{ripple → esm}/wm-navigator.entry.js +26 -64
- package/dist/{ripple → esm}/wm-nested-select.entry.js +35 -25
- package/dist/{ripple → esm}/wm-optgroup.entry.js +17 -5
- package/dist/esm/wm-option_2.entry.js +531 -0
- package/dist/{ripple → esm}/wm-pagination.entry.js +16 -14
- package/dist/esm/wm-progress-indicator_3.entry.js +198 -0
- package/dist/{ripple → esm}/wm-search.entry.js +15 -31
- package/dist/{ripple → esm}/wm-snackbar.entry.js +32 -45
- package/dist/esm/wm-tab-item_3.entry.js +351 -0
- package/dist/{ripple → esm}/wm-tag-input.entry.js +169 -65
- package/dist/{ripple → esm}/wm-tag-option.entry.js +14 -2
- package/dist/{ripple/wm-menuitem.entry.js → esm/wm-textarea.entry.js} +65 -100
- package/dist/{ripple → esm}/wm-timepicker.entry.js +33 -12
- package/dist/{ripple → esm}/wm-toggletip.entry.js +105 -33
- package/dist/esm/wm-uploader.entry.js +337 -0
- package/dist/{ripple → esm}/wm-wrapper.entry.js +1 -1
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/loader/cdn.js +1 -0
- package/dist/loader/index.cjs.js +1 -0
- package/dist/loader/index.d.ts +24 -0
- package/dist/loader/index.es2017.js +1 -0
- package/dist/loader/index.js +2 -0
- package/dist/loader/package.json +11 -0
- package/dist/ripple/index.esm.js +0 -1
- package/dist/ripple/p-0d364411.entry.js +1 -0
- package/dist/ripple/p-156c4d1d.entry.js +1 -0
- package/dist/ripple/{wm-modal-footer.entry.js → p-26d8c356.entry.js} +1 -44
- package/dist/ripple/p-2b23ce49.entry.js +1 -0
- package/dist/ripple/p-2b7cc2c1.entry.js +1 -0
- package/dist/ripple/p-34bde06a.entry.js +1 -0
- package/dist/ripple/p-35db9386.entry.js +1 -0
- package/dist/ripple/p-38a987ac.entry.js +1 -0
- package/dist/ripple/p-38b05894.entry.js +1 -0
- package/dist/ripple/p-38dee4ab.entry.js +1 -0
- package/dist/ripple/p-3a19d019.entry.js +1 -0
- package/dist/ripple/p-451d4de2.js +1 -0
- package/dist/ripple/p-507f2cf4.entry.js +1 -0
- package/dist/ripple/p-59f74ead.entry.js +1 -0
- package/dist/ripple/p-5c2fc42a.entry.js +1 -0
- package/dist/ripple/p-680d7606.entry.js +1 -0
- package/dist/ripple/p-683264db.js +1 -0
- package/dist/ripple/p-6db681c8.entry.js +1 -0
- package/dist/ripple/p-6e3c2bbc.js +1 -0
- package/dist/ripple/p-6f1cabab.entry.js +1 -0
- package/dist/ripple/p-72d135ee.entry.js +1 -0
- package/dist/ripple/p-7799953c.entry.js +1 -0
- package/dist/ripple/p-83c3db60.js +2 -0
- package/dist/ripple/{wm-progress-monitor.entry.js → p-83cdad78.entry.js} +1 -71
- package/dist/ripple/p-87ef0cfa.entry.js +1 -0
- package/dist/ripple/p-88e44511.entry.js +1 -0
- package/dist/ripple/p-8f8e4eb8.entry.js +1 -0
- package/dist/ripple/p-936adffb.entry.js +1 -0
- package/dist/ripple/p-9755192c.entry.js +1 -0
- package/dist/ripple/p-9c5c591b.js +1 -0
- package/dist/ripple/p-9ea38d96.entry.js +1 -0
- package/dist/ripple/p-be3e4e7c.entry.js +1 -0
- package/dist/ripple/p-c9c7df12.entry.js +1 -0
- package/dist/ripple/p-d7a1be0b.entry.js +1 -0
- package/dist/ripple/p-dab86523.entry.js +1 -0
- package/dist/ripple/{wm-tab-list.entry.js → p-e4aa6e27.entry.js} +1 -175
- package/dist/ripple/p-ebe9f38c.js +1 -0
- package/dist/ripple/p-ed053612.entry.js +1 -0
- package/dist/ripple/p-f43f621b.entry.js +1 -0
- package/dist/ripple/p-f48d30d6.entry.js +1 -0
- package/dist/ripple/{wm-action-menu.entry.js → p-f6aad57c.entry.js} +1 -201
- package/dist/ripple/p-f6e1beb5.entry.js +1 -0
- package/dist/ripple/p-fc843bb8.entry.js +1 -0
- package/dist/ripple/{priv-chart-popover.entry.js → p-fd997764.entry.js} +1 -134
- package/dist/ripple/p-fffb46ad.entry.js +1 -0
- package/dist/ripple/ripple.esm.js +1 -48
- package/dist/types/components/charts/chartFunctions.d.ts +15 -2
- package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +25 -11
- package/dist/types/components/charts/priv-chart-popover-old/priv-chart-popover-old.d.ts +31 -0
- package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +52 -0
- package/dist/types/components/charts/wm-chart/wm-chart.d.ts +113 -1
- package/dist/types/components/charts/wm-chart-bar/wm-chart-bar.d.ts +195 -0
- package/dist/types/components/charts/wm-chart-column/wm-chart-column.d.ts +184 -0
- package/dist/types/components/charts/wm-chart-legend/wm-chart-legend.d.ts +110 -0
- package/dist/types/components/charts/wm-chart-stack/wm-chart-stack.d.ts +194 -0
- package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +156 -11
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +53 -1
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +85 -0
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +44 -0
- package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +19 -3
- package/dist/types/components/datepickers/wm-date-range.d.ts +205 -14
- package/dist/types/components/datepickers/wm-datepicker.d.ts +189 -11
- package/dist/types/components/selects/priv-option-list/priv-option-list.d.ts +6 -0
- package/dist/types/components/selects/wm-nested-select/wm-nested-select.d.ts +165 -1
- package/dist/types/components/selects/wm-optgroup/wm-optgroup.d.ts +87 -0
- package/dist/types/components/selects/wm-option/wm-option.d.ts +117 -0
- package/dist/types/components/selects/wm-select/wm-select.d.ts +193 -12
- package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +207 -2
- package/dist/types/components/wm-button/wm-button.d.ts +191 -0
- package/dist/types/components/wm-file/wm-file.d.ts +110 -1
- package/dist/types/components/wm-file-list/wm-file-list.d.ts +72 -0
- package/dist/types/components/wm-flyout/wm-flyout.d.ts +205 -0
- package/dist/types/components/wm-input/wm-input.d.ts +161 -1
- package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +79 -0
- package/dist/types/components/wm-modal/wm-modal-footer.d.ts +54 -0
- package/dist/types/components/wm-modal/wm-modal-header.d.ts +30 -0
- package/dist/types/components/wm-modal/wm-modal.d.ts +160 -0
- package/dist/types/components/wm-modal-pss/wm-modal-pss-footer.d.ts +4 -0
- package/dist/types/components/wm-modal-pss/wm-modal-pss-header.d.ts +4 -0
- package/dist/types/components/wm-modal-pss/wm-modal-pss.d.ts +6 -0
- package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +34 -0
- package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +41 -0
- package/dist/types/components/wm-navigation/wm-navigation.d.ts +57 -0
- package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +4 -0
- package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +4 -0
- package/dist/types/components/wm-navigator/wm-navigator.d.ts +93 -4
- package/dist/types/components/wm-pagination/wm-pagination.d.ts +100 -1
- package/dist/types/components/wm-search/wm-search.d.ts +158 -6
- package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +103 -1
- package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +55 -3
- package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +119 -20
- package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +35 -2
- package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +199 -5
- package/dist/types/components/wm-tag-input/wm-tag-option/wm-tag-option.d.ts +68 -0
- package/dist/types/components/wm-textarea/wm-textarea.d.ts +99 -0
- package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +147 -0
- package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +88 -2
- package/dist/types/components/wm-uploader/wm-uploader.d.ts +145 -3
- package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +3 -0
- package/dist/types/components.d.ts +11523 -95
- package/dist/types/global/functions.d.ts +7 -2
- package/dist/types/global/interfaces.d.ts +92 -2
- package/dist/types/global/intl.d.ts +3 -0
- package/dist/types/stencil-public-runtime.d.ts +0 -28
- package/package.json +4 -33
- package/dist/components/index.d.ts +0 -33
- package/dist/components/priv-calendar.d.ts +0 -11
- package/dist/components/priv-chart-popover.d.ts +0 -11
- package/dist/components/priv-navigator-button.d.ts +0 -11
- package/dist/components/priv-navigator-item.d.ts +0 -11
- package/dist/components/priv-option-list.d.ts +0 -11
- package/dist/components/wm-action-menu.d.ts +0 -11
- package/dist/components/wm-button.d.ts +0 -11
- package/dist/components/wm-chart-slice.d.ts +0 -11
- package/dist/components/wm-chart.d.ts +0 -11
- package/dist/components/wm-date-range.d.ts +0 -11
- package/dist/components/wm-datepicker.d.ts +0 -11
- package/dist/components/wm-file-list.d.ts +0 -11
- package/dist/components/wm-file.d.ts +0 -11
- package/dist/components/wm-flyout.d.ts +0 -11
- package/dist/components/wm-input.d.ts +0 -11
- package/dist/components/wm-line-chart.d.ts +0 -11
- package/dist/components/wm-menuitem.d.ts +0 -11
- package/dist/components/wm-modal-footer.d.ts +0 -11
- package/dist/components/wm-modal-header.d.ts +0 -11
- package/dist/components/wm-modal-pss-footer.d.ts +0 -11
- package/dist/components/wm-modal-pss-header.d.ts +0 -11
- package/dist/components/wm-modal-pss.d.ts +0 -11
- package/dist/components/wm-modal.d.ts +0 -11
- package/dist/components/wm-navigation-hamburger.d.ts +0 -11
- package/dist/components/wm-navigation-item.d.ts +0 -11
- package/dist/components/wm-navigation.d.ts +0 -11
- package/dist/components/wm-navigator.d.ts +0 -11
- package/dist/components/wm-nested-select.d.ts +0 -11
- package/dist/components/wm-optgroup.d.ts +0 -11
- package/dist/components/wm-option.d.ts +0 -11
- package/dist/components/wm-pagination.d.ts +0 -11
- package/dist/components/wm-progress-indicator.d.ts +0 -11
- package/dist/components/wm-progress-monitor.d.ts +0 -11
- package/dist/components/wm-progress-slice.d.ts +0 -11
- package/dist/components/wm-search.d.ts +0 -11
- package/dist/components/wm-select.d.ts +0 -11
- package/dist/components/wm-snackbar.d.ts +0 -11
- package/dist/components/wm-tab-item.d.ts +0 -11
- package/dist/components/wm-tab-list.d.ts +0 -11
- package/dist/components/wm-tab-panel.d.ts +0 -11
- package/dist/components/wm-tag-input.d.ts +0 -11
- package/dist/components/wm-tag-option.d.ts +0 -11
- package/dist/components/wm-textarea.d.ts +0 -11
- package/dist/components/wm-timepicker.d.ts +0 -11
- package/dist/components/wm-toggletip.d.ts +0 -11
- package/dist/components/wm-uploader.d.ts +0 -11
- package/dist/components/wm-wrapper.d.ts +0 -11
- package/dist/ripple/index-CU5QNCKv.js +0 -4167
- package/dist/ripple/interfaces-CrANcZM9.js +0 -53
- package/dist/ripple/wm-button.entry.js +0 -197
- package/dist/ripple/wm-chart.entry.js +0 -157
- package/dist/ripple/wm-modal-pss-footer.entry.js +0 -40
- package/dist/ripple/wm-modal-pss-header.entry.js +0 -39
- package/dist/ripple/wm-navigation-hamburger.entry.js +0 -48
- package/dist/ripple/wm-navigation-item.entry.js +0 -18
- package/dist/ripple/wm-option.entry.js +0 -171
- package/dist/ripple/wm-progress-slice.entry.js +0 -13
- package/dist/ripple/wm-select.entry.js +0 -249
- package/dist/ripple/wm-tab-item.entry.js +0 -63
- package/dist/ripple/wm-uploader.entry.js +0 -313
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
### Datepicker
|
|
2
|
+
- **Element:** `<wm-datepicker>`
|
|
3
|
+
|
|
4
|
+
**Purpose:** Date input that lets users type a date or pick one from a calendar popup. Supports
|
|
5
|
+
configurable date formats, pre-selection, validation, and full keyboard navigation of the calendar.
|
|
6
|
+
Use instead of native `<input type="date">`.
|
|
7
|
+
|
|
8
|
+
**When to use:**
|
|
9
|
+
|
|
10
|
+
- **Collecting a single date value in a form** -- when a user needs to provide one specific date (a due date, start date, birth date, submission deadline), Datepicker is the standard input, offering both typed entry for speed and a calendar popup for browsing.
|
|
11
|
+
|
|
12
|
+
**Do not use for:**
|
|
13
|
+
|
|
14
|
+
- **Selecting a start and end date together** -- if the input represents a range, use wm-date-range instead; Datepicker only captures a single date and has no concept of a paired second value.
|
|
15
|
+
- **Inputs where time is also required** -- Datepicker captures dates only; if the user also needs to specify a time, pair it with wm-timepicker rather than expecting Datepicker to handle both.
|
|
16
|
+
|
|
17
|
+
**Variants / types:**
|
|
18
|
+
|
|
19
|
+
_None documented_
|
|
20
|
+
|
|
21
|
+
**Usage notes:**
|
|
22
|
+
|
|
23
|
+
- Set `value` in the same format as `date-format` (default `mm/dd/yyyy`). For programmatic date
|
|
24
|
+
setting, prefer ISO format via `preselected` and convert with the `reformatDate` method.
|
|
25
|
+
- The calendar popup hides its toggle automatically when there is no room to display it; always
|
|
26
|
+
allow users to type a date directly in the input as a fallback.
|
|
27
|
+
|
|
28
|
+
**Props:**
|
|
29
|
+
- `date-format` -- The expected date format. Shown in the input placeholder and announced to screen reader users. _(default: `"mm/dd/yyyy"`)_
|
|
30
|
+
- `disabled` -- Disables the datepicker, preventing all interaction. _(default: `false`)_
|
|
31
|
+
- `error-message` -- Puts the component in an error state and displays this message below the input.
|
|
32
|
+
- `label` -- Visible label for the input. Required even when `label-position` is `'none'` -- used as the ARIA accessible name. _(required; default: `""`)_
|
|
33
|
+
- `label-position` -- Position of the label relative to the input. `'none'` hides the label visually but keeps it accessible via `aria-label`. _(type: `"left" | "none" | "top"`; default: `"top"`)_
|
|
34
|
+
- `preselected` -- The date the calendar popup focuses when first opened, in ISO format (YYYY-MM-DD). Falls back to the parsed `value`, then the current date if neither can be parsed.
|
|
35
|
+
- `required-field` -- Displays a required-field asterisk (*) next to the label. _(default: `false`)_
|
|
36
|
+
- `value` -- The date displayed in the input field, in the format specified by `date-format`. Updated as the user types. Can also be set programmatically by the application. _(default: `""`)_
|
|
37
|
+
|
|
38
|
+
**Events:**
|
|
39
|
+
- `wmDatepickerDateSelected` -- Fires when the user selects a date from the calendar popup. Detail: `{{ date: string }} date -- the selected date in ISO format (YYYY-MM-DD).`
|
|
40
|
+
- `wmDatepickerInputBlurred` -- Fires when the text input loses focus.
|
|
41
|
+
|
|
42
|
+
**Methods:**
|
|
43
|
+
- `isValidIso(input?: string) => Promise<boolean>` -- Validates whether a string is a well-formed, calendar-correct ISO date
|
|
44
|
+
(YYYY-MM-DD). Accounts for invalid day-of-month values and leap years.
|
|
45
|
+
- `input` -- - The string to validate.
|
|
46
|
+
- **Returns:** `true` if the string is a valid ISO date, `false` otherwise.
|
|
47
|
+
- **Example:** `isValidIso("1969-06-20") // -> true`
|
|
48
|
+
- **Example:** `isValidIso("1969-06-33") // -> false (day 33 does not exist)`
|
|
49
|
+
- **Example:** `isValidIso("2023-02-29") // -> false (2023 is not a leap year)`
|
|
50
|
+
- `reformatDate(inputFormat: "US" | "INT" | "ISO", outputFormat: "US" | "INT" | "ISO", date?: string) => Promise<string>` -- Converts a date string between the supported format tokens: `"US"` (mm/dd/yyyy),
|
|
51
|
+
`"INT"` (dd/mm/yyyy), and `"ISO"` (YYYY-MM-DD). Direct US ↔ INT conversion is not supported --
|
|
52
|
+
route through ISO as an intermediate step.
|
|
53
|
+
- `inputFormat` -- - Format of the input date string.
|
|
54
|
+
- `outputFormat` -- - Desired output format.
|
|
55
|
+
- `date` -- - The date string to reformat.
|
|
56
|
+
- **Returns:** The reformatted date string, an empty string if `date` is omitted or falsy, or the
|
|
57
|
+
original string unchanged if it cannot be parsed.
|
|
58
|
+
- **Example:** `reformatDate("US", "ISO", "06/20/1969") // -> "1969-06-20"`
|
|
59
|
+
- **Example:** `reformatDate("ISO", "US", "1969-06-20") // -> "06/20/1969"`
|
|
60
|
+
|
|
61
|
+
**Accessibility:**
|
|
62
|
+
|
|
63
|
+
- `label` is required even when `label-position` is `"none"` -- it becomes the input's `aria-label`.
|
|
64
|
+
- The calendar toggle button announces "Select date" to screen readers and reflects `aria-expanded`.
|
|
65
|
+
- Validation errors are announced via an `aria-live` region when `error-message` changes.
|
|
66
|
+
- When the input value cannot be parsed as a valid date, the calendar opens to the current date.
|
|
67
|
+
- **Keyboard:**
|
|
68
|
+
- **Input field**: Tab moves focus to the calendar toggle button.
|
|
69
|
+
- **Calendar toggle**: Space / Enter / Down Arrow opens the calendar; Shift+Tab returns to the input.
|
|
70
|
+
- **Day grid**: Arrow keys navigate dates; Enter selects; Escape closes and returns focus to the toggle;
|
|
71
|
+
Home/End jump to the first/last day of the month; Tab cycles through calendar controls.
|
|
72
|
+
- **Month/year selectors**: Arrow keys cycle values; Tab/Shift+Tab move focus clockwise/counter-clockwise.
|
|
73
|
+
|
|
74
|
+
**Related components:**
|
|
75
|
+
|
|
76
|
+
- `<wm-date-range>` -- if the user needs to select both a start and end date together, use Date Range; Datepicker is for a single date only.
|
|
77
|
+
- `<wm-timepicker>` -- if a time of day is also required alongside the date, pair Datepicker with Timepicker; Datepicker has no time input capability.
|
|
78
|
+
- `<wm-input>` -- if the value being collected looks like a date but has no need for calendar navigation or date validation (e.g., a free-form year field), a plain Input may be sufficient; Datepicker is warranted when the calendar picker or date validation utilities add genuine value.
|
|
79
|
+
|
|
80
|
+
**Code example:**
|
|
81
|
+
|
|
82
|
+
_Basic datepicker_
|
|
83
|
+
|
|
84
|
+
```html
|
|
85
|
+
<wm-datepicker label="Start date"></wm-datepicker>
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
_Basic datepicker_
|
|
89
|
+
|
|
90
|
+
```react
|
|
91
|
+
// The component does not update its own value after a calendar selection --
|
|
92
|
+
// the app must call reformatDate and set value/errorMessage imperatively via a ref.
|
|
93
|
+
const ref = useRef(null);
|
|
94
|
+
|
|
95
|
+
function getFormatName(format) {
|
|
96
|
+
const map = { 'mm/dd/yyyy': 'US', 'dd/mm/yyyy': 'INT', 'yyyy/mm/dd': 'ISO' };
|
|
97
|
+
return format ? map[format] : 'US';
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// event.detail is { date: string } -- ISO 8601 (YYYY-MM-DD)
|
|
101
|
+
const handleDateSelected = async (event) => {
|
|
102
|
+
const dp = ref.current;
|
|
103
|
+
const fmt = getFormatName(dp.getAttribute('date-format'));
|
|
104
|
+
dp.value = await dp.reformatDate('ISO', fmt, event.detail.date);
|
|
105
|
+
dp.errorMessage = '';
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
const handleInputBlurred = async () => {
|
|
109
|
+
const dp = ref.current;
|
|
110
|
+
const fmt = getFormatName(dp.getAttribute('date-format'));
|
|
111
|
+
if (dp.value) {
|
|
112
|
+
const iso = await dp.reformatDate(fmt, 'ISO', dp.value);
|
|
113
|
+
if (await dp.isValidIso(iso)) {
|
|
114
|
+
dp.value = await dp.reformatDate('ISO', fmt, iso);
|
|
115
|
+
dp.errorMessage = '';
|
|
116
|
+
} else {
|
|
117
|
+
dp.errorMessage = `Please enter a valid date in the format ${dp.getAttribute('date-format') ?? 'mm/dd/yyyy'}`;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
const handleBlur = () => {
|
|
123
|
+
const dp = ref.current;
|
|
124
|
+
if (dp.requiredField && dp.value === '') dp.errorMessage = 'A date is required';
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
<WmDatepicker
|
|
128
|
+
ref={ref}
|
|
129
|
+
label="Start date"
|
|
130
|
+
onWmDatepickerDateSelected={handleDateSelected}
|
|
131
|
+
onWmDatepickerInputBlurred={handleInputBlurred}
|
|
132
|
+
onBlur={handleBlur}
|
|
133
|
+
/>
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
_Required field with validation_
|
|
137
|
+
|
|
138
|
+
```html
|
|
139
|
+
<wm-datepicker label="Date of birth" required-field></wm-datepicker>
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
_Required field with validation_
|
|
143
|
+
|
|
144
|
+
```react
|
|
145
|
+
<WmDatepicker
|
|
146
|
+
ref={ref}
|
|
147
|
+
label="Date of birth"
|
|
148
|
+
requiredField={true}
|
|
149
|
+
onWmDatepickerDateSelected={handleDateSelected}
|
|
150
|
+
onWmDatepickerInputBlurred={handleInputBlurred}
|
|
151
|
+
onBlur={handleBlur}
|
|
152
|
+
/>
|
|
153
|
+
```
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
### File List
|
|
2
|
+
- **Element:** `<wm-file-list>`
|
|
3
|
+
|
|
4
|
+
**Purpose:** Read-only list of files with optional preview and download actions. Visually similar to the
|
|
5
|
+
Uploader but with no upload capability. Use when displaying existing files users can view or
|
|
6
|
+
download, not when they need to upload new ones.
|
|
7
|
+
|
|
8
|
+
**When to use:**
|
|
9
|
+
|
|
10
|
+
- **Displaying files already associated with a record** -- when a page or form needs to show files that have previously been uploaded or attached (e.g., supporting documents on a profile, attachments on a submission), use File List to surface them with consistent metadata and actions.
|
|
11
|
+
- **Allowing users to download or preview existing files** -- when the user's relationship to the files is read-access (they need to open or save a file but not replace it), use File List with file-actions="preview download" on each wm-file.
|
|
12
|
+
- **Surfacing file-level error states** -- when a specific file in the list has failed validation or processing, use the error-message property on the individual wm-file to communicate the problem at the file level rather than at the form level.
|
|
13
|
+
|
|
14
|
+
**Do not use for:**
|
|
15
|
+
|
|
16
|
+
- **Accepting new file uploads** -- File List is explicitly read-only and has no upload mechanism; if users need to add files, use wm-uploader instead, and pair it with File List to show what has already been uploaded.
|
|
17
|
+
- **Empty states** -- File List has no empty state handling built in; if the list may be empty and that state needs a message or call to action, the surrounding page must handle that.
|
|
18
|
+
- **General-purpose lists of records** -- File List is purpose-built for files with extensions, metadata, and file-specific actions; it is not a substitute for a generic list or table of records.
|
|
19
|
+
|
|
20
|
+
**Variants / types:**
|
|
21
|
+
|
|
22
|
+
_None documented_
|
|
23
|
+
|
|
24
|
+
**Usage notes:**
|
|
25
|
+
|
|
26
|
+
- Each child wm-file requires a unique `id`, a `name`, and a `type` (file extension).
|
|
27
|
+
- Set `show-info` on wm-file-list to apply the same metadata display to all children -- each
|
|
28
|
+
wm-file inherits it automatically. Individual wm-file elements can still override it.
|
|
29
|
+
|
|
30
|
+
**Props:**
|
|
31
|
+
- `show-info` -- Which metadata to display for each file alongside its name. Propagated
|
|
32
|
+
automatically to all wm-file children. _(type: `"all" | "last-updated" | "none" | "size" | "uploaded-by"`; default: `"last-updated"`)_
|
|
33
|
+
|
|
34
|
+
**Slots:**
|
|
35
|
+
- _(default)_ -- One or more wm-file child elements.
|
|
36
|
+
|
|
37
|
+
**Related components:**
|
|
38
|
+
|
|
39
|
+
- `<wm-uploader>` -- if users need to add new files, use Uploader; File List is strictly for displaying and acting on files that already exist. The two are commonly paired: Uploader to add, File List to review what has been added.
|
|
40
|
+
|
|
41
|
+
**Code example:**
|
|
42
|
+
|
|
43
|
+
_File list with default metadata (last-updated)_
|
|
44
|
+
|
|
45
|
+
```html
|
|
46
|
+
<wm-file-list>
|
|
47
|
+
<wm-file id="file-1" name="report" type="pdf" last-updated="1/28/2020 5:29 PM"></wm-file>
|
|
48
|
+
<wm-file id="file-2" name="thesis" type="docx" last-updated="3/15/2024 9:00 AM"></wm-file>
|
|
49
|
+
</wm-file-list>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
_File list with managed state_
|
|
53
|
+
|
|
54
|
+
```react
|
|
55
|
+
// wm-file-list does not manage its own state -- drive the file list from React state.
|
|
56
|
+
// wmFileDelete fires on the wm-file element; use e.target.id to remove the matching entry.
|
|
57
|
+
// showInfo on wm-file-list propagates automatically to all wm-file children.
|
|
58
|
+
const [files, setFiles] = useState([
|
|
59
|
+
{ id: "file-1", name: "annual-report", type: "pdf", lastUpdated: "1/28/2024 5:29 PM" },
|
|
60
|
+
{ id: "file-2", name: "budget-summary", type: "xlsx", lastUpdated: "3/15/2024 9:00 AM" },
|
|
61
|
+
]);
|
|
62
|
+
|
|
63
|
+
<WmFileList>
|
|
64
|
+
{files.map((f) => (
|
|
65
|
+
<WmFile key={f.id} id={f.id} name={f.name} type={f.type} lastUpdated={f.lastUpdated}
|
|
66
|
+
onWmFileDelete={(e) => setFiles((prev) => prev.filter((f) => f.id !== e.target.id))} />
|
|
67
|
+
))}
|
|
68
|
+
</WmFileList>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
_Show all metadata_
|
|
72
|
+
|
|
73
|
+
```html
|
|
74
|
+
<wm-file-list show-info="all">
|
|
75
|
+
<wm-file id="file-1" name="report" type="pdf"
|
|
76
|
+
size="3 MB" last-updated="1/28/2020 5:29 PM" uploaded-by="Uploaded by Smith, John">
|
|
77
|
+
</wm-file>
|
|
78
|
+
</wm-file-list>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
_Show all metadata with preview and download handlers_
|
|
82
|
+
|
|
83
|
+
```react
|
|
84
|
+
// fileActions controls which buttons appear; omit delete or pass fileActions="" for none.
|
|
85
|
+
// onWmFilePreview and onWmFileDownload fire on the wm-file element; e.target.name is the filename.
|
|
86
|
+
const [files, setFiles] = useState([
|
|
87
|
+
{ id: "file-3", name: "thesis", type: "docx", size: "3.2 MB",
|
|
88
|
+
lastUpdated: "1/28/2024 5:29 PM", uploadedBy: "Uploaded by Smith, John",
|
|
89
|
+
fileActions: "preview download delete" },
|
|
90
|
+
{ id: "file-4", name: "presentation", type: "pptx", size: "8.5 MB",
|
|
91
|
+
lastUpdated: "3/15/2024 9:00 AM", uploadedBy: "Uploaded by Doe, Jane",
|
|
92
|
+
fileActions: "download delete" },
|
|
93
|
+
]);
|
|
94
|
+
|
|
95
|
+
<WmFileList showInfo="all">
|
|
96
|
+
{files.map((f) => (
|
|
97
|
+
<WmFile key={f.id} id={f.id} name={f.name} type={f.type}
|
|
98
|
+
size={f.size} lastUpdated={f.lastUpdated} uploadedBy={f.uploadedBy}
|
|
99
|
+
fileActions={f.fileActions}
|
|
100
|
+
onWmFilePreview={(e) => alert(`Preview: ${e.target.name}`)}
|
|
101
|
+
onWmFileDownload={(e) => alert(`Download: ${e.target.name}`)}
|
|
102
|
+
onWmFileDelete={(e) => setFiles((prev) => prev.filter((f) => f.id !== e.target.id))} />
|
|
103
|
+
))}
|
|
104
|
+
</WmFileList>
|
|
105
|
+
```
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
### File
|
|
2
|
+
- **Element:** `<wm-file>`
|
|
3
|
+
|
|
4
|
+
**Purpose:** Displays a single file row with its name, optional metadata, and configurable action buttons
|
|
5
|
+
(preview, download, delete). Adapts responsively -- at narrow widths action buttons collapse
|
|
6
|
+
into an action menu. Used as a child of wm-file-list or wm-uploader.
|
|
7
|
+
|
|
8
|
+
**Usage notes:**
|
|
9
|
+
|
|
10
|
+
- A unique `id` is required on every wm-file element.
|
|
11
|
+
- `name` and `type` are both required; `type` is the file extension only (e.g. `pdf`, not a MIME type).
|
|
12
|
+
- `show-info` is automatically inherited from the parent wm-file-list or wm-uploader when set there.
|
|
13
|
+
- Pass an empty string to `file-actions` to render no action buttons.
|
|
14
|
+
|
|
15
|
+
**Props:**
|
|
16
|
+
- `error-message` -- Puts the file row in an error state and displays this message below it.
|
|
17
|
+
- `file-actions` -- Space-separated list of action buttons to display. Accepts any combination of
|
|
18
|
+
`preview`, `download`, and `delete`. Pass an empty string to show no actions. _(default: `"download delete"`)_
|
|
19
|
+
- `last-updated` -- Upload date/time displayed as file metadata. Any display string is accepted
|
|
20
|
+
(e.g. `"1/28/2020 5:29 PM"`).
|
|
21
|
+
- `name` -- Filename without the extension. _(required)_
|
|
22
|
+
- `progress` -- Upload progress as a percentage (0-100). When set and less than 100, the file
|
|
23
|
+
renders in an in-progress state with a progress bar.
|
|
24
|
+
- `show-info` -- Which metadata to display alongside the filename. Automatically inherited
|
|
25
|
+
from the parent wm-file-list or wm-uploader when set there. _(type: `"all" | "last-updated" | "none" | "size" | "time" | "uploaded-by"`; default: `"last-updated"`)_
|
|
26
|
+
- `size` -- File size displayed as file metadata. Include the unit in the string
|
|
27
|
+
(e.g. `"3 MB"`).
|
|
28
|
+
- `type` -- File extension without the leading dot (e.g. `pdf`, `docx`). Not a MIME type. _(required)_
|
|
29
|
+
- `uploaded-by` -- Uploader attribution displayed as file metadata
|
|
30
|
+
(e.g. `"Uploaded by Smith, John"`).
|
|
31
|
+
|
|
32
|
+
**Events:**
|
|
33
|
+
- `wmFileDelete` -- Fires when the delete button is clicked.
|
|
34
|
+
- `wmFileDownload` -- Fires when the download button is clicked.
|
|
35
|
+
- `wmFileErrorCleared` -- Fires when the user clears a file error by clicking the Clear button.
|
|
36
|
+
- `wmFilePreview` -- Fires when the preview button is clicked.
|
|
37
|
+
|
|
38
|
+
**Required setup:**
|
|
39
|
+
|
|
40
|
+
- Render it inside wm-file-list or wm-uploader; it is not a standalone control.
|
|
41
|
+
- Give every wm-file a unique `id`. Its events carry no detail, so `event.target` is the only way
|
|
42
|
+
to tell which file was acted on.
|
|
43
|
+
- Handle the events for whichever buttons `file-actions` renders -- `wmFileDelete`,
|
|
44
|
+
`wmFileDownload`, `wmFilePreview` -- bearing in mind it defaults to download and delete.
|
|
45
|
+
Deleting is not automatic: wm-uploader listens for `wmFileDelete` only to move focus, so the row
|
|
46
|
+
stays on screen until you drop the file from your own state.
|
|
47
|
+
- Handle `wmFileErrorCleared` by clearing the `error-message` you set; the parent only restores
|
|
48
|
+
focus to the upload button.
|
|
49
|
+
- Update `progress` as an upload proceeds; it drives the progress bar and the aria-live
|
|
50
|
+
announcement.
|
|
51
|
+
|
|
52
|
+
**Accessibility:**
|
|
53
|
+
|
|
54
|
+
- Icon-only action buttons include context-specific aria labels that embed the filename
|
|
55
|
+
(e.g. "Download report.pdf") so screen reader users know which file each button acts on.
|
|
56
|
+
- A visually-hidden `aria-live` region announces upload progress and validation errors.
|
|
57
|
+
|
|
58
|
+
**Code example:**
|
|
59
|
+
|
|
60
|
+
_Basic file row_
|
|
61
|
+
|
|
62
|
+
```html
|
|
63
|
+
<wm-file-list>
|
|
64
|
+
<wm-file id="file-1" name="report" type="pdf" last-updated="1/28/2020 5:29 PM"></wm-file>
|
|
65
|
+
</wm-file-list>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
_Basic file row_
|
|
69
|
+
|
|
70
|
+
```react
|
|
71
|
+
<WmFileList>
|
|
72
|
+
<WmFile id="file-1" name="report" type="pdf" lastUpdated="1/28/2020 5:29 PM" />
|
|
73
|
+
</WmFileList>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
_All metadata and all actions_
|
|
77
|
+
|
|
78
|
+
```html
|
|
79
|
+
<wm-file id="file-2" name="thesis" type="docx" file-actions="preview download delete"
|
|
80
|
+
show-info="all" size="3 MB" last-updated="3/15/2024 9:00 AM"
|
|
81
|
+
uploaded-by="Uploaded by Smith, John">
|
|
82
|
+
</wm-file>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
_All metadata and all actions_
|
|
86
|
+
|
|
87
|
+
```react
|
|
88
|
+
<WmFile id="file-2" name="thesis" type="docx" fileActions="preview download delete"
|
|
89
|
+
showInfo="all" size="3 MB" lastUpdated="3/15/2024 9:00 AM"
|
|
90
|
+
uploadedBy="Uploaded by Smith, John" />
|
|
91
|
+
```
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
### Flyout
|
|
2
|
+
- **Element:** `<wm-flyout>`
|
|
3
|
+
|
|
4
|
+
**Purpose:** Slide-in panel that renders over the main content as a modal dialog. Used for detail views,
|
|
5
|
+
multi-step workflows, and forms that require focus without navigating away from the page.
|
|
6
|
+
|
|
7
|
+
**When to use:**
|
|
8
|
+
|
|
9
|
+
- **Completing a single, focused task without losing page context** -- when a user needs to fill out a form, make selections, or take action on an item while the underlying page remains visible behind them, use a Flyout to keep that context intact rather than navigating to a new page.
|
|
10
|
+
- **Displaying supplementary details about a selected item** -- when a user clicks a row in a table or a card and needs to see more information or edit fields, a Flyout surfaces that content without displacing the list they came from.
|
|
11
|
+
- **Running a short multi-step workflow** -- when a task can be broken into 2-3 manageable steps (using breadcrumbs to navigate between them), a Flyout can host that progression while keeping the originating page visible. The patterns guidance caps this at 3-5 steps before the workflow becomes too complex.
|
|
12
|
+
- **Launching a task from a primary page or immersive view** -- Flyouts can be triggered from main pages and immersive layouts, making them the right container when an action on a parent view needs a dedicated working surface without a full page transition.
|
|
13
|
+
|
|
14
|
+
**Do not use for:**
|
|
15
|
+
|
|
16
|
+
- **Complex, content-heavy workflows** -- if there is too much content to display comfortably in one view, or the workflow is too involved, use a light immersive view instead; Flyouts are for simple, quick-to-complete tasks.
|
|
17
|
+
- **Launching from another Flyout, Modal, or Dialog** -- stacking containers creates disorienting layers that break focus management and user orientation.
|
|
18
|
+
- **Tasks where the user needs to reference main content alongside the panel** -- if the user is expected to actively compare or interact with the main content area while working in the panel, a side panel is the right choice.
|
|
19
|
+
|
|
20
|
+
**Variants / types:**
|
|
21
|
+
|
|
22
|
+
_None documented_
|
|
23
|
+
|
|
24
|
+
**Usage notes:**
|
|
25
|
+
|
|
26
|
+
- Always render the component on page load -- do not conditionally mount/unmount based on
|
|
27
|
+
visibility. Control visibility with the `open` prop instead.
|
|
28
|
+
- The flyout does not close on outside clicks; the host application must handle close events
|
|
29
|
+
and set `open` to false.
|
|
30
|
+
- In React, set `open` imperatively via a ref (`ref.current.open = true/false`), and open the
|
|
31
|
+
flyout from a click handler on the trigger element.
|
|
32
|
+
- Use `element-to-focus` to shift initial focus away from the default close button, e.g. to
|
|
33
|
+
the `primary` footer button or a specific element id for form workflows.
|
|
34
|
+
- In a multi-step workflow, drive `heading`, `breadcrumb`, `primaryText`, and `secondaryText`
|
|
35
|
+
from React state so they update on re-render. Call `ref.current.focusHeading()` inside a
|
|
36
|
+
`useEffect` that runs after the step state change so screen readers announce the new heading.
|
|
37
|
+
- Apply content padding via a container query on the flyout body wrapper so it reduces
|
|
38
|
+
automatically on narrower flyout widths:
|
|
39
|
+
```css
|
|
40
|
+
.flyout-content { padding: 1.25rem 1.875rem; }
|
|
41
|
+
|
|
42
|
+
**Props:**
|
|
43
|
+
- `breadcrumb` -- Comma-separated list of breadcrumb labels rendered above the heading.
|
|
44
|
+
The last item is displayed as plain text (current step); earlier items are rendered as
|
|
45
|
+
buttons that fire `wmFlyoutBreadcrumbClicked`.
|
|
46
|
+
- `element-to-focus` -- Element to focus when the flyout opens. Pass `"primary"` or `"secondary"` to
|
|
47
|
+
focus the corresponding footer button, or an element `id` to focus a specific element in the
|
|
48
|
+
flyout body. Defaults to the close button. _(default: `""`)_
|
|
49
|
+
- `eyebrow` -- Small label displayed above the heading. Useful for context like a category or record type.
|
|
50
|
+
- `flyout-width` -- CSS width value for the flyout panel. Capped at 90% of the viewport width,
|
|
51
|
+
and at 100% on viewports narrower than 534px. _(default: `"45rem"`)_
|
|
52
|
+
- `heading` -- Heading text displayed at the top of the flyout. Also used as the dialog's accessible name. _(required)_
|
|
53
|
+
- `info-text` -- Informational text displayed in the lower-left corner of the footer
|
|
54
|
+
(e.g. `"* Required fields"`).
|
|
55
|
+
- `open` -- Controls the open/closed state of the flyout. Always render the component on
|
|
56
|
+
page load and toggle this prop rather than conditionally mounting/unmounting the element. _(default: `false`)_
|
|
57
|
+
- `primary-text` -- Label for the primary footer button. When set, a primary button is rendered
|
|
58
|
+
in the footer. Fires `wmFlyoutPrimaryTriggered` when clicked.
|
|
59
|
+
- `secondary-text` -- Label for the secondary footer button. When set, a secondary button is rendered
|
|
60
|
+
in the footer. Fires `wmFlyoutSecondaryTriggered` when clicked.
|
|
61
|
+
- `subheading` -- Subtitle text displayed below the heading.
|
|
62
|
+
|
|
63
|
+
**Slots:**
|
|
64
|
+
- _(default)_ -- Main content of the flyout body.
|
|
65
|
+
|
|
66
|
+
**Events:**
|
|
67
|
+
- `wmFlyoutBreadcrumbClicked` -- Fires when a breadcrumb button (any non-last breadcrumb) is clicked. Detail: `{{ breadcrumb: string, index: number }} breadcrumb -- the label of the clicked breadcrumb; index -- its zero-based position in the original CSV list.`
|
|
68
|
+
- `wmFlyoutCloseTriggered` -- Fires when the close button is clicked, Escape is pressed, or the native
|
|
69
|
+
dialog close event fires. The host application must set `open` to false in response.
|
|
70
|
+
- `wmFlyoutPrimaryTriggered` -- Fires when the primary footer button is clicked.
|
|
71
|
+
- `wmFlyoutSecondaryTriggered` -- Fires when the secondary footer button is clicked.
|
|
72
|
+
|
|
73
|
+
**Methods:**
|
|
74
|
+
- `focusHeading() => Promise<void>` -- Moves focus to the flyout's heading element. Call this after updating flyout
|
|
75
|
+
content in a multi-step workflow so screen readers announce the new heading to the user.
|
|
76
|
+
- **Returns:** A promise that resolves once focus has been applied.
|
|
77
|
+
|
|
78
|
+
**Required setup:**
|
|
79
|
+
|
|
80
|
+
- Drive `open` from your own state: true to show the flyout, false to hide it.
|
|
81
|
+
- Handle `wmFlyoutCloseTriggered` by setting `open = false`. It covers the close button and
|
|
82
|
+
Escape, which are the only close paths -- there is no outside-click dismissal.
|
|
83
|
+
- Handle `wmFlyoutPrimaryTriggered` and `wmFlyoutSecondaryTriggered` for whichever footer buttons
|
|
84
|
+
`primary-text` and `secondary-text` render, setting `open = false` to dismiss.
|
|
85
|
+
- For multi-step flows, drive `heading`, `breadcrumb`, and the button text from state, call
|
|
86
|
+
`focusHeading()` after each step change, and handle `wmFlyoutBreadcrumbClicked` (`event.detail`
|
|
87
|
+
is `{ breadcrumb, index }`) to step backwards.
|
|
88
|
+
|
|
89
|
+
**Accessibility:**
|
|
90
|
+
|
|
91
|
+
- Rendered as a `<dialog>` element with `aria-labelledby` pointing to the heading.
|
|
92
|
+
- Focus is trapped inside the flyout while open and returns to the trigger element on close.
|
|
93
|
+
- Call `focusHeading()` after updating content in a multi-step workflow so screen readers
|
|
94
|
+
announce the new heading.
|
|
95
|
+
- **Keyboard:**
|
|
96
|
+
- **Escape**: Fires `wmFlyoutCloseTriggered` (the host application is responsible for setting `open` to false).
|
|
97
|
+
- **Tab**: Cycles forward through focusable elements; wraps from the last element back to the first.
|
|
98
|
+
- **Shift+Tab**: Cycles backward; wraps from the first element to the last footer button.
|
|
99
|
+
|
|
100
|
+
**Related components:**
|
|
101
|
+
|
|
102
|
+
- Side Panel -- if the user needs to actively reference or interact with the main content area while the panel is open, use a side panel (which pushes content rather than overlaying it); if focus should be on the panel task alone, use Flyout.
|
|
103
|
+
- `<wm-modal>` -- if the task is short, self-contained, and requires the user to complete or dismiss it before doing anything else, use Modal; if the task is longer or should coexist with the underlying page, use Flyout.
|
|
104
|
+
- Light Immersive Layout -- if the workflow is too complex or content-heavy for a Flyout (more than 3-5 steps), escalate to a light immersive view instead.
|
|
105
|
+
|
|
106
|
+
**Code example:**
|
|
107
|
+
|
|
108
|
+
_Basic flyout_
|
|
109
|
+
|
|
110
|
+
```html
|
|
111
|
+
<button onclick="document.getElementById('edit-profile').open = true">Open flyout</button>
|
|
112
|
+
|
|
113
|
+
<wm-flyout id="edit-profile" heading="Edit profile" eyebrow="Student"
|
|
114
|
+
subheading="Update your information below"
|
|
115
|
+
primary-text="Save" secondary-text="Cancel" info-text="* Required fields">
|
|
116
|
+
<div class="flyout-content">
|
|
117
|
+
<wm-input label="First name *"></wm-input>
|
|
118
|
+
<wm-input label="Last name *"></wm-input>
|
|
119
|
+
<wm-input label="Email" type="email"></wm-input>
|
|
120
|
+
</div>
|
|
121
|
+
</wm-flyout>
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
_Basic flyout_
|
|
125
|
+
|
|
126
|
+
```react
|
|
127
|
+
// Set open imperatively via ref.
|
|
128
|
+
const flyoutRef = useRef(null);
|
|
129
|
+
|
|
130
|
+
const openFlyout = () => { flyoutRef.current.open = true; };
|
|
131
|
+
const closeFlyout = () => { flyoutRef.current.open = false; };
|
|
132
|
+
|
|
133
|
+
<WmButton onClick={openFlyout}>Open flyout</WmButton>
|
|
134
|
+
|
|
135
|
+
<WmFlyout
|
|
136
|
+
ref={flyoutRef}
|
|
137
|
+
heading="Edit profile"
|
|
138
|
+
eyebrow="Student"
|
|
139
|
+
subheading="Update your information below"
|
|
140
|
+
primaryText="Save"
|
|
141
|
+
secondaryText="Cancel"
|
|
142
|
+
infoText="* Required fields"
|
|
143
|
+
onWmFlyoutCloseTriggered={closeFlyout}
|
|
144
|
+
onWmFlyoutSecondaryTriggered={closeFlyout}
|
|
145
|
+
onWmFlyoutPrimaryTriggered={closeFlyout}
|
|
146
|
+
>
|
|
147
|
+
<div className="flyout-content">
|
|
148
|
+
<WmInput label="First name *" />
|
|
149
|
+
<WmInput label="Last name *" />
|
|
150
|
+
<WmInput label="Email" type="email" />
|
|
151
|
+
</div>
|
|
152
|
+
</WmFlyout>
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
_Multi-step flyout with breadcrumbs_
|
|
156
|
+
|
|
157
|
+
```html
|
|
158
|
+
<button onclick="document.getElementById('multi-step').open = true">Open multi-step flyout</button>
|
|
159
|
+
|
|
160
|
+
<wm-flyout id="multi-step" heading="Vestibulum convallis"
|
|
161
|
+
breadcrumb="Vestibulum convallis"
|
|
162
|
+
primary-text="Next" secondary-text="Cancel">
|
|
163
|
+
<div id="step1" class="flyout-content"><p>Step 1 content</p></div>
|
|
164
|
+
<div id="step2" class="flyout-content" style="display:none"><p>Step 2 content</p></div>
|
|
165
|
+
</wm-flyout>
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
_Multi-step flyout with breadcrumbs_
|
|
169
|
+
|
|
170
|
+
```react
|
|
171
|
+
// Drive heading/breadcrumb/primaryText/secondaryText from step state so React keeps them
|
|
172
|
+
// in sync on re-render. Use useEffect to call focusHeading() after the DOM has updated.
|
|
173
|
+
const flyoutRef = useRef(null);
|
|
174
|
+
const [step, setStep] = useState(0);
|
|
175
|
+
const [focusHeading, setFocusHeading] = useState(false);
|
|
176
|
+
|
|
177
|
+
const steps = [
|
|
178
|
+
{ heading: "Vestibulum convallis", breadcrumb: "Vestibulum convallis", primaryText: "Next", secondaryText: "Cancel" },
|
|
179
|
+
{ heading: "Dignissim magna", breadcrumb: "Vestibulum convallis,Dignissim magna", primaryText: "Submit", secondaryText: "Back" },
|
|
180
|
+
];
|
|
181
|
+
|
|
182
|
+
useEffect(() => {
|
|
183
|
+
if (focusHeading) {
|
|
184
|
+
flyoutRef.current.focusHeading();
|
|
185
|
+
setFocusHeading(false);
|
|
186
|
+
}
|
|
187
|
+
}, [step, focusHeading]);
|
|
188
|
+
|
|
189
|
+
const goToStep = (idx) => { setStep(idx); setFocusHeading(true); };
|
|
190
|
+
const handlePrimary = () => { step === 0 ? goToStep(1) : (flyoutRef.current.open = false); };
|
|
191
|
+
const handleSecondary = () => { step === 0 ? (flyoutRef.current.open = false) : goToStep(0); };
|
|
192
|
+
|
|
193
|
+
<WmButton onClick={() => { setStep(0); flyoutRef.current.open = true; }}>Open flyout</WmButton>
|
|
194
|
+
|
|
195
|
+
<WmFlyout
|
|
196
|
+
ref={flyoutRef}
|
|
197
|
+
heading={steps[step].heading}
|
|
198
|
+
breadcrumb={steps[step].breadcrumb}
|
|
199
|
+
primaryText={steps[step].primaryText}
|
|
200
|
+
secondaryText={steps[step].secondaryText}
|
|
201
|
+
onWmFlyoutPrimaryTriggered={handlePrimary}
|
|
202
|
+
onWmFlyoutSecondaryTriggered={handleSecondary}
|
|
203
|
+
onWmFlyoutCloseTriggered={() => { flyoutRef.current.open = false; }}
|
|
204
|
+
onWmFlyoutBreadcrumbClicked={(ev) => goToStep(ev.detail.index)}
|
|
205
|
+
>
|
|
206
|
+
{step === 0 && <div className="flyout-content"><WmInput label="Program name *" /></div>}
|
|
207
|
+
{step === 1 && <div className="flyout-content"><WmInput label="Start date" /></div>}
|
|
208
|
+
</WmFlyout>
|
|
209
|
+
```
|