@watermarkinsights/ripple 3.25.0-2 → 3.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/cjs/{chartFunctions-9dce0ea3.js → chartFunctions-2f04ab6a.js} +591 -591
- package/dist/cjs/chartFunctions-2f04ab6a.js.map +1 -0
- package/dist/cjs/{functions-53aff314.js → functions-d2d99997.js} +478 -478
- package/dist/cjs/{functions-53aff314.js.map → functions-d2d99997.js.map} +1 -1
- package/dist/cjs/{global-c22b1249.js → global-d0584d18.js} +63 -63
- package/dist/cjs/global-d0584d18.js.map +1 -0
- package/dist/cjs/{http-service-494d81de.js → http-service-9e8c4dd5.js} +50 -50
- package/dist/cjs/http-service-9e8c4dd5.js.map +1 -0
- package/dist/cjs/{interfaces-a3338581.js → interfaces-30a74c1f.js} +30 -30
- package/dist/cjs/interfaces-30a74c1f.js.map +1 -0
- package/dist/cjs/intl-a1ccf587.js +140 -0
- package/dist/cjs/intl-a1ccf587.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/priv-chart-popover.cjs.entry.js +91 -91
- package/dist/cjs/priv-chart-popover.cjs.entry.js.map +1 -1
- package/dist/cjs/priv-datepicker.cjs.entry.js +657 -657
- package/dist/cjs/priv-datepicker.cjs.entry.js.map +1 -1
- package/dist/cjs/priv-navigator-button.cjs.entry.js +19 -19
- package/dist/cjs/priv-navigator-button.cjs.entry.js.map +1 -1
- package/dist/cjs/priv-navigator-item.cjs.entry.js +23 -23
- package/dist/cjs/priv-navigator-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ripple.cjs.js +2 -2
- package/dist/cjs/wm-action-menu_2.cjs.entry.js +334 -334
- package/dist/cjs/wm-action-menu_2.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-button.cjs.entry.js +260 -260
- package/dist/cjs/wm-button.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-chart-slice.cjs.entry.js +18 -18
- package/dist/cjs/wm-chart-slice.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-chart.cjs.entry.js +179 -179
- package/dist/cjs/wm-chart.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-datepicker.cjs.entry.js +264 -264
- package/dist/cjs/wm-datepicker.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-file-list.cjs.entry.js +35 -35
- package/dist/cjs/wm-file-list.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-file.cjs.entry.js +201 -201
- package/dist/cjs/wm-file.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-input.cjs.entry.js +124 -140
- package/dist/cjs/wm-input.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-modal-footer.cjs.entry.js +33 -33
- package/dist/cjs/wm-modal-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-modal-header.cjs.entry.js +32 -32
- package/dist/cjs/wm-modal-header.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-modal.cjs.entry.js +152 -152
- package/dist/cjs/wm-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-navigation_3.cjs.entry.js +225 -230
- package/dist/cjs/wm-navigation_3.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-navigator.cjs.entry.js +264 -264
- package/dist/cjs/wm-navigator.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-network-uploader.cjs.entry.js +465 -467
- package/dist/cjs/wm-network-uploader.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-option_2.cjs.entry.js +769 -772
- package/dist/cjs/wm-option_2.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-pagination.cjs.entry.js +179 -179
- package/dist/cjs/wm-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +155 -155
- package/dist/cjs/wm-progress-indicator_3.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-search.cjs.entry.js +185 -192
- package/dist/cjs/wm-search.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-snackbar.cjs.entry.js +155 -159
- package/dist/cjs/wm-snackbar.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-tab-item_3.cjs.entry.js +264 -264
- package/dist/cjs/wm-tab-item_3.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-tag-input-row.cjs.entry.js +14 -14
- package/dist/cjs/wm-tag-input-row.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-tag-input.cjs.entry.js +912 -924
- package/dist/cjs/wm-tag-input.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-timepicker.cjs.entry.js +386 -386
- package/dist/cjs/wm-timepicker.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-toggletip.cjs.entry.js +130 -130
- package/dist/cjs/wm-toggletip.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-uploader.cjs.entry.js +441 -510
- package/dist/cjs/wm-uploader.cjs.entry.js.map +1 -1
- package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
- package/dist/cjs/wm-wrapper.cjs.entry.js.map +1 -1
- package/dist/collection/components/charts/chartFunctions.js +557 -557
- package/dist/collection/components/charts/chartFunctions.js.map +1 -1
- package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +268 -270
- package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js.map +1 -1
- package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +126 -126
- package/dist/collection/components/charts/wm-chart/wm-chart-slice.js.map +1 -1
- package/dist/collection/components/charts/wm-chart/wm-chart.js +447 -447
- package/dist/collection/components/charts/wm-chart/wm-chart.js.map +1 -1
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +208 -208
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js.map +1 -1
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +144 -144
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js.map +1 -1
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +122 -122
- package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js.map +1 -1
- package/dist/collection/components/wm-action-menu/wm-action-menu.js +473 -473
- package/dist/collection/components/wm-action-menu/wm-action-menu.js.map +1 -1
- package/dist/collection/components/wm-button/wm-button.js +576 -576
- package/dist/collection/components/wm-button/wm-button.js.map +1 -1
- package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +984 -984
- package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js.map +1 -1
- package/dist/collection/components/wm-datepicker/wm-datepicker.css +4 -4
- package/dist/collection/components/wm-datepicker/wm-datepicker.js +492 -492
- package/dist/collection/components/wm-datepicker/wm-datepicker.js.map +1 -1
- package/dist/collection/components/wm-file/wm-file.js +334 -334
- package/dist/collection/components/wm-file/wm-file.js.map +1 -1
- package/dist/collection/components/wm-file-list/wm-file-list.js +153 -153
- package/dist/collection/components/wm-file-list/wm-file-list.js.map +1 -1
- package/dist/collection/components/wm-input/wm-input.css +4 -4
- package/dist/collection/components/wm-input/wm-input.js +428 -444
- package/dist/collection/components/wm-input/wm-input.js.map +1 -1
- package/dist/collection/components/wm-menuitem/wm-menuitem.js +455 -455
- package/dist/collection/components/wm-menuitem/wm-menuitem.js.map +1 -1
- package/dist/collection/components/wm-modal/wm-modal-footer.js +139 -139
- package/dist/collection/components/wm-modal/wm-modal-footer.js.map +1 -1
- package/dist/collection/components/wm-modal/wm-modal-header.js +83 -83
- package/dist/collection/components/wm-modal/wm-modal-header.js.map +1 -1
- package/dist/collection/components/wm-modal/wm-modal.js +463 -463
- package/dist/collection/components/wm-modal/wm-modal.js.map +1 -1
- package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +177 -177
- package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js.map +1 -1
- package/dist/collection/components/wm-navigation/wm-navigation-item.js +131 -131
- package/dist/collection/components/wm-navigation/wm-navigation-item.js.map +1 -1
- package/dist/collection/components/wm-navigation/wm-navigation.js +218 -223
- package/dist/collection/components/wm-navigation/wm-navigation.js.map +1 -1
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +107 -107
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js.map +1 -1
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +124 -124
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js.map +1 -1
- package/dist/collection/components/wm-navigator/wm-navigator.js +468 -468
- package/dist/collection/components/wm-navigator/wm-navigator.js.map +1 -1
- package/dist/collection/components/wm-option/wm-option.js +436 -436
- package/dist/collection/components/wm-option/wm-option.js.map +1 -1
- package/dist/collection/components/wm-pagination/wm-pagination.js +371 -371
- package/dist/collection/components/wm-pagination/wm-pagination.js.map +1 -1
- package/dist/collection/components/wm-search/wm-search.css +5 -3
- package/dist/collection/components/wm-search/wm-search.js +440 -447
- package/dist/collection/components/wm-search/wm-search.js.map +1 -1
- package/dist/collection/components/wm-select/wm-select.css +4 -4
- package/dist/collection/components/wm-select/wm-select.js +1055 -1058
- package/dist/collection/components/wm-select/wm-select.js.map +1 -1
- package/dist/collection/components/wm-snackbar/wm-snackbar.js +283 -287
- package/dist/collection/components/wm-snackbar/wm-snackbar.js.map +1 -1
- package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +212 -212
- package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js.map +1 -1
- package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +328 -328
- package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js.map +1 -1
- package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +109 -109
- package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js.map +1 -1
- package/dist/collection/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.js +123 -123
- package/dist/collection/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.js.map +1 -1
- package/dist/collection/components/wm-tag-input/wm-tag-input.css +4 -4
- package/dist/collection/components/wm-tag-input/wm-tag-input.js +1267 -1279
- package/dist/collection/components/wm-tag-input/wm-tag-input.js.map +1 -1
- package/dist/collection/components/wm-timepicker/wm-timepicker.css +4 -4
- package/dist/collection/components/wm-timepicker/wm-timepicker.js +606 -606
- package/dist/collection/components/wm-timepicker/wm-timepicker.js.map +1 -1
- package/dist/collection/components/wm-toggletip/wm-toggletip.js +254 -254
- package/dist/collection/components/wm-toggletip/wm-toggletip.js.map +1 -1
- package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js +773 -775
- package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js.map +1 -1
- package/dist/collection/components/wm-uploader/wm-uploader.js +965 -1034
- package/dist/collection/components/wm-uploader/wm-uploader.js.map +1 -1
- package/dist/collection/components/wm-wrapper/wm-wrapper.js +29 -29
- package/dist/collection/components/wm-wrapper/wm-wrapper.js.map +1 -1
- package/dist/collection/dev/scripts.js +20 -20
- package/dist/collection/global/__mocks__/functions.js +7 -7
- package/dist/collection/global/__mocks__/functions.js.map +1 -1
- package/dist/collection/global/functions.js +521 -521
- package/dist/collection/global/functions.js.map +1 -1
- package/dist/collection/global/global.js +70 -70
- package/dist/collection/global/global.js.map +1 -1
- package/dist/collection/global/interfaces.js +50 -50
- package/dist/collection/global/interfaces.js.map +1 -1
- package/dist/collection/global/intl.js +133 -7
- package/dist/collection/global/intl.js.map +1 -1
- package/dist/collection/global/services/__mocks__/http-service.js +131 -131
- package/dist/collection/global/services/__mocks__/http-service.js.map +1 -1
- package/dist/collection/global/services/http-service.js +51 -51
- package/dist/collection/global/services/http-service.js.map +1 -1
- package/dist/collection/lang/lang.js +6 -6
- package/dist/collection/lang/lang.js.map +1 -1
- package/dist/collection/lang/missing.js +43 -43
- package/dist/collection/lang/piglatin.js +93 -93
- package/dist/esm/{chartFunctions-1df8043a.js → chartFunctions-a72f5835.js} +591 -591
- package/dist/esm/chartFunctions-a72f5835.js.map +1 -0
- package/dist/esm/{functions-bb1309d0.js → functions-dc9964aa.js} +478 -478
- package/dist/esm/{functions-bb1309d0.js.map → functions-dc9964aa.js.map} +1 -1
- package/dist/esm/{global-2c5c2727.js → global-3d0ef32b.js} +63 -63
- package/dist/esm/global-3d0ef32b.js.map +1 -0
- package/dist/esm/{http-service-3dc3b3e7.js → http-service-5d037e16.js} +50 -50
- package/dist/esm/http-service-5d037e16.js.map +1 -0
- package/dist/esm/{interfaces-2b97fab2.js → interfaces-61c6305b.js} +30 -30
- package/dist/esm/interfaces-61c6305b.js.map +1 -0
- package/dist/esm/intl-4d4826dd.js +137 -0
- package/dist/esm/intl-4d4826dd.js.map +1 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/priv-chart-popover.entry.js +91 -91
- package/dist/esm/priv-chart-popover.entry.js.map +1 -1
- package/dist/esm/priv-datepicker.entry.js +657 -657
- package/dist/esm/priv-datepicker.entry.js.map +1 -1
- package/dist/esm/priv-navigator-button.entry.js +19 -19
- package/dist/esm/priv-navigator-button.entry.js.map +1 -1
- package/dist/esm/priv-navigator-item.entry.js +23 -23
- package/dist/esm/priv-navigator-item.entry.js.map +1 -1
- package/dist/esm/ripple.js +2 -2
- package/dist/esm/wm-action-menu_2.entry.js +334 -334
- package/dist/esm/wm-action-menu_2.entry.js.map +1 -1
- package/dist/esm/wm-button.entry.js +260 -260
- package/dist/esm/wm-button.entry.js.map +1 -1
- package/dist/esm/wm-chart-slice.entry.js +18 -18
- package/dist/esm/wm-chart-slice.entry.js.map +1 -1
- package/dist/esm/wm-chart.entry.js +179 -179
- package/dist/esm/wm-chart.entry.js.map +1 -1
- package/dist/esm/wm-datepicker.entry.js +264 -264
- package/dist/esm/wm-datepicker.entry.js.map +1 -1
- package/dist/esm/wm-file-list.entry.js +35 -35
- package/dist/esm/wm-file-list.entry.js.map +1 -1
- package/dist/esm/wm-file.entry.js +201 -201
- package/dist/esm/wm-file.entry.js.map +1 -1
- package/dist/esm/wm-input.entry.js +124 -140
- package/dist/esm/wm-input.entry.js.map +1 -1
- package/dist/esm/wm-modal-footer.entry.js +33 -33
- package/dist/esm/wm-modal-footer.entry.js.map +1 -1
- package/dist/esm/wm-modal-header.entry.js +32 -32
- package/dist/esm/wm-modal-header.entry.js.map +1 -1
- package/dist/esm/wm-modal.entry.js +152 -152
- package/dist/esm/wm-modal.entry.js.map +1 -1
- package/dist/esm/wm-navigation_3.entry.js +225 -230
- package/dist/esm/wm-navigation_3.entry.js.map +1 -1
- package/dist/esm/wm-navigator.entry.js +264 -264
- package/dist/esm/wm-navigator.entry.js.map +1 -1
- package/dist/esm/wm-network-uploader.entry.js +465 -467
- package/dist/esm/wm-network-uploader.entry.js.map +1 -1
- package/dist/esm/wm-option_2.entry.js +769 -772
- package/dist/esm/wm-option_2.entry.js.map +1 -1
- package/dist/esm/wm-pagination.entry.js +179 -179
- package/dist/esm/wm-pagination.entry.js.map +1 -1
- package/dist/esm/wm-progress-indicator_3.entry.js +155 -155
- package/dist/esm/wm-progress-indicator_3.entry.js.map +1 -1
- package/dist/esm/wm-search.entry.js +185 -192
- package/dist/esm/wm-search.entry.js.map +1 -1
- package/dist/esm/wm-snackbar.entry.js +155 -159
- package/dist/esm/wm-snackbar.entry.js.map +1 -1
- package/dist/esm/wm-tab-item_3.entry.js +264 -264
- package/dist/esm/wm-tab-item_3.entry.js.map +1 -1
- package/dist/esm/wm-tag-input-row.entry.js +14 -14
- package/dist/esm/wm-tag-input-row.entry.js.map +1 -1
- package/dist/esm/wm-tag-input.entry.js +912 -924
- package/dist/esm/wm-tag-input.entry.js.map +1 -1
- package/dist/esm/wm-timepicker.entry.js +386 -386
- package/dist/esm/wm-timepicker.entry.js.map +1 -1
- package/dist/esm/wm-toggletip.entry.js +130 -130
- package/dist/esm/wm-toggletip.entry.js.map +1 -1
- package/dist/esm/wm-uploader.entry.js +441 -510
- package/dist/esm/wm-uploader.entry.js.map +1 -1
- package/dist/esm/wm-wrapper.entry.js +12 -12
- package/dist/esm/wm-wrapper.entry.js.map +1 -1
- package/dist/esm-es5/{chartFunctions-1df8043a.js → chartFunctions-a72f5835.js} +2 -2
- package/dist/esm-es5/chartFunctions-a72f5835.js.map +1 -0
- package/dist/esm-es5/{functions-bb1309d0.js → functions-dc9964aa.js} +1 -1
- package/dist/esm-es5/{functions-bb1309d0.js.map → functions-dc9964aa.js.map} +1 -1
- package/dist/esm-es5/global-3d0ef32b.js +2 -0
- package/dist/esm-es5/global-3d0ef32b.js.map +1 -0
- package/dist/esm-es5/{http-service-3dc3b3e7.js → http-service-5d037e16.js} +1 -1
- package/dist/esm-es5/http-service-5d037e16.js.map +1 -0
- package/dist/esm-es5/{interfaces-2b97fab2.js → interfaces-61c6305b.js} +1 -1
- package/dist/esm-es5/interfaces-61c6305b.js.map +1 -0
- package/dist/esm-es5/intl-4d4826dd.js +2 -0
- package/dist/esm-es5/intl-4d4826dd.js.map +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
- package/dist/esm-es5/priv-chart-popover.entry.js.map +1 -1
- package/dist/esm-es5/priv-datepicker.entry.js +1 -1
- package/dist/esm-es5/priv-datepicker.entry.js.map +1 -1
- package/dist/esm-es5/priv-navigator-button.entry.js.map +1 -1
- package/dist/esm-es5/priv-navigator-item.entry.js.map +1 -1
- package/dist/esm-es5/ripple.js +1 -1
- package/dist/esm-es5/ripple.js.map +1 -1
- package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
- package/dist/esm-es5/wm-action-menu_2.entry.js.map +1 -1
- package/dist/esm-es5/wm-button.entry.js +1 -1
- package/dist/esm-es5/wm-button.entry.js.map +1 -1
- package/dist/esm-es5/wm-chart-slice.entry.js.map +1 -1
- package/dist/esm-es5/wm-chart.entry.js +1 -1
- package/dist/esm-es5/wm-chart.entry.js.map +1 -1
- package/dist/esm-es5/wm-datepicker.entry.js +1 -1
- package/dist/esm-es5/wm-datepicker.entry.js.map +1 -1
- package/dist/esm-es5/wm-file-list.entry.js.map +1 -1
- package/dist/esm-es5/wm-file.entry.js +1 -1
- package/dist/esm-es5/wm-file.entry.js.map +1 -1
- package/dist/esm-es5/wm-input.entry.js +1 -1
- package/dist/esm-es5/wm-input.entry.js.map +1 -1
- package/dist/esm-es5/wm-modal-footer.entry.js.map +1 -1
- package/dist/esm-es5/wm-modal-header.entry.js +1 -1
- package/dist/esm-es5/wm-modal-header.entry.js.map +1 -1
- package/dist/esm-es5/wm-modal.entry.js +1 -1
- package/dist/esm-es5/wm-modal.entry.js.map +1 -1
- package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
- package/dist/esm-es5/wm-navigation_3.entry.js.map +1 -1
- package/dist/esm-es5/wm-navigator.entry.js +1 -1
- package/dist/esm-es5/wm-navigator.entry.js.map +1 -1
- package/dist/esm-es5/wm-network-uploader.entry.js +1 -1
- package/dist/esm-es5/wm-network-uploader.entry.js.map +1 -1
- package/dist/esm-es5/wm-option_2.entry.js +1 -1
- package/dist/esm-es5/wm-option_2.entry.js.map +1 -1
- package/dist/esm-es5/wm-pagination.entry.js +1 -1
- package/dist/esm-es5/wm-pagination.entry.js.map +1 -1
- package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
- package/dist/esm-es5/wm-progress-indicator_3.entry.js.map +1 -1
- package/dist/esm-es5/wm-search.entry.js +1 -1
- package/dist/esm-es5/wm-search.entry.js.map +1 -1
- package/dist/esm-es5/wm-snackbar.entry.js +1 -1
- package/dist/esm-es5/wm-snackbar.entry.js.map +1 -1
- package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
- package/dist/esm-es5/wm-tab-item_3.entry.js.map +1 -1
- package/dist/esm-es5/wm-tag-input-row.entry.js.map +1 -1
- package/dist/esm-es5/wm-tag-input.entry.js +1 -1
- package/dist/esm-es5/wm-tag-input.entry.js.map +1 -1
- package/dist/esm-es5/wm-timepicker.entry.js +1 -1
- package/dist/esm-es5/wm-timepicker.entry.js.map +1 -1
- package/dist/esm-es5/wm-toggletip.entry.js +1 -1
- package/dist/esm-es5/wm-toggletip.entry.js.map +1 -1
- package/dist/esm-es5/wm-uploader.entry.js +1 -1
- package/dist/esm-es5/wm-uploader.entry.js.map +1 -1
- package/dist/esm-es5/wm-wrapper.entry.js.map +1 -1
- package/dist/ripple/{p-3f6c7e6c.entry.js → p-002d067e.entry.js} +2 -2
- package/dist/ripple/p-002d067e.entry.js.map +1 -0
- package/dist/ripple/p-02a1000a.entry.js +2 -0
- package/dist/ripple/p-02a1000a.entry.js.map +1 -0
- package/dist/ripple/{p-21bb563a.system.entry.js → p-04ae66fd.system.entry.js} +2 -2
- package/dist/ripple/p-04ae66fd.system.entry.js.map +1 -0
- package/dist/ripple/{p-c38f6103.system.js → p-0826dc64.system.js} +2 -2
- package/dist/ripple/{p-c38f6103.system.js.map → p-0826dc64.system.js.map} +1 -1
- package/dist/ripple/{p-f5df5903.system.js → p-08b7ec08.system.js} +1 -1
- package/dist/ripple/p-08b7ec08.system.js.map +1 -0
- package/dist/ripple/{p-d5b0809e.entry.js → p-0ad3a708.entry.js} +2 -2
- package/dist/ripple/p-0ad3a708.entry.js.map +1 -0
- package/dist/ripple/p-0cd13c7d.system.entry.js +2 -0
- package/dist/ripple/p-0cd13c7d.system.entry.js.map +1 -0
- package/dist/ripple/p-0d7bccf7.entry.js.map +1 -1
- package/dist/ripple/p-0eb7b1b7.system.entry.js +2 -0
- package/dist/ripple/p-0eb7b1b7.system.entry.js.map +1 -0
- package/dist/ripple/{p-70768add.entry.js → p-11124a23.entry.js} +2 -2
- package/dist/ripple/p-11124a23.entry.js.map +1 -0
- package/dist/ripple/p-1808b90a.entry.js +2 -0
- package/dist/ripple/p-1808b90a.entry.js.map +1 -0
- package/dist/ripple/p-1fd20e05.system.entry.js +2 -0
- package/dist/ripple/p-1fd20e05.system.entry.js.map +1 -0
- package/dist/ripple/{p-f36b1c58.system.entry.js → p-23fa1ff6.system.entry.js} +2 -2
- package/dist/ripple/p-23fa1ff6.system.entry.js.map +1 -0
- package/dist/ripple/p-24a4cb11.system.entry.js.map +1 -1
- package/dist/ripple/p-2c2a7092.system.entry.js.map +1 -1
- package/dist/ripple/{p-9d02957d.system.js → p-313b6073.system.js} +1 -1
- package/dist/ripple/p-313b6073.system.js.map +1 -0
- package/dist/ripple/p-33558ec4.system.entry.js.map +1 -1
- package/dist/ripple/{p-28c12986.system.entry.js → p-33ec18d4.system.entry.js} +2 -2
- package/dist/ripple/p-33ec18d4.system.entry.js.map +1 -0
- package/dist/ripple/{p-7d0f3abe.entry.js → p-341aa131.entry.js} +2 -2
- package/dist/ripple/p-341aa131.entry.js.map +1 -0
- package/dist/ripple/p-3759b7af.system.entry.js.map +1 -1
- package/dist/ripple/p-38449dff.system.entry.js +2 -0
- package/dist/ripple/p-38449dff.system.entry.js.map +1 -0
- package/dist/ripple/{p-ee97c3f6.entry.js → p-384c4981.entry.js} +2 -2
- package/dist/ripple/p-384c4981.entry.js.map +1 -0
- package/dist/ripple/{p-b81ce905.system.entry.js → p-3869a69e.system.entry.js} +2 -2
- package/dist/ripple/p-3869a69e.system.entry.js.map +1 -0
- package/dist/ripple/p-4391166c.entry.js.map +1 -1
- package/dist/ripple/{p-e6e7cb2d.entry.js → p-43be123d.entry.js} +2 -2
- package/dist/ripple/p-43be123d.entry.js.map +1 -0
- package/dist/ripple/p-4a014591.entry.js.map +1 -1
- package/dist/ripple/p-4a06d0a9.system.entry.js +2 -0
- package/dist/ripple/p-4a06d0a9.system.entry.js.map +1 -0
- package/dist/ripple/p-4e02e2ae.entry.js +2 -0
- package/dist/ripple/p-4e02e2ae.entry.js.map +1 -0
- package/dist/ripple/p-56cd4d5e.entry.js +2 -0
- package/dist/ripple/p-56cd4d5e.entry.js.map +1 -0
- package/dist/ripple/p-59654f8e.entry.js.map +1 -1
- package/dist/ripple/p-5cc287d2.entry.js +2 -0
- package/dist/ripple/p-5cc287d2.entry.js.map +1 -0
- package/dist/ripple/{p-8eebf787.entry.js → p-7e0e6b00.entry.js} +2 -2
- package/dist/ripple/p-7e0e6b00.entry.js.map +1 -0
- package/dist/ripple/{p-0400599e.system.entry.js → p-833c622f.system.entry.js} +2 -2
- package/dist/ripple/p-833c622f.system.entry.js.map +1 -0
- package/dist/ripple/{p-b00991d9.system.entry.js → p-8613600d.system.entry.js} +2 -2
- package/dist/ripple/p-8613600d.system.entry.js.map +1 -0
- package/dist/ripple/{p-43f1298b.js → p-888bec42.js} +1 -1
- package/dist/ripple/p-888bec42.js.map +1 -0
- package/dist/ripple/p-889579fc.entry.js +2 -0
- package/dist/ripple/p-889579fc.entry.js.map +1 -0
- package/dist/ripple/p-8c51e9f8.system.entry.js.map +1 -1
- package/dist/ripple/{p-42158d44.entry.js → p-8db604d2.entry.js} +2 -2
- package/dist/ripple/p-8db604d2.entry.js.map +1 -0
- package/dist/ripple/{p-24ef6556.system.entry.js → p-91deb45f.system.entry.js} +2 -2
- package/dist/ripple/p-91deb45f.system.entry.js.map +1 -0
- package/dist/ripple/p-9338011f.system.entry.js +2 -0
- package/dist/ripple/p-9338011f.system.entry.js.map +1 -0
- package/dist/ripple/p-976b2789.system.entry.js.map +1 -1
- package/dist/ripple/{p-1aa16d42.js → p-994303f2.js} +2 -2
- package/dist/ripple/p-994303f2.js.map +1 -0
- package/dist/ripple/p-9b2dfb54.js +2 -0
- package/dist/ripple/p-9b2dfb54.js.map +1 -0
- package/dist/ripple/p-9b9eb944.entry.js.map +1 -1
- package/dist/ripple/{p-980afed1.system.entry.js → p-a6d64d8a.system.entry.js} +2 -2
- package/dist/ripple/p-a6d64d8a.system.entry.js.map +1 -0
- package/dist/ripple/{p-fd8070fb.js → p-a6d6eae7.js} +1 -1
- package/dist/ripple/p-a6d6eae7.js.map +1 -0
- package/dist/ripple/{p-219fbe2b.system.entry.js → p-a73cf968.system.entry.js} +2 -2
- package/dist/ripple/p-a73cf968.system.entry.js.map +1 -0
- package/dist/ripple/{p-76aafb99.system.entry.js → p-aed625c1.system.entry.js} +2 -2
- package/dist/ripple/p-aed625c1.system.entry.js.map +1 -0
- package/dist/ripple/{p-0d36ceba.system.entry.js → p-b5b521e4.system.entry.js} +2 -2
- package/dist/ripple/p-b5b521e4.system.entry.js.map +1 -0
- package/dist/ripple/{p-47d223f1.system.entry.js → p-b7451e73.system.entry.js} +2 -2
- package/dist/ripple/p-b7451e73.system.entry.js.map +1 -0
- package/dist/ripple/p-bafdcb4e.system.entry.js +2 -0
- package/dist/ripple/p-bafdcb4e.system.entry.js.map +1 -0
- package/dist/ripple/{p-262713b9.entry.js → p-bb45e122.entry.js} +2 -2
- package/dist/ripple/p-bb45e122.entry.js.map +1 -0
- package/dist/ripple/p-bd84628c.system.entry.js +2 -0
- package/dist/ripple/p-bd84628c.system.entry.js.map +1 -0
- package/dist/ripple/p-bf569af0.entry.js.map +1 -1
- package/dist/ripple/p-c094f6a8.entry.js +2 -0
- package/dist/ripple/p-c094f6a8.entry.js.map +1 -0
- package/dist/ripple/p-c36002b6.system.js +2 -0
- package/dist/ripple/p-c36002b6.system.js.map +1 -0
- package/dist/ripple/p-c5bf7db8.entry.js +2 -0
- package/dist/ripple/p-c5bf7db8.entry.js.map +1 -0
- package/dist/ripple/p-c68b3798.system.js +2 -0
- package/dist/ripple/p-c68b3798.system.js.map +1 -0
- package/dist/ripple/{p-05e0f901.js → p-c6a0f7e5.js} +1 -1
- package/dist/ripple/{p-05e0f901.js.map → p-c6a0f7e5.js.map} +1 -1
- package/dist/ripple/{p-bcba3ce8.entry.js → p-d46f5794.entry.js} +2 -2
- package/dist/ripple/p-d46f5794.entry.js.map +1 -0
- package/dist/ripple/{p-d7ffac2f.entry.js → p-d48313e0.entry.js} +2 -2
- package/dist/ripple/p-d48313e0.entry.js.map +1 -0
- package/dist/ripple/p-d939cb54.entry.js.map +1 -1
- package/dist/ripple/p-dbfd1640.system.entry.js.map +1 -1
- package/dist/ripple/{p-d7c55ce1.entry.js → p-e22854c1.entry.js} +2 -2
- package/dist/ripple/p-e22854c1.entry.js.map +1 -0
- package/dist/ripple/p-e70bb79f.js +2 -0
- package/dist/ripple/p-e70bb79f.js.map +1 -0
- package/dist/ripple/{p-e99a7f36.entry.js → p-ed82573a.entry.js} +2 -2
- package/dist/ripple/p-ed82573a.entry.js.map +1 -0
- package/dist/ripple/{p-bc28c815.system.js → p-f0fd8695.system.js} +1 -1
- package/dist/ripple/{p-bc28c815.system.js.map → p-f0fd8695.system.js.map} +1 -1
- package/dist/ripple/{p-e5f84104.system.entry.js → p-f312d59a.system.entry.js} +2 -2
- package/dist/ripple/p-f312d59a.system.entry.js.map +1 -0
- package/dist/ripple/{p-c19ddc00.system.entry.js → p-f59a495a.system.entry.js} +2 -2
- package/dist/ripple/p-f59a495a.system.entry.js.map +1 -0
- package/dist/ripple/{p-cc8ca6bd.system.js → p-f80eb8a5.system.js} +2 -2
- package/dist/ripple/p-f80eb8a5.system.js.map +1 -0
- package/dist/ripple/{p-1be55579.system.entry.js → p-fb67c39e.system.entry.js} +2 -2
- package/dist/ripple/p-fb67c39e.system.entry.js.map +1 -0
- package/dist/ripple/{p-20d0d019.entry.js → p-fc08d5e1.entry.js} +2 -2
- package/dist/ripple/p-fc08d5e1.entry.js.map +1 -0
- package/dist/ripple/{p-d7b946ed.entry.js → p-fe7da854.entry.js} +2 -2
- package/dist/ripple/p-fe7da854.entry.js.map +1 -0
- package/dist/ripple/ripple.esm.js +1 -1
- package/dist/ripple/ripple.esm.js.map +1 -1
- package/dist/ripple/ripple.js +1 -1
- package/dist/types/components/charts/chartFunctions.d.ts +37 -37
- package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +27 -0
- package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +11 -11
- package/dist/types/components/charts/wm-chart/wm-chart.d.ts +47 -0
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +29 -0
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +20 -0
- package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +10 -10
- package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +49 -0
- package/dist/types/components/wm-button/wm-button.d.ts +49 -0
- package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +80 -0
- package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +42 -0
- package/dist/types/components/wm-file/wm-file.d.ts +42 -0
- package/dist/types/components/wm-file-list/wm-file-list.d.ts +16 -0
- package/dist/types/components/wm-input/wm-input.d.ts +45 -0
- package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +34 -0
- package/dist/types/components/wm-modal/wm-modal-footer.d.ts +14 -14
- package/dist/types/components/wm-modal/wm-modal-header.d.ts +10 -10
- package/dist/types/components/wm-modal/wm-modal.d.ts +40 -0
- package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +21 -0
- package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +13 -0
- package/dist/types/components/wm-navigation/wm-navigation.d.ts +26 -0
- package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +10 -10
- package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +13 -0
- package/dist/types/components/wm-navigator/wm-navigator.d.ts +61 -0
- package/dist/types/components/wm-option/wm-option.d.ts +34 -0
- package/dist/types/components/wm-pagination/wm-pagination.d.ts +32 -32
- package/dist/types/components/wm-search/wm-search.d.ts +77 -0
- package/dist/types/components/wm-select/wm-select.d.ts +101 -0
- package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +31 -32
- package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +37 -0
- package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +52 -0
- package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +20 -0
- package/dist/types/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.d.ts +11 -0
- package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +135 -0
- package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +62 -0
- package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +28 -0
- package/dist/types/components/wm-uploader/wm-network-uploader/wm-network-uploader.d.ts +85 -0
- package/dist/types/components/wm-uploader/wm-uploader.d.ts +99 -0
- package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +7 -7
- package/dist/types/components.d.ts +27 -27
- package/dist/types/global/__mocks__/functions.d.ts +6 -6
- package/dist/types/global/functions.d.ts +48 -48
- package/dist/types/global/global.d.ts +1 -1
- package/dist/types/global/interfaces.d.ts +74 -74
- package/dist/types/global/intl.d.ts +29 -1
- package/dist/types/global/services/__mocks__/http-service.d.ts +6 -6
- package/dist/types/global/services/http-service.d.ts +4 -4
- package/dist/types/lang/lang.d.ts +5 -5
- package/package.json +46 -46
- package/dist/cjs/chartFunctions-9dce0ea3.js.map +0 -1
- package/dist/cjs/global-c22b1249.js.map +0 -1
- package/dist/cjs/http-service-494d81de.js.map +0 -1
- package/dist/cjs/interfaces-a3338581.js.map +0 -1
- package/dist/cjs/intl-e14dc0a1.js +0 -13
- package/dist/cjs/intl-e14dc0a1.js.map +0 -1
- package/dist/esm/chartFunctions-1df8043a.js.map +0 -1
- package/dist/esm/global-2c5c2727.js.map +0 -1
- package/dist/esm/http-service-3dc3b3e7.js.map +0 -1
- package/dist/esm/interfaces-2b97fab2.js.map +0 -1
- package/dist/esm/intl-4153b9ef.js +0 -11
- package/dist/esm/intl-4153b9ef.js.map +0 -1
- package/dist/esm-es5/chartFunctions-1df8043a.js.map +0 -1
- package/dist/esm-es5/global-2c5c2727.js +0 -2
- package/dist/esm-es5/global-2c5c2727.js.map +0 -1
- package/dist/esm-es5/http-service-3dc3b3e7.js.map +0 -1
- package/dist/esm-es5/interfaces-2b97fab2.js.map +0 -1
- package/dist/esm-es5/intl-4153b9ef.js +0 -2
- package/dist/esm-es5/intl-4153b9ef.js.map +0 -1
- package/dist/ripple/p-0400599e.system.entry.js.map +0 -1
- package/dist/ripple/p-075607ac.entry.js +0 -2
- package/dist/ripple/p-075607ac.entry.js.map +0 -1
- package/dist/ripple/p-08d17d5a.entry.js +0 -2
- package/dist/ripple/p-08d17d5a.entry.js.map +0 -1
- package/dist/ripple/p-0d36ceba.system.entry.js.map +0 -1
- package/dist/ripple/p-124da634.entry.js +0 -2
- package/dist/ripple/p-124da634.entry.js.map +0 -1
- package/dist/ripple/p-1aa16d42.js.map +0 -1
- package/dist/ripple/p-1be55579.system.entry.js.map +0 -1
- package/dist/ripple/p-20d0d019.entry.js.map +0 -1
- package/dist/ripple/p-219fbe2b.system.entry.js.map +0 -1
- package/dist/ripple/p-21bb563a.system.entry.js.map +0 -1
- package/dist/ripple/p-241d4d41.system.entry.js +0 -2
- package/dist/ripple/p-241d4d41.system.entry.js.map +0 -1
- package/dist/ripple/p-24ef6556.system.entry.js.map +0 -1
- package/dist/ripple/p-262713b9.entry.js.map +0 -1
- package/dist/ripple/p-28c12986.system.entry.js.map +0 -1
- package/dist/ripple/p-3f6c7e6c.entry.js.map +0 -1
- package/dist/ripple/p-42158d44.entry.js.map +0 -1
- package/dist/ripple/p-43f1298b.js.map +0 -1
- package/dist/ripple/p-47d223f1.system.entry.js.map +0 -1
- package/dist/ripple/p-4d30004f.entry.js +0 -2
- package/dist/ripple/p-4d30004f.entry.js.map +0 -1
- package/dist/ripple/p-58b1415e.system.js +0 -2
- package/dist/ripple/p-58b1415e.system.js.map +0 -1
- package/dist/ripple/p-5cda4e9c.system.entry.js +0 -2
- package/dist/ripple/p-5cda4e9c.system.entry.js.map +0 -1
- package/dist/ripple/p-64f15a9e.system.entry.js +0 -2
- package/dist/ripple/p-64f15a9e.system.entry.js.map +0 -1
- package/dist/ripple/p-6e6b5b2c.system.entry.js +0 -2
- package/dist/ripple/p-6e6b5b2c.system.entry.js.map +0 -1
- package/dist/ripple/p-70768add.entry.js.map +0 -1
- package/dist/ripple/p-76aafb99.system.entry.js.map +0 -1
- package/dist/ripple/p-7d0f3abe.entry.js.map +0 -1
- package/dist/ripple/p-8aa85021.system.entry.js +0 -2
- package/dist/ripple/p-8aa85021.system.entry.js.map +0 -1
- package/dist/ripple/p-8eebf787.entry.js.map +0 -1
- package/dist/ripple/p-96b0ca93.system.js +0 -2
- package/dist/ripple/p-96b0ca93.system.js.map +0 -1
- package/dist/ripple/p-980afed1.system.entry.js.map +0 -1
- package/dist/ripple/p-9d02957d.system.js.map +0 -1
- package/dist/ripple/p-adbeb6a8.system.entry.js +0 -2
- package/dist/ripple/p-adbeb6a8.system.entry.js.map +0 -1
- package/dist/ripple/p-b00991d9.system.entry.js.map +0 -1
- package/dist/ripple/p-b81ce905.system.entry.js.map +0 -1
- package/dist/ripple/p-bcba3ce8.entry.js.map +0 -1
- package/dist/ripple/p-bf808ec4.entry.js +0 -2
- package/dist/ripple/p-bf808ec4.entry.js.map +0 -1
- package/dist/ripple/p-c19ddc00.system.entry.js.map +0 -1
- package/dist/ripple/p-cc8ca6bd.system.js.map +0 -1
- package/dist/ripple/p-ce52357e.js +0 -2
- package/dist/ripple/p-ce52357e.js.map +0 -1
- package/dist/ripple/p-d0f5773a.entry.js +0 -2
- package/dist/ripple/p-d0f5773a.entry.js.map +0 -1
- package/dist/ripple/p-d5b0809e.entry.js.map +0 -1
- package/dist/ripple/p-d7b946ed.entry.js.map +0 -1
- package/dist/ripple/p-d7c55ce1.entry.js.map +0 -1
- package/dist/ripple/p-d7ffac2f.entry.js.map +0 -1
- package/dist/ripple/p-dbf657c5.js +0 -2
- package/dist/ripple/p-dbf657c5.js.map +0 -1
- package/dist/ripple/p-e1b812ed.entry.js +0 -2
- package/dist/ripple/p-e1b812ed.entry.js.map +0 -1
- package/dist/ripple/p-e5f84104.system.entry.js.map +0 -1
- package/dist/ripple/p-e6e7cb2d.entry.js.map +0 -1
- package/dist/ripple/p-e99a7f36.entry.js.map +0 -1
- package/dist/ripple/p-ed14d37c.system.entry.js +0 -2
- package/dist/ripple/p-ed14d37c.system.entry.js.map +0 -1
- package/dist/ripple/p-ee97c3f6.entry.js.map +0 -1
- package/dist/ripple/p-f3130941.entry.js +0 -2
- package/dist/ripple/p-f3130941.entry.js.map +0 -1
- package/dist/ripple/p-f36b1c58.system.entry.js.map +0 -1
- package/dist/ripple/p-f4a622a9.system.entry.js +0 -2
- package/dist/ripple/p-f4a622a9.system.entry.js.map +0 -1
- package/dist/ripple/p-f5df5903.system.js.map +0 -1
- package/dist/ripple/p-fd8070fb.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
System.register(["./p-7b2fc615.system.js","./p-bc28c815.system.js"],(function(e){"use strict";var t,o,r,i,n,a,s,l,d;return{setters:[function(e){t=e.r;o=e.c;r=e.f;i=e.h;n=e.H;a=e.g},function(e){s=e.g;l=e.i;d=e.v}],execute:function(){var p=':host .wm-button,wm-uploader .wm-button{-ms-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-moz-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;width:inherit;border:2px solid #575195;color:#575195;font-family:inherit;font-size:0.75rem;font-weight:700;height:2.75rem;padding:0 1.3333333333em;cursor:pointer;position:relative;background:#fff;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;text-decoration:none;text-transform:uppercase;letter-spacing:0.01875rem;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}@media screen and (min-width: 48rem){:host .wm-button,wm-uploader .wm-button{height:3.3333333333em}}:host .wm-button.nowrap,wm-uploader .wm-button.nowrap{display:inline-block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .wm-button:focus,wm-uploader .wm-button:focus{outline:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button::-moz-focus-inner,wm-uploader .wm-button::-moz-focus-inner{border:0;outline:none}:host .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) :host .wm-button.-textonly .button-text,wm-uploader .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) :host .wm-button.-textonly .button-text,:host .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) wm-uploader .wm-button.-textonly .button-text,wm-uploader .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) wm-uploader .wm-button.-textonly .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #3862e9), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #3862e9 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled),wm-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled){-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark),wm-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark){-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark)::-moz-focus-inner,wm-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark)::-moz-focus-inner{border:0}:host .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled),wm-uploader .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled){background:transparent;border:2px solid #fff;color:#fff}:host .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled):hover,wm-uploader .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.dark.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled).dark,wm-uploader .wm-button.dark.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled).dark{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;outline:none}:host .wm-button:active:not(:disabled):not(.disabled):not(.-textonly):not(.-actionbutton):not(.displayedoption),wm-uploader .wm-button:active:not(:disabled):not(.disabled):not(.-textonly):not(.-actionbutton):not(.displayedoption){-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}:host .wm-button .mdi,wm-uploader .wm-button .mdi{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button:not(.-icononly):not(.-navigational) .mdi,wm-uploader .wm-button:not(.-icononly):not(.-navigational) .mdi{margin-right:0.3125rem}:host .wm-button[dir=RTL] :not(.-icononly) .mdi,wm-uploader .wm-button[dir=RTL] :not(.-icononly) .mdi{margin-left:0.3125rem;margin-right:0}:host .wm-button.-primary:not(.-textonly),wm-uploader .wm-button.-primary:not(.-textonly){background:#575195;color:#fff}:host .wm-button.-primary:not(.-textonly):not(:focus),wm-uploader .wm-button.-primary:not(.-textonly):not(:focus){-webkit-box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2);box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2)}:host .wm-button.-primary:not(.-textonly):hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-primary:not(.-textonly):hover:not(:disabled):not(.disabled){background:#464177}:host .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled),wm-uploader .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled){color:#575195;background:#fff;border:2px solid #fff}:host .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled):hover,wm-uploader .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.-secondary:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-secondary:hover:not(:disabled):not(.disabled),:host .wm-button.-selector:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-selector:hover:not(:disabled):not(.disabled),:host .wm-button.-icononly:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-icononly:hover:not(:disabled):not(.disabled){background:#464177;color:#fff}:host .wm-button.-textonly,wm-uploader .wm-button.-textonly{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;display:inline-block;letter-spacing:0;text-transform:none;text-align:initial;font-size:0.875rem;border:none;background:transparent;padding-left:0;padding-right:0;height:auto;border-radius:0;line-height:1}:host .wm-button.-textonly+.-textonly,wm-uploader .wm-button.-textonly+.-textonly{margin-left:0.3125rem}:host .wm-button.-textonly:focus,wm-uploader .wm-button.-textonly:focus{outline:none}:host .wm-button.-textonly::-moz-focus-inner,wm-uploader .wm-button.-textonly::-moz-focus-inner{border:0;outline:none}:host .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled) .button-text,wm-uploader .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled) .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #3862e9), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #3862e9 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled).dark .button-text,wm-uploader .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled).dark .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #fff), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #fff 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.-textonly.small,wm-uploader .wm-button.-textonly.small{font-size:0.625rem}:host .wm-button.-textonly:hover:not(:disabled):not(.disabled):not(.-permanentlydelete),wm-uploader .wm-button.-textonly:hover:not(:disabled):not(.disabled):not(.-permanentlydelete){text-decoration:underline}:host .wm-button.-textonly.-permanentlydelete,wm-uploader .wm-button.-textonly.-permanentlydelete{color:#c0392b}:host .wm-button.-textonly.-permanentlydelete:hover:not(:disabled):not(.disabled):not(.dark),wm-uploader .wm-button.-textonly.-permanentlydelete:hover:not(:disabled):not(.disabled):not(.dark){text-decoration:underline;color:#c0392b !important}:host .wm-button.-textonly.dark,wm-uploader .wm-button.-textonly.dark{color:#fff}:host .wm-button.-textonly.dark:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-textonly.dark:hover:not(:disabled):not(.disabled){text-decoration:underline;color:#fff !important}:host .wm-button.-icononly,wm-uploader .wm-button.-icononly,:host .wm-button.-navigational,wm-uploader .wm-button.-navigational{-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;font-size:1rem;padding:0;height:auto;line-height:1;min-width:2.75rem;min-height:2.75rem;text-align:center;letter-spacing:normal}:host .wm-button.-icononly:not(:focus),wm-uploader .wm-button.-icononly:not(:focus),:host .wm-button.-navigational:not(:focus),wm-uploader .wm-button.-navigational:not(:focus){-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}@media screen and (min-width: 48rem){:host .wm-button.-icononly,wm-uploader .wm-button.-icononly,:host .wm-button.-navigational,wm-uploader .wm-button.-navigational{min-width:2.5rem;min-height:2.5rem}}:host .wm-button.-icononly,wm-uploader .wm-button.-icononly{border-width:1px !important}:host .wm-button.-icononly:before,wm-uploader .wm-button.-icononly:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button.-navigational,wm-uploader .wm-button.-navigational{border:none !important;background-color:transparent}:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled),wm-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled){color:#575195}:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled):hover,wm-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled):hover,:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled).selected,wm-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled).selected{background-color:#d7d6d9}:host .wm-button.-navigational:before,wm-uploader .wm-button.-navigational:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button.-permanentlydelete:not(.-textonly),wm-uploader .wm-button.-permanentlydelete:not(.-textonly){background:#c0392b;border-color:#c0392b;color:#fff}:host .wm-button.-permanentlydelete:not(.-textonly):hover:not(:disabled):not(.disabled):not(.dark),wm-uploader .wm-button.-permanentlydelete:not(.-textonly):hover:not(:disabled):not(.disabled):not(.dark){background:#9a2e22;border-color:#9a2e22}:host .wm-button.-pairnegative,wm-uploader .wm-button.-pairnegative{background:#cc4c3e;border-color:#cc4c3e;color:#fff}:host .wm-button.-pairnegative:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-pairnegative:hover:not(:disabled):not(.disabled){background:#a33d32;border-color:#a33d32}:host .wm-button.-pairpositive,wm-uploader .wm-button.-pairpositive{background:#15868d;border-color:#15868d;color:#fff}:host .wm-button.-pairpositive:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-pairpositive:hover:not(:disabled):not(.disabled){background:#116b71;border-color:#116b71}:host .wm-button.-selector,wm-uploader .wm-button.-selector,:host .wm-button.-selector-primary,wm-uploader .wm-button.-selector-primary{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;display:block;background:transparent;border:2px solid #575195;border-radius:3px;height:2.75rem;min-width:11.4375rem;padding:0 1.875rem 0 0.9375rem;line-height:normal;font-family:inherit;color:#575195;font-weight:700;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.01875rem;text-align:left}@media screen and (min-width: 48rem){:host .wm-button.-selector,wm-uploader .wm-button.-selector,:host .wm-button.-selector-primary,wm-uploader .wm-button.-selector-primary{height:2.5rem}}:host .wm-button.-selector:before,wm-uploader .wm-button.-selector:before,:host .wm-button.-selector-primary:before,wm-uploader .wm-button.-selector-primary:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f140";position:absolute;right:0.5625rem;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:0.875rem;font-weight:700;pointer-events:none}:host .wm-button.-selector:active,wm-uploader .wm-button.-selector:active,:host .wm-button.-selector-primary:active,wm-uploader .wm-button.-selector-primary:active{-ms-transform:scale(1, 1) !important;-webkit-transform:scale(1, 1) !important;transform:scale(1, 1) !important}:host .wm-button.-selector::-moz-focus-inner,wm-uploader .wm-button.-selector::-moz-focus-inner,:host .wm-button.-selector-primary::-moz-focus-inner,wm-uploader .wm-button.-selector-primary::-moz-focus-inner{border:0}:host .wm-button.-selector .overflowcontrol,wm-uploader .wm-button.-selector .overflowcontrol,:host .wm-button.-selector-primary .overflowcontrol,wm-uploader .wm-button.-selector-primary .overflowcontrol{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:visible}:host .wm-button.-selector.dark:not(:disabled):not(.disabled):hover,wm-uploader .wm-button.-selector.dark:not(:disabled):not(.disabled):hover,:host .wm-button.-selector-primary.dark:not(:disabled):not(.disabled):hover,wm-uploader .wm-button.-selector-primary.dark:not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.-selector-primary,wm-uploader .wm-button.-selector-primary{background:#575195;color:#fff}:host .wm-button.-selector-primary:hover:not(:disabled):not(.disabled),wm-uploader .wm-button.-selector-primary:hover:not(:disabled):not(.disabled){background:#464177}:host .wm-button.-selector-primary.dark:not(:disabled):not(.disabled),wm-uploader .wm-button.-selector-primary.dark:not(:disabled):not(.disabled){color:#575195;background:#fff;border:2px solid #fff}:host .wm-button:disabled,wm-uploader .wm-button:disabled,:host .wm-button.disabled,wm-uploader .wm-button.disabled{background:inherit;border-color:#737373;color:#737373;cursor:default;pointer-events:none}:host .wm-button:disabled.-primary,wm-uploader .wm-button:disabled.-primary,:host .wm-button:disabled.-permanentlydelete,wm-uploader .wm-button:disabled.-permanentlydelete,:host .wm-button:disabled.-pairnegative,wm-uploader .wm-button:disabled.-pairnegative,:host .wm-button:disabled.-pairpositive,wm-uploader .wm-button:disabled.-pairpositive,:host .wm-button.disabled.-primary,wm-uploader .wm-button.disabled.-primary,:host .wm-button.disabled.-permanentlydelete,wm-uploader .wm-button.disabled.-permanentlydelete,:host .wm-button.disabled.-pairnegative,wm-uploader .wm-button.disabled.-pairnegative,:host .wm-button.disabled.-pairpositive,wm-uploader .wm-button.disabled.-pairpositive{background:#737373;color:#fff;border-color:#737373}:host .wm-button:disabled.-secondary,wm-uploader .wm-button:disabled.-secondary,:host .wm-button.disabled.-secondary,wm-uploader .wm-button.disabled.-secondary{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button:disabled.-selector,wm-uploader .wm-button:disabled.-selector,:host .wm-button.disabled.-selector,wm-uploader .wm-button.disabled.-selector{color:#737373}:host .wm-button:disabled.-selector-primary,wm-uploader .wm-button:disabled.-selector-primary,:host .wm-button.disabled.-selector-primary,wm-uploader .wm-button.disabled.-selector-primary{background:#737373;color:#fff;border-color:#737373}:host .wm-button:disabled.-textonly,wm-uploader .wm-button:disabled.-textonly,:host .wm-button.disabled.-textonly,wm-uploader .wm-button.disabled.-textonly{color:#6b6b6b;background:transparent}:host .wm-button:disabled.dark.-secondary:not(.-permanentlydelete),wm-uploader .wm-button:disabled.dark.-secondary:not(.-permanentlydelete),:host .wm-button:disabled.dark.-selector,wm-uploader .wm-button:disabled.dark.-selector,:host .wm-button:disabled.dark.-textonly,wm-uploader .wm-button:disabled.dark.-textonly,:host .wm-button:disabled.dark.-navigational,wm-uploader .wm-button:disabled.dark.-navigational,:host .wm-button:disabled.dark.-icononly,wm-uploader .wm-button:disabled.dark.-icononly,:host .wm-button.disabled.dark.-secondary:not(.-permanentlydelete),wm-uploader .wm-button.disabled.dark.-secondary:not(.-permanentlydelete),:host .wm-button.disabled.dark.-selector,wm-uploader .wm-button.disabled.dark.-selector,:host .wm-button.disabled.dark.-textonly,wm-uploader .wm-button.disabled.dark.-textonly,:host .wm-button.disabled.dark.-navigational,wm-uploader .wm-button.disabled.dark.-navigational,:host .wm-button.disabled.dark.-icononly,wm-uploader .wm-button.disabled.dark.-icononly{color:#b5b5b5;border-color:#b5b5b5}:host .wm-button:disabled.dark.-primary,wm-uploader .wm-button:disabled.dark.-primary,:host .wm-button:disabled.dark.-selector-primary,wm-uploader .wm-button:disabled.dark.-selector-primary,:host .wm-button:disabled.dark.-permanentlydelete:not(.-textonly),wm-uploader .wm-button:disabled.dark.-permanentlydelete:not(.-textonly),:host .wm-button.disabled.dark.-primary,wm-uploader .wm-button.disabled.dark.-primary,:host .wm-button.disabled.dark.-selector-primary,wm-uploader .wm-button.disabled.dark.-selector-primary,:host .wm-button.disabled.dark.-permanentlydelete:not(.-textonly),wm-uploader .wm-button.disabled.dark.-permanentlydelete:not(.-textonly){background:#a6a6a6;border-color:#a6a6a6;color:#353b48}:host a.wm-button,wm-uploader a.wm-button,:host label.wm-button,wm-uploader label.wm-button{height:auto;padding-top:0.75rem;padding-bottom:0.75rem}:host,wm-uploader{display:block;position:relative;max-width:1140px}:host[dir=RTL] .mdi,wm-uploader[dir=RTL] .mdi{margin-left:0.3125rem;margin-right:0}:host input:focus+.wm-button.user-is-tabbing,wm-uploader input:focus+.wm-button.user-is-tabbing{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important}:host *,wm-uploader *{-webkit-box-sizing:border-box;box-sizing:border-box}.wm-button.disabled{pointer-events:initial !important}.wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:0.875rem}.wrapper .label{display:block;line-height:normal;font-weight:600;white-space:nowrap;margin-bottom:0.25rem}.wrapper .label .required{color:#c0392b}.wrapper.label-left{-ms-flex-direction:row;flex-direction:row}.wrapper.label-left .label-wrapper{line-height:2.5rem}.wrapper.label-left .label-wrapper .label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:2.5rem;white-space:normal;margin-bottom:0;margin-right:0.75rem}.wrapper.label-none label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}.wrapper.invalid .label{color:#c0392b}.wrapper.invalid .label:after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f026";margin-left:0.3125rem}[dir=RTL] .wrapper.invalid .label:after{margin-left:0;margin-right:0.3125rem}.wrapper.rtl.label-left .label{margin-right:0;margin-left:0.75rem}#label{margin-bottom:0.5rem}.header .info-wrapper{-ms-flex-align:center;align-items:center}.header .info-wrapper .info{font-size:0.875rem;margin-left:1rem}.header .accepted-types{font-size:0.875rem}.header .requirements{font-size:0.875rem;margin-left:1rem}.footer{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:end;align-items:flex-end;padding:0.9375rem 1.875rem}.footer .notif-wrapper{-ms-flex-align:end;align-items:flex-end}.footer .filecount-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.footer .filecount-wrapper .filecount{font-size:0.875rem;margin-right:1rem}.notif-wrapper{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;margin-bottom:0.75rem}.notif-wrapper .requirements{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.notif,#error{padding-top:0.25rem;font-size:0.875rem;font-style:italic}.notif#error,#error#error{display:block;font-style:italic;color:#c0392b;font-size:0.875rem;margin-top:0.25rem}.info-wrapper{position:relative;display:-ms-flexbox;display:flex}.list-container{overflow-y:unset}.list-container.checkmark-spacer{margin-right:2.75rem}.list-container:has(.error-list,.inprogress-list,.file-list){margin-top:2.5rem}.list-container ul{padding:0;width:100%;margin:0}.list-container ul wm-file{margin-bottom:0.5rem}.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}.empty-block{margin:5rem auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.empty-block .upload-file{margin-bottom:1.875rem}.empty-block .empty-message{font-size:0.875rem;margin-bottom:0.4375rem}.empty-block .empty-message.large{font-size:1.5rem}.empty-block .info-wrapper{-ms-flex-pack:center;justify-content:center;width:100%}.empty-block .info-wrapper .wm-button{width:auto}.header.type1,.header.type2{margin-bottom:1rem}.header .slot-wrapper{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:start;align-items:flex-start}.notif-wrapper.type1,.notif-wrapper.type2{-ms-flex-direction:column;flex-direction:column;margin-bottom:1rem}.list-container.type1,.list-container.type2{overflow-y:auto}.list-container.type1 ul,.list-container.type2 ul{margin:revert}.list-container.type1 .file-list li,.list-container.type1 .inprogress-list li,.list-container.type2 .file-list li,.list-container.type2 .inprogress-list li{margin-bottom:1.625rem}.list-container.type1 .error-list li,.list-container.type2 .error-list li{margin-bottom:1.25rem}.list-container.type1{padding:0 1.875rem;height:16.25rem}';var m=e("wm_uploader",function(){function e(e){t(this,e);this.wmUploaderFilesSelected=o(this,"wmUploaderFilesSelected",7);this.wmFilesSelected=o(this,"wmFilesSelected",7);this.wmUploaderDeleteFile=o(this,"wmUploaderDeleteFile",7);this.wmDeleteFile=o(this,"wmDeleteFile",7);this.wmUploaderDownloadFile=o(this,"wmUploaderDownloadFile",7);this.wmDownloadFile=o(this,"wmDownloadFile",7);this.wmUploaderPreviewFile=o(this,"wmUploaderPreviewFile",7);this.wmFileDelete=o(this,"wmFileDelete",7);this.wmFileDownload=o(this,"wmFileDownload",7);this.wmFilePreview=o(this,"wmFilePreview",7);this.inputId=s();this.uploaderType=undefined;this.type=undefined;this.label=undefined;this.buttonText=undefined;this.info=undefined;this.emptyStateText=undefined;this.icon=undefined;this.fileTypes="pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv";this.maxSize=undefined;this.maxFiles=undefined;this.sortBy="date";this.showInfo="time";this.errorMessage=undefined;this.requiredField=undefined;this.files=undefined;this.fileList=[];this.filesToUpload=[];this.isTabbing=false;this.rejectedFiles=undefined;this.errorList=[];this.notif=undefined;this.internalErrorMessage=undefined;this.announcement="";this.numFilesInProgress=undefined;this.isCondensed=false}Object.defineProperty(e.prototype,"uploadButtonEl",{get:function(){return this.el.shadowRoot.querySelector("#".concat(this.inputId))},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"tempUploaderType",{get:function(){return this.type||this.uploaderType},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"effectiveMaxSize",{get:function(){var e=100;var t=100;return this.maxSize?Math.min(this.maxSize,t):e},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"fileLimitReached",{get:function(){return this.maxFiles&&this.fileList.length>=this.maxFiles},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"displayedErrorMessage",{get:function(){return this.errorMessage||this.internalErrorMessage||""},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"fileLimitExceededMessage",{get:function(){return l.formatMessage({id:"uploader.fileUploadLimitExceeded",defaultMessage:"Upload unsuccessful because file selection would exceed the maximum number of files",description:"Message displayed when trying to upload too many files"})},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"fileLimitReachedMessage",{get:function(){return l.formatMessage({id:"uploader.fileUploadLimitReached",defaultMessage:"The maximum number of files has been reached",description:"Message displayed when trying to upload additional files, but the limit has been reached"})},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"fileCountMessage",{get:function(){return l.formatMessage({id:"uploader.fileCount",defaultMessage:"{x} of {y} Files",description:"A count of the number of files currently uploaded"},{x:this.fileList.length,y:this.maxFiles})},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"maxSizeMessage",{get:function(){return l.formatMessage({id:"uploader.maxSize",defaultMessage:"Maximum file size {maxSize}MB",description:"An indicator of the maximum file size the uploader allows"},{maxSize:this.effectiveMaxSize})},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"acceptedFileTypesMessage",{get:function(){var e="."+this.fileTypes.split(" ").join(", .");return l.formatMessage({id:"uploader.acceptedFileTypes",defaultMessage:"Accepted file {amount, plural, =1 {type} other {types}}: {fileTypes}"},{fileTypes:e,amount:this.fileTypes.split(" ").length})},enumerable:false,configurable:true});e.prototype.toggleTabbingOn=function(){this.isTabbing=true};e.prototype.toggleTabbingOff=function(){this.isTabbing=false};e.prototype.handleUploadProgress=function(e){var t=this;this.fileList.map((function(o){if(o.id===e.detail.id){o.progress=e.detail.progress;r(t.el)}}));if(e.detail.progress===100){this.numFilesInProgress-=1}if(!this.srProgress&&this.numFilesInProgress){var o=this.numFilesInProgress;this.srProgress=setInterval((function(){var e=t.fileList.reduce((function(e,t){return t.progress?e+t.progress:e}),0);t.announce(l.formatMessage({id:"uploader.uploadProgress",defaultMessage:"Upload progress: {percentage}%"},{percentage:Math.floor(e/o)}))}),5e3)}};e.prototype.handleFileErrorCleared=function(e){var t=e.detail.name;this.errorList=this.errorList.filter((function(e){return e.name!=t}));this.uploadButtonEl.focus()};e.prototype.handleFileDeleted=function(e){this.clearErrors();r(this.el);this.wmUploaderDeleteFile.emit(e.detail);this.wmFileDelete.emit(e.detail);this.wmDeleteFile.emit(e.detail)};e.prototype.handleFilePreviewed=function(e){this.clearErrors();this.wmUploaderPreviewFile.emit(e.detail);this.wmFilePreview.emit(e.detail)};e.prototype.handleFileDownloaded=function(e){this.clearErrors();this.wmUploaderDownloadFile.emit(e.detail);this.wmFileDownload.emit(e.detail);this.wmDownloadFile.emit(e.detail)};e.prototype.parseFiles=function(){var e=this;if(!!this.files){if(typeof this.files==="string"){var t=JSON.parse(this.files);if(typeof t==="object"){t.forEach((function(t){if(t.size&&(typeof t.size==="number"||t.size.match(/^[0-9]+$/))){var o=e.convertBytes(t.size);t.size="".concat(o.size.toFixed(0)," ").concat(o.unit)}}));this.fileList=t}else{throw new Error("could not parse string passed to files attribute")}}else{throw new Error("Attribute 'files' should be a string")}}};e.prototype.focusAfterRemoval=function(e,t){if(this.isTabbing&&e.length<t.length){var o=e.map((function(e){return e.id}));var r=t.map((function(e){return e.id}));var i=r.filter((function(e){return!o.includes(e)}))[0];if(r.indexOf(i)>0){var n=r[r.indexOf(i)-1];var a=this.el.shadowRoot.querySelector("#file-"+n);var s=a===null||a===void 0?void 0:a.shadowRoot.querySelectorAll("wm-button");if(s&&s.length>0){var l=s[s.length-1];l.focus()}else{this.focusAfterRemoval(e.filter((function(e){return e.id!==n})),t)}}else{this.uploadButtonEl.focus()}}};e.prototype.parseRejectedFiles=function(){if(!!this.rejectedFiles){if(typeof this.files==="string"){var e=JSON.parse(this.rejectedFiles);if(typeof e==="object"){this.errorList=e}else{throw new Error("could not parse string passed to errors attribute")}}else{throw new Error("Attribute 'rejected-files' should be a string")}}};e.prototype.uploadNotifications=function(e,t){var o=this;if(t>0&&e===0){setTimeout((function(){o.notif="";o.internalErrorMessage=""}),20*1e3);var i=l.formatMessage({id:"uploader.finishedUploading",defaultMessage:"Finished uploading"});this.notif=i;this.announce(i);this.numFilesInProgress=null;clearInterval(this.srProgress);r(this.el)}else if(e>0&&e!=t){var n=l.formatMessage({id:"uploader.filesUploading",defaultMessage:"{num, plural, one {1 file uploading} other {# files uploading}}"},{num:e});this.notif=n;this.announce(n);r(this.el)}};e.prototype.handleErrorMessageChange=function(){if(this.errorMessage){this.announce(this.errorMessage)}};e.prototype.isValidSize=function(e){return this.convertBytes(e,"MB").size<=this.effectiveMaxSize};e.prototype.convertBytes=function(e,t){var o=["bytes","KB","MB","GB","TB"];var r=0;var i=typeof e==="number"?e:parseInt(e);if(t){while(o.indexOf(t)>r){i/=1024;r++}}else{while(i>1e3){i/=1024;r++}}return{size:i,unit:o[r]}};e.prototype.isDuplicate=function(e){var t=this.filesToUpload.some((function(t){return t.name===e}));var o=this.fileList.some((function(t){var o=t.type?t.name+"."+t.type:t.name;return o===e}));return t||o};e.prototype.isEmpty=function(){return!this.fileList.length&&!this.errorList.length};Object.defineProperty(e.prototype,"isDisabled",{get:function(){return this.fileLimitReached||this.numFilesInProgress>0},enumerable:false,configurable:true});e.prototype.isItemUploading=function(e){return e.hasOwnProperty("progress")&&e.progress<100};e.prototype.announce=function(e){if(this.liveRegion.textContent===e){e+=" "}this.announcement=e};e.prototype.clearErrors=function(){this.errorList=[];this.notif="";this.internalErrorMessage=""};e.prototype.handleFiles=function(e){var t=this;this.filesToUpload=[];var o=this.fileTypes.split(" ").join(", ");var r=Array.from(e.target.files);if(!!this.maxFiles&&this.fileList.length+r.length>this.maxFiles){this.internalErrorMessage=this.fileLimitExceededMessage;this.announce(this.fileLimitExceededMessage)}else{r&&r.map((function(e){if(!d(e,t.fileTypes)){var r={name:e.name,message:l.formatMessage({id:"uploader.invalidFileType",defaultMessage:"The file type is invalid. Accepted types: {validTypes}"},{validTypes:o})};t.errorList.push(r)}else if(e.size===0){var r={name:e.name,message:l.formatMessage({id:"uploader.zeroFileSize",defaultMessage:"The file must be more than 0 bytes",description:"Error message when user attempts to upload a file of no size"})};t.errorList.push(r)}else if(!t.isValidSize(e.size)){var r={name:e.name,message:l.formatMessage({id:"uploader.fileTooLarge",defaultMessage:"The selected file is too large. Maximum file size is {size}Mb"},{size:t.effectiveMaxSize})};t.errorList.push(r)}else if(t.isDuplicate(e.name)){var r={name:e.name,message:l.formatMessage({id:"uploader.duplicateName",defaultMessage:"A file with this name already exists."})};t.errorList.push(r)}else{t.filesToUpload.push(e)}}));if(this.filesToUpload.length>0){this.numFilesInProgress=this.filesToUpload.length;this.wmUploaderFilesSelected.emit(this.filesToUpload);this.wmFilesSelected.emit(this.filesToUpload)}}e.target.value=""};e.prototype.componentWillLoad=function(){if(!this.buttonText){throw new Error("wm-uploader: button-text is a required prop")}if(this.type){console.warn("wm-uploader: type has been deprecated as of v3.1.0. Please use uploader-type instead.")}if(this.tempUploaderType==="1"&&!this.emptyStateText){throw new Error("wm-uploader: empty-state-text is a required prop")}this.parseFiles();this.clearErrors();this.parseRejectedFiles()};e.prototype.componentDidLoad=function(){if(document.body.classList.contains("wmcl-user-is-tabbing")){this.toggleTabbingOn()}};e.prototype.uploadButtonOnClick=function(e){if(this.isDisabled){e.preventDefault();if(this.numFilesInProgress>0){var t=l.formatMessage({id:"uploader.waitToUpload",defaultMessage:"Please wait for current upload to complete before uploading new files.",description:"Message for screen reader users"});this.announce(t)}else if(this.fileLimitReached){this.internalErrorMessage=this.fileLimitReachedMessage;this.announce(this.fileLimitReachedMessage)}}else{this.clearErrors()}};e.prototype.renderUploadSvg=function(){return i("svg",{class:"upload-file",width:"91",height:"84",viewBox:"0 0 91 84"},i("path",{transform:"rotate(-180.000000) translate(-452, -255.5)",fill:"#eae8ec",d:"M361,249.681818 L361,197.318182 C361,194.118182 365.555061,191.5 371.122358,191.5 L391.316463,191.5 L391.286495,200.562515 L369.871211,200.600292 L369.885404,200.622146 L369.886423,246.655947 L443.657038,246.840767 L443.657038,200.622146 L421.683537,200.622146 L421.683537,191.5 L441.978865,191.5 C447.546162,191.5 452,194.118182 452,197.318182 L452,249.681818 C452,252.881818 447.546162,255.5 441.978865,255.5 L371.122358,255.5 C365.504449,255.5 361,252.881818 361,249.681818 Z M391.5,207 L406,221 L420.5,207 L409.625,207 L409.625,172 L402.375,172 L402.375,207 L391.5,207 Z"}))};e.prototype.renderIcon=function(){var e=this.icon&&this.icon==="f066";return this.icon&&i("span",{class:"mdi ".concat(e?"rotate":"")},String.fromCodePoint(parseInt("0x".concat(this.icon))))};e.prototype.renderInfo=function(){return this.info&&this.tempUploaderType==="2"?i("span",{class:"info"},this.info):""};e.prototype.renderNotif=function(){return i("div",{class:"notif"},this.notif)};e.prototype.renderError=function(){return i("div",{id:"error"},this.displayedErrorMessage)};e.prototype.renderUploadButton=function(e){var t=this;var o="".concat(this.label&&this.label!==this.buttonText?"".concat(this.label,", "):"").concat(this.buttonText);return i("div",{class:"info-wrapper"},i("input",{name:this.inputId,id:this.inputId,class:"sr-only","aria-label":o,"aria-required":this.requiredField?"true":null,"aria-describedby":"".concat(this.displayedErrorMessage?"error ":"","file-count max-size accepted-types"),type:"file",multiple:true,onClick:function(e){return t.uploadButtonOnClick(e)},onChange:function(e){return t.handleFiles(e)}}),i("label",{htmlFor:this.inputId,class:"wm-button ".concat(e).concat(this.isTabbing?" user-is-tabbing":"")},this.renderIcon(),this.buttonText),this.renderInfo())};e.prototype.renderEmptyState=function(){return i("div",{class:"empty-block"},this.renderUploadSvg(),i("div",{class:"empty-message"},this.emptyStateText),this.renderUploadButton("-primary empty-button"),this.notif&&this.renderNotif(),this.displayedErrorMessage&&this.renderError())};e.prototype.renderErrorList=function(){var e=this.errorList.reduce((function(e,t){return e+"".concat(t.name,": ").concat(t.message," ")}),"");this.announce(e);return i("ul",{class:"error-list"},this.errorList.map((function(e){return i("wm-file",{file:'{"name": "'.concat(e.name,'"}'),"error-message":e.message})})))};e.prototype.formatTimestamp=function(e){var t=new Date(Date.parse(e));var o=t.getDate();var r=t.getMonth()+1;var i=t.getFullYear();var n=t.toLocaleTimeString("en-us",{hour:"numeric",minute:"2-digit"});var a="".concat(r,"/").concat(o,"/").concat(i," ").concat(n);return a};e.prototype.renderInProgressFileList=function(){var e=this;return i("ul",{class:"inprogress-list"},this.fileList.filter((function(t){return e.isItemUploading(t)})).map((function(t){return i("wm-file",{file:JSON.stringify(t),"show-info":e.showInfo})})))};e.prototype.renderUploadedFileList=function(){var e=this;return i("ul",{class:"file-list"},this.fileList.filter((function(t){return!e.isItemUploading(t)})).map((function(t){t.lastUpdated=e.formatTimestamp(t.lastUpdated);return i("wm-file",{id:"file-".concat(t.id),file:JSON.stringify(t),"show-info":e.showInfo})})))};e.prototype.renderFiles=function(){this.sortBy==="name"?this.fileList.sort((function(e,t){return e.name.localeCompare(t.name)})):this.fileList.sort((function(e,t){return Date.parse(e.lastUpdated)-Date.parse(t.lastUpdated)}));return i("div",null,this.renderInProgressFileList(),this.renderUploadedFileList())};e.prototype.legacyRenderHeader=function(){return i("div",{class:"header ".concat(this.tempUploaderType?"type".concat(this.tempUploaderType):"")},i("div",{class:"slot-wrapper"},i("slot",null),i("div",{class:"notif-wrapper ".concat(this.tempUploaderType?"type".concat(this.tempUploaderType):"")},this.renderUploadButton("-secondary ".concat(this.isDisabled?"disabled":"")),this.notif&&this.renderNotif(),this.displayedErrorMessage&&this.renderError())))};e.prototype.renderHeader=function(){return i("div",{class:"header ".concat(this.tempUploaderType?"type".concat(this.tempUploaderType):"")},i("div",{class:"notif-wrapper ".concat(this.tempUploaderType?"type".concat(this.tempUploaderType):"")},this.renderUploadButton("-secondary ".concat(this.isDisabled?"disabled":"")),this.renderRequirements()),i("div",{id:"accepted-types",class:"accepted-types"},this.acceptedFileTypesMessage),this.notif&&this.renderNotif(),this.displayedErrorMessage&&this.renderError())};e.prototype.renderRequirements=function(){return i("div",{class:"requirements"},this.maxFiles&&i("span",{id:"file-count"},this.fileCountMessage),this.maxSize&&i("span",{id:"max-size"},this.maxSizeMessage))};e.prototype.renderFooter=function(){return i("div",{class:"footer"},i("div",{class:"notif-wrapper ".concat(this.tempUploaderType?"type".concat(this.tempUploaderType):"")},i("div",{class:"filecount-wrapper"},i("div",{class:"filecount"},l.formatMessage({id:"uploader.filesAdded",defaultMessage:"{numFiles, plural, one {1 file added} other {# files added}}"},{numFiles:this.fileList.length})),this.renderUploadButton("-primary ".concat(this.isDisabled?"disabled":""))),this.notif&&this.renderNotif(),this.displayedErrorMessage&&this.renderError()))};e.prototype.renderWithItems=function(){var e=this.fileList.filter((function(e){return e.progress===(typeof e.progress==="number"?100:"100")})).length>0;return i("div",null,!this.tempUploaderType&&this.renderHeader(),this.tempUploaderType==="2"&&this.legacyRenderHeader(),i("div",{class:"list-container type".concat(this.tempUploaderType," ").concat(!this.tempUploaderType&&e?"checkmark-spacer":"")},this.errorList.length>0&&this.renderErrorList(),this.fileList.length>0&&this.renderFiles()),this.tempUploaderType==="1"&&this.renderFooter())};e.prototype.renderLabel=function(){return i("div",{class:"wrapper ".concat(this.displayedErrorMessage?"invalid":"")},i("div",{id:"label",class:"label"},this.label,this.requiredField&&i("span",{class:"required","aria-hidden":"true"},"*")))};e.prototype.render=function(){var e=this;return i(n,null,this.label&&this.renderLabel(),this.isEmpty()&&this.tempUploaderType==="1"?this.renderEmptyState():this.renderWithItems(),i("div",{ref:function(t){return e.liveRegion=t},class:"live-region sr-only","aria-live":"assertive","aria-atomic":"true"},this.announcement))};Object.defineProperty(e,"delegatesFocus",{get:function(){return true},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"el",{get:function(){return a(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{files:["parseFiles"],fileList:["focusAfterRemoval"],rejectedFiles:["parseRejectedFiles"],numFilesInProgress:["uploadNotifications"],errorMessage:["handleErrorMessageChange"]}},enumerable:false,configurable:true});return e}());m.style=p}}}));
|
|
2
|
-
//# sourceMappingURL=p-6e6b5b2c.system.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["wmUploaderCss","Uploader","exports","this","inputId","generateId","Object","defineProperty","class_1","prototype","el","shadowRoot","querySelector","concat","type","uploaderType","defaultMaxSize","maxSizeLimit","maxSize","Math","min","maxFiles","fileList","length","errorMessage","internalErrorMessage","intl","formatMessage","id","defaultMessage","description","x","y","effectiveMaxSize","validTypes","fileTypes","split","join","amount","toggleTabbingOn","isTabbing","toggleTabbingOff","handleUploadProgress","ev","_this","map","i","detail","progress","forceUpdate","numFilesInProgress","srProgress","total_1","setInterval","aggregate","reduce","avg","item","announce","percentage","floor","handleFileErrorCleared","filename","name","errorList","filter","error","uploadButtonEl","focus","handleFileDeleted","clearErrors","wmUploaderDeleteFile","emit","wmFileDelete","wmDeleteFile","handleFilePreviewed","wmUploaderPreviewFile","wmFilePreview","handleFileDownloaded","wmUploaderDownloadFile","wmFileDownload","wmDownloadFile","parseFiles","files","list","JSON","parse","forEach","size","match","convertedSize","convertBytes","toFixed","unit","Error","focusAfterRemoval","newFiles","oldFiles","newFileIds_1","file","oldFileIds","removedFileId","includes","indexOf","fileIdPrecedingRemoved_1","fileElPrecedingRemoved","focusedElementsButtons","querySelectorAll","lastButtonInFile","parseRejectedFiles","rejectedFiles","uploadNotifications","newNum","oldNum","setTimeout","notif","finishedMessage","clearInterval","filesUploadingMessage","num","handleErrorMessageChange","isValidSize","bytes","unitOrder","unitIndex","result","parseInt","isDuplicate","hasDuplicateUploadingFile","filesToUpload","some","fileToUpload","hasDuplicateUploadedFile","f","isEmpty","fileLimitReached","isItemUploading","hasOwnProperty","message","liveRegion","textContent","announcement","handleFiles","Array","from","target","fileLimitExceededMessage","hasValidType","push","wmUploaderFilesSelected","wmFilesSelected","value","componentWillLoad","buttonText","console","warn","tempUploaderType","emptyStateText","componentDidLoad","document","body","classList","contains","uploadButtonOnClick","isDisabled","preventDefault","srMsg","fileLimitReachedMessage","renderUploadSvg","h","class","width","height","viewBox","transform","fill","d","renderIcon","rotate","icon","String","fromCodePoint","renderInfo","info","renderNotif","renderError","displayedErrorMessage","renderUploadButton","classes","accessibleLabel","label","requiredField","multiple","onClick","onChange","htmlFor","renderEmptyState","renderErrorList","srMessage","acc","err","formatTimestamp","timestamp","uploadDate","Date","day","getDate","month","getMonth","year","getFullYear","time","toLocaleTimeString","hour","minute","formattedDate","renderInProgressFileList","stringify","showInfo","renderUploadedFileList","lastUpdated","renderFiles","sortBy","sort","a","b","localeCompare","legacyRenderHeader","renderHeader","renderRequirements","acceptedFileTypesMessage","fileCountMessage","maxSizeMessage","renderFooter","numFiles","renderWithItems","hasNewlyUploadedFiles","renderLabel","render","Host","ref"],"sources":["src/components/wm-uploader/wm-uploader.scss?tag=wm-uploader&encapsulation=shadow","src/components/wm-uploader/wm-uploader.tsx"],"sourcesContent":[":host,\r\nwm-uploader {\r\n display: block;\r\n position: relative;\r\n max-width: 1140px;\r\n\r\n &[dir=\"RTL\"] {\r\n .mdi {\r\n margin-left: rem-calc(5);\r\n margin-right: 0;\r\n }\r\n }\r\n @extend %wm-button;\r\n\r\n input:focus + .wm-button.user-is-tabbing {\r\n -webkit-box-shadow: 0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;\r\n -moz-box-shadow: 0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;\r\n box-shadow: 0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;\r\n }\r\n}\r\n\r\n:host *,\r\nwm-uploader * {\r\n box-sizing: border-box;\r\n}\r\n\r\n.wm-button.disabled {\r\n // override the %wm-button rule\r\n // we want a pointer event when disabled,\r\n // to trigger a SR message\r\n pointer-events: initial !important;\r\n}\r\n\r\n@include label;\r\n#label {\r\n margin-bottom: rem-calc(8);\r\n}\r\n\r\n.header {\r\n .info-wrapper {\r\n align-items: center;\r\n .info {\r\n font-size: rem-calc(14);\r\n margin-left: 1rem;\r\n }\r\n }\r\n\r\n .accepted-types {\r\n font-size: rem-calc(14);\r\n }\r\n\r\n .requirements {\r\n font-size: rem-calc(14);\r\n margin-left: rem-calc(16);\r\n }\r\n}\r\n\r\n.footer {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: flex-end;\r\n padding: rem-calc(15 30);\r\n\r\n .notif-wrapper {\r\n align-items: flex-end;\r\n }\r\n\r\n .filecount-wrapper {\r\n display: flex;\r\n align-items: center;\r\n .filecount {\r\n font-size: 0.875rem;\r\n margin-right: 1rem;\r\n }\r\n }\r\n}\r\n\r\n.notif-wrapper {\r\n position: relative;\r\n display: flex;\r\n flex-direction: row;\r\n margin-bottom: rem-calc(12);\r\n\r\n .requirements {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n}\r\n\r\n.notif,\r\n#error {\r\n padding-top: rem-calc(4);\r\n font-size: 0.875rem;\r\n font-style: italic;\r\n\r\n &#error {\r\n @include errorMessage;\r\n }\r\n}\r\n\r\n.info-wrapper {\r\n position: relative; // for .info\r\n display: flex;\r\n}\r\n\r\n.list-container {\r\n overflow-y: unset;\r\n\r\n &.checkmark-spacer {\r\n margin-right: rem-calc(44);\r\n }\r\n\r\n &:has(.error-list, .inprogress-list, .file-list) {\r\n margin-top: rem-calc(40);\r\n }\r\n\r\n ul {\r\n padding: 0;\r\n width: 100%;\r\n margin: 0;\r\n\r\n wm-file {\r\n margin-bottom: rem-calc(8);\r\n }\r\n }\r\n}\r\n\r\n.sr-only {\r\n @include srOnly;\r\n}\r\n\r\n/// FOR DEPRECATED TYPES ///////////////////////////////////////\r\n.empty-block {\r\n margin: 5rem auto;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n\r\n .upload-file {\r\n margin-bottom: rem-calc(30);\r\n }\r\n\r\n .empty-message {\r\n font-size: 0.875rem;\r\n &.large {\r\n font-size: 1.5rem;\r\n }\r\n margin-bottom: rem-calc(7);\r\n }\r\n\r\n .info-wrapper {\r\n justify-content: center;\r\n width: 100%; // for .notif\r\n\r\n .wm-button {\r\n // Removing the width inherit here to prevent a 100% width\r\n // from the info-wrapper. Future proofing a day when\r\n // we might want a long notif to wrap.\r\n width: auto;\r\n }\r\n }\r\n}\r\n\r\n.header {\r\n &.type1,\r\n &.type2 {\r\n margin-bottom: 1rem;\r\n }\r\n .slot-wrapper {\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n }\r\n}\r\n\r\n.notif-wrapper {\r\n &.type1,\r\n &.type2 {\r\n flex-direction: column;\r\n margin-bottom: rem-calc(16);\r\n }\r\n}\r\n\r\n.list-container {\r\n &.type1,\r\n &.type2 {\r\n overflow-y: auto;\r\n ul {\r\n margin: revert;\r\n }\r\n .file-list li,\r\n .inprogress-list li {\r\n // margin-bottom also on the last element, otherwise tooltip on dl and delete btns triggers a scrollbar\r\n margin-bottom: rem-calc(26);\r\n }\r\n .error-list li {\r\n margin-bottom: rem-calc(20);\r\n }\r\n }\r\n\r\n &.type1 {\r\n padding: rem-calc(0 30);\r\n height: rem-calc(260);\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, h, Host, Prop, State, Listen, Watch } from \"@stencil/core\";\r\nimport { forceUpdate } from \"@stencil/core\";\r\nimport { generateId, hasValidType, intl } from \"../../global/functions\";\r\nimport { UploadedFile } from \"../../global/interfaces\";\r\ninterface ErrorFile {\r\n name: string;\r\n message: string;\r\n}\r\n\r\n@Component({\r\n tag: \"wm-uploader\",\r\n styleUrl: \"wm-uploader.scss\",\r\n shadow: { delegatesFocus: true },\r\n})\r\nexport class Uploader {\r\n @Element() el!: HTMLWmUploaderElement;\r\n private liveRegion!: HTMLDivElement;\r\n get uploadButtonEl(): HTMLElement {\r\n return this.el.shadowRoot!.querySelector(`#${this.inputId}`) as HTMLElement;\r\n }\r\n\r\n @Prop({ mutable: true }) uploaderType?: \"1\" | \"2\"; // only mutable for the deprecation transition\r\n @Prop() type?: \"1\" | \"2\"; // DEPRECATED in favor of uploaderType\r\n get tempUploaderType() {\r\n // replace instances of this.tempUploaderType with this.uploaderType once type is fully phased out\r\n return this.type || this.uploaderType;\r\n }\r\n @Prop() label?: string;\r\n @Prop() buttonText!: string;\r\n @Prop() info?: string;\r\n @Prop() emptyStateText!: string;\r\n @Prop() icon!: string;\r\n @Prop() fileTypes: string = \"pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv\";\r\n @Prop() maxSize?: number | null; // in Mb\r\n @Prop() maxFiles?: number;\r\n @Prop() sortBy: \"name\" | \"date\" = \"date\"; // name is descending (a -> z), date is ascending (earlier -> later)\r\n @Prop() showInfo: \"time\" | \"size\" | \"none\" = \"time\";\r\n @Prop() errorMessage?: string;\r\n @Prop() requiredField?: boolean;\r\n\r\n @Prop() files?: string; // String representation of an array of files (the files retrieved from the server)\r\n @State() fileList: UploadedFile[] = []; // the string above transformed into the actual array\r\n @Prop({ mutable: true }) filesToUpload: File[] = []; // input.files that passed validation\r\n\r\n @State() isTabbing: boolean = false;\r\n\r\n @Prop() rejectedFiles?: string; // String representation of an array of errors to add to errorList, allows devs to display server-side errors\r\n @State() errorList: ErrorFile[] = []; // for errors on a particular file\r\n @State() notif?: string | null; // for upload notifications\r\n @State() internalErrorMessage?: string;\r\n @State() announcement: string = \"\";\r\n @State() numFilesInProgress?: number | null; // null when not uploading != 0 (when all files are done uploading) != undefined (original state)\r\n @State() isCondensed: boolean = false;\r\n private srProgress?: any; // setInterval for SR to announce the aggregate progress percentage when things take a long time. stored here so it can be stopped when upload is finished.\r\n private inputId = generateId();\r\n\r\n @Event() wmUploaderFilesSelected!: EventEmitter;\r\n @Event() wmFilesSelected!: EventEmitter; // deprecated in favor of wmUploaderFilesSelected\r\n @Event() wmUploaderDeleteFile!: EventEmitter;\r\n @Event() wmDeleteFile!: EventEmitter; // deprecated in favor of wmUploaderDeleteFile\r\n @Event() wmUploaderDownloadFile!: EventEmitter;\r\n @Event() wmDownloadFile!: EventEmitter; // deprecated in favor of wmUploaderDownloadFile\r\n @Event() wmUploaderPreviewFile!: EventEmitter;\r\n\r\n @Event() wmFileDelete!: EventEmitter<string>;\r\n @Event() wmFileDownload!: EventEmitter<string>;\r\n @Event() wmFilePreview!: EventEmitter<string>;\r\n\r\n get effectiveMaxSize() {\r\n const defaultMaxSize = 100;\r\n // maxsize cannot be set to over 100Mb\r\n const maxSizeLimit = 100;\r\n\r\n return this.maxSize ? Math.min(this.maxSize, maxSizeLimit) : defaultMaxSize;\r\n }\r\n\r\n get fileLimitReached() {\r\n return this.maxFiles && this.fileList.length >= this.maxFiles;\r\n }\r\n\r\n get displayedErrorMessage(): string {\r\n return this.errorMessage || this.internalErrorMessage || \"\";\r\n }\r\n\r\n get fileLimitExceededMessage() {\r\n return intl.formatMessage({\r\n id: \"uploader.fileUploadLimitExceeded\",\r\n defaultMessage: \"Upload unsuccessful because file selection would exceed the maximum number of files\",\r\n description: \"Message displayed when trying to upload too many files\",\r\n });\r\n }\r\n\r\n get fileLimitReachedMessage() {\r\n return intl.formatMessage({\r\n id: \"uploader.fileUploadLimitReached\",\r\n defaultMessage: \"The maximum number of files has been reached\",\r\n description: \"Message displayed when trying to upload additional files, but the limit has been reached\",\r\n });\r\n }\r\n\r\n get fileCountMessage() {\r\n return intl.formatMessage(\r\n {\r\n id: \"uploader.fileCount\",\r\n defaultMessage: \"{x} of {y} Files\",\r\n description: \"A count of the number of files currently uploaded\",\r\n },\r\n { x: this.fileList.length, y: this.maxFiles }\r\n );\r\n }\r\n\r\n get maxSizeMessage() {\r\n return intl.formatMessage(\r\n {\r\n id: \"uploader.maxSize\",\r\n defaultMessage: \"Maximum file size {maxSize}MB\",\r\n description: \"An indicator of the maximum file size the uploader allows\",\r\n },\r\n {\r\n maxSize: this.effectiveMaxSize,\r\n }\r\n );\r\n }\r\n\r\n get acceptedFileTypesMessage() {\r\n const validTypes = \".\" + this.fileTypes.split(\" \").join(\", .\");\r\n return intl.formatMessage(\r\n {\r\n id: \"uploader.acceptedFileTypes\",\r\n defaultMessage: \"Accepted file {amount, plural, =1 {type} other {types}}: {fileTypes}\",\r\n },\r\n {\r\n fileTypes: validTypes,\r\n amount: this.fileTypes.split(\" \").length,\r\n }\r\n );\r\n }\r\n\r\n @Listen(\"wmUserIsTabbing\", { target: \"window\" })\r\n toggleTabbingOn() {\r\n this.isTabbing = true;\r\n }\r\n\r\n @Listen(\"wmUserIsNotTabbing\", { target: \"window\" })\r\n toggleTabbingOff() {\r\n this.isTabbing = false;\r\n }\r\n\r\n @Listen(\"wmUploadProgress\")\r\n handleUploadProgress(ev: CustomEvent) {\r\n this.fileList.map((i) => {\r\n if (i.id === ev.detail.id) {\r\n i.progress = ev.detail.progress;\r\n forceUpdate(this.el);\r\n }\r\n });\r\n\r\n if (ev.detail.progress === 100) {\r\n // inProgressList is not a perfect reflection of how many files are uploading\r\n // because even after progress reached 100% the item should remain in the array\r\n // (should only be removed once it appears in fileList)\r\n this.numFilesInProgress! -= 1;\r\n }\r\n\r\n // aggregate the percentages for SR to announce progress\r\n if (!this.srProgress && this.numFilesInProgress) {\r\n const total = this.numFilesInProgress; // if we don't reassign this number changes when a file is done and the percentage becomes wrong\r\n this.srProgress = setInterval(() => {\r\n const aggregate = this.fileList.reduce((avg, item) => (item.progress ? avg + item.progress : avg), 0);\r\n this.announce(\r\n intl.formatMessage(\r\n {\r\n id: \"uploader.uploadProgress\",\r\n defaultMessage: \"Upload progress: {percentage}%\",\r\n },\r\n { percentage: Math.floor(aggregate / total) }\r\n )\r\n );\r\n }, 5000);\r\n }\r\n }\r\n\r\n @Listen(\"wmFileClearErrorClicked\")\r\n handleFileErrorCleared(ev: CustomEvent) {\r\n const filename = ev.detail.name;\r\n this.errorList = this.errorList.filter((error) => error.name != filename);\r\n this.uploadButtonEl.focus();\r\n }\r\n\r\n @Listen(\"wmIntFileDeleted\")\r\n handleFileDeleted(ev: CustomEvent) {\r\n this.clearErrors();\r\n forceUpdate(this.el); // for the button to stop being disabled if num files become < max-files\r\n this.wmUploaderDeleteFile.emit(ev.detail);\r\n this.wmFileDelete.emit(ev.detail);\r\n this.wmDeleteFile.emit(ev.detail); // deprecated\r\n }\r\n\r\n @Listen(\"wmIntFilePreviewed\")\r\n handleFilePreviewed(ev: CustomEvent) {\r\n this.clearErrors();\r\n this.wmUploaderPreviewFile.emit(ev.detail);\r\n this.wmFilePreview.emit(ev.detail);\r\n }\r\n\r\n @Listen(\"wmIntFileDownloaded\")\r\n handleFileDownloaded(ev: CustomEvent) {\r\n this.clearErrors();\r\n this.wmUploaderDownloadFile.emit(ev.detail);\r\n this.wmFileDownload.emit(ev.detail);\r\n this.wmDownloadFile.emit(ev.detail); // deprecated\r\n }\r\n\r\n @Watch(\"files\")\r\n parseFiles() {\r\n if (!!this.files) {\r\n if (typeof this.files === \"string\") {\r\n let list = JSON.parse(this.files);\r\n if (typeof list === \"object\") {\r\n // if size is in byte format, convert to display format\r\n list.forEach((item: any) => {\r\n if (item.size && (typeof item.size === \"number\" || item.size.match(/^[0-9]+$/))) {\r\n const convertedSize = this.convertBytes(item.size);\r\n item.size = `${convertedSize.size.toFixed(0)} ${convertedSize.unit}`;\r\n }\r\n });\r\n this.fileList = list;\r\n } else {\r\n throw new Error(\"could not parse string passed to files attribute\");\r\n }\r\n } else {\r\n throw new Error(\"Attribute 'files' should be a string\");\r\n }\r\n }\r\n }\r\n\r\n @Watch(\"fileList\")\r\n focusAfterRemoval(newFiles: UploadedFile[], oldFiles: UploadedFile[]) {\r\n if (this.isTabbing && newFiles.length < oldFiles.length) {\r\n const newFileIds = newFiles.map((file: UploadedFile) => file.id);\r\n const oldFileIds = oldFiles.map((file: UploadedFile) => file.id);\r\n // even in the case that multiple files have been removed at once, work off of the first in that group\r\n const removedFileId = oldFileIds.filter((id: string) => !newFileIds.includes(id))[0];\r\n\r\n if (oldFileIds.indexOf(removedFileId) > 0) {\r\n const fileIdPrecedingRemoved = oldFileIds[oldFileIds.indexOf(removedFileId) - 1];\r\n const fileElPrecedingRemoved = this.el.shadowRoot!.querySelector(\"#file-\" + fileIdPrecedingRemoved);\r\n const focusedElementsButtons = fileElPrecedingRemoved?.shadowRoot!.querySelectorAll(\"wm-button\");\r\n\r\n if (focusedElementsButtons && focusedElementsButtons.length > 0) {\r\n const lastButtonInFile = focusedElementsButtons[focusedElementsButtons.length - 1];\r\n lastButtonInFile.focus();\r\n } else {\r\n // if preceding file has no file action buttons, rerun function with adjusted params\r\n // by removing the fileElPrecedingRemoved from the newFiles list, it is now considered the removedFile and looks to focus it's preceding file\r\n // if it continues to cannot find an appropriate preceding file and becomes the first file in the list, it focuses the upload button\r\n this.focusAfterRemoval(\r\n newFiles.filter((file: UploadedFile) => file.id !== fileIdPrecedingRemoved),\r\n oldFiles\r\n );\r\n }\r\n } else {\r\n this.uploadButtonEl.focus();\r\n }\r\n }\r\n }\r\n\r\n @Watch(\"rejectedFiles\")\r\n parseRejectedFiles() {\r\n if (!!this.rejectedFiles) {\r\n if (typeof this.files === \"string\") {\r\n const list = JSON.parse(this.rejectedFiles);\r\n if (typeof list === \"object\") {\r\n this.errorList = list;\r\n } else {\r\n throw new Error(\"could not parse string passed to errors attribute\");\r\n }\r\n } else {\r\n throw new Error(\"Attribute 'rejected-files' should be a string\");\r\n }\r\n }\r\n }\r\n\r\n @Watch(\"numFilesInProgress\")\r\n uploadNotifications(newNum: number, oldNum: number) {\r\n if (oldNum > 0 && newNum === 0) {\r\n setTimeout(() => {\r\n this.notif = \"\";\r\n this.internalErrorMessage = \"\";\r\n }, 20 * 1000);\r\n const finishedMessage = intl.formatMessage({\r\n id: \"uploader.finishedUploading\",\r\n defaultMessage: \"Finished uploading\",\r\n });\r\n this.notif = finishedMessage;\r\n this.announce(finishedMessage);\r\n this.numFilesInProgress = null;\r\n clearInterval(this.srProgress);\r\n forceUpdate(this.el);\r\n } else if (newNum > 0 && newNum != oldNum) {\r\n const filesUploadingMessage = intl.formatMessage(\r\n {\r\n id: \"uploader.filesUploading\",\r\n defaultMessage: \"{num, plural, one {1 file uploading} other {# files uploading}}\",\r\n },\r\n { num: newNum }\r\n );\r\n this.notif = filesUploadingMessage;\r\n this.announce(filesUploadingMessage);\r\n forceUpdate(this.el);\r\n }\r\n }\r\n\r\n @Watch(\"errorMessage\")\r\n handleErrorMessageChange() {\r\n if (this.errorMessage) {\r\n this.announce(this.errorMessage);\r\n }\r\n }\r\n\r\n isValidSize(size: number) {\r\n return this.convertBytes(size, \"MB\").size <= this.effectiveMaxSize;\r\n }\r\n\r\n convertBytes(bytes: number, unit?: \"KB\" | \"MB\" | \"GB\" | \"TB\") {\r\n // https://stackoverflow.com/questions/2365100/converting-bytes-to-megabytes\r\n const unitOrder = [\"bytes\", \"KB\", \"MB\", \"GB\", \"TB\"];\r\n let unitIndex = 0;\r\n let result = typeof bytes === \"number\" ? bytes : parseInt(bytes);\r\n\r\n if (unit) {\r\n // convert until result matches desired unit\r\n while (unitOrder.indexOf(unit) > unitIndex) {\r\n result /= 1024;\r\n unitIndex++;\r\n }\r\n } else {\r\n // convert until result is appropriate unit (value is under 1000)\r\n while (result > 1000) {\r\n result /= 1024;\r\n unitIndex++;\r\n }\r\n }\r\n return { size: result, unit: unitOrder[unitIndex] };\r\n }\r\n\r\n isDuplicate(name: string) {\r\n const hasDuplicateUploadingFile = this.filesToUpload.some((fileToUpload: File) => fileToUpload.name === name);\r\n const hasDuplicateUploadedFile = this.fileList.some((f) => {\r\n const filename: string = f.type ? f.name + \".\" + f.type : f.name;\r\n return filename === name;\r\n });\r\n\r\n return hasDuplicateUploadingFile || hasDuplicateUploadedFile;\r\n }\r\n\r\n isEmpty() {\r\n return !this.fileList.length && !this.errorList.length;\r\n }\r\n\r\n get isDisabled() {\r\n // disable if is the uploader is maxed out or if something is uploading\r\n return this.fileLimitReached || this.numFilesInProgress! > 0;\r\n }\r\n\r\n isItemUploading(item: UploadedFile) {\r\n return item.hasOwnProperty(\"progress\") && item.progress! < 100;\r\n }\r\n\r\n announce(message: string) {\r\n if (this.liveRegion.textContent === message) {\r\n message += \"\\u00A0\";\r\n }\r\n this.announcement = message;\r\n }\r\n\r\n clearErrors() {\r\n this.errorList = [];\r\n this.notif = \"\";\r\n this.internalErrorMessage = \"\";\r\n }\r\n\r\n handleFiles(ev: Event) {\r\n this.filesToUpload = [];\r\n const validTypes = this.fileTypes.split(\" \").join(\", \");\r\n const files = Array.from((ev.target! as HTMLInputElement).files!);\r\n\r\n if (!!this.maxFiles && this.fileList.length + files.length > this.maxFiles) {\r\n this.internalErrorMessage = this.fileLimitExceededMessage;\r\n this.announce(this.fileLimitExceededMessage);\r\n } else {\r\n files &&\r\n files.map((file) => {\r\n if (!hasValidType(file, this.fileTypes)) {\r\n const error = {\r\n name: file.name,\r\n message: intl.formatMessage(\r\n {\r\n id: \"uploader.invalidFileType\",\r\n defaultMessage: \"The file type is invalid. Accepted types: {validTypes}\",\r\n },\r\n { validTypes }\r\n ),\r\n };\r\n this.errorList.push(error);\r\n } else if (file.size === 0) {\r\n const error = {\r\n name: file.name,\r\n message: intl.formatMessage({\r\n id: \"uploader.zeroFileSize\",\r\n defaultMessage: \"The file must be more than 0 bytes\",\r\n description: \"Error message when user attempts to upload a file of no size\",\r\n }),\r\n };\r\n this.errorList.push(error);\r\n } else if (!this.isValidSize(file.size)) {\r\n const error = {\r\n name: file.name,\r\n message: intl.formatMessage(\r\n {\r\n id: \"uploader.fileTooLarge\",\r\n defaultMessage: \"The selected file is too large. Maximum file size is {size}Mb\",\r\n },\r\n { size: this.effectiveMaxSize }\r\n ),\r\n };\r\n this.errorList.push(error);\r\n } else if (this.isDuplicate(file.name)) {\r\n const error = {\r\n name: file.name,\r\n message: intl.formatMessage({\r\n id: \"uploader.duplicateName\",\r\n defaultMessage: \"A file with this name already exists.\",\r\n }),\r\n };\r\n this.errorList.push(error);\r\n } else {\r\n this.filesToUpload.push(file);\r\n }\r\n });\r\n\r\n if (this.filesToUpload.length > 0) {\r\n this.numFilesInProgress = this.filesToUpload.length;\r\n this.wmUploaderFilesSelected.emit(this.filesToUpload);\r\n this.wmFilesSelected.emit(this.filesToUpload); // deprecated\r\n }\r\n }\r\n (ev.target! as HTMLInputElement).value = \"\"; // reset to ensure that onChange is triggered when the same file is selected a second time\r\n }\r\n\r\n componentWillLoad() {\r\n if (!this.buttonText) {\r\n throw new Error(\"wm-uploader: button-text is a required prop\");\r\n }\r\n\r\n if (this.type) {\r\n console.warn(\"wm-uploader: type has been deprecated as of v3.1.0. Please use uploader-type instead.\");\r\n }\r\n\r\n if (this.tempUploaderType === \"1\" && !this.emptyStateText) {\r\n throw new Error(\"wm-uploader: empty-state-text is a required prop\");\r\n }\r\n\r\n this.parseFiles();\r\n this.clearErrors();\r\n this.parseRejectedFiles();\r\n }\r\n\r\n componentDidLoad() {\r\n if (document.body.classList.contains(\"wmcl-user-is-tabbing\")) {\r\n this.toggleTabbingOn();\r\n }\r\n }\r\n\r\n uploadButtonOnClick(ev: Event) {\r\n if (this.isDisabled) {\r\n // this is a temporary fix.\r\n // we need the disabled button to be programmatically focusable\r\n // to allow return focus after closing the browser file panel\r\n // since it's focusable the button should respond when activated\r\n // it looks disabled, and announces the reason why the action cannot\r\n // be taken when activated.\r\n ev.preventDefault();\r\n\r\n if (this.numFilesInProgress! > 0) {\r\n const srMsg = intl.formatMessage({\r\n id: \"uploader.waitToUpload\",\r\n defaultMessage: \"Please wait for current upload to complete before uploading new files.\",\r\n description: \"Message for screen reader users\",\r\n });\r\n this.announce(srMsg);\r\n } else if (this.fileLimitReached) {\r\n this.internalErrorMessage = this.fileLimitReachedMessage;\r\n this.announce(this.fileLimitReachedMessage);\r\n }\r\n } else {\r\n this.clearErrors();\r\n }\r\n }\r\n\r\n renderUploadSvg() {\r\n return (\r\n <svg class=\"upload-file\" width=\"91\" height=\"84\" viewBox=\"0 0 91 84\">\r\n <path\r\n transform=\"rotate(-180.000000) translate(-452, -255.5)\"\r\n fill=\"#eae8ec\"\r\n d=\"M361,249.681818 L361,197.318182 C361,194.118182 365.555061,191.5 371.122358,191.5 L391.316463,191.5 L391.286495,200.562515 L369.871211,200.600292 L369.885404,200.622146 L369.886423,246.655947 L443.657038,246.840767 L443.657038,200.622146 L421.683537,200.622146 L421.683537,191.5 L441.978865,191.5 C447.546162,191.5 452,194.118182 452,197.318182 L452,249.681818 C452,252.881818 447.546162,255.5 441.978865,255.5 L371.122358,255.5 C365.504449,255.5 361,252.881818 361,249.681818 Z M391.5,207 L406,221 L420.5,207 L409.625,207 L409.625,172 L402.375,172 L402.375,207 L391.5,207 Z\"\r\n ></path>\r\n </svg>\r\n );\r\n }\r\n\r\n renderIcon() {\r\n // mdi attachment icon (paper clip) is horizontal but we want it vertical\r\n const rotate = this.icon && this.icon === \"f066\";\r\n return (\r\n this.icon && (\r\n <span class={`mdi ${rotate ? \"rotate\" : \"\"}`}>{String.fromCodePoint(parseInt(`0x${this.icon}`))}</span>\r\n )\r\n );\r\n }\r\n\r\n renderInfo() {\r\n return this.info && this.tempUploaderType === \"2\" ? <span class=\"info\">{this.info}</span> : \"\";\r\n }\r\n\r\n renderNotif() {\r\n return <div class=\"notif\">{this.notif}</div>;\r\n }\r\n\r\n renderError() {\r\n return <div id=\"error\">{this.displayedErrorMessage}</div>;\r\n }\r\n\r\n renderUploadButton(classes: string) {\r\n let accessibleLabel = `${this.label && this.label !== this.buttonText ? `${this.label}, ` : \"\"}${this.buttonText}`;\r\n\r\n return (\r\n <div class=\"info-wrapper\">\r\n <input\r\n name={this.inputId}\r\n id={this.inputId}\r\n class=\"sr-only\"\r\n aria-label={accessibleLabel}\r\n aria-required={this.requiredField ? \"true\" : null}\r\n aria-describedby={`${this.displayedErrorMessage ? \"error \" : \"\"}file-count max-size accepted-types`}\r\n type=\"file\"\r\n multiple\r\n onClick={(ev) => this.uploadButtonOnClick(ev)}\r\n onChange={(ev) => this.handleFiles(ev)}\r\n />\r\n <label htmlFor={this.inputId} class={`wm-button ${classes}${this.isTabbing ? \" user-is-tabbing\" : \"\"}`}>\r\n {this.renderIcon()}\r\n {this.buttonText}\r\n </label>\r\n {this.renderInfo()}\r\n </div>\r\n );\r\n }\r\n\r\n renderEmptyState() {\r\n return (\r\n <div class=\"empty-block\">\r\n {this.renderUploadSvg()}\r\n <div class={`empty-message`}>{this.emptyStateText}</div>\r\n {this.renderUploadButton(\"-primary empty-button\")}\r\n {this.notif && this.renderNotif()}\r\n {this.displayedErrorMessage && this.renderError()}\r\n </div>\r\n );\r\n }\r\n\r\n renderErrorList() {\r\n let srMessage = this.errorList.reduce(function (acc, err) {\r\n return acc + `${err.name}: ${err.message} `;\r\n }, \"\");\r\n this.announce(srMessage);\r\n\r\n return (\r\n <ul class=\"error-list\">\r\n {this.errorList.map((err) => (\r\n <wm-file file={`{\"name\": \"${err.name}\"}`} error-message={err.message}></wm-file>\r\n ))}\r\n </ul>\r\n );\r\n }\r\n\r\n formatTimestamp(timestamp: string): string {\r\n const uploadDate = new Date(Date.parse(timestamp));\r\n const day = uploadDate.getDate();\r\n const month = uploadDate.getMonth() + 1;\r\n const year = uploadDate.getFullYear();\r\n const time = uploadDate.toLocaleTimeString(\"en-us\", { hour: \"numeric\", minute: \"2-digit\" });\r\n const formattedDate = `${month}/${day}/${year} ${time}`;\r\n\r\n return formattedDate;\r\n }\r\n\r\n renderInProgressFileList() {\r\n return (\r\n <ul class=\"inprogress-list\">\r\n {this.fileList\r\n .filter((item) => this.isItemUploading(item))\r\n .map((item) => (\r\n <wm-file file={JSON.stringify(item)} show-info={this.showInfo}></wm-file>\r\n ))}\r\n </ul>\r\n );\r\n }\r\n\r\n renderUploadedFileList() {\r\n return (\r\n <ul class=\"file-list\">\r\n {this.fileList\r\n .filter((item) => !this.isItemUploading(item))\r\n .map((item) => {\r\n item.lastUpdated = this.formatTimestamp(item.lastUpdated);\r\n return <wm-file id={`file-${item.id}`} file={JSON.stringify(item)} show-info={this.showInfo}></wm-file>;\r\n })}\r\n </ul>\r\n );\r\n }\r\n\r\n renderFiles() {\r\n // if we switch to accepting display format for the wm-uploader's file lastUpdateds, sorting by date will become impossible\r\n this.sortBy === \"name\"\r\n ? this.fileList.sort((a, b) => a.name.localeCompare(b.name))\r\n : this.fileList.sort((a, b) => Date.parse(a.lastUpdated) - Date.parse(b.lastUpdated));\r\n return (\r\n <div>\r\n {this.renderInProgressFileList()}\r\n {this.renderUploadedFileList()}\r\n </div>\r\n );\r\n }\r\n\r\n legacyRenderHeader() {\r\n return (\r\n <div class={`header ${this.tempUploaderType ? `type${this.tempUploaderType}` : \"\"}`}>\r\n <div class=\"slot-wrapper\">\r\n <slot />\r\n <div class={`notif-wrapper ${this.tempUploaderType ? `type${this.tempUploaderType}` : \"\"}`}>\r\n {this.renderUploadButton(`-secondary ${this.isDisabled ? \"disabled\" : \"\"}`)}\r\n {this.notif && this.renderNotif()}\r\n {this.displayedErrorMessage && this.renderError()}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n renderHeader() {\r\n return (\r\n <div class={`header ${this.tempUploaderType ? `type${this.tempUploaderType}` : \"\"}`}>\r\n <div class={`notif-wrapper ${this.tempUploaderType ? `type${this.tempUploaderType}` : \"\"}`}>\r\n {this.renderUploadButton(`-secondary ${this.isDisabled ? \"disabled\" : \"\"}`)}\r\n {this.renderRequirements()}\r\n </div>\r\n <div id=\"accepted-types\" class=\"accepted-types\">\r\n {this.acceptedFileTypesMessage}\r\n </div>\r\n {this.notif && this.renderNotif()}\r\n {this.displayedErrorMessage && this.renderError()}\r\n </div>\r\n );\r\n }\r\n\r\n renderRequirements() {\r\n return (\r\n <div class=\"requirements\">\r\n {this.maxFiles && <span id=\"file-count\">{this.fileCountMessage}</span>}\r\n {this.maxSize && <span id=\"max-size\">{this.maxSizeMessage}</span>}\r\n </div>\r\n );\r\n }\r\n\r\n renderFooter() {\r\n return (\r\n <div class=\"footer\">\r\n <div class={`notif-wrapper ${this.tempUploaderType ? `type${this.tempUploaderType}` : \"\"}`}>\r\n <div class=\"filecount-wrapper\">\r\n <div class=\"filecount\">\r\n {intl.formatMessage(\r\n {\r\n id: \"uploader.filesAdded\",\r\n defaultMessage: \"{numFiles, plural, one {1 file added} other {# files added}}\",\r\n },\r\n { numFiles: this.fileList.length }\r\n )}\r\n </div>\r\n {this.renderUploadButton(`-primary ${this.isDisabled ? \"disabled\" : \"\"}`)}\r\n </div>\r\n {this.notif && this.renderNotif()}\r\n {this.displayedErrorMessage && this.renderError()}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n renderWithItems() {\r\n // it's possible progress is passed in as a string, so we need to check for \"100\" as well\r\n const hasNewlyUploadedFiles =\r\n this.fileList.filter((file) => file.progress === (typeof file.progress === \"number\" ? 100 : \"100\")).length > 0;\r\n return (\r\n <div>\r\n {!this.tempUploaderType && this.renderHeader()}\r\n {this.tempUploaderType === \"2\" && this.legacyRenderHeader()}\r\n <div\r\n class={`list-container type${this.tempUploaderType} ${\r\n !this.tempUploaderType && hasNewlyUploadedFiles ? \"checkmark-spacer\" : \"\"\r\n }`}\r\n >\r\n {this.errorList.length > 0 && this.renderErrorList()}\r\n {this.fileList.length > 0 && this.renderFiles()}\r\n </div>\r\n {this.tempUploaderType === \"1\" && this.renderFooter()}\r\n </div>\r\n );\r\n }\r\n\r\n renderLabel() {\r\n return (\r\n <div class={`wrapper ${this.displayedErrorMessage ? \"invalid\" : \"\"}`}>\r\n <div id=\"label\" class={`label`}>\r\n {this.label}\r\n {this.requiredField && (\r\n <span class=\"required\" aria-hidden=\"true\">\r\n *\r\n </span>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n render() {\r\n return (\r\n <Host>\r\n {this.label && this.renderLabel()}\r\n {this.isEmpty() && this.tempUploaderType === \"1\" ? this.renderEmptyState() : this.renderWithItems()}\r\n <div\r\n ref={(el) => (this.liveRegion = el as HTMLDivElement)}\r\n class=\"live-region sr-only\"\r\n 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\r\n aria-atomic=\"true\"\r\n >\r\n {this.announcement}\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["wmModalHeaderCss","ModalHeader","componentWillLoad","this","uid","el","parentElement","addEventListener","closeButtonEl","focus","emitParentCloseEvent","parentModal","emitCloseEvent","render","h","Host","class","id","heading","subheading","icon","tooltip","closeVerb","ref","onClick"],"sources":["./src/components/wm-modal/wm-modal-header.scss?tag=wm-modal-header","./src/components/wm-modal/wm-modal-header.tsx"],"sourcesContent":["wm-modal-header {\r\n @include border-radius(5px 5px 0 0px);\r\n //Fix for Chrome sometimes leaving space between header and content, making the overlay show through\r\n margin-bottom: -1px;\r\n\r\n .wm-wrapper {\r\n @include displayFlex();\r\n @include justifyContent(space-between);\r\n @include alignItems(center);\r\n\r\n .title {\r\n margin: 0;\r\n font-weight: 600;\r\n font-size: rem-calc(18);\r\n color: rgb(74, 74, 74);\r\n line-height: normal;\r\n\r\n .subtitle {\r\n display: block;\r\n font-size: rem-calc(14);\r\n font-weight: normal;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n }\r\n }\r\n}\r\n","import { h, Component, Element, Prop, Host } from \"@stencil/core\";\r\nimport { closeVerb } from \"../../global/intl\";\r\n\r\n@Component({\r\n tag: \"wm-modal-header\",\r\n styleUrl: \"wm-modal-header.scss\",\r\n})\r\nexport class ModalHeader {\r\n @Element() el!: HTMLElement;\r\n private closeButtonEl!: HTMLElement;\r\n\r\n @Prop() heading?: string = \"\";\r\n @Prop() subheading?: string = \"\";\r\n private uid!: string;\r\n\r\n componentWillLoad() {\r\n this.uid = (this.el.parentElement as HTMLWmModalElement).uid;\r\n\r\n // Trap focus when user tabs past last element in modal\r\n // NB @Listen doesn't allow to listen on a specific element (the parent modal)\r\n // if we listen to the whole doc each modal on the page reacts to every event\r\n this.el.parentElement!.addEventListener(\"focusFirstElement\", () => {\r\n this.closeButtonEl.focus();\r\n });\r\n }\r\n\r\n emitParentCloseEvent() {\r\n const parentModal = this.el.parentElement;\r\n //@ts-ignore\r\n parentModal.emitCloseEvent();\r\n }\r\n\r\n // @Listen(\"click\")\r\n // directFocusOnClick() {\r\n // this.headingElement.tabIndex = 0;\r\n // this.headingElement.focus();\r\n // }\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <div class=\"wm-wrapper\">\r\n <div>\r\n <h2\r\n class=\"title\"\r\n id={`wm-modal-heading-text-${this.uid}`}\r\n // ref={el => (this.headingElement = el as HTMLElement)}\r\n // onBlur={() => (this.headingElement.tabIndex = -1)}\r\n >\r\n {this.heading}\r\n <span class=\"subtitle\">{this.subheading}</span>\r\n </h2>\r\n </div>\r\n <wm-button\r\n button-type=\"navigational\"\r\n icon=\"f156\"\r\n tooltip={closeVerb}\r\n tooltip-position=\"left\"\r\n id={`wm-modal-close-${this.uid}`}\r\n ref={(el) => (this.closeButtonEl = el as HTMLElement)}\r\n onClick={() => this.emitParentCloseEvent()}\r\n />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"qHAAA,MAAMA,EAAmB,ouB,MCOZC,EAAW,M,sCAIK,G,gBACG,E,CAG9BC,oBACEC,KAAKC,IAAOD,KAAKE,GAAGC,cAAqCF,IAKzDD,KAAKE,GAAGC,cAAeC,iBAAiB,qBAAqB,KAC3DJ,KAAKK,cAAcC,OAAO,G,CAI9BC,uBACE,MAAMC,EAAcR,KAAKE,GAAGC,cAE5BK,EAAYC,gB,CASdC,SACE,OACEC,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAM,cACTF,EAAA,WACEA,EAAA,MACEE,MAAM,QACNC,GAAI,yBAAyBd,KAAKC,OAIjCD,KAAKe,QACNJ,EAAA,QAAME,MAAM,YAAYb,KAAKgB,cAGjCL,EAAA,2BACc,eACZM,KAAK,OACLC,QAASC,EAAS,mBACD,OACjBL,GAAI,kBAAkBd,KAAKC,MAC3BmB,IAAMlB,GAAQF,KAAKK,cAAgBH,EACnCmB,QAAS,IAAMrB,KAAKO,0B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["wmModalHeaderCss","ModalHeader","exports","class_1","prototype","componentWillLoad","_this","this","uid","el","parentElement","addEventListener","closeButtonEl","focus","emitParentCloseEvent","parentModal","emitCloseEvent","render","h","Host","class","id","concat","heading","subheading","icon","tooltip","closeVerb","ref","onClick"],"sources":["src/components/wm-modal/wm-modal-header.scss?tag=wm-modal-header","src/components/wm-modal/wm-modal-header.tsx"],"sourcesContent":["wm-modal-header {\r\n @include border-radius(5px 5px 0 0px);\r\n //Fix for Chrome sometimes leaving space between header and content, making the overlay show through\r\n margin-bottom: -1px;\r\n\r\n .wm-wrapper {\r\n @include displayFlex();\r\n @include justifyContent(space-between);\r\n @include alignItems(center);\r\n\r\n .title {\r\n margin: 0;\r\n font-weight: 600;\r\n font-size: rem-calc(18);\r\n color: rgb(74, 74, 74);\r\n line-height: normal;\r\n\r\n .subtitle {\r\n display: block;\r\n font-size: rem-calc(14);\r\n font-weight: normal;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n }\r\n }\r\n}\r\n","import { h, Component, Element, Prop, Host } from \"@stencil/core\";\r\nimport { closeVerb } from \"../../global/intl\";\r\n\r\n@Component({\r\n tag: \"wm-modal-header\",\r\n styleUrl: \"wm-modal-header.scss\",\r\n})\r\nexport class ModalHeader {\r\n @Element() el!: HTMLElement;\r\n private closeButtonEl!: HTMLElement;\r\n\r\n @Prop() heading?: string = \"\";\r\n @Prop() subheading?: string = \"\";\r\n private uid!: string;\r\n\r\n componentWillLoad() {\r\n this.uid = (this.el.parentElement as HTMLWmModalElement).uid;\r\n\r\n // Trap focus when user tabs past last element in modal\r\n // NB @Listen doesn't allow to listen on a specific element (the parent modal)\r\n // if we listen to the whole doc each modal on the page reacts to every event\r\n this.el.parentElement!.addEventListener(\"focusFirstElement\", () => {\r\n this.closeButtonEl.focus();\r\n });\r\n }\r\n\r\n emitParentCloseEvent() {\r\n const parentModal = this.el.parentElement;\r\n //@ts-ignore\r\n parentModal.emitCloseEvent();\r\n }\r\n\r\n // @Listen(\"click\")\r\n // directFocusOnClick() {\r\n // this.headingElement.tabIndex = 0;\r\n // this.headingElement.focus();\r\n // }\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <div class=\"wm-wrapper\">\r\n <div>\r\n <h2\r\n class=\"title\"\r\n id={`wm-modal-heading-text-${this.uid}`}\r\n // ref={el => (this.headingElement = el as HTMLElement)}\r\n // onBlur={() => (this.headingElement.tabIndex = -1)}\r\n >\r\n {this.heading}\r\n <span class=\"subtitle\">{this.subheading}</span>\r\n </h2>\r\n </div>\r\n <wm-button\r\n button-type=\"navigational\"\r\n icon=\"f156\"\r\n tooltip={closeVerb}\r\n tooltip-position=\"left\"\r\n id={`wm-modal-close-${this.uid}`}\r\n ref={(el) => (this.closeButtonEl = el as HTMLElement)}\r\n onClick={() => this.emitParentCloseEvent()}\r\n />\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"8OAAA,IAAMA,EAAmB,ouB,ICOZC,EAAWC,EAAA,6B,qCAIK,G,gBACG,E,CAG9BC,EAAAC,UAAAC,kBAAA,eAAAC,EAAAC,KACEA,KAAKC,IAAOD,KAAKE,GAAGC,cAAqCF,IAKzDD,KAAKE,GAAGC,cAAeC,iBAAiB,qBAAqB,WAC3DL,EAAKM,cAAcC,O,KAIvBV,EAAAC,UAAAU,qBAAA,WACE,IAAMC,EAAcR,KAAKE,GAAGC,cAE5BK,EAAYC,gB,EASdb,EAAAC,UAAAa,OAAA,eAAAX,EAAAC,KACE,OACEW,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAM,cACTF,EAAA,WACEA,EAAA,MACEE,MAAM,QACNC,GAAI,yBAAAC,OAAyBf,KAAKC,MAIjCD,KAAKgB,QACNL,EAAA,QAAME,MAAM,YAAYb,KAAKiB,cAGjCN,EAAA,2BACc,eACZO,KAAK,OACLC,QAASC,EAAS,mBACD,OACjBN,GAAI,kBAAAC,OAAkBf,KAAKC,KAC3BoB,IAAK,SAACnB,GAAE,OAAMH,EAAKM,cAAgBH,CAA3B,EACRoB,QAAS,WAAM,OAAAvB,EAAKQ,sBAAL,K,uHArDH,I"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["privDatepickerCss","PrivDatepicker","this","popupClicked","buttonClicked","prevClicked","nextClicked","openUp","calendar_months","intl","formatMessage","id","defaultMessage","description","weekdays","renderCalendarDate","date","index","monthOfDate","removeZeroes","String","dayOfDate","isThisMonth","monthInFocus","dateId","isToday","isDateToday","h","role","parentId","class","onClick","ev","handleTriggeredDate","target","onKeyDown","trapFocusEnd","onBlur","stopPropagation","Date","getUTCFullYear","getUTCMonth","getUTCDate","selectedMonth","selectedYear","selectedDay","handleKey","key","preventDefault","includes","click","isExpanded","closePopup","backOneMonth","forwardOneMonth","unfocusCell","dayInFocus","forceUpdate","el","getMonthDays","yearInFocus","view","newMonth","getPreviousMonth","month","year","unfocusMonth","monthNumInFocus","getNextMonth","numDaysToSubtract","openPopup","document","activeElement","shadowRoot","classList","contains","focusCell","changeoverDate","activeEl","tagName","focusMonth","toggleTabbingOn","validKeys","isTabbing","toggleTabbingOff","blurHandler","popupBlurred","emit","relatedTarget","handleBlurOnWindow","componentDidUpdate","handleSelectedDate","prevButton","focus","nextButton","componentDidLoad","setDateValuesForView","zeroPad","value","length","prototype","padStart","targetLength","padString","repeat","slice","toString","today","todayDateArray","getFullYear","getMonth","getDate","reduce","result","val","togglePopup","returnFocus","popupEl","remove","window","setTimeout","style","visibility","changeView","buttonEl","panelPosition","requestAnimationFrame","add","months30","leapYear","getMonthFirstDay","getDay","prevMonth","prevMonthYear","nextMonth","nextMonthYear","getCalendarDates","monthDays","monthFirstDay","daysFromPrevMonth","daysFromNextMonth","prevMonthDays","prevMonthDates","Array","fill","map","_","day","thisMonthDates","nextMonthDates","totalDays","updateLiveRegion","cellTriggered","selectedDate","removeAttribute","getCellById","setAttribute","querySelector","cellToUnfocus","tabIndex","maxDays","cellToFocus","monthToUnfocus","monthToFocus","trapFocusLeft","shiftKey","focusCellInView","trapFocusRight","toggleBusyAttribute","state","text","liveRegion","innerHTML","host","getElementById","labelHeight","clientHeight","shouldOpenUp","hasRoomRight","left","right","newView","renderMonths","tabindex","render","dates","disabled","bind","ref","title","i"],"sources":["./src/components/wm-datepicker/priv-datepicker/priv-datepicker.scss?tag=priv-datepicker","./src/components/wm-datepicker/priv-datepicker/priv-datepicker.tsx"],"sourcesContent":[".toggle {\r\n all: unset;\r\n cursor: pointer;\r\n padding: rem-calc(0px 6px);\r\n height: rem-calc(38);\r\n border: none;\r\n -moz-border-top-right-radius: 3px;\r\n -webkit-border-top-right-radius: 3px;\r\n border-top-right-radius: 3px;\r\n -moz-border-bottom-right-radius: 3px;\r\n -webkit-border-bottom-right-radius: 3px;\r\n border-bottom-right-radius: 3px;\r\n\r\n // reset styles inherited from Planning in browsers without shadow DOM\r\n -moz-border-top-left-radius: 0;\r\n -webkit-border-top-left-radius: 0;\r\n border-top-left-radius: 0;\r\n -moz-border-bottom-left-radius: 0;\r\n -webkit-border-bottom-left-radius: 0;\r\n border-bottom-left-radius: 0;\r\n @include box-shadow(none);\r\n background-color: $button-default-background;\r\n\r\n &:disabled {\r\n pointer-events: none;\r\n @include box-shadow(none);\r\n background-color: rgba(74, 74, 74, 0.05);\r\n .calendar::after {\r\n color: #7b7b7b;\r\n }\r\n }\r\n\r\n &:hover {\r\n @include box-shadow(none);\r\n background: mix(black, $button-default-background, 10%);\r\n\r\n .calendar::after {\r\n color: $button-default-text;\r\n }\r\n }\r\n\r\n [dir=\"RTL\"] & {\r\n right: auto;\r\n left: 0;\r\n }\r\n\r\n span::after {\r\n @include mdi-icon;\r\n content: \"\\f0ed\";\r\n font-size: rem-calc(24);\r\n color: $button-default-text;\r\n padding: 0;\r\n line-height: rem-calc(40);\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n}\r\n\r\n.user-is-tabbing {\r\n .toggle:focus {\r\n @include focus-style;\r\n }\r\n}\r\n\r\n.popup {\r\n visibility: hidden;\r\n font-family: inherit;\r\n @include border-radius(3px);\r\n @include box-shadow(0px 4px 15px 0px rgba(0, 0, 0, 0.2));\r\n width: rem-calc(336);\r\n z-index: 10;\r\n //relative to inner wrapper in wm-datepicker, which contains the input and priv-datepicker\r\n position: absolute;\r\n left: 0;\r\n top: 40px;\r\n min-height: rem-calc(337);\r\n transition: transform 0.25s ease;\r\n transform-origin: center top;\r\n transform: scale(1, 0);\r\n background-color: $light-background;\r\n\r\n &.open {\r\n // display: block;\r\n transform: scale(1, 1);\r\n }\r\n\r\n &.expand-upwards {\r\n top: auto;\r\n bottom: rem-calc(38);\r\n transform-origin: center bottom;\r\n }\r\n\r\n .calendar-header {\r\n @include displayFlex();\r\n @include justifyContent(space-between);\r\n position: relative;\r\n padding: rem-calc(15 4);\r\n\r\n .title-box {\r\n height: rem-calc(42);\r\n @include border-radius(3px);\r\n border: 1px solid;\r\n font-weight: 500;\r\n font-size: rem-calc(14);\r\n background: transparent;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: rem-calc(0 6 0 12);\r\n border-color: $button-default-text;\r\n color: $button-default-text;\r\n\r\n &:after {\r\n @include mdi-icon;\r\n content: \"\\f140\";\r\n padding-left: rem-calc(12);\r\n }\r\n\r\n &.year:after {\r\n content: \"\\f143\";\r\n }\r\n\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n }\r\n\r\n .arw-btn {\r\n cursor: pointer;\r\n @include border-radius(50%);\r\n width: rem-calc(44);\r\n height: rem-calc(44);\r\n border: none;\r\n color: $button-default-text;\r\n background: transparent;\r\n padding: 0;\r\n @include box-shadow(none);\r\n line-height: rem-calc(44);\r\n\r\n .mdi {\r\n @include mdi-icon;\r\n font-size: rem-calc(24);\r\n font-weight: normal;\r\n line-height: rem-calc(44);\r\n\r\n &:hover {\r\n background-color: #efeef1;\r\n }\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:active {\r\n @include scale($xVal: 0.9, $yVal: 0.9);\r\n background-color: #d7d6d9;\r\n }\r\n }\r\n }\r\n\r\n .day-view {\r\n min-width: 100%;\r\n\r\n .date-grid {\r\n width: 100%;\r\n text-align: center;\r\n border-collapse: collapse;\r\n margin-bottom: rem-calc(7);\r\n color: #757575;\r\n\r\n .date-row:first-child {\r\n .date-cell {\r\n margin-top: rem-calc(2);\r\n }\r\n }\r\n\r\n .date-header {\r\n background-color: rgb(238, 237, 244);\r\n }\r\n\r\n .header-cell {\r\n height: rem-calc(33);\r\n line-height: rem-calc(33);\r\n width: rem-calc(44);\r\n margin: 0 calc((14.28% - 44px) / 2);\r\n padding: 0;\r\n display: inline-block;\r\n font-size: rem-calc(13);\r\n font-weight: bold;\r\n color: #4a4a4a;\r\n border: none;\r\n }\r\n\r\n .date-cell {\r\n cursor: pointer;\r\n display: inline-block;\r\n padding: 0;\r\n @include border-radius(50%);\r\n height: rem-calc(44);\r\n width: rem-calc(44);\r\n margin: 0 calc((14.28% - 44px) / 2);\r\n font-size: rem-calc(14);\r\n font-weight: 500;\r\n line-height: rem-calc(44);\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:hover {\r\n background-color: #efeef1;\r\n }\r\n\r\n &:active {\r\n background-color: $button-primary-background;\r\n color: #ffffff;\r\n }\r\n\r\n &.current-month {\r\n color: #4a4a4a;\r\n\r\n &[aria-selected=\"true\"] {\r\n background-color: $button-primary-background;\r\n color: #ffffff;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n .month-view {\r\n .months {\r\n border-top: 2px solid;\r\n border-top-color: #eeedf4;\r\n @include displayFlex();\r\n flex-wrap: wrap;\r\n }\r\n\r\n .month-row {\r\n @include displayFlex();\r\n @include justifyContent(space-between);\r\n width: 100%;\r\n border-bottom: 2px solid;\r\n border-bottom-color: #eeedf4;\r\n }\r\n\r\n .month {\r\n cursor: pointer;\r\n text-align: center;\r\n width: 100%;\r\n height: rem-calc(64);\r\n line-height: rem-calc(64);\r\n font-weight: 500;\r\n color: $button-default-text;\r\n\r\n &:not(:last-child) {\r\n border-right: 2px solid;\r\n border-right-color: #eeedf4;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:hover {\r\n background-color: #efeef1;\r\n }\r\n\r\n &:active,\r\n &.selected {\r\n background-color: #575195;\r\n color: #ffffff;\r\n }\r\n }\r\n }\r\n\r\n &.user-is-tabbing {\r\n button:focus,\r\n .title-box:focus,\r\n .date-cell:focus,\r\n .month:focus {\r\n @include focus-style;\r\n border: none;\r\n z-index: 11;\r\n }\r\n }\r\n}\r\n\r\n.sr-only {\r\n @include srOnly;\r\n}\r\n","import { h, Component, Prop, Element, Event, EventEmitter, Listen, State } from \"@stencil/core\";\r\nimport { forceUpdate } from \"@stencil/core\";\r\nimport { intl, hasRoomRight, shouldOpenUp } from \"../../../global/functions\";\r\n\r\n@Component({\r\n tag: \"priv-datepicker\",\r\n styleUrl: \"priv-datepicker.scss\",\r\n})\r\nexport class PrivDatepicker {\r\n @Element() el!: HTMLPrivDatepickerElement;\r\n\r\n @Prop() disabled: boolean = false;\r\n @Prop({ mutable: true, reflect: true }) isExpanded: boolean = false;\r\n @Prop({ mutable: true, reflect: true }) view: string = \"day\";\r\n @Prop({ mutable: true, reflect: true }) date: Date = new Date();\r\n @Prop({ mutable: true }) selectedYear: number = this.date.getUTCFullYear();\r\n @Prop({ mutable: true }) selectedMonth: number = this.date.getUTCMonth() + 1;\r\n @Prop({ mutable: true }) selectedDay: number = this.date.getUTCDate();\r\n @Prop({ mutable: true }) monthInFocus: number = this.selectedMonth;\r\n @Prop({ mutable: true }) yearInFocus: number = this.selectedYear;\r\n @Prop({ mutable: true }) dayInFocus: number = this.selectedDay;\r\n @State() monthNumInFocus: number = this.selectedMonth;\r\n @Prop({ mutable: true, reflect: true }) parentId: string = \"\";\r\n\r\n @State() isTabbing: boolean = false;\r\n\r\n selectedDate!: HTMLTableCellElement;\r\n\r\n @Event() cellTriggered!: EventEmitter<HTMLElement>;\r\n @Event() toggleButtonClicked!: EventEmitter<HTMLButtonElement>;\r\n @Event() popupClosed!: EventEmitter;\r\n @Event() popupBlurred!: EventEmitter<{ relatedTarget: EventTarget | null }>;\r\n\r\n private popupEl?: HTMLElement;\r\n private buttonEl!: HTMLButtonElement;\r\n private popupClicked: boolean = true;\r\n private buttonClicked: boolean = true;\r\n private prevButton!: HTMLButtonElement;\r\n private nextButton!: HTMLButtonElement;\r\n private prevClicked: boolean = true;\r\n private nextClicked: boolean = true;\r\n private openUp: boolean = false;\r\n\r\n private calendar_months: Array<string> = [\r\n intl.formatMessage({\r\n id: \"date.january\",\r\n defaultMessage: \"January\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.february\",\r\n defaultMessage: \"February\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.march\",\r\n defaultMessage: \"March\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.april\",\r\n defaultMessage: \"April\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.may\",\r\n defaultMessage: \"May\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.june\",\r\n defaultMessage: \"June\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.july\",\r\n defaultMessage: \"July\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.august\",\r\n defaultMessage: \"August\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.september\",\r\n defaultMessage: \"September\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.october\",\r\n defaultMessage: \"October\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.november\",\r\n defaultMessage: \"November\",\r\n description: \"Month of the year\",\r\n }),\r\n intl.formatMessage({\r\n id: \"date.december\",\r\n defaultMessage: \"December\",\r\n description: \"Month of the year\",\r\n }),\r\n ];\r\n\r\n private weekdays: Array<string> = [\r\n intl.formatMessage({ id: \"date.sunday\", defaultMessage: \"Sunday\" }),\r\n intl.formatMessage({ id: \"date.monday\", defaultMessage: \"Monday\" }),\r\n intl.formatMessage({ id: \"date.tuesday\", defaultMessage: \"Tuesday\" }),\r\n intl.formatMessage({ id: \"date.wednesday\", defaultMessage: \"Wednesday\" }),\r\n intl.formatMessage({ id: \"date.thursday\", defaultMessage: \"Thursday\" }),\r\n intl.formatMessage({ id: \"date.friday\", defaultMessage: \"Friday\" }),\r\n intl.formatMessage({ id: \"date.saturday\", defaultMessage: \"Saturday\" }),\r\n ];\r\n\r\n @Listen(\"keydown\")\r\n handleKey(ev: KeyboardEvent): void {\r\n this.prevClicked = false;\r\n this.nextClicked = false;\r\n\r\n switch (ev.key) {\r\n case \"Enter\":\r\n ev.preventDefault();\r\n //Clunky exception for blur validation. Remove when blur reworked.\r\n !(ev.target as HTMLElement).id.includes(\"popup-title\") && (ev.target as HTMLElement)!.click();\r\n break;\r\n\r\n case \"Escape\":\r\n ev.preventDefault();\r\n if (this.isExpanded) {\r\n ev.stopPropagation(); // prevents closing of parent modal\r\n this.closePopup(true);\r\n }\r\n break;\r\n\r\n case \"PageUp\":\r\n ev.preventDefault();\r\n this.backOneMonth();\r\n break;\r\n\r\n case \"PageDown\":\r\n ev.preventDefault();\r\n this.forwardOneMonth();\r\n break;\r\n\r\n case \"Home\":\r\n ev.preventDefault();\r\n this.unfocusCell();\r\n this.dayInFocus = 1;\r\n forceUpdate(this.el);\r\n break;\r\n\r\n case \"End\":\r\n ev.preventDefault();\r\n this.unfocusCell();\r\n this.dayInFocus = this.getMonthDays(this.monthInFocus, this.yearInFocus);\r\n forceUpdate(this.el);\r\n break;\r\n\r\n case \"ArrowLeft\":\r\n ev.preventDefault();\r\n if (this.view === \"day\") {\r\n this.unfocusCell();\r\n if (this.dayInFocus === 1) {\r\n const newMonth = this.getPreviousMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n this.dayInFocus = this.getMonthDays(this.monthInFocus, this.yearInFocus);\r\n } else {\r\n this.dayInFocus -= 1;\r\n }\r\n } else {\r\n this.unfocusMonth();\r\n if (this.monthNumInFocus === 0) {\r\n this.monthNumInFocus = 11;\r\n } else {\r\n this.monthNumInFocus -= 1;\r\n }\r\n }\r\n break;\r\n\r\n case \"ArrowRight\":\r\n ev.preventDefault();\r\n if (this.view === \"day\") {\r\n this.unfocusCell();\r\n if (this.dayInFocus === this.getMonthDays(this.monthInFocus, this.yearInFocus)) {\r\n const newMonth = this.getNextMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n this.dayInFocus = 1;\r\n } else {\r\n this.dayInFocus += 1;\r\n }\r\n } else {\r\n this.unfocusMonth();\r\n if (this.monthNumInFocus === 11) {\r\n this.monthNumInFocus = 0;\r\n } else {\r\n this.monthNumInFocus += 1;\r\n }\r\n }\r\n break;\r\n\r\n case \"ArrowUp\":\r\n ev.preventDefault();\r\n if (this.view === \"day\") {\r\n this.unfocusCell();\r\n if (this.dayInFocus < 8) {\r\n const newMonth = this.getPreviousMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n const numDaysToSubtract = 7 - this.dayInFocus;\r\n this.dayInFocus = this.getMonthDays(this.monthInFocus, this.yearInFocus) - numDaysToSubtract;\r\n } else {\r\n this.dayInFocus -= 7;\r\n }\r\n } else {\r\n this.unfocusMonth();\r\n if (this.monthNumInFocus < 3) {\r\n this.monthNumInFocus += 9;\r\n } else {\r\n this.monthNumInFocus -= 3;\r\n }\r\n }\r\n break;\r\n\r\n case \"ArrowDown\":\r\n ev.preventDefault();\r\n if (!this.isExpanded) {\r\n this.openPopup();\r\n } else {\r\n if (this.view === \"day\") {\r\n //If the down arrow is pressed from the month button or the arrow buttons, focus should shift to the current cell in focus\r\n if (!(document.activeElement!.shadowRoot! || document).activeElement!.classList.contains(\"date-cell\")) {\r\n this.focusCell();\r\n break;\r\n }\r\n\r\n this.unfocusCell();\r\n const changeoverDate = this.getMonthDays(this.monthInFocus, this.yearInFocus) - 7;\r\n if (this.dayInFocus > changeoverDate) {\r\n const newMonth = this.getNextMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n this.dayInFocus = this.dayInFocus - changeoverDate;\r\n } else {\r\n this.dayInFocus += 7;\r\n }\r\n } else {\r\n //If the down arrow is pressed from the arrow buttons or the title box, focus should shift to the current month in focus\r\n const activeEl = (document.activeElement!.shadowRoot! || document).activeElement!;\r\n if (activeEl.tagName === \"BUTTON\" || activeEl.id.includes(\"popup-title-year\")) {\r\n this.focusMonth();\r\n break;\r\n }\r\n\r\n this.unfocusMonth();\r\n if (this.monthNumInFocus > 8) {\r\n this.monthNumInFocus -= 9;\r\n } else {\r\n this.monthNumInFocus += 3;\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n\r\n @Listen(\"keydown\")\r\n toggleTabbingOn(ev: KeyboardEvent) {\r\n const validKeys = [\"Tab\", \"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\", \"Enter\"];\r\n if (validKeys.includes(ev.key)) {\r\n this.isTabbing = true;\r\n }\r\n }\r\n\r\n //Using mousedown prevents this from running when the keydown listener emits \".click()\" for when enter is pressed.\r\n @Listen(\"mousedown\", { target: \"window\" })\r\n toggleTabbingOff() {\r\n this.isTabbing = false;\r\n }\r\n\r\n @Listen(\"click\", { target: \"document\" })\r\n blurHandler(ev: PointerEvent): void {\r\n if (!this.popupClicked && !this.buttonClicked && this.isExpanded) {\r\n this.closePopup();\r\n // in this case, the PointerEvent target is identical to the blur events relatedTarget, and is passed on as such\r\n this.popupBlurred.emit({ relatedTarget: ev.target });\r\n }\r\n this.popupClicked = false;\r\n this.buttonClicked = false;\r\n }\r\n\r\n @Listen(\"blur\", { target: \"window\" })\r\n handleBlurOnWindow(ev: FocusEvent) {\r\n // for cases where the user clicks or uses a shortcut to leave the document\r\n if (this.isExpanded) {\r\n this.closePopup();\r\n this.popupBlurred.emit({ relatedTarget: ev.target });\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n this.handleSelectedDate();\r\n if (this.isExpanded) {\r\n this.prevClicked\r\n ? this.prevButton.focus()\r\n : this.nextClicked\r\n ? this.nextButton.focus()\r\n : this.view === \"day\"\r\n ? this.focusCell()\r\n : this.focusMonth();\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n this.handleSelectedDate();\r\n this.setDateValuesForView();\r\n }\r\n\r\n zeroPad(value: number | string, length: number) {\r\n if (!String.prototype.padStart) {\r\n String.prototype.padStart = function padStart(targetLength, padString) {\r\n targetLength = targetLength - this.length;\r\n if (targetLength > padString!.length) {\r\n padString += padString!.repeat(targetLength / padString!.length);\r\n }\r\n return padString!.slice(0, targetLength) + String(this);\r\n };\r\n }\r\n return `${value.toString()}`.padStart(length, \"0\");\r\n }\r\n\r\n removeZeroes(date: string): number {\r\n return +date < 10 ? +date.slice(1) : +date;\r\n }\r\n\r\n isDateToday(date: Array<string>): boolean {\r\n const today = new Date();\r\n const todayDateArray = [\r\n today.getFullYear().toString(),\r\n (today.getMonth() + 1).toString(),\r\n today.getDate().toString(),\r\n ];\r\n //Compare today's date to date and return true if they match\r\n return todayDateArray.reduce(\r\n (result: boolean, val: string, index: number) => result && this.removeZeroes(date[index]).toString() === val,\r\n true\r\n );\r\n }\r\n\r\n togglePopup() {\r\n this.isExpanded ? this.closePopup() : this.openPopup();\r\n this.buttonClicked = true;\r\n }\r\n\r\n closePopup(returnFocus: boolean = false) {\r\n this.isExpanded = false;\r\n this.popupEl!.classList.remove(\"open\");\r\n window.setTimeout(() => {\r\n //not using display none in order to get measurements of the popup while hidden\r\n this.popupEl!.style.visibility = \"hidden\";\r\n }, 250);\r\n //Reset values so that menu reopens to day view with selected date in focus\r\n if (this.view === \"day\") {\r\n this.unfocusCell();\r\n }\r\n this.monthInFocus = this.selectedMonth;\r\n this.yearInFocus = this.selectedYear;\r\n this.dayInFocus = this.selectedDay;\r\n this.changeView(\"day\");\r\n if (returnFocus) {\r\n this.buttonEl.focus();\r\n }\r\n }\r\n\r\n openPopup() {\r\n this.panelPosition();\r\n this.setDateValuesForView();\r\n this.prevClicked = false;\r\n this.nextClicked = false;\r\n this.popupEl!.style.visibility = \"visible\";\r\n window.requestAnimationFrame(() => {\r\n this.popupEl!.classList.add(\"open\");\r\n });\r\n this.isExpanded = true;\r\n this.focusCell();\r\n }\r\n\r\n getMonthDays(month: number, year: number) {\r\n const months30 = [4, 6, 9, 11];\r\n const leapYear = year % 4 === 0;\r\n\r\n return month === 2 ? (leapYear ? 29 : 28) : months30.includes(month) ? 30 : 31;\r\n }\r\n\r\n // 1 => Sunday, 7 => Saturday\r\n getMonthFirstDay(month: number, year: number) {\r\n return +new Date(year, month - 1, 1, 12, 0, 0).getDay() + 1;\r\n }\r\n\r\n getPreviousMonth(month: number, year: number) {\r\n const prevMonth = month > 1 ? month - 1 : 12;\r\n const prevMonthYear = month > 1 ? year : year - 1;\r\n\r\n return { month: prevMonth, year: prevMonthYear };\r\n }\r\n\r\n getNextMonth(month: number, year: number) {\r\n const nextMonth = month < 12 ? month + 1 : 1;\r\n const nextMonthYear = month < 12 ? year : year + 1;\r\n\r\n return { month: nextMonth, year: nextMonthYear };\r\n }\r\n\r\n getCalendarDates(month: number, year: number) {\r\n // Get number of days in the month and the month's first day\r\n const monthDays = this.getMonthDays(month, year);\r\n const monthFirstDay = this.getMonthFirstDay(month, year);\r\n\r\n // Get number of days to be displayed from previous and next months\r\n // These ensure a total of 42 days (6 weeks) displayed on the calendar\r\n const daysFromPrevMonth = monthFirstDay - 1;\r\n let daysFromNextMonth = 42 - (daysFromPrevMonth + monthDays);\r\n daysFromNextMonth = daysFromNextMonth > 6 ? daysFromNextMonth - 7 : daysFromNextMonth;\r\n\r\n // Get the previous and next months and years\r\n const { month: prevMonth, year: prevMonthYear } = this.getPreviousMonth(month, year);\r\n const { month: nextMonth, year: nextMonthYear } = this.getNextMonth(month, year);\r\n\r\n // Get number of days in previous month\r\n const prevMonthDays = this.getMonthDays(prevMonth, prevMonthYear);\r\n\r\n // Builds dates to be displayed from previous month. The initialized array is \"filled\" with an arbitrary number because IE and Edge won't map over an array with empty values.\r\n const prevMonthDates = [...new Array(daysFromPrevMonth).fill(\"1\")].map((_, index) => {\r\n const day = index + 1 + (prevMonthDays - daysFromPrevMonth);\r\n return [prevMonthYear.toString(), this.zeroPad(prevMonth, 2), this.zeroPad(day, 2)];\r\n });\r\n\r\n // Builds dates to be displayed from current month. The initialized array is \"filled\" with an arbitrary number because IE and Edge won't map over an array with empty values.\r\n const thisMonthDates = [...new Array(monthDays).fill(\"1\")].map((_, index) => {\r\n const day = index + 1;\r\n return [year.toString(), this.zeroPad(month, 2), this.zeroPad(day, 2)];\r\n });\r\n\r\n // Builds dates to be displayed from next month. The initialized array is \"filled\" with an arbitrary number because IE and Edge won't map over an array with empty values.\r\n const nextMonthDates = [...new Array(daysFromNextMonth).fill(\"1\")].map((_, index) => {\r\n const day = index + 1;\r\n return [nextMonthYear.toString(), this.zeroPad(nextMonth, 2), this.zeroPad(day, 2)];\r\n });\r\n\r\n // Combines all dates from previous, current and next months\r\n return [...prevMonthDates, ...thisMonthDates, ...nextMonthDates];\r\n }\r\n\r\n forwardOneMonth() {\r\n this.unfocusCell();\r\n const newMonth = this.getNextMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n const totalDays = this.getMonthDays(this.monthInFocus, this.yearInFocus);\r\n if (this.dayInFocus > this.getMonthDays(this.monthInFocus, this.yearInFocus)) {\r\n this.dayInFocus = totalDays;\r\n }\r\n this.updateLiveRegion(`Displaying ${this.calendar_months[this.monthInFocus - 1]}, ${this.yearInFocus}`);\r\n }\r\n\r\n backOneMonth() {\r\n this.unfocusCell();\r\n const newMonth = this.getPreviousMonth(this.monthInFocus, this.yearInFocus);\r\n this.monthInFocus = newMonth.month;\r\n this.yearInFocus = newMonth.year;\r\n const totalDays = this.getMonthDays(this.monthInFocus, this.yearInFocus);\r\n if (this.dayInFocus > this.getMonthDays(this.monthInFocus, this.yearInFocus)) {\r\n this.dayInFocus = totalDays;\r\n }\r\n this.updateLiveRegion(`Viewing ${this.calendar_months[this.monthInFocus - 1]}, ${this.yearInFocus}`);\r\n }\r\n\r\n handleTriggeredDate(el: HTMLTableDataCellElement) {\r\n this.cellTriggered.emit(el as HTMLTableDataCellElement);\r\n // change of input value will trigger the function updating selectedDate\r\n this.closePopup(true);\r\n }\r\n\r\n handleSelectedDate() {\r\n //Remove old selection status\r\n if (this.selectedDate) {\r\n this.selectedDate.removeAttribute(\"aria-selected\");\r\n }\r\n //Update selected date to new date inputted/selected\r\n this.selectedDate = this.getCellById(this.selectedYear, this.selectedMonth, this.selectedDay);\r\n\r\n if (this.selectedDate) {\r\n this.selectedDate.setAttribute(\"aria-selected\", \"true\");\r\n }\r\n }\r\n\r\n getCellById(year: number, month: number, day: number) {\r\n const id = year + this.zeroPad(month, 2) + this.zeroPad(day, 2);\r\n return this.el.querySelector(`#cell-${id}-${this.parentId}`) as HTMLTableCellElement;\r\n }\r\n\r\n unfocusCell() {\r\n const cellToUnfocus = this.getCellById(this.yearInFocus, this.monthInFocus, this.dayInFocus);\r\n cellToUnfocus.tabIndex = -1;\r\n }\r\n\r\n focusCell() {\r\n //These two lines of code prevent an error from happening when the day in focus does not exist in a new month selected, e.g., May 31 is in focus, then the user selects \"November\". It will return focus in the date view to the last day of the month so that focus doesn't fly out of the popup.\r\n const maxDays = this.getMonthDays(this.monthInFocus, this.yearInFocus);\r\n this.dayInFocus = this.dayInFocus > maxDays ? maxDays : this.dayInFocus;\r\n\r\n const cellToFocus = this.getCellById(this.yearInFocus, this.monthInFocus, this.dayInFocus);\r\n if (cellToFocus) {\r\n cellToFocus.tabIndex = 0;\r\n cellToFocus.focus();\r\n }\r\n }\r\n\r\n unfocusMonth() {\r\n const monthToUnfocus = this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`) as HTMLDivElement;\r\n monthToUnfocus.tabIndex = -1;\r\n }\r\n\r\n focusMonth() {\r\n const monthToFocus = this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`) as HTMLDivElement;\r\n monthToFocus.tabIndex = 0;\r\n monthToFocus.focus();\r\n }\r\n\r\n trapFocusLeft(ev: KeyboardEvent) {\r\n if (ev.shiftKey && ev.key === \"Tab\") {\r\n ev.preventDefault();\r\n this.focusCellInView();\r\n }\r\n }\r\n\r\n trapFocusEnd(ev: KeyboardEvent) {\r\n if (!ev.shiftKey && ev.key === \"Tab\") {\r\n ev.preventDefault();\r\n this.prevButton.focus();\r\n }\r\n }\r\n\r\n trapFocusRight(ev: KeyboardEvent) {\r\n if (!ev.shiftKey && ev.key === \"Tab\") {\r\n ev.preventDefault();\r\n this.focusCellInView();\r\n }\r\n }\r\n\r\n focusCellInView() {\r\n if (this.view === \"day\") {\r\n this.focusCell();\r\n } else {\r\n this.focusMonth();\r\n }\r\n }\r\n\r\n toggleBusyAttribute(state: string) {\r\n (this.el.querySelector(\"#wm-container\") as HTMLElement).setAttribute(\"aria-busy\", state);\r\n }\r\n\r\n setDateValuesForView() {\r\n this.selectedYear = this.date.getUTCFullYear();\r\n this.selectedMonth = this.date.getUTCMonth() + 1;\r\n this.selectedDay = this.date.getUTCDate();\r\n this.monthInFocus = this.selectedMonth;\r\n this.yearInFocus = this.selectedYear;\r\n this.dayInFocus = this.selectedDay;\r\n this.monthNumInFocus = this.selectedMonth - 1;\r\n }\r\n\r\n updateLiveRegion(text: string) {\r\n let liveRegion = this.el.querySelector(\"#live-region\") as HTMLElement;\r\n liveRegion.innerHTML = text;\r\n }\r\n\r\n panelPosition() {\r\n // getting a ref to the input el (in datepicker.tsx)\r\n let host = document.getElementById(this.parentId) as HTMLWmDatepickerElement;\r\n\r\n const labelHeight = host.shadowRoot!.querySelector(\".label-wrapper\")!.clientHeight;\r\n\r\n this.openUp = shouldOpenUp(host, this.popupEl!, labelHeight);\r\n\r\n if (hasRoomRight(host, 336)) {\r\n this.popupEl!.style.left = \"0\";\r\n this.popupEl!.style.right = \"auto\";\r\n } else {\r\n this.popupEl!.style.right = \"0\";\r\n this.popupEl!.style.left = \"auto\";\r\n }\r\n }\r\n\r\n changeView(newView: string) {\r\n this.view = newView;\r\n //Ensure month view always opens to the month last visited in date view\r\n this.monthNumInFocus = this.monthInFocus - 1;\r\n }\r\n\r\n renderCalendarDate = (date: Array<string>, index: number) => {\r\n let monthOfDate = this.removeZeroes(String(date[1]));\r\n let dayOfDate = this.removeZeroes(String(date[2]));\r\n let isThisMonth = monthOfDate === this.monthInFocus ? \"current-month\" : \"\";\r\n const dateId = date[0] + date[1] + date[2];\r\n const isToday = this.isDateToday(date);\r\n\r\n return (\r\n <div\r\n role=\"gridcell\"\r\n id={`cell-${dateId}-${this.parentId}`}\r\n class={`date-cell ${isThisMonth}`}\r\n aria-selected={false}\r\n aria-label={`${\r\n isToday\r\n ? `${intl.formatMessage({\r\n id: \"date.today\",\r\n defaultMessage: \"today\",\r\n description: \"calendar button\",\r\n })}, `\r\n : \"\"\r\n }${this.weekdays[index]}, ${this.calendar_months[monthOfDate - 1]} ${dayOfDate}, ${date[0]}`}\r\n onClick={(ev) => {\r\n this.handleTriggeredDate(ev.target as HTMLTableDataCellElement);\r\n }}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusEnd(ev)}\r\n data-month={date[1]}\r\n data-year={date[0]}\r\n onBlur={(ev: FocusEvent) => ev.stopPropagation()}\r\n >\r\n {dayOfDate}\r\n </div>\r\n );\r\n };\r\n\r\n renderMonths(month: string, index: number) {\r\n return (\r\n <div\r\n id={`month-${index}-${this.parentId}`}\r\n class={`month ${this.selectedMonth - 1 === index ? \"selected\" : \"\"}`}\r\n role=\"gridcell\"\r\n tabindex={index + 1 === this.monthInFocus ? 0 : -1}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusEnd(ev)}\r\n onBlur={(ev: FocusEvent) => ev.stopPropagation()}\r\n onClick={() => {\r\n this.monthInFocus = index + 1;\r\n this.changeView(\"day\");\r\n }}\r\n >\r\n {month}\r\n </div>\r\n );\r\n }\r\n\r\n render() {\r\n const dates = this.getCalendarDates(this.monthInFocus, this.yearInFocus);\r\n\r\n return (\r\n <div class=\"container\" id=\"wm-container\">\r\n <button\r\n disabled={this.disabled}\r\n onClick={this.togglePopup.bind(this)}\r\n aria-describedby={`date-input-${this.parentId}`}\r\n ref={(el) => (this.buttonEl = el as HTMLButtonElement)}\r\n aria-expanded={`${this.isExpanded}`}\r\n class=\"toggle\"\r\n id={`toggle-${this.parentId}`}\r\n >\r\n <span\r\n class=\"calendar\"\r\n title={intl.formatMessage({\r\n id: \"date.calendarView\",\r\n defaultMessage: \"Calendar View\",\r\n description: \"Calendar button\",\r\n })}\r\n />\r\n </button>\r\n <div\r\n class={`popup ${this.view}-view ${this.openUp ? \"expand-upwards\" : \"\"} ${\r\n this.isTabbing ? \"user-is-tabbing\" : \"\"\r\n }`}\r\n id={`popup-${this.parentId}`}\r\n ref={(el) => (this.popupEl = el as HTMLElement)}\r\n onClick={() => (this.popupClicked = true)}\r\n role=\"application\"\r\n aria-describedby=\"application\"\r\n >\r\n {this.view === \"day\" ? (\r\n <div class=\"day-view\">\r\n <div class=\"calendar-header\">\r\n <button\r\n onClick={() => {\r\n this.prevClicked = true;\r\n this.popupClicked = true;\r\n this.backOneMonth();\r\n }}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusLeft(ev)}\r\n ref={(el) => (this.prevButton = el as HTMLButtonElement)}\r\n class=\"arw-btn\"\r\n aria-label={intl.formatMessage({\r\n id: \"date.selectPreviousMonth\",\r\n defaultMessage: \"Select previous month\",\r\n description: \"Calendar button\",\r\n })}\r\n >\r\n <span class=\"mdi\"></span>\r\n </button>\r\n <div\r\n id={`popup-title-month-${this.parentId}`}\r\n class=\"title-box\"\r\n tabindex={0}\r\n role=\"button\"\r\n onKeyDown={(ev: KeyboardEvent) => {\r\n if (ev.key === \"Enter\" || ev.key === \" \") {\r\n ev.preventDefault();\r\n this.changeView(\"month\");\r\n }\r\n }}\r\n onClick={this.changeView.bind(this, \"month\")}\r\n aria-label={`${intl.formatMessage({\r\n id: \"date.currentMonth\",\r\n defaultMessage: \"current month\",\r\n description: \"Calendar button\",\r\n })}: ${this.calendar_months[this.monthInFocus - 1]}\r\n ${this.yearInFocus}.`}\r\n aria-describedby=\"month-title\"\r\n >\r\n <span class=\"title\" aria-hidden=\"true\">\r\n {this.calendar_months[this.monthInFocus - 1]} {this.yearInFocus}\r\n </span>\r\n </div>\r\n <button\r\n onClick={() => {\r\n this.nextClicked = true;\r\n this.popupClicked = true;\r\n this.forwardOneMonth();\r\n }}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusRight(ev)}\r\n aria-label={intl.formatMessage({\r\n id: \"date.selectNextMonth\",\r\n defaultMessage: \"Select next month\",\r\n description: \"Calendar button\",\r\n })}\r\n ref={(el) => (this.nextButton = el as HTMLButtonElement)}\r\n class=\"arw-btn\"\r\n >\r\n <span class=\"mdi\"></span>\r\n </button>\r\n </div>\r\n <div aria-labelledby={`popup-title-month-${this.parentId}`} role=\"grid\" class=\"date-grid\">\r\n <div role=\"rowgroup\" class=\"date-header\">\r\n <div role=\"row\" class=\"header-row\">\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.su\",\r\n defaultMessage: \"Su\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.mo\",\r\n defaultMessage: \"Mo\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.tu\",\r\n defaultMessage: \"Tu\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.we\",\r\n defaultMessage: \"We\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.th\",\r\n defaultMessage: \"Th\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.fr\",\r\n defaultMessage: \"Fr\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n <div role=\"columnheader\" class=\"header-cell\">\r\n <span>\r\n {intl.formatMessage({\r\n id: \"date.sa\",\r\n defaultMessage: \"Sa\",\r\n description: \"Abbreviated day of the week\",\r\n })}\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div role=\"rowgroup\">\r\n <div role=\"row\" class=\"date-row\">\r\n {dates.slice(0, 7).map((date, i) => this.renderCalendarDate(date, i))}\r\n </div>\r\n <div role=\"row\">{dates.slice(7, 14).map((date, i) => this.renderCalendarDate(date, i))}</div>\r\n <div role=\"row\">{dates.slice(14, 21).map((date, i) => this.renderCalendarDate(date, i))}</div>\r\n <div role=\"row\">{dates.slice(21, 28).map((date, i) => this.renderCalendarDate(date, i))}</div>\r\n <div role=\"row\">{dates.slice(28, 35).map((date, i) => this.renderCalendarDate(date, i))}</div>\r\n {dates.length > 35 ? (\r\n <div role=\"row\">{dates.slice(35).map((date, i) => this.renderCalendarDate(date, i))}</div>\r\n ) : (\r\n \"\"\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n ) : (\r\n <div class=\"month-view\">\r\n <div class=\"calendar-header\">\r\n <button\r\n onClick={() => {\r\n this.prevClicked = true;\r\n this.popupClicked = true;\r\n this.yearInFocus -= 1;\r\n this.updateLiveRegion(`${this.yearInFocus} selected.`);\r\n }}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusLeft(ev)}\r\n aria-label={intl.formatMessage({\r\n id: \"date.selectPreviousYear\",\r\n defaultMessage: \"Select previous year\",\r\n description: \"Calendar button\",\r\n })}\r\n ref={(el) => (this.prevButton = el as HTMLButtonElement)}\r\n class=\"arw-btn\"\r\n >\r\n <span class=\"mdi\"></span>\r\n </button>\r\n <div\r\n id={`popup-title-year-${this.parentId}`}\r\n tabindex={0}\r\n class=\"title-box year\"\r\n role=\"button\"\r\n onClick={this.changeView.bind(this, \"day\")}\r\n onKeyDown={(ev: KeyboardEvent) => {\r\n if (ev.key === \"Enter\" || ev.key === \" \") {\r\n ev.preventDefault();\r\n this.changeView(\"day\");\r\n }\r\n }}\r\n aria-labelledby=\"year-title\"\r\n >\r\n <span class=\"title\">{this.yearInFocus}</span>\r\n </div>\r\n <button\r\n onClick={() => {\r\n this.nextClicked = true;\r\n this.popupClicked = true;\r\n this.yearInFocus += 1;\r\n this.updateLiveRegion(`${this.yearInFocus} selected.`);\r\n }}\r\n aria-label={intl.formatMessage({\r\n id: \"date.selectNextYear\",\r\n defaultMessage: \"Select next year\",\r\n description: \"Calendar button\",\r\n })}\r\n onKeyDown={(ev: KeyboardEvent) => this.trapFocusRight(ev)}\r\n ref={(el) => (this.nextButton = el as HTMLButtonElement)}\r\n class=\"arw-btn\"\r\n >\r\n <span class=\"mdi\"></span>\r\n </button>\r\n </div>\r\n <div aria-labelledby={`popup-title-year-${this.parentId}`} role=\"grid\" class=\"months\">\r\n <div role=\"row\" class=\"month-row\">\r\n {this.calendar_months\r\n .slice(0, 3)\r\n .map((month: string, index: number) => this.renderMonths(month, index))}\r\n </div>\r\n <div role=\"row\" class=\"month-row\">\r\n {this.calendar_months\r\n .slice(3, 6)\r\n .map((month: string, index: number) => this.renderMonths(month, index + 3))}\r\n </div>\r\n <div role=\"row\" class=\"month-row\">\r\n {this.calendar_months\r\n .slice(6, 9)\r\n .map((month: string, index: number) => this.renderMonths(month, index + 6))}\r\n </div>\r\n <div role=\"row\" class=\"month-row\">\r\n {this.calendar_months\r\n .slice(9)\r\n .map((month: string, index: number) => this.renderMonths(month, index + 9))}\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n {this.isExpanded && <div id=\"live-region\" aria-live=\"polite\" aria-relevant=\"text\" class=\"sr-only\" />}\r\n <div id=\"month-title\" class=\"sr-only\">\r\n {intl.formatMessage({\r\n id: \"date.selectMonth\",\r\n defaultMessage: \"Activate to select a month.\",\r\n description: \"Calendar button\",\r\n })}\r\n </div>\r\n <div id=\"year-title\" class=\"sr-only\">\r\n {intl.formatMessage({\r\n id: \"date.selectYear\",\r\n defaultMessage: \"Activate to select a year.\",\r\n description: \"Calendar button\",\r\n })}\r\n </div>\r\n <div id=\"application\" class=\"sr-only\">\r\n {intl.formatMessage({\r\n id: \"date.instructions\",\r\n defaultMessage:\r\n \"Use arrows to select a date in the table. Tab left or right to buttons for selecting previous month, next month, or the month selection table.\",\r\n })}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(t,e,o,n){function r(t){return t instanceof o?t:new o((function(e){e(t)}))}return new(o||(o=Promise))((function(o,i){function a(t){try{l(n.next(t))}catch(t){i(t)}}function s(t){try{l(n["throw"](t))}catch(t){i(t)}}function l(t){t.done?o(t.value):r(t.value).then(a,s)}l((n=n.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var o={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,r,i,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(t){return function(e){return l([t,e])}}function l(s){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(o=0)),o)try{if(n=1,r&&(i=s[0]&2?r["return"]:s[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;if(r=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:o.label++;return{value:s[1],done:false};case 5:o.label++;r=s[1];s=[0];continue;case 7:s=o.ops.pop();o.trys.pop();continue;default:if(!(i=o.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){o=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(s[0]===6&&o.label<i[1]){o.label=i[1];i=s;break}if(i&&o.label<i[2]){o.label=i[2];o.ops.push(s);break}if(i[2])o.ops.pop();o.trys.pop();continue}s=e.call(t,o)}catch(t){s=[6,t];r=0}finally{n=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};System.register(["./p-7b2fc615.system.js","./p-9d02957d.system.js","./p-bc28c815.system.js"],(function(t){"use strict";var e,o,n,r,i,a,s,l,d,u,m,b,p;return{setters:[function(t){e=t.r;o=t.c;n=t.f;r=t.h;i=t.H;a=t.g},function(t){s=t.g;l=t.p;d=t.a;u=t.d},function(t){m=t.g;b=t.i;p=t.v}],execute:function(){var c=':host .wm-button,wm-network-uploader .wm-button{-ms-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-moz-transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1), color 500ms cubic-bezier(0.4, 0, 0.2, 1), border 500ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;width:inherit;border:2px solid #575195;color:#575195;font-family:inherit;font-size:0.75rem;font-weight:700;height:2.75rem;padding:0 1.3333333333em;cursor:pointer;position:relative;background:#fff;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;text-decoration:none;text-transform:uppercase;letter-spacing:0.01875rem;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}@media screen and (min-width: 48rem){:host .wm-button,wm-network-uploader .wm-button{height:3.3333333333em}}:host .wm-button.nowrap,wm-network-uploader .wm-button.nowrap{display:inline-block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .wm-button:focus,wm-network-uploader .wm-button:focus{outline:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button::-moz-focus-inner,wm-network-uploader .wm-button::-moz-focus-inner{border:0;outline:none}:host .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) :host .wm-button.-textonly .button-text,wm-network-uploader .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) :host .wm-button.-textonly .button-text,:host .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) wm-network-uploader .wm-button.-textonly .button-text,wm-network-uploader .wm-button.user-is-tabbing:focus:not(:disabled):not(.disabled) wm-network-uploader .wm-button.-textonly .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #3862e9), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #3862e9 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled),wm-network-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled){-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark),wm-network-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark){-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e}:host .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark)::-moz-focus-inner,wm-network-uploader .wm-button.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled):not(.dark)::-moz-focus-inner{border:0}:host .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled),wm-network-uploader .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled){background:transparent;border:2px solid #fff;color:#fff}:host .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled):hover,wm-network-uploader .wm-button.dark:not(.-textonly):not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.dark.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled).dark,wm-network-uploader .wm-button.dark.user-is-tabbing:focus:not(.-textonly):not(:disabled):not(.disabled).dark{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #c6b4e3;outline:none}:host .wm-button:active:not(:disabled):not(.disabled):not(.-textonly):not(.-actionbutton):not(.displayedoption),wm-network-uploader .wm-button:active:not(:disabled):not(.disabled):not(.-textonly):not(.-actionbutton):not(.displayedoption){-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}:host .wm-button .mdi,wm-network-uploader .wm-button .mdi{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button:not(.-icononly):not(.-navigational) .mdi,wm-network-uploader .wm-button:not(.-icononly):not(.-navigational) .mdi{margin-right:0.3125rem}:host .wm-button[dir=RTL] :not(.-icononly) .mdi,wm-network-uploader .wm-button[dir=RTL] :not(.-icononly) .mdi{margin-left:0.3125rem;margin-right:0}:host .wm-button.-primary:not(.-textonly),wm-network-uploader .wm-button.-primary:not(.-textonly){background:#575195;color:#fff}:host .wm-button.-primary:not(.-textonly):not(:focus),wm-network-uploader .wm-button.-primary:not(.-textonly):not(:focus){-webkit-box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2);box-shadow:0 2px 2px 0 rgba(87, 81, 149, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.2)}:host .wm-button.-primary:not(.-textonly):hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-primary:not(.-textonly):hover:not(:disabled):not(.disabled){background:#464177}:host .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled){color:#575195;background:#fff;border:2px solid #fff}:host .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled):hover,wm-network-uploader .wm-button.-primary:not(.-textonly).dark:not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.-secondary:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-secondary:hover:not(:disabled):not(.disabled),:host .wm-button.-selector:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-selector:hover:not(:disabled):not(.disabled),:host .wm-button.-icononly:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-icononly:hover:not(:disabled):not(.disabled){background:#464177;color:#fff}:host .wm-button.-textonly,wm-network-uploader .wm-button.-textonly{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;display:inline-block;letter-spacing:0;text-transform:none;text-align:initial;font-size:0.875rem;border:none;background:transparent;padding-left:0;padding-right:0;height:auto;border-radius:0;line-height:1}:host .wm-button.-textonly+.-textonly,wm-network-uploader .wm-button.-textonly+.-textonly{margin-left:0.3125rem}:host .wm-button.-textonly:focus,wm-network-uploader .wm-button.-textonly:focus{outline:none}:host .wm-button.-textonly::-moz-focus-inner,wm-network-uploader .wm-button.-textonly::-moz-focus-inner{border:0;outline:none}:host .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled) .button-text,wm-network-uploader .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled) .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #3862e9), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #3862e9 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled).dark .button-text,wm-network-uploader .wm-button.-textonly.user-is-tabbing:focus:not(:disabled):not(.disabled).dark .button-text{background:-webkit-gradient(linear, left top, right top, color-stop(66%, #fff), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, #fff 66%, transparent 0) repeat-x;background-size:6px 3px;background-position:0 1em;border-radius:0;line-height:normal}:host .wm-button.-textonly.small,wm-network-uploader .wm-button.-textonly.small{font-size:0.625rem}:host .wm-button.-textonly:hover:not(:disabled):not(.disabled):not(.-permanentlydelete),wm-network-uploader .wm-button.-textonly:hover:not(:disabled):not(.disabled):not(.-permanentlydelete){text-decoration:underline}:host .wm-button.-textonly.-permanentlydelete,wm-network-uploader .wm-button.-textonly.-permanentlydelete{color:#c0392b}:host .wm-button.-textonly.-permanentlydelete:hover:not(:disabled):not(.disabled):not(.dark),wm-network-uploader .wm-button.-textonly.-permanentlydelete:hover:not(:disabled):not(.disabled):not(.dark){text-decoration:underline;color:#c0392b !important}:host .wm-button.-textonly.dark,wm-network-uploader .wm-button.-textonly.dark{color:#fff}:host .wm-button.-textonly.dark:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-textonly.dark:hover:not(:disabled):not(.disabled){text-decoration:underline;color:#fff !important}:host .wm-button.-icononly,wm-network-uploader .wm-button.-icononly,:host .wm-button.-navigational,wm-network-uploader .wm-button.-navigational{-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;font-size:1rem;padding:0;height:auto;line-height:1;min-width:2.75rem;min-height:2.75rem;text-align:center;letter-spacing:normal}:host .wm-button.-icononly:not(:focus),wm-network-uploader .wm-button.-icononly:not(:focus),:host .wm-button.-navigational:not(:focus),wm-network-uploader .wm-button.-navigational:not(:focus){-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}@media screen and (min-width: 48rem){:host .wm-button.-icononly,wm-network-uploader .wm-button.-icononly,:host .wm-button.-navigational,wm-network-uploader .wm-button.-navigational{min-width:2.5rem;min-height:2.5rem}}:host .wm-button.-icononly,wm-network-uploader .wm-button.-icononly{border-width:1px !important}:host .wm-button.-icononly:before,wm-network-uploader .wm-button.-icononly:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button.-navigational,wm-network-uploader .wm-button.-navigational{border:none !important;background-color:transparent}:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled),wm-network-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled){color:#575195}:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled):hover,wm-network-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled):hover,:host .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled).selected,wm-network-uploader .wm-button.-navigational:not(.dark):not(:disabled):not(.disabled).selected{background-color:#d7d6d9}:host .wm-button.-navigational:before,wm-network-uploader .wm-button.-navigational:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:host .wm-button.-permanentlydelete:not(.-textonly),wm-network-uploader .wm-button.-permanentlydelete:not(.-textonly){background:#c0392b;border-color:#c0392b;color:#fff}:host .wm-button.-permanentlydelete:not(.-textonly):hover:not(:disabled):not(.disabled):not(.dark),wm-network-uploader .wm-button.-permanentlydelete:not(.-textonly):hover:not(:disabled):not(.disabled):not(.dark){background:#9a2e22;border-color:#9a2e22}:host .wm-button.-pairnegative,wm-network-uploader .wm-button.-pairnegative{background:#cc4c3e;border-color:#cc4c3e;color:#fff}:host .wm-button.-pairnegative:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-pairnegative:hover:not(:disabled):not(.disabled){background:#a33d32;border-color:#a33d32}:host .wm-button.-pairpositive,wm-network-uploader .wm-button.-pairpositive{background:#15868d;border-color:#15868d;color:#fff}:host .wm-button.-pairpositive:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-pairpositive:hover:not(:disabled):not(.disabled){background:#116b71;border-color:#116b71}:host .wm-button.-selector,wm-network-uploader .wm-button.-selector,:host .wm-button.-selector-primary,wm-network-uploader .wm-button.-selector-primary{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;display:block;background:transparent;border:2px solid #575195;border-radius:3px;height:2.75rem;min-width:11.4375rem;padding:0 1.875rem 0 0.9375rem;line-height:normal;font-family:inherit;color:#575195;font-weight:700;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.01875rem;text-align:left}@media screen and (min-width: 48rem){:host .wm-button.-selector,wm-network-uploader .wm-button.-selector,:host .wm-button.-selector-primary,wm-network-uploader .wm-button.-selector-primary{height:2.5rem}}:host .wm-button.-selector:before,wm-network-uploader .wm-button.-selector:before,:host .wm-button.-selector-primary:before,wm-network-uploader .wm-button.-selector-primary:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f140";position:absolute;right:0.5625rem;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:0.875rem;font-weight:700;pointer-events:none}:host .wm-button.-selector:active,wm-network-uploader .wm-button.-selector:active,:host .wm-button.-selector-primary:active,wm-network-uploader .wm-button.-selector-primary:active{-ms-transform:scale(1, 1) !important;-webkit-transform:scale(1, 1) !important;transform:scale(1, 1) !important}:host .wm-button.-selector::-moz-focus-inner,wm-network-uploader .wm-button.-selector::-moz-focus-inner,:host .wm-button.-selector-primary::-moz-focus-inner,wm-network-uploader .wm-button.-selector-primary::-moz-focus-inner{border:0}:host .wm-button.-selector .overflowcontrol,wm-network-uploader .wm-button.-selector .overflowcontrol,:host .wm-button.-selector-primary .overflowcontrol,wm-network-uploader .wm-button.-selector-primary .overflowcontrol{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:visible}:host .wm-button.-selector.dark:not(:disabled):not(.disabled):hover,wm-network-uploader .wm-button.-selector.dark:not(:disabled):not(.disabled):hover,:host .wm-button.-selector-primary.dark:not(:disabled):not(.disabled):hover,wm-network-uploader .wm-button.-selector-primary.dark:not(:disabled):not(.disabled):hover{color:#575195;background:#e6e6e6;border:2px solid #e6e6e6}:host .wm-button.-selector-primary,wm-network-uploader .wm-button.-selector-primary{background:#575195;color:#fff}:host .wm-button.-selector-primary:hover:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-selector-primary:hover:not(:disabled):not(.disabled){background:#464177}:host .wm-button.-selector-primary.dark:not(:disabled):not(.disabled),wm-network-uploader .wm-button.-selector-primary.dark:not(:disabled):not(.disabled){color:#575195;background:#fff;border:2px solid #fff}:host .wm-button:disabled,wm-network-uploader .wm-button:disabled,:host .wm-button.disabled,wm-network-uploader .wm-button.disabled{background:inherit;border-color:#737373;color:#737373;cursor:default;pointer-events:none}:host .wm-button:disabled.-primary,wm-network-uploader .wm-button:disabled.-primary,:host .wm-button:disabled.-permanentlydelete,wm-network-uploader .wm-button:disabled.-permanentlydelete,:host .wm-button:disabled.-pairnegative,wm-network-uploader .wm-button:disabled.-pairnegative,:host .wm-button:disabled.-pairpositive,wm-network-uploader .wm-button:disabled.-pairpositive,:host .wm-button.disabled.-primary,wm-network-uploader .wm-button.disabled.-primary,:host .wm-button.disabled.-permanentlydelete,wm-network-uploader .wm-button.disabled.-permanentlydelete,:host .wm-button.disabled.-pairnegative,wm-network-uploader .wm-button.disabled.-pairnegative,:host .wm-button.disabled.-pairpositive,wm-network-uploader .wm-button.disabled.-pairpositive{background:#737373;color:#fff;border-color:#737373}:host .wm-button:disabled.-secondary,wm-network-uploader .wm-button:disabled.-secondary,:host .wm-button.disabled.-secondary,wm-network-uploader .wm-button.disabled.-secondary{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}:host .wm-button:disabled.-selector,wm-network-uploader .wm-button:disabled.-selector,:host .wm-button.disabled.-selector,wm-network-uploader .wm-button.disabled.-selector{color:#737373}:host .wm-button:disabled.-selector-primary,wm-network-uploader .wm-button:disabled.-selector-primary,:host .wm-button.disabled.-selector-primary,wm-network-uploader .wm-button.disabled.-selector-primary{background:#737373;color:#fff;border-color:#737373}:host .wm-button:disabled.-textonly,wm-network-uploader .wm-button:disabled.-textonly,:host .wm-button.disabled.-textonly,wm-network-uploader .wm-button.disabled.-textonly{color:#6b6b6b;background:transparent}:host .wm-button:disabled.dark.-secondary:not(.-permanentlydelete),wm-network-uploader .wm-button:disabled.dark.-secondary:not(.-permanentlydelete),:host .wm-button:disabled.dark.-selector,wm-network-uploader .wm-button:disabled.dark.-selector,:host .wm-button:disabled.dark.-textonly,wm-network-uploader .wm-button:disabled.dark.-textonly,:host .wm-button:disabled.dark.-navigational,wm-network-uploader .wm-button:disabled.dark.-navigational,:host .wm-button:disabled.dark.-icononly,wm-network-uploader .wm-button:disabled.dark.-icononly,:host .wm-button.disabled.dark.-secondary:not(.-permanentlydelete),wm-network-uploader .wm-button.disabled.dark.-secondary:not(.-permanentlydelete),:host .wm-button.disabled.dark.-selector,wm-network-uploader .wm-button.disabled.dark.-selector,:host .wm-button.disabled.dark.-textonly,wm-network-uploader .wm-button.disabled.dark.-textonly,:host .wm-button.disabled.dark.-navigational,wm-network-uploader .wm-button.disabled.dark.-navigational,:host .wm-button.disabled.dark.-icononly,wm-network-uploader .wm-button.disabled.dark.-icononly{color:#b5b5b5;border-color:#b5b5b5}:host .wm-button:disabled.dark.-primary,wm-network-uploader .wm-button:disabled.dark.-primary,:host .wm-button:disabled.dark.-selector-primary,wm-network-uploader .wm-button:disabled.dark.-selector-primary,:host .wm-button:disabled.dark.-permanentlydelete:not(.-textonly),wm-network-uploader .wm-button:disabled.dark.-permanentlydelete:not(.-textonly),:host .wm-button.disabled.dark.-primary,wm-network-uploader .wm-button.disabled.dark.-primary,:host .wm-button.disabled.dark.-selector-primary,wm-network-uploader .wm-button.disabled.dark.-selector-primary,:host .wm-button.disabled.dark.-permanentlydelete:not(.-textonly),wm-network-uploader .wm-button.disabled.dark.-permanentlydelete:not(.-textonly){background:#a6a6a6;border-color:#a6a6a6;color:#353b48}:host a.wm-button,wm-network-uploader a.wm-button,:host label.wm-button,wm-network-uploader label.wm-button{height:auto;padding-top:0.75rem;padding-bottom:0.75rem}:host,wm-network-uploader{width:100%;position:relative}:host[dir=RTL] .mdi,wm-network-uploader[dir=RTL] .mdi{margin-left:0.3125rem;margin-right:0}:host input:focus+.wm-button.user-is-tabbing,wm-network-uploader input:focus+.wm-button.user-is-tabbing{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important;box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px #61279e !important}:host *,wm-network-uploader *{-webkit-box-sizing:border-box;box-sizing:border-box}.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}.header{position:relative;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.header .notif-wrapper{-ms-flex-align:end;align-items:flex-end}.notif-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;height:-moz-fit-content;height:-webkit-fit-content;height:fit-content;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.notif-wrapper .notif{font-size:0.875rem;font-style:italic;margin-top:0.25rem}@media (max-width: 60.9375rem){.descr{margin-bottom:0.5rem}.notif-wrapper{margin-bottom:1rem}.header .notif-wrapper{-ms-flex-align:start;align-items:flex-start}}.file-info{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-info+.file-controls{-ms-flex:none;flex:none;margin-left:1rem}.empty-block{margin:5rem auto;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.empty-block .upload-file{margin-bottom:1.875rem}.empty-block .empty-message{font-size:1.5rem;margin-bottom:0.4375rem}.empty-block .notif-wrapper{-ms-flex-pack:center;justify-content:center}.empty-block .notif-wrapper .wm-button{width:auto}ul{list-style:none;padding:0;width:100%}ul li{font-size:0.875rem}ul li .file{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;position:relative;height:3.75rem;padding:0.5rem 1.25rem;background:#f4f4f4;border:1px solid #6b6b6b;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}ul li .file+.file{margin-top:1.25rem}ul li .file .filename{font-weight:500}ul li .file .filedate{margin-left:3.75rem;font-weight:normal;font-style:italic}ul li .file wm-button+wm-button{margin-left:1rem}ul.file-list .file.--saved,ul.inprogress-list .file{margin-bottom:1.625rem}ul .progress{position:absolute;left:0;top:0;right:0;height:8px}ul.error-list li{margin-bottom:1.25rem;color:#c0392b}ul.error-list li .file{border:1px solid #c0392b;background-color:#f5ebea;height:3.75rem}ul .error-message{padding-top:0.25rem;font-style:italic}';var w=t("wm_network_uploader",function(){function t(t){e(this,t);this.wmNetworkUploaderFilesChanged=o(this,"wmNetworkUploaderFilesChanged",7);this.inputId=m();this.isTabbing=false;this.fileList=[];this.inProgressList=[];this.errorList=[];this.notif=undefined;this.snackbar=[];this.numFilesInProgress=undefined;this.getPath=undefined;this.requestUploadPath=undefined;this.uploadPath=undefined;this.requestDownloadPath=undefined;this.deletePath=undefined;this.associatedData=undefined;this.buttonText=undefined;this.emptyStateText=undefined;this.icon=undefined;this.fileTypes="pdf txt log xml doc docx xls xlsx ppt pptx gif jpg jpeg png csv";this.maxSize=100;this.maxFiles=undefined;this.sortBy="date"}t.prototype.toggleTabbingOn=function(){this.isTabbing=true};t.prototype.toggleTabbingOff=function(){this.isTabbing=false};t.prototype.handleUploadProgress=function(t){var e=this;this.inProgressList.map((function(o){if(o.name===t.detail.file_name){o.progress=t.detail.progress;n(e.el)}}));if(t.detail.progress===100){this.numFilesInProgress-=1}if(!this.srProgress&&this.numFilesInProgress){var o=this.numFilesInProgress;this.srProgress=setInterval((function(){var t=e.inProgressList.reduce((function(t,e){return e.progress?t+e.progress:t}),0);if(e.liveRegion){e.liveRegion.innerHTML=b.formatMessage({id:"uploader.uploadProgress",defaultMessage:"Upload progress: {percentage}%"},{percentage:Math.floor(t/o)})}}),5e3)}};t.prototype.handleFinishedSnack=function(t){this.snackbar=this.snackbar.filter((function(e){return e.id!==t.detail.id}))};t.prototype.setMaxSize=function(){this.maxSize=this.maxSize>100?100:this.maxSize};t.prototype.uploadNotifications=function(t,e){var o=this;if(e>0&&t===0){setTimeout((function(){o.notif=null}),20*1e3);var r=b.formatMessage({id:"uploader.finishedUploading",defaultMessage:"Finished uploading"});this.notif={id:5,message:r};if(this.liveRegion){this.liveRegion.innerHTML=r}this.numFilesInProgress=null;clearInterval(this.srProgress);n(this.el)}else if(t>0&&t!=e){var r=b.formatMessage({id:"uploader.filesUploading",defaultMessage:"{num, plural, one {1 file uploading} other {# files uploading}}"},{num:t});this.notif={id:6,message:r};if(this.liveRegion){this.liveRegion.innerHTML=r}n(this.el)}};t.prototype.emitFileListEvent=function(){this.wmNetworkUploaderFilesChanged.emit(this.fileList)};t.prototype.formatDate=function(t,e,o){var n=Date.parse(t);if(e.match(/^[a-zA-Z]*(-[a-zA-Z0-9]*)*$/g)){try{Intl.getCanonicalLocales(e)}catch(t){e="en-us"}}else{return t}if(!!n){var r=new Date(n);var i=r.getFullYear();var a=("0"+(r.getMonth()+1)).substr(-2);var s=("0"+r.getDate()).substr(-2);var l=r.toLocaleTimeString([e,"en-us"],{timeZone:o,hour:"numeric",minute:"numeric"});return"".concat(i,"/").concat(a,"/").concat(s," ").concat(l)}else{return t}};t.prototype.isValidSize=function(t){return t/1024/1024<=this.maxSize};t.prototype.isDuplicate=function(t){return this.fileList.find((function(e){return e.file_name===t}))};t.prototype.isEmpty=function(){return!this.fileList.length&&!this.inProgressList.length&&!this.errorList.length};Object.defineProperty(t.prototype,"isDisabled",{get:function(){var t=!!this.maxFiles&&this.fileList.length>=this.maxFiles;if(!this.notif){if(t){var e=b.formatMessage({id:"uploader.fileUploadLimitExceeded",defaultMessage:"Upload unsuccessful because file selection would exceed the maximum number of files",description:"Message displayed when trying to upload too many files"});this.notif={id:1,message:e};if(this.liveRegion){this.liveRegion.innerHTML=e}}else{this.notif=null}}else if(this.notif.id===1){if(!t){this.notif=null}}return t||this.numFilesInProgress>0},enumerable:false,configurable:true});t.prototype.purgeProgressList=function(t){this.inProgressList=this.inProgressList.filter((function(e){return e.progress!==100&&e.name!==t.file_name}))};t.prototype.getExistingFiles=function(){var t=this;s(this.getPath).then((function(e){e.map((function(e){return t.purgeProgressList(e)}));if(t.sortBy==="name"){e.sort((function(t,e){return t.file_name.localeCompare(e.file_name)}))}t.fileList=e})).catch((function(t){console.error(t)}))};t.prototype.clearErrors=function(){this.errorList=[];this.notif=null};t.prototype.handleFiles=function(t){var e=this;var o=Array.from(t.target.files);var r=this.fileTypes.split(" ").join(", ");if(!!this.maxFiles&&this.fileList.length+o.length>this.maxFiles){var i=b.formatMessage({id:"uploader.fileUploadLimitExceeded",defaultMessage:"Upload unsuccessful because file selection would exceed the maximum number of files",description:"Message displayed when trying to upload too many files"});this.notif={id:2,message:i};if(this.liveRegion){this.liveRegion.innerHTML=i}}else{o&&o.map((function(t){if(!p(t,e.fileTypes)){var o={file_name:t.name,message:b.formatMessage({id:"uploader.invalidFileType",defaultMessage:"The file type is invalid. Accepted types: {validTypes}"},{validTypes:r})};e.errorList.push(o)}else if(!e.isValidSize(t.size)){var o={file_name:t.name,message:b.formatMessage({id:"uploader.fileTooLarge",defaultMessage:"The selected file is too large. Maximum file size is {size}Mb"},{size:e.maxSize})};e.errorList.push(o)}else if(e.isDuplicate(t.name)){var o={file_name:t.name,message:b.formatMessage({id:"uploader.duplicateName",defaultMessage:"A file with this name already exists."})};e.errorList.push(o)}else{e.inProgressList.push(t)}n(e.el)}));if(this.inProgressList.length>0){this.numFilesInProgress=this.inProgressList.length;this.inProgressList.map((function(t,o){e.uploadFile(t,o)}))}}t.target.value=""};t.prototype.uploadFile=function(t,e){var o=this;s(this.requestUploadPath+e.toString()).then((function(e){return __awaiter(o,void 0,void 0,(function(){var o,n,r;var i=this;return __generator(this,(function(a){switch(a.label){case 0:o=JSON.parse(this.associatedData);n=Object.assign(Object.assign({},o),{file_name:t.name,mime_type:t.type,file_path:e.path,document_uuid:e.guid});r=function(e){var o=e.lengthComputable&&e.total!==0?e.loaded/e.total*100:0;var n=new CustomEvent("wmUploadProgress",{detail:{file_name:t.name,progress:o}});i.el.dispatchEvent(n)};return[4,l(e.url,t,r)];case 1:a.sent();return[4,d(this.uploadPath,n)];case 2:a.sent();this.getExistingFiles();return[2]}}))}))})).catch((function(t){o.numFilesInProgress=null;o.inProgressList=[];o.notif={id:3,message:b.formatMessage({id:"global.genericError",defaultMessage:"An error occurred. Please try again."})};console.error(t)}))};t.prototype.downloadFile=function(t,e){this.clearErrors();var o={file_path:e,file_uuid:t};d(this.requestDownloadPath,o).then((function(t){window.location.assign(t.url)})).catch((function(t){console.error(t)}))};t.prototype.deleteFile=function(t){var e=this;this.clearErrors();this.snackbar.push({message:b.formatMessage({id:"uploader.fileDeleted",defaultMessage:"{fileName} was deleted."},{fileName:t.file_name}),id:t.uuid,link:""});this.fileList=this.fileList.filter((function(e){return e.uuid!==t.uuid}));u("".concat(this.deletePath,"/").concat(t.uuid)).catch((function(o){e.notif={id:4,message:b.formatMessage({id:"uploader.fileNotDeleted",defaultMessage:"{fileName} could not be deleted."},{fileName:t.file_name})};e.getExistingFiles();console.error(o)}))};t.prototype.componentWillLoad=function(){if(!this.getPath){throw new Error("wm-network-uploader: get-path is a required prop")}if(!this.requestUploadPath){throw new Error("wm-network-uploader: request-upload-path is a required prop")}if(!this.uploadPath){throw new Error("wm-network-uploader: upload-path is a required prop")}if(!this.requestDownloadPath){throw new Error("wm-network-uploader: request-download-path is a required prop")}if(!this.deletePath){throw new Error("wm-network-uploader: delete-path is a required prop")}if(!this.buttonText){throw new Error("wm-network-uploader: button-text is a required prop")}if(!this.emptyStateText){throw new Error("wm-network-uploader: empty-state-text is a required prop")}if(!this.associatedData){throw new Error("wm-network-uploader: associated-data is a required prop")}this.setMaxSize();this.clearErrors()};t.prototype.componentDidLoad=function(){this.getExistingFiles();if(document.body.classList.contains("wmcl-user-is-tabbing")){this.toggleTabbingOn()}};t.prototype.uploadButtonOnClick=function(t){var e=this;if(this.isDisabled){t.preventDefault();if(this.liveRegion){var o=!!this.maxFiles&&this.fileList.length>=this.maxFiles;var n="";if(this.numFilesInProgress>0){n=b.formatMessage({id:"uploader.waitToUpload",defaultMessage:"Please wait for current upload to complete before uploading new files.",description:"Message for screen reader users"})}else if(o){n=b.formatMessage({id:"uploader.fileUploadLimitExceeded",defaultMessage:"Upload unsuccessful because file selection would exceed the maximum number of files",description:"Message displayed when trying to upload too many files"})}if(n){this.liveRegion.innerHTML="";new Promise((function(t){setTimeout((function(){t("")}),500)})).then((function(){return e.liveRegion.innerHTML=n}))}}}else{this.clearErrors()}};t.prototype.renderUploadSvg=function(){return r("svg",{class:"upload-file",width:"91",height:"84",viewBox:"0 0 91 84"},r("path",{transform:"rotate(-180.000000) translate(-452, -255.5)",fill:"#eae8ec",d:"M361,249.681818 L361,197.318182 C361,194.118182 365.555061,191.5 371.122358,191.5 L391.316463,191.5 L391.286495,200.562515 L369.871211,200.600292 L369.885404,200.622146 L369.886423,246.655947 L443.657038,246.840767 L443.657038,200.622146 L421.683537,200.622146 L421.683537,191.5 L441.978865,191.5 C447.546162,191.5 452,194.118182 452,197.318182 L452,249.681818 C452,252.881818 447.546162,255.5 441.978865,255.5 L371.122358,255.5 C365.504449,255.5 361,252.881818 361,249.681818 Z M391.5,207 L406,221 L420.5,207 L409.625,207 L409.625,172 L402.375,172 L402.375,207 L391.5,207 Z"}))};t.prototype.renderIcon=function(){var t=this.icon&&this.icon==="f066";return this.icon&&r("span",{class:"mdi ".concat(t?"rotate":"")},String.fromCodePoint(parseInt("0x".concat(this.icon))))};t.prototype.renderNotif=function(){return this.notif?r("span",{class:"notif"},this.notif.message):""};t.prototype.renderUploadButton=function(t){var e=this;return r("div",{class:"notif-wrapper"},r("input",{name:this.inputId,id:this.inputId,class:"sr-only",type:"file",multiple:true,onClick:function(t){return e.uploadButtonOnClick(t)},onChange:function(t){return e.handleFiles(t)}}),r("label",{htmlFor:this.inputId,class:"wm-button ".concat(t).concat(this.isTabbing?" user-is-tabbing":"")},this.renderIcon(),this.buttonText),this.renderNotif())};t.prototype.renderWithItems=function(){return r("div",null,r("div",{class:"header"},r("div",{class:"descr"},r("slot",null)),this.renderUploadButton(this.isDisabled?"disabled":"")),this.renderErrorList(),this.renderInProgressList(),this.renderFileList())};t.prototype.renderEmptyState=function(){return r("div",null,r("div",{class:"header"},r("div",{class:"descr"},r("slot",null))),r("div",{class:"empty-block"},this.renderUploadSvg(),r("div",{class:"empty-message"},this.emptyStateText),this.renderUploadButton("-primary empty-button")))};t.prototype.renderErrorList=function(){if(!!this.errorList.length){if(this.liveRegion){var t=this.errorList.reduce((function(t,e){return t+"".concat(e.file_name,": ").concat(e.message," ")}),"");this.liveRegion.innerHTML=t}return r("ul",{class:"error-list"},this.errorList.map((function(t){return r("li",null,r("div",{class:"file --error"},r("div",{class:"file-info"},r("span",{class:"filename"},t.file_name))),r("div",{class:"error-message"},t.message))})))}};t.prototype.renderInProgressList=function(){return r("ul",{class:"inprogress-list"},this.inProgressList.map((function(t){return r("li",null,r("div",{class:"file --progress"},r("div",{class:"progress",style:{background:"linear-gradient(to right, rgba(67, 126, 142, 1) ".concat(t.progress,"%, transparent ").concat(t.progress,"%)")}}),r("div",{class:"file-info"},r("span",{class:"filename"},t.name," ",r("span",{class:"sr-only"},"uploading")))))})))};t.prototype.renderFile=function(t){var e=this;return r("li",null,r("div",{class:"file --saved"},r("div",{class:"file-info"},r("span",{class:"filename"},t.file_name),r("span",{class:"filedate"},this.formatDate(t.updated_at,b.locale,Intl.DateTimeFormat().resolvedOptions().timeZone))),r("div",{class:"file-controls"},r("wm-button",{class:"download-button","button-type":"icononly",tooltip:"download","label-for-identical-buttons":"download ".concat(t.file_name),icon:"f1da",onClick:function(){return e.downloadFile(t.uuid,t.file_path)}}),r("wm-button",{class:"delete-button","button-type":"icononly",tooltip:"remove","label-for-identical-buttons":"remove ".concat(t.file_name),icon:"f1c0",onClick:function(){return e.deleteFile(t)}}))))};t.prototype.renderFileList=function(){var t=this;return r("ul",{class:"file-list"},this.fileList.map((function(e){return t.renderFile(e)})))};t.prototype.render=function(){var t=this;return r(i,null,this.isEmpty()?this.renderEmptyState():this.renderWithItems(),r("wm-snackbar",{notifications:JSON.stringify(this.snackbar)}),r("div",{ref:function(e){return t.liveRegion=e},class:"live-region sr-only","aria-live":"assertive","aria-atomic":"true"}))};Object.defineProperty(t.prototype,"el",{get:function(){return a(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{maxSize:["setMaxSize"],numFilesInProgress:["uploadNotifications"],fileList:["emitFileListEvent"]}},enumerable:false,configurable:true});return t}());w.style=c}}}));
|
|
2
|
-
//# sourceMappingURL=p-8aa85021.system.entry.js.map
|