@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,760 @@
|
|
|
1
|
+
import { h, Host, forceUpdate, } from "@stencil/core";
|
|
2
|
+
import { uploaderMessages } from "../../global/intl";
|
|
3
|
+
import { intl, hideTooltip, showTooltip } from "../../global/functions";
|
|
4
|
+
/**
|
|
5
|
+
* File upload component for attaching files. Composed of a trigger button and a list of
|
|
6
|
+
* wm-file children. Two variants: `'select'` opens the browser file picker; `'drop'` adds a
|
|
7
|
+
* drag-and-drop area. The component emits events when files are selected and when file
|
|
8
|
+
* actions are triggered — the application is responsible for validation, upload, and managing
|
|
9
|
+
* the file list. Use wm-file-list instead when displaying files without uploading.
|
|
10
|
+
*
|
|
11
|
+
* @category Form Inputs
|
|
12
|
+
*
|
|
13
|
+
* @slot - One or more wm-file children representing the current file list.
|
|
14
|
+
*
|
|
15
|
+
* @accessibility
|
|
16
|
+
* - The number of in-progress uploads and aggregate upload percentage are announced via
|
|
17
|
+
* `aria-live` regions.
|
|
18
|
+
* - Deletion focus is managed automatically: moves to the next file, then the previous file,
|
|
19
|
+
* then the upload button.
|
|
20
|
+
* - The `progress` prop on wm-file children must be kept up to date for proper screen reader
|
|
21
|
+
* accessibility.
|
|
22
|
+
*
|
|
23
|
+
* @usageNotes
|
|
24
|
+
* - `button-text` is required.
|
|
25
|
+
* - Validate files (type, size, count) in the `wmUploaderFilesSelected` handler; set
|
|
26
|
+
* `error-message` on the uploader or on individual wm-file elements externally.
|
|
27
|
+
* - Announce file deletions to screen readers using wm-snackbar.
|
|
28
|
+
* - `drop-area="page"` expands the drop zone to the full page while dragging; only valid
|
|
29
|
+
* when `uploader-type="drop"`.
|
|
30
|
+
*
|
|
31
|
+
* @example {html} Select variant
|
|
32
|
+
* <wm-uploader button-text="Attach files" icon="#attach" label="Project documents">
|
|
33
|
+
* <wm-file id="f1" name="proposal" type="pdf" size="1.2 MB"></wm-file>
|
|
34
|
+
* </wm-uploader>
|
|
35
|
+
*
|
|
36
|
+
* @example {react} Select variant with file list management
|
|
37
|
+
* // wmUploaderFilesSelected emits a FileList -- use Array.from() to iterate.
|
|
38
|
+
* // Extract name (without extension) and type (extension only) for each wm-file child.
|
|
39
|
+
* // wmFileDelete fires on the wm-file element; use e.target.id to identify which to remove.
|
|
40
|
+
* // showInfo on the uploader propagates automatically to all wm-file children.
|
|
41
|
+
* let nextId = 1;
|
|
42
|
+
* const [files, setFiles] = useState([]);
|
|
43
|
+
*
|
|
44
|
+
* const handleFilesSelected = (e) => {
|
|
45
|
+
* const newFiles = Array.from(e.detail).map((file) => {
|
|
46
|
+
* const lastDot = file.name.lastIndexOf(".");
|
|
47
|
+
* const name = lastDot > 0 ? file.name.slice(0, lastDot) : file.name;
|
|
48
|
+
* const type = lastDot > 0 ? file.name.slice(lastDot + 1) : "file";
|
|
49
|
+
* return { id: String(nextId++), name, type, size: `${(file.size / 1024).toFixed(1)} KB` };
|
|
50
|
+
* });
|
|
51
|
+
* setFiles((prev) => [...prev, ...newFiles]);
|
|
52
|
+
* };
|
|
53
|
+
*
|
|
54
|
+
* const handleDelete = (e) => {
|
|
55
|
+
* const id = e.target.id;
|
|
56
|
+
* setFiles((prev) => prev.filter((f) => f.id !== id));
|
|
57
|
+
* };
|
|
58
|
+
*
|
|
59
|
+
* <WmUploader buttonText="Attach files" icon="#attach" label="Project documents" showInfo="size"
|
|
60
|
+
* onWmUploaderFilesSelected={handleFilesSelected}>
|
|
61
|
+
* {files.map((f) => (
|
|
62
|
+
* <WmFile key={f.id} id={f.id} name={f.name} type={f.type} size={f.size}
|
|
63
|
+
* onWmFileDelete={handleDelete} />
|
|
64
|
+
* ))}
|
|
65
|
+
* </WmUploader>
|
|
66
|
+
*
|
|
67
|
+
* @example {html} Drop variant
|
|
68
|
+
* <wm-uploader uploader-type="drop" button-text="Upload files" icon="#upload">
|
|
69
|
+
* </wm-uploader>
|
|
70
|
+
*
|
|
71
|
+
* @example {react} Drop variant
|
|
72
|
+
* <WmUploader uploaderType="drop" buttonText="Upload files" icon="#upload"
|
|
73
|
+
* onWmUploaderFilesSelected={handleFilesSelected} />
|
|
74
|
+
*
|
|
75
|
+
* @requiredSetup
|
|
76
|
+
* - Handle `wmUploaderFilesSelected` (`event.detail` is an array of browser `File` objects) and hold
|
|
77
|
+
* the files in your own state.
|
|
78
|
+
* - Validate type, size, and count in that handler and report problems through `error-message`.
|
|
79
|
+
* `file-types` and `max-size` are shown to the user but not enforced, and `max-files` only
|
|
80
|
+
* disables the control once that many wm-file children exist.
|
|
81
|
+
* - Render a wm-file per accepted file, and handle its `wmFileDelete` -- identify the file with
|
|
82
|
+
* `event.target.id` -- by removing it from state.
|
|
83
|
+
* - Update each wm-file `progress` as the upload proceeds; it drives the progress bar and the
|
|
84
|
+
* aria-live announcement.
|
|
85
|
+
*
|
|
86
|
+
*
|
|
87
|
+
*/
|
|
88
|
+
export class Uploader {
|
|
89
|
+
constructor() {
|
|
90
|
+
this.batchCount = 0; // used to calculate the aggregate upload progress
|
|
91
|
+
this.prevUploadCount = 0; // comparison to determine whether or not to announce updated count
|
|
92
|
+
this.label = undefined;
|
|
93
|
+
this.uploaderType = "select";
|
|
94
|
+
this.dropArea = "component";
|
|
95
|
+
this.buttonText = undefined;
|
|
96
|
+
this.icon = undefined;
|
|
97
|
+
this.fileTypes = "pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv";
|
|
98
|
+
this.maxSize = undefined;
|
|
99
|
+
this.maxFiles = undefined;
|
|
100
|
+
this.errorMessage = undefined;
|
|
101
|
+
this.requiredField = undefined;
|
|
102
|
+
this.showInfo = "time";
|
|
103
|
+
this.isTabbing = false;
|
|
104
|
+
this.notif = "";
|
|
105
|
+
this.isCondensed = false;
|
|
106
|
+
}
|
|
107
|
+
get isDisabled() {
|
|
108
|
+
// disable if is the uploader is maxed out or if something is uploading
|
|
109
|
+
return this.fileLimitReached || this.inProgressFileEls.length > 0;
|
|
110
|
+
}
|
|
111
|
+
get fileEls() {
|
|
112
|
+
return Array.from(this.el.querySelectorAll("wm-file"));
|
|
113
|
+
}
|
|
114
|
+
get inProgressFileEls() {
|
|
115
|
+
return this.fileEls.filter((file) => file.progress !== undefined && file.progress < 100);
|
|
116
|
+
}
|
|
117
|
+
get uploadedFileEls() {
|
|
118
|
+
return this.fileEls.filter((file) => !file.errorMessage);
|
|
119
|
+
}
|
|
120
|
+
get fileLimitReached() {
|
|
121
|
+
return this.maxFiles && this.uploadedFileEls.length >= this.maxFiles;
|
|
122
|
+
}
|
|
123
|
+
get validTypes() {
|
|
124
|
+
return "." + this.fileTypes.split(" ").join(", .");
|
|
125
|
+
}
|
|
126
|
+
toggleTabbingOn() {
|
|
127
|
+
this.isTabbing = true;
|
|
128
|
+
}
|
|
129
|
+
toggleTabbingOff() {
|
|
130
|
+
this.isTabbing = false;
|
|
131
|
+
}
|
|
132
|
+
handleFileErrorCleared() {
|
|
133
|
+
this.uploadButtonEl.focus();
|
|
134
|
+
}
|
|
135
|
+
handleFileDelete(ev) {
|
|
136
|
+
const focusableFileEls = this.fileEls.filter((file) => !!file.fileActions);
|
|
137
|
+
this.deletedEl = ev.target;
|
|
138
|
+
const index = focusableFileEls.indexOf(this.deletedEl);
|
|
139
|
+
// actual focus will called only after el is removed from DOM
|
|
140
|
+
if (focusableFileEls.length === 1) {
|
|
141
|
+
// it was the only item, focus the upload button
|
|
142
|
+
this.elToFocusOnDelete = this.uploadButtonEl;
|
|
143
|
+
}
|
|
144
|
+
else if (index === focusableFileEls.length - 1) {
|
|
145
|
+
// it's the last item, focus the previous file
|
|
146
|
+
const fileToFocus = focusableFileEls[index - 1];
|
|
147
|
+
const fileActionButtons = fileToFocus.shadowRoot.querySelectorAll("wm-button");
|
|
148
|
+
this.elToFocusOnDelete = fileActionButtons[fileActionButtons.length - 1];
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
// otherwise focus the next file
|
|
152
|
+
const fileToFocus = focusableFileEls[index + 1];
|
|
153
|
+
const fileActionButtons = fileToFocus.shadowRoot.querySelectorAll("wm-button");
|
|
154
|
+
this.elToFocusOnDelete = fileActionButtons[fileActionButtons.length - 1];
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
announceError() {
|
|
158
|
+
if (this.errorMessage) {
|
|
159
|
+
setTimeout(() => this.announce(this.errorMessage, this.politeLiveRegionEl), 100);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
///////// Drop Event Handling ////////
|
|
163
|
+
handleDocumentDragEnter() {
|
|
164
|
+
if (this.uploaderType == "drop") {
|
|
165
|
+
this.beginDropListening();
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
handleDocumentMouseOut() {
|
|
169
|
+
if (this.uploaderType == "drop" && this.dropAreaEl) {
|
|
170
|
+
this.endDropListening();
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
handleDocumentDragLeave(ev) {
|
|
174
|
+
if (this.uploaderType == "drop") {
|
|
175
|
+
// Do not end drop listening for events that bubble up from children of this uploader
|
|
176
|
+
if (ev.target.closest("wm-uploader") == this.el) {
|
|
177
|
+
this.endDropListening();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
handleDocumentVisibilityChange() {
|
|
182
|
+
// If a file is dropped outside of the drop area, if the browser opens the file in new tab, a dragleave event is not fired. This handles that case
|
|
183
|
+
if (this.uploaderType == "drop") {
|
|
184
|
+
this.endDropListening();
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
handleDragEnter(ev) {
|
|
188
|
+
if (this.uploaderType == "drop") {
|
|
189
|
+
ev.preventDefault();
|
|
190
|
+
this.el.classList.add("dragging");
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
handleDragOver(ev) {
|
|
194
|
+
if (this.uploaderType == "drop") {
|
|
195
|
+
ev.preventDefault();
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
handleDragLeave(ev) {
|
|
199
|
+
if (this.uploaderType == "drop") {
|
|
200
|
+
ev.preventDefault();
|
|
201
|
+
this.endDropListening();
|
|
202
|
+
this.el.classList.remove("dragging");
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
handleDrop(ev) {
|
|
206
|
+
if (this.uploaderType == "drop") {
|
|
207
|
+
ev.preventDefault();
|
|
208
|
+
this.el.classList.remove("dragging");
|
|
209
|
+
this.endDropListening();
|
|
210
|
+
if (ev.dataTransfer.files) {
|
|
211
|
+
const files = Array.from(ev.dataTransfer.files);
|
|
212
|
+
if (files.length > 0) {
|
|
213
|
+
this.batchCount = files.length;
|
|
214
|
+
this.wmUploaderFilesSelected.emit(files);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
beginDropListening() {
|
|
220
|
+
if (this.dropArea == "page") {
|
|
221
|
+
this.dropOverlayEl.showPopover();
|
|
222
|
+
}
|
|
223
|
+
this.dropAreaEl.classList.add("listening");
|
|
224
|
+
}
|
|
225
|
+
endDropListening() {
|
|
226
|
+
if (this.dropArea == "page") {
|
|
227
|
+
this.dropOverlayEl.hidePopover();
|
|
228
|
+
}
|
|
229
|
+
this.dropAreaEl.classList.remove("listening");
|
|
230
|
+
}
|
|
231
|
+
componentDidLoad() {
|
|
232
|
+
if (document.body.classList.contains("wmcl-user-is-tabbing")) {
|
|
233
|
+
this.toggleTabbingOn();
|
|
234
|
+
}
|
|
235
|
+
const mutationObserver = new MutationObserver((mutationRecordList) => mutationRecordList.forEach((mutationRecord) => this.handleChildMutation(mutationRecord)));
|
|
236
|
+
mutationObserver.observe(this.el, {
|
|
237
|
+
childList: true,
|
|
238
|
+
subtree: true,
|
|
239
|
+
attributes: true,
|
|
240
|
+
attributeOldValue: true,
|
|
241
|
+
attributeFilter: ["progress"],
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
handleChildMutation(mutationRecord) {
|
|
245
|
+
if (mutationRecord.type === "attributes") {
|
|
246
|
+
this.handleProgressUpdate(mutationRecord);
|
|
247
|
+
}
|
|
248
|
+
else if (mutationRecord.type === "childList") {
|
|
249
|
+
// if user prompted the removal of a single file (they hit the delete button)
|
|
250
|
+
// re-assigning focus handled here because component shouldn't assume the node removal based on the event firing
|
|
251
|
+
const removedEls = mutationRecord.removedNodes;
|
|
252
|
+
const removedEl = removedEls[0];
|
|
253
|
+
if (removedEls.length === 1 && removedEl === this.deletedEl && this.elToFocusOnDelete) {
|
|
254
|
+
this.elToFocusOnDelete.focus();
|
|
255
|
+
this.deletedEl = null;
|
|
256
|
+
this.elToFocusOnDelete = null;
|
|
257
|
+
}
|
|
258
|
+
// on added wm-files, if wm-file has an error, announce
|
|
259
|
+
if (mutationRecord.addedNodes.length > 0) {
|
|
260
|
+
mutationRecord.addedNodes.forEach((addedFile) => {
|
|
261
|
+
if (addedFile.errorMessage) {
|
|
262
|
+
setTimeout(() => this.announce(addedFile.errorMessage, this.politeLiveRegionEl), 500);
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
forceUpdate(this.el); // forceUpdate to rerender filecount
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
handleProgressUpdate(mutationRecord) {
|
|
270
|
+
const uploadCount = this.inProgressFileEls.length;
|
|
271
|
+
if (uploadCount !== 0) {
|
|
272
|
+
const changeInUploadingFiles = this.prevUploadCount !== uploadCount;
|
|
273
|
+
changeInUploadingFiles &&
|
|
274
|
+
this.announce(uploaderMessages.getFilesUploading(uploadCount), this.assertiveLiveRegionEl);
|
|
275
|
+
this.notif = uploaderMessages.getFilesUploading(uploadCount);
|
|
276
|
+
this.prevUploadCount = uploadCount;
|
|
277
|
+
if (this.batchCount < uploadCount) {
|
|
278
|
+
this.batchCount = uploadCount;
|
|
279
|
+
}
|
|
280
|
+
if (!this.srProgress) {
|
|
281
|
+
this.srProgress = setInterval(() => {
|
|
282
|
+
const aggregate = this.fileEls.reduce((avg, item) => (item.progress ? avg + item.progress : avg), 0);
|
|
283
|
+
const percentage = this.batchCount > 0 ? Math.floor(aggregate / this.batchCount) : 0;
|
|
284
|
+
this.announce(uploaderMessages.getUploadProgress(percentage), this.assertiveLiveRegionEl);
|
|
285
|
+
}, 5000);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
else if (uploadCount === 0 && mutationRecord.oldValue && parseInt(mutationRecord.oldValue) < 100) {
|
|
289
|
+
// if final file progress completes
|
|
290
|
+
this.uploadButtonEl.value = "";
|
|
291
|
+
this.batchCount = 0;
|
|
292
|
+
this.notif = uploaderMessages.finishedUploading;
|
|
293
|
+
this.announce(uploaderMessages.finishedUploading, this.assertiveLiveRegionEl);
|
|
294
|
+
clearInterval(this.srProgress);
|
|
295
|
+
setTimeout(() => {
|
|
296
|
+
this.notif = "";
|
|
297
|
+
}, 20 * 1000);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
handleUploadButtonClick(ev) {
|
|
301
|
+
if (this.isDisabled) {
|
|
302
|
+
// this is a temporary fix.
|
|
303
|
+
// we need the disabled button to be programmatically focusable
|
|
304
|
+
// to allow return focus after closing the browser file panel
|
|
305
|
+
// since it's focusable the button should respond when activated
|
|
306
|
+
// it looks disabled, and announces the reason why the action cannot
|
|
307
|
+
// be taken when activated.
|
|
308
|
+
ev.preventDefault();
|
|
309
|
+
if (this.inProgressFileEls.length > 0) {
|
|
310
|
+
this.announce(uploaderMessages.waitToUpload, this.assertiveLiveRegionEl);
|
|
311
|
+
}
|
|
312
|
+
else if (this.fileLimitReached) {
|
|
313
|
+
this.announce(uploaderMessages.fileLimitReached, this.assertiveLiveRegionEl);
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
this.uploadButtonEl.value = ""; // when making a new selection, always reset the value so onChange is triggered (even if the same file is selected)
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
handleUploadButtonChange() {
|
|
321
|
+
if (this.uploadButtonEl.files) {
|
|
322
|
+
const files = Array.from(this.uploadButtonEl.files);
|
|
323
|
+
if (files.length > 0) {
|
|
324
|
+
this.batchCount = files.length;
|
|
325
|
+
this.wmUploaderFilesSelected.emit(files);
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
handleLabelMouseEnter(ev) {
|
|
330
|
+
const labelEl = ev.target;
|
|
331
|
+
if (labelEl.scrollWidth > labelEl.clientWidth) {
|
|
332
|
+
showTooltip("right", labelEl, this.label);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
announce(message, liveRegionEl) {
|
|
336
|
+
if (liveRegionEl.textContent === message) {
|
|
337
|
+
message += "\u00A0";
|
|
338
|
+
}
|
|
339
|
+
liveRegionEl.textContent = message;
|
|
340
|
+
}
|
|
341
|
+
renderIcon() {
|
|
342
|
+
const defaultIconSize = "0.875rem";
|
|
343
|
+
if (this.icon.match(/^#/)) {
|
|
344
|
+
// Icon ID
|
|
345
|
+
return h("span", { class: `svg-icon svg-${this.icon.slice(1)}`, style: { "--icon-size": defaultIconSize } });
|
|
346
|
+
}
|
|
347
|
+
else if (this.icon.match(/^\/\S*[#]\S*/)) {
|
|
348
|
+
// starts with /, any number of non-whitespace characters, followed by #, followed by any non-whitespace characters
|
|
349
|
+
// Relative Path & Symbol
|
|
350
|
+
return (h("svg", { xmlns: "http://www.w3.org/2000/svg", class: "svg-icon", style: { "--icon-fill": "currentColor", "--icon-size": defaultIconSize }, fill: "currentColor" }, h("use", { href: this.icon })));
|
|
351
|
+
}
|
|
352
|
+
else {
|
|
353
|
+
// MDI
|
|
354
|
+
return (h("span", { class: "mdi", "aria-hidden": "true" }, String.fromCodePoint(parseInt(`0x${this.icon}`))));
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
renderUploadButton() {
|
|
358
|
+
let accessibleLabel = `${this.label && this.label !== this.buttonText ? `${this.label}, ` : ""}${this.buttonText}`;
|
|
359
|
+
return (h("div", { class: "button-wrapper" }, h("input", { name: "input", id: "input", ref: (el) => (this.uploadButtonEl = el), class: "sr-only", "aria-label": accessibleLabel, "aria-required": this.requiredField ? "true" : null, "aria-describedby": `${this.errorMessage ? "error " : ""}file-count max-size accepted-types`, type: "file", multiple: true, onClick: (ev) => this.handleUploadButtonClick(ev), onChange: () => this.handleUploadButtonChange() }), h("label", { htmlFor: "input", class: `wm-button -secondary ${this.isDisabled ? "disabled" : ""}` }, this.icon && this.renderIcon(), this.buttonText), this.uploaderType == "select" && this.renderFileCount()));
|
|
360
|
+
}
|
|
361
|
+
renderDropButton() {
|
|
362
|
+
let accessibleLabel = `${this.label && this.label !== this.buttonText ? `${this.label}, ` : ""}${uploaderMessages.dropInstructions}`;
|
|
363
|
+
return (h("div", { class: "button-wrapper -drop" }, h("input", { name: "input", id: "input", ref: (el) => (this.uploadButtonEl = el), class: "sr-only", "aria-label": accessibleLabel, "aria-required": this.requiredField ? "true" : null, "aria-describedby": `${this.errorMessage ? "error " : ""}file-count max-size accepted-types`, type: "file", multiple: true, onClick: (ev) => this.handleUploadButtonClick(ev), onChange: () => this.handleUploadButtonChange() }), h("label", { htmlFor: "input", class: `${this.isDisabled ? "disabled" : ""}` }, h("div", { class: "prompt" }, h("span", { class: "upload-arrow" }), h("span", { id: "drop-text", class: `wm-button -textonly ${this.isDisabled ? "disabled" : ""}` }, h("span", { class: "default-text" }, uploaderMessages.dropInstructions), h("span", { class: "dragging-text" }, uploaderMessages.dropFile))), this.renderFileCount())));
|
|
364
|
+
}
|
|
365
|
+
renderHeader() {
|
|
366
|
+
return (h("div", { class: "header" }, h("div", { class: "notif-wrapper" }, this.uploaderType == "select" ? this.renderUploadButton() : this.renderDropButton(), this.renderRequirements()), this.notif && h("div", { class: "notif" }, this.notif), h("div", { id: "error" }, this.errorMessage)));
|
|
367
|
+
}
|
|
368
|
+
renderFileCount() {
|
|
369
|
+
if (this.maxFiles) {
|
|
370
|
+
return h("div", { id: "file-count" }, uploaderMessages.getFileCount(this.uploadedFileEls.length, this.maxFiles));
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
renderRequirements() {
|
|
374
|
+
const maxSizeMessage = intl.formatMessage({
|
|
375
|
+
id: "uploader.maxSize",
|
|
376
|
+
defaultMessage: "<b>Maximum File Size:</b> {maxSize}",
|
|
377
|
+
description: "An indicator of the maximum file size the uploader allows",
|
|
378
|
+
}, {
|
|
379
|
+
maxSize: this.maxSize,
|
|
380
|
+
b: (chunks) => h("span", { style: { "font-weight": "600" } }, chunks),
|
|
381
|
+
});
|
|
382
|
+
const acceptedTypesMessage = intl.formatMessage({
|
|
383
|
+
id: "uploader.acceptedFileTypes",
|
|
384
|
+
defaultMessage: "<b>Accepted File {amount, plural, =1 {Type} other {Types}}:</b> {fileTypes}",
|
|
385
|
+
}, {
|
|
386
|
+
fileTypes: this.validTypes,
|
|
387
|
+
amount: this.fileTypes.split(" ").length,
|
|
388
|
+
b: (chunks) => h("span", { style: { "font-weight": "600" } }, chunks),
|
|
389
|
+
});
|
|
390
|
+
return (h("details", { class: "requirements" }, h("summary", null, h("span", { class: "title-text" }, uploaderMessages.fileRequirements)), h("div", { class: "requirements-wrapper" }, h("div", { id: "accepted-types", class: "accepted-types" }, acceptedTypesMessage), this.maxSize && h("span", { id: "max-size" }, maxSizeMessage))));
|
|
391
|
+
}
|
|
392
|
+
renderListContainer() {
|
|
393
|
+
const hasNewlyUploadedFiles = this.fileEls.filter((file) => file.progress && file.progress === 100).length;
|
|
394
|
+
return (h("div", { class: `list-container ${hasNewlyUploadedFiles ? "checkmark-spacer" : ""}` }, h("ul", { class: "file-list" }, h("slot", null))));
|
|
395
|
+
}
|
|
396
|
+
renderLabel() {
|
|
397
|
+
return (h("div", { class: `wrapper ${this.errorMessage ? "invalid" : ""}` }, h("div", { class: "label-wrapper" }, h("div", { id: "label", class: `label`, onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label), this.requiredField && (h("div", { class: "required", "aria-hidden": "true" }, "*")))));
|
|
398
|
+
}
|
|
399
|
+
renderDropArea() {
|
|
400
|
+
return (h("div", { class: `drop-area -${this.dropArea}`, ref: (el) => (this.dropAreaEl = el), onDragEnter: (ev) => this.handleDragEnter(ev), onDragOver: (ev) => this.handleDragOver(ev), onDragLeave: (ev) => this.handleDragLeave(ev), onDrop: (ev) => this.handleDrop(ev) }, this.dropArea == "page" && (h("div", { ref: (el) => (this.dropOverlayEl = el), class: "drop-overlay", popover: "manual" }, h("span", { class: "upload-arrow" }), h("span", null, "Drop to Upload")))));
|
|
401
|
+
}
|
|
402
|
+
render() {
|
|
403
|
+
return (h(Host, { key: '10b9229c1b4c9c33c5ac26f2632cef8a3bb7725f', class: `-${this.dropArea}` }, this.uploaderType == "drop" && this.renderDropArea(), this.label && this.renderLabel(), this.renderHeader(), this.renderListContainer(), h("div", { key: 'ed105d34fbd49f62a7e2aadc0514a4d2243b6e5a', ref: (el) => (this.assertiveLiveRegionEl = el), class: "live-region sr-only", "aria-live": "assertive" // since it's directly linked to the action the user took, it should be read in priority. With polite, some messages get dismissed in favor of the page title
|
|
404
|
+
,
|
|
405
|
+
"aria-atomic": "true" }), h("div", { key: '1ec637c9bdbefecde3f229db946b3701dc271d06', ref: (el) => (this.politeLiveRegionEl = el), class: "live-region sr-only", "aria-live": "polite", "aria-atomic": "true" })));
|
|
406
|
+
}
|
|
407
|
+
static get is() { return "wm-uploader"; }
|
|
408
|
+
static get encapsulation() { return "shadow"; }
|
|
409
|
+
static get delegatesFocus() { return true; }
|
|
410
|
+
static get originalStyleUrls() {
|
|
411
|
+
return {
|
|
412
|
+
"$": ["wm-uploader.scss"]
|
|
413
|
+
};
|
|
414
|
+
}
|
|
415
|
+
static get styleUrls() {
|
|
416
|
+
return {
|
|
417
|
+
"$": ["wm-uploader.css"]
|
|
418
|
+
};
|
|
419
|
+
}
|
|
420
|
+
static get properties() {
|
|
421
|
+
return {
|
|
422
|
+
"label": {
|
|
423
|
+
"type": "string",
|
|
424
|
+
"mutable": false,
|
|
425
|
+
"complexType": {
|
|
426
|
+
"original": "string",
|
|
427
|
+
"resolved": "string | undefined",
|
|
428
|
+
"references": {}
|
|
429
|
+
},
|
|
430
|
+
"required": false,
|
|
431
|
+
"optional": true,
|
|
432
|
+
"docs": {
|
|
433
|
+
"tags": [{
|
|
434
|
+
"name": "description",
|
|
435
|
+
"text": "Optional label displayed above the upload button. Use when the uploader is\nrequired (pair with `required-field`) or needs a descriptive heading."
|
|
436
|
+
}],
|
|
437
|
+
"text": ""
|
|
438
|
+
},
|
|
439
|
+
"attribute": "label",
|
|
440
|
+
"reflect": false
|
|
441
|
+
},
|
|
442
|
+
"uploaderType": {
|
|
443
|
+
"type": "string",
|
|
444
|
+
"mutable": false,
|
|
445
|
+
"complexType": {
|
|
446
|
+
"original": "\"select\" | \"drop\"",
|
|
447
|
+
"resolved": "\"drop\" | \"select\"",
|
|
448
|
+
"references": {}
|
|
449
|
+
},
|
|
450
|
+
"required": false,
|
|
451
|
+
"optional": false,
|
|
452
|
+
"docs": {
|
|
453
|
+
"tags": [{
|
|
454
|
+
"name": "description",
|
|
455
|
+
"text": "File selection method. `'select'` opens the browser file picker; `'drop'`\nadds a drag-and-drop area."
|
|
456
|
+
}, {
|
|
457
|
+
"name": "default",
|
|
458
|
+
"text": "\"select\""
|
|
459
|
+
}],
|
|
460
|
+
"text": ""
|
|
461
|
+
},
|
|
462
|
+
"attribute": "uploader-type",
|
|
463
|
+
"reflect": false,
|
|
464
|
+
"defaultValue": "\"select\""
|
|
465
|
+
},
|
|
466
|
+
"dropArea": {
|
|
467
|
+
"type": "string",
|
|
468
|
+
"mutable": false,
|
|
469
|
+
"complexType": {
|
|
470
|
+
"original": "\"component\" | \"page\"",
|
|
471
|
+
"resolved": "\"component\" | \"page\"",
|
|
472
|
+
"references": {}
|
|
473
|
+
},
|
|
474
|
+
"required": false,
|
|
475
|
+
"optional": false,
|
|
476
|
+
"docs": {
|
|
477
|
+
"tags": [{
|
|
478
|
+
"name": "description",
|
|
479
|
+
"text": "Scope of the drop zone when `uploader-type=\"drop\"`. `'component'` limits\nthe drop area to the component; `'page'` expands it to cover the full page while dragging."
|
|
480
|
+
}, {
|
|
481
|
+
"name": "default",
|
|
482
|
+
"text": "\"component\""
|
|
483
|
+
}],
|
|
484
|
+
"text": ""
|
|
485
|
+
},
|
|
486
|
+
"attribute": "drop-area",
|
|
487
|
+
"reflect": false,
|
|
488
|
+
"defaultValue": "\"component\""
|
|
489
|
+
},
|
|
490
|
+
"buttonText": {
|
|
491
|
+
"type": "string",
|
|
492
|
+
"mutable": false,
|
|
493
|
+
"complexType": {
|
|
494
|
+
"original": "string",
|
|
495
|
+
"resolved": "string",
|
|
496
|
+
"references": {}
|
|
497
|
+
},
|
|
498
|
+
"required": true,
|
|
499
|
+
"optional": false,
|
|
500
|
+
"docs": {
|
|
501
|
+
"tags": [{
|
|
502
|
+
"name": "description",
|
|
503
|
+
"text": "Label text on the upload trigger button, e.g. `'Attach files'`. Should\nmatch the action verb used in any surrounding instructions."
|
|
504
|
+
}, {
|
|
505
|
+
"name": "required",
|
|
506
|
+
"text": undefined
|
|
507
|
+
}],
|
|
508
|
+
"text": ""
|
|
509
|
+
},
|
|
510
|
+
"attribute": "button-text",
|
|
511
|
+
"reflect": false
|
|
512
|
+
},
|
|
513
|
+
"icon": {
|
|
514
|
+
"type": "string",
|
|
515
|
+
"mutable": false,
|
|
516
|
+
"complexType": {
|
|
517
|
+
"original": "string",
|
|
518
|
+
"resolved": "string",
|
|
519
|
+
"references": {}
|
|
520
|
+
},
|
|
521
|
+
"required": true,
|
|
522
|
+
"optional": false,
|
|
523
|
+
"docs": {
|
|
524
|
+
"tags": [{
|
|
525
|
+
"name": "description",
|
|
526
|
+
"text": "Icon displayed on the upload button. Accepts the same formats as wm-button:\n`'#icon-name'` for a Ripple icon or `'/path/to/file.svg#symbol-id'` for a local SVG\nsprite."
|
|
527
|
+
}],
|
|
528
|
+
"text": ""
|
|
529
|
+
},
|
|
530
|
+
"attribute": "icon",
|
|
531
|
+
"reflect": false
|
|
532
|
+
},
|
|
533
|
+
"fileTypes": {
|
|
534
|
+
"type": "string",
|
|
535
|
+
"mutable": false,
|
|
536
|
+
"complexType": {
|
|
537
|
+
"original": "string",
|
|
538
|
+
"resolved": "string",
|
|
539
|
+
"references": {}
|
|
540
|
+
},
|
|
541
|
+
"required": false,
|
|
542
|
+
"optional": false,
|
|
543
|
+
"docs": {
|
|
544
|
+
"tags": [{
|
|
545
|
+
"name": "description",
|
|
546
|
+
"text": "Space-separated file extensions displayed to the user as accepted types\n(e.g. `'pdf docx xlsx'`). Actual validation must be handled in the\n`wmUploaderFilesSelected` handler."
|
|
547
|
+
}, {
|
|
548
|
+
"name": "default",
|
|
549
|
+
"text": "\"pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv\""
|
|
550
|
+
}],
|
|
551
|
+
"text": ""
|
|
552
|
+
},
|
|
553
|
+
"attribute": "file-types",
|
|
554
|
+
"reflect": false,
|
|
555
|
+
"defaultValue": "\"pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv\""
|
|
556
|
+
},
|
|
557
|
+
"maxSize": {
|
|
558
|
+
"type": "string",
|
|
559
|
+
"mutable": false,
|
|
560
|
+
"complexType": {
|
|
561
|
+
"original": "string",
|
|
562
|
+
"resolved": "string | undefined",
|
|
563
|
+
"references": {}
|
|
564
|
+
},
|
|
565
|
+
"required": false,
|
|
566
|
+
"optional": true,
|
|
567
|
+
"docs": {
|
|
568
|
+
"tags": [{
|
|
569
|
+
"name": "description",
|
|
570
|
+
"text": "Maximum file size displayed to the user (e.g. `'100 MB'`). Validation must\nbe handled in the `wmUploaderFilesSelected` handler."
|
|
571
|
+
}],
|
|
572
|
+
"text": ""
|
|
573
|
+
},
|
|
574
|
+
"attribute": "max-size",
|
|
575
|
+
"reflect": false
|
|
576
|
+
},
|
|
577
|
+
"maxFiles": {
|
|
578
|
+
"type": "number",
|
|
579
|
+
"mutable": false,
|
|
580
|
+
"complexType": {
|
|
581
|
+
"original": "number",
|
|
582
|
+
"resolved": "number | undefined",
|
|
583
|
+
"references": {}
|
|
584
|
+
},
|
|
585
|
+
"required": false,
|
|
586
|
+
"optional": true,
|
|
587
|
+
"docs": {
|
|
588
|
+
"tags": [{
|
|
589
|
+
"name": "description",
|
|
590
|
+
"text": "Maximum number of files displayed to the user. Disables the upload button\nwhen reached. Validation must be handled in the application."
|
|
591
|
+
}],
|
|
592
|
+
"text": ""
|
|
593
|
+
},
|
|
594
|
+
"attribute": "max-files",
|
|
595
|
+
"reflect": false
|
|
596
|
+
},
|
|
597
|
+
"errorMessage": {
|
|
598
|
+
"type": "string",
|
|
599
|
+
"mutable": false,
|
|
600
|
+
"complexType": {
|
|
601
|
+
"original": "string",
|
|
602
|
+
"resolved": "string | undefined",
|
|
603
|
+
"references": {}
|
|
604
|
+
},
|
|
605
|
+
"required": false,
|
|
606
|
+
"optional": true,
|
|
607
|
+
"docs": {
|
|
608
|
+
"tags": [{
|
|
609
|
+
"name": "description",
|
|
610
|
+
"text": "Puts the uploader in an error state with this message (e.g. `'Please add at\nleast one file'`)."
|
|
611
|
+
}],
|
|
612
|
+
"text": ""
|
|
613
|
+
},
|
|
614
|
+
"attribute": "error-message",
|
|
615
|
+
"reflect": false
|
|
616
|
+
},
|
|
617
|
+
"requiredField": {
|
|
618
|
+
"type": "boolean",
|
|
619
|
+
"mutable": false,
|
|
620
|
+
"complexType": {
|
|
621
|
+
"original": "boolean",
|
|
622
|
+
"resolved": "boolean | undefined",
|
|
623
|
+
"references": {}
|
|
624
|
+
},
|
|
625
|
+
"required": false,
|
|
626
|
+
"optional": true,
|
|
627
|
+
"docs": {
|
|
628
|
+
"tags": [{
|
|
629
|
+
"name": "description",
|
|
630
|
+
"text": "Displays a required-field asterisk next to the label. Must be used together\nwith the `label` prop."
|
|
631
|
+
}, {
|
|
632
|
+
"name": "default",
|
|
633
|
+
"text": "false"
|
|
634
|
+
}],
|
|
635
|
+
"text": ""
|
|
636
|
+
},
|
|
637
|
+
"attribute": "required-field",
|
|
638
|
+
"reflect": false
|
|
639
|
+
},
|
|
640
|
+
"showInfo": {
|
|
641
|
+
"type": "string",
|
|
642
|
+
"mutable": false,
|
|
643
|
+
"complexType": {
|
|
644
|
+
"original": "\"size\" | \"time\" | \"none\"",
|
|
645
|
+
"resolved": "\"none\" | \"size\" | \"time\"",
|
|
646
|
+
"references": {}
|
|
647
|
+
},
|
|
648
|
+
"required": false,
|
|
649
|
+
"optional": false,
|
|
650
|
+
"docs": {
|
|
651
|
+
"tags": [{
|
|
652
|
+
"name": "description",
|
|
653
|
+
"text": "Which metadata to show for each wm-file child in the list."
|
|
654
|
+
}, {
|
|
655
|
+
"name": "default",
|
|
656
|
+
"text": "\"time\""
|
|
657
|
+
}],
|
|
658
|
+
"text": ""
|
|
659
|
+
},
|
|
660
|
+
"attribute": "show-info",
|
|
661
|
+
"reflect": false,
|
|
662
|
+
"defaultValue": "\"time\""
|
|
663
|
+
}
|
|
664
|
+
};
|
|
665
|
+
}
|
|
666
|
+
static get states() {
|
|
667
|
+
return {
|
|
668
|
+
"isTabbing": {},
|
|
669
|
+
"notif": {},
|
|
670
|
+
"isCondensed": {}
|
|
671
|
+
};
|
|
672
|
+
}
|
|
673
|
+
static get events() {
|
|
674
|
+
return [{
|
|
675
|
+
"method": "wmUploaderFilesSelected",
|
|
676
|
+
"name": "wmUploaderFilesSelected",
|
|
677
|
+
"bubbles": true,
|
|
678
|
+
"cancelable": true,
|
|
679
|
+
"composed": true,
|
|
680
|
+
"docs": {
|
|
681
|
+
"tags": [{
|
|
682
|
+
"name": "description",
|
|
683
|
+
"text": "Fires when the user selects files via the file picker or drops them onto\nthe drop zone. The host application should validate the files (type, size, count) and\nbegin the upload process."
|
|
684
|
+
}, {
|
|
685
|
+
"name": "eventDetails",
|
|
686
|
+
"text": "File[] \u2014 array of browser `File` objects selected or dropped by the user."
|
|
687
|
+
}],
|
|
688
|
+
"text": ""
|
|
689
|
+
},
|
|
690
|
+
"complexType": {
|
|
691
|
+
"original": "File[]",
|
|
692
|
+
"resolved": "File[]",
|
|
693
|
+
"references": {
|
|
694
|
+
"File": {
|
|
695
|
+
"location": "global",
|
|
696
|
+
"id": "global::File"
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
}];
|
|
701
|
+
}
|
|
702
|
+
static get elementRef() { return "el"; }
|
|
703
|
+
static get watchers() {
|
|
704
|
+
return [{
|
|
705
|
+
"propName": "errorMessage",
|
|
706
|
+
"methodName": "announceError"
|
|
707
|
+
}];
|
|
708
|
+
}
|
|
709
|
+
static get listeners() {
|
|
710
|
+
return [{
|
|
711
|
+
"name": "wmUserIsTabbing",
|
|
712
|
+
"method": "toggleTabbingOn",
|
|
713
|
+
"target": "window",
|
|
714
|
+
"capture": false,
|
|
715
|
+
"passive": false
|
|
716
|
+
}, {
|
|
717
|
+
"name": "wmUserIsNotTabbing",
|
|
718
|
+
"method": "toggleTabbingOff",
|
|
719
|
+
"target": "window",
|
|
720
|
+
"capture": false,
|
|
721
|
+
"passive": false
|
|
722
|
+
}, {
|
|
723
|
+
"name": "wmFileErrorCleared",
|
|
724
|
+
"method": "handleFileErrorCleared",
|
|
725
|
+
"target": undefined,
|
|
726
|
+
"capture": false,
|
|
727
|
+
"passive": false
|
|
728
|
+
}, {
|
|
729
|
+
"name": "wmFileDelete",
|
|
730
|
+
"method": "handleFileDelete",
|
|
731
|
+
"target": undefined,
|
|
732
|
+
"capture": false,
|
|
733
|
+
"passive": false
|
|
734
|
+
}, {
|
|
735
|
+
"name": "dragenter",
|
|
736
|
+
"method": "handleDocumentDragEnter",
|
|
737
|
+
"target": "document",
|
|
738
|
+
"capture": false,
|
|
739
|
+
"passive": true
|
|
740
|
+
}, {
|
|
741
|
+
"name": "mouseout",
|
|
742
|
+
"method": "handleDocumentMouseOut",
|
|
743
|
+
"target": "document",
|
|
744
|
+
"capture": false,
|
|
745
|
+
"passive": true
|
|
746
|
+
}, {
|
|
747
|
+
"name": "dragleave",
|
|
748
|
+
"method": "handleDocumentDragLeave",
|
|
749
|
+
"target": "document",
|
|
750
|
+
"capture": false,
|
|
751
|
+
"passive": true
|
|
752
|
+
}, {
|
|
753
|
+
"name": "visibilitychange",
|
|
754
|
+
"method": "handleDocumentVisibilityChange",
|
|
755
|
+
"target": "document",
|
|
756
|
+
"capture": false,
|
|
757
|
+
"passive": false
|
|
758
|
+
}];
|
|
759
|
+
}
|
|
760
|
+
}
|