wj-elements 0.1.135 → 0.1.136
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/package.json +1 -1
- package/dist/dark.css +0 -223
- package/dist/infinite-scroll.element-XVJukzjy.js +0 -272
- package/dist/infinite-scroll.element-XVJukzjy.js.map +0 -1
- package/dist/light.css +0 -530
- package/dist/list.element-Ce1vIm1O.js +0 -50
- package/dist/list.element-Ce1vIm1O.js.map +0 -1
- package/dist/localize.js +0 -70
- package/dist/localize.js.map +0 -1
- package/dist/packages/index.d.ts +0 -100
- package/dist/packages/localize/localize.d.ts +0 -17
- package/dist/packages/translations/en-gb.d.ts +0 -13
- package/dist/packages/translations/sk-sk.d.ts +0 -13
- package/dist/packages/utils/animations.d.ts +0 -2
- package/dist/packages/utils/date.d.ts +0 -1
- package/dist/packages/utils/element-utils.d.ts +0 -46
- package/dist/packages/utils/event.d.ts +0 -67
- package/dist/packages/utils/localize.d.ts +0 -4
- package/dist/packages/utils/permissions-api.d.ts +0 -34
- package/dist/packages/utils/utils.d.ts +0 -1
- package/dist/packages/utils/wje-import-firefox.d.ts +0 -0
- package/dist/packages/utils/wje-import.d.ts +0 -0
- package/dist/packages/wje-accordion/accordion.d.ts +0 -2
- package/dist/packages/wje-accordion/accordion.element.d.ts +0 -72
- package/dist/packages/wje-accordion-item/accordion-item.d.ts +0 -2
- package/dist/packages/wje-accordion-item/accordion-item.element.d.ts +0 -40
- package/dist/packages/wje-animation/animation.d.ts +0 -2
- package/dist/packages/wje-animation/animation.element.d.ts +0 -153
- package/dist/packages/wje-animation/animation.test.d.ts +0 -1
- package/dist/packages/wje-aside/aside.d.ts +0 -2
- package/dist/packages/wje-aside/aside.element.d.ts +0 -31
- package/dist/packages/wje-avatar/avatar.d.ts +0 -2
- package/dist/packages/wje-avatar/avatar.element.d.ts +0 -37
- package/dist/packages/wje-avatar/service/service.d.ts +0 -40
- package/dist/packages/wje-badge/badge.d.ts +0 -2
- package/dist/packages/wje-badge/badge.element.d.ts +0 -35
- package/dist/packages/wje-badge/badge.test.d.ts +0 -1
- package/dist/packages/wje-breadcrumb/breadcrumb.d.ts +0 -2
- package/dist/packages/wje-breadcrumb/breadcrumb.element.d.ts +0 -80
- package/dist/packages/wje-breadcrumbs/breadcrumbs.d.ts +0 -2
- package/dist/packages/wje-breadcrumbs/breadcrumbs.element.d.ts +0 -97
- package/dist/packages/wje-breadcrumbs/breadcrumbs.test.d.ts +0 -1
- package/dist/packages/wje-button/button.d.ts +0 -2
- package/dist/packages/wje-button/button.element.d.ts +0 -173
- package/dist/packages/wje-button/button.test.d.ts +0 -1
- package/dist/packages/wje-button-group/button-group.d.ts +0 -2
- package/dist/packages/wje-button-group/button-group.element.d.ts +0 -39
- package/dist/packages/wje-card/card.d.ts +0 -2
- package/dist/packages/wje-card/card.element.d.ts +0 -29
- package/dist/packages/wje-card-content/card-content.d.ts +0 -2
- package/dist/packages/wje-card-content/card-content.element.d.ts +0 -22
- package/dist/packages/wje-card-controls/card-controls.d.ts +0 -2
- package/dist/packages/wje-card-controls/card-controls.element.d.ts +0 -23
- package/dist/packages/wje-card-header/card-header.d.ts +0 -2
- package/dist/packages/wje-card-header/card-header.element.d.ts +0 -22
- package/dist/packages/wje-card-subtitle/card-subtitle.d.ts +0 -2
- package/dist/packages/wje-card-subtitle/card-subtitle.element.d.ts +0 -30
- package/dist/packages/wje-card-title/card-title.d.ts +0 -2
- package/dist/packages/wje-card-title/card-title.element.d.ts +0 -32
- package/dist/packages/wje-carousel/carousel.d.ts +0 -2
- package/dist/packages/wje-carousel/carousel.element.d.ts +0 -146
- package/dist/packages/wje-carousel-item/carousel-item.d.ts +0 -2
- package/dist/packages/wje-carousel-item/carousel-item.element.d.ts +0 -38
- package/dist/packages/wje-checkbox/checkbox.d.ts +0 -2
- package/dist/packages/wje-checkbox/checkbox.element.d.ts +0 -171
- package/dist/packages/wje-chip/chip.d.ts +0 -2
- package/dist/packages/wje-chip/chip.element.d.ts +0 -29
- package/dist/packages/wje-col/col.d.ts +0 -2
- package/dist/packages/wje-col/col.element.d.ts +0 -16
- package/dist/packages/wje-color-picker/color-picker.d.ts +0 -2
- package/dist/packages/wje-color-picker/color-picker.element.d.ts +0 -187
- package/dist/packages/wje-container/container.d.ts +0 -2
- package/dist/packages/wje-container/container.element.d.ts +0 -31
- package/dist/packages/wje-copy-button/copy-button.d.ts +0 -2
- package/dist/packages/wje-copy-button/copy-button.element.d.ts +0 -89
- package/dist/packages/wje-copy-button/service/service.d.ts +0 -12
- package/dist/packages/wje-dialog/dialog.d.ts +0 -2
- package/dist/packages/wje-dialog/dialog.element.d.ts +0 -116
- package/dist/packages/wje-divider/divider.d.ts +0 -2
- package/dist/packages/wje-divider/divider.element.d.ts +0 -32
- package/dist/packages/wje-dropdown/dropdown.d.ts +0 -2
- package/dist/packages/wje-dropdown/dropdown.element.d.ts +0 -85
- package/dist/packages/wje-element/element.d.ts +0 -313
- package/dist/packages/wje-element/service/universal-service.d.ts +0 -18
- package/dist/packages/wje-file-upload/file-upload.d.ts +0 -2
- package/dist/packages/wje-file-upload/file-upload.element.d.ts +0 -191
- package/dist/packages/wje-file-upload/service/service.d.ts +0 -70
- package/dist/packages/wje-file-upload-item/file-upload-item.d.ts +0 -2
- package/dist/packages/wje-file-upload-item/file-upload-item.element.d.ts +0 -64
- package/dist/packages/wje-footer/footer.d.ts +0 -2
- package/dist/packages/wje-footer/footer.element.d.ts +0 -28
- package/dist/packages/wje-form/form.d.ts +0 -2
- package/dist/packages/wje-form/form.element.d.ts +0 -28
- package/dist/packages/wje-format-digital/format-digital.d.ts +0 -2
- package/dist/packages/wje-format-digital/format-digital.element.d.ts +0 -87
- package/dist/packages/wje-format-digital/format-digital.test.d.ts +0 -1
- package/dist/packages/wje-grid/grid.d.ts +0 -2
- package/dist/packages/wje-grid/grid.element.d.ts +0 -26
- package/dist/packages/wje-header/header.d.ts +0 -2
- package/dist/packages/wje-header/header.element.d.ts +0 -35
- package/dist/packages/wje-icon/icon.d.ts +0 -2
- package/dist/packages/wje-icon/icon.element.d.ts +0 -40
- package/dist/packages/wje-icon/service/service.d.ts +0 -11
- package/dist/packages/wje-icon-picker/icon-picker.d.ts +0 -2
- package/dist/packages/wje-icon-picker/icon-picker.element.d.ts +0 -197
- package/dist/packages/wje-img/img.d.ts +0 -2
- package/dist/packages/wje-img/img.element.d.ts +0 -30
- package/dist/packages/wje-img-comparer/img-comparer.d.ts +0 -2
- package/dist/packages/wje-img-comparer/img-comparer.element.d.ts +0 -60
- package/dist/packages/wje-img-comparer/service/service.d.ts +0 -1
- package/dist/packages/wje-infinite-scroll/infinite-scroll.d.ts +0 -2
- package/dist/packages/wje-infinite-scroll/infinite-scroll.element.d.ts +0 -134
- package/dist/packages/wje-input/input.d.ts +0 -2
- package/dist/packages/wje-input/input.element.d.ts +0 -204
- package/dist/packages/wje-input-file/input-file.d.ts +0 -2
- package/dist/packages/wje-input-file/input-file.element.d.ts +0 -50
- package/dist/packages/wje-item/item.d.ts +0 -2
- package/dist/packages/wje-item/item.element.d.ts +0 -68
- package/dist/packages/wje-kanban/kanban.d.ts +0 -2
- package/dist/packages/wje-kanban/kanban.element.d.ts +0 -183
- package/dist/packages/wje-label/label.d.ts +0 -2
- package/dist/packages/wje-label/label.element.d.ts +0 -34
- package/dist/packages/wje-list/list.d.ts +0 -2
- package/dist/packages/wje-list/list.element.d.ts +0 -31
- package/dist/packages/wje-main/main.d.ts +0 -2
- package/dist/packages/wje-main/main.element.d.ts +0 -30
- package/dist/packages/wje-masonry/masonry.d.ts +0 -2
- package/dist/packages/wje-masonry/masonry.element.d.ts +0 -114
- package/dist/packages/wje-masonry/service/service.d.ts +0 -32
- package/dist/packages/wje-menu/menu.d.ts +0 -2
- package/dist/packages/wje-menu/menu.element.d.ts +0 -47
- package/dist/packages/wje-menu-button/menu-button.d.ts +0 -2
- package/dist/packages/wje-menu-button/menu-button.element.d.ts +0 -34
- package/dist/packages/wje-menu-item/menu-item.d.ts +0 -2
- package/dist/packages/wje-menu-item/menu-item.element.d.ts +0 -139
- package/dist/packages/wje-menu-label/menu-label.d.ts +0 -2
- package/dist/packages/wje-menu-label/menu-label.element.d.ts +0 -39
- package/dist/packages/wje-option/option.d.ts +0 -2
- package/dist/packages/wje-option/option.element.d.ts +0 -59
- package/dist/packages/wje-options/options.d.ts +0 -2
- package/dist/packages/wje-options/options.element.d.ts +0 -183
- package/dist/packages/wje-orgchart/orgchart.d.ts +0 -2
- package/dist/packages/wje-orgchart/orgchart.element.d.ts +0 -24
- package/dist/packages/wje-orgchart-group/orgchart-group.d.ts +0 -2
- package/dist/packages/wje-orgchart-group/orgchart-group.element.d.ts +0 -28
- package/dist/packages/wje-orgchart-item/orgchart-item.d.ts +0 -2
- package/dist/packages/wje-orgchart-item/orgchart-item.element.d.ts +0 -49
- package/dist/packages/wje-panel/panel.d.ts +0 -2
- package/dist/packages/wje-panel/panel.element.d.ts +0 -34
- package/dist/packages/wje-popup/popup.d.ts +0 -2
- package/dist/packages/wje-popup/popup.element.d.ts +0 -93
- package/dist/packages/wje-progress-bar/progress-bar.d.ts +0 -2
- package/dist/packages/wje-progress-bar/progress-bar.element.d.ts +0 -96
- package/dist/packages/wje-qr-code/qr-code.d.ts +0 -2
- package/dist/packages/wje-qr-code/qr-code.element.d.ts +0 -33
- package/dist/packages/wje-radio/radio.d.ts +0 -2
- package/dist/packages/wje-radio/radio.element.d.ts +0 -53
- package/dist/packages/wje-radio-group/radio-group.d.ts +0 -2
- package/dist/packages/wje-radio-group/radio-group.element.d.ts +0 -137
- package/dist/packages/wje-rate/rate.d.ts +0 -2
- package/dist/packages/wje-rate/rate.element.d.ts +0 -156
- package/dist/packages/wje-relative-time/relative-time.d.ts +0 -2
- package/dist/packages/wje-relative-time/relative-time.element.d.ts +0 -55
- package/dist/packages/wje-relative-time/relative-time.test.d.ts +0 -1
- package/dist/packages/wje-reorder/reorder.d.ts +0 -2
- package/dist/packages/wje-reorder/reorder.element.d.ts +0 -119
- package/dist/packages/wje-reorder-dropzone/reorder-dropzone.d.ts +0 -2
- package/dist/packages/wje-reorder-dropzone/reorder-dropzone.element.d.ts +0 -23
- package/dist/packages/wje-reorder-handle/reorder-handle.d.ts +0 -2
- package/dist/packages/wje-reorder-handle/reorder-handle.element.d.ts +0 -75
- package/dist/packages/wje-reorder-item/reorder-item.d.ts +0 -2
- package/dist/packages/wje-reorder-item/reorder-item.element.d.ts +0 -24
- package/dist/packages/wje-route/route.d.ts +0 -2
- package/dist/packages/wje-route/route.element.d.ts +0 -22
- package/dist/packages/wje-router/router.d.ts +0 -2
- package/dist/packages/wje-router/router.element.d.ts +0 -39
- package/dist/packages/wje-router-link/router-link.d.ts +0 -2
- package/dist/packages/wje-router-link/router-link.element.d.ts +0 -31
- package/dist/packages/wje-router-outlet/router-outlet.d.ts +0 -2
- package/dist/packages/wje-router-outlet/router-outlet.element.d.ts +0 -15
- package/dist/packages/wje-row/row.d.ts +0 -2
- package/dist/packages/wje-row/row.element.d.ts +0 -23
- package/dist/packages/wje-select/select.d.ts +0 -2
- package/dist/packages/wje-select/select.element.d.ts +0 -315
- package/dist/packages/wje-slider/slider.d.ts +0 -2
- package/dist/packages/wje-slider/slider.element.d.ts +0 -103
- package/dist/packages/wje-split-view/service/service.d.ts +0 -1
- package/dist/packages/wje-split-view/split-view.d.ts +0 -2
- package/dist/packages/wje-split-view/split-view.element.d.ts +0 -66
- package/dist/packages/wje-status/status.d.ts +0 -2
- package/dist/packages/wje-status/status.element.d.ts +0 -26
- package/dist/packages/wje-step/step.d.ts +0 -2
- package/dist/packages/wje-step/step.element.d.ts +0 -23
- package/dist/packages/wje-stepper/stepper.d.ts +0 -2
- package/dist/packages/wje-stepper/stepper.element.d.ts +0 -78
- package/dist/packages/wje-store/default-store-actions.d.ts +0 -25
- package/dist/packages/wje-store/pubsub.d.ts +0 -21
- package/dist/packages/wje-store/store.d.ts +0 -153
- package/dist/packages/wje-tab/tab.d.ts +0 -2
- package/dist/packages/wje-tab/tab.element.d.ts +0 -41
- package/dist/packages/wje-tab-group/tab-group.d.ts +0 -2
- package/dist/packages/wje-tab-group/tab-group.element.d.ts +0 -67
- package/dist/packages/wje-tab-panel/tab-panel.d.ts +0 -2
- package/dist/packages/wje-tab-panel/tab-panel.element.d.ts +0 -23
- package/dist/packages/wje-textarea/textarea.d.ts +0 -2
- package/dist/packages/wje-textarea/textarea.element.d.ts +0 -176
- package/dist/packages/wje-thumbnail/thumbnail.d.ts +0 -2
- package/dist/packages/wje-thumbnail/thumbnail.element.d.ts +0 -31
- package/dist/packages/wje-timeline/timeline.d.ts +0 -2
- package/dist/packages/wje-timeline/timeline.element.d.ts +0 -25
- package/dist/packages/wje-timeline-item/timeline-item.d.ts +0 -2
- package/dist/packages/wje-timeline-item/timeline-item.element.d.ts +0 -27
- package/dist/packages/wje-toast/toast.d.ts +0 -2
- package/dist/packages/wje-toast/toast.element.d.ts +0 -173
- package/dist/packages/wje-toast/toast.test.d.ts +0 -1
- package/dist/packages/wje-toggle/toggle.d.ts +0 -2
- package/dist/packages/wje-toggle/toggle.element.d.ts +0 -65
- package/dist/packages/wje-toolbar/toolbar.d.ts +0 -2
- package/dist/packages/wje-toolbar/toolbar.element.d.ts +0 -39
- package/dist/packages/wje-toolbar-action/toolbar-action.d.ts +0 -2
- package/dist/packages/wje-toolbar-action/toolbar-action.element.d.ts +0 -35
- package/dist/packages/wje-tooltip/tooltip.d.ts +0 -2
- package/dist/packages/wje-tooltip/tooltip.element.d.ts +0 -71
- package/dist/packages/wje-visually-hidden/visually-hidden.d.ts +0 -2
- package/dist/packages/wje-visually-hidden/visually-hidden.element.d.ts +0 -29
- package/dist/popup.element-tyYxow0p.js +0 -1623
- package/dist/popup.element-tyYxow0p.js.map +0 -1
- package/dist/router-links-CJnOdbas.js +0 -150
- package/dist/router-links-CJnOdbas.js.map +0 -1
- package/dist/styles.css +0 -849
- package/dist/wje-accordion-item.js +0 -113
- package/dist/wje-accordion-item.js.map +0 -1
- package/dist/wje-accordion.js +0 -122
- package/dist/wje-accordion.js.map +0 -1
- package/dist/wje-animation.js +0 -4324
- package/dist/wje-animation.js.map +0 -1
- package/dist/wje-aside.js +0 -55
- package/dist/wje-aside.js.map +0 -1
- package/dist/wje-avatar.js +0 -90
- package/dist/wje-avatar.js.map +0 -1
- package/dist/wje-badge.js +0 -71
- package/dist/wje-badge.js.map +0 -1
- package/dist/wje-breadcrumb.js +0 -195
- package/dist/wje-breadcrumb.js.map +0 -1
- package/dist/wje-breadcrumbs.js +0 -140
- package/dist/wje-breadcrumbs.js.map +0 -1
- package/dist/wje-button-group.js +0 -85
- package/dist/wje-button-group.js.map +0 -1
- package/dist/wje-button.js +0 -352
- package/dist/wje-button.js.map +0 -1
- package/dist/wje-card-content.js +0 -48
- package/dist/wje-card-content.js.map +0 -1
- package/dist/wje-card-controls.js +0 -48
- package/dist/wje-card-controls.js.map +0 -1
- package/dist/wje-card-header.js +0 -48
- package/dist/wje-card-header.js.map +0 -1
- package/dist/wje-card-subtitle.js +0 -55
- package/dist/wje-card-subtitle.js.map +0 -1
- package/dist/wje-card-title.js +0 -55
- package/dist/wje-card-title.js.map +0 -1
- package/dist/wje-card.js +0 -56
- package/dist/wje-card.js.map +0 -1
- package/dist/wje-carousel-item.js +0 -63
- package/dist/wje-carousel-item.js.map +0 -1
- package/dist/wje-carousel.js +0 -380
- package/dist/wje-carousel.js.map +0 -1
- package/dist/wje-checkbox.js +0 -540
- package/dist/wje-checkbox.js.map +0 -1
- package/dist/wje-chip.js +0 -76
- package/dist/wje-chip.js.map +0 -1
- package/dist/wje-col.js +0 -38
- package/dist/wje-col.js.map +0 -1
- package/dist/wje-color-picker.js +0 -1339
- package/dist/wje-color-picker.js.map +0 -1
- package/dist/wje-container.js +0 -56
- package/dist/wje-container.js.map +0 -1
- package/dist/wje-copy-button.js +0 -218
- package/dist/wje-copy-button.js.map +0 -1
- package/dist/wje-dialog.js +0 -249
- package/dist/wje-dialog.js.map +0 -1
- package/dist/wje-divider.js +0 -55
- package/dist/wje-divider.js.map +0 -1
- package/dist/wje-dropdown.js +0 -194
- package/dist/wje-dropdown.js.map +0 -1
- package/dist/wje-element.js +0 -967
- package/dist/wje-element.js.map +0 -1
- package/dist/wje-fetchAndParseCSS.js +0 -60
- package/dist/wje-fetchAndParseCSS.js.map +0 -1
- package/dist/wje-file-upload-item.js +0 -142
- package/dist/wje-file-upload-item.js.map +0 -1
- package/dist/wje-file-upload.js +0 -551
- package/dist/wje-file-upload.js.map +0 -1
- package/dist/wje-footer.js +0 -52
- package/dist/wje-footer.js.map +0 -1
- package/dist/wje-form.js +0 -53
- package/dist/wje-form.js.map +0 -1
- package/dist/wje-format-digital.js +0 -146
- package/dist/wje-format-digital.js.map +0 -1
- package/dist/wje-grid.js +0 -54
- package/dist/wje-grid.js.map +0 -1
- package/dist/wje-header.js +0 -56
- package/dist/wje-header.js.map +0 -1
- package/dist/wje-icon-picker.js +0 -349
- package/dist/wje-icon-picker.js.map +0 -1
- package/dist/wje-icon.js +0 -191
- package/dist/wje-icon.js.map +0 -1
- package/dist/wje-img-comparer.js +0 -131
- package/dist/wje-img-comparer.js.map +0 -1
- package/dist/wje-img.js +0 -72
- package/dist/wje-img.js.map +0 -1
- package/dist/wje-infinite-scroll.js +0 -6
- package/dist/wje-infinite-scroll.js.map +0 -1
- package/dist/wje-input-file.js +0 -111
- package/dist/wje-input-file.js.map +0 -1
- package/dist/wje-input.js +0 -452
- package/dist/wje-input.js.map +0 -1
- package/dist/wje-item.js +0 -88
- package/dist/wje-item.js.map +0 -1
- package/dist/wje-kanban.js +0 -462
- package/dist/wje-kanban.js.map +0 -1
- package/dist/wje-label.js +0 -53
- package/dist/wje-label.js.map +0 -1
- package/dist/wje-list.js +0 -6
- package/dist/wje-list.js.map +0 -1
- package/dist/wje-main.js +0 -52
- package/dist/wje-main.js.map +0 -1
- package/dist/wje-masonry.js +0 -267
- package/dist/wje-masonry.js.map +0 -1
- package/dist/wje-master.js +0 -373
- package/dist/wje-master.js.map +0 -1
- package/dist/wje-menu-button.js +0 -60
- package/dist/wje-menu-button.js.map +0 -1
- package/dist/wje-menu-item.js +0 -545
- package/dist/wje-menu-item.js.map +0 -1
- package/dist/wje-menu-label.js +0 -55
- package/dist/wje-menu-label.js.map +0 -1
- package/dist/wje-menu.js +0 -72
- package/dist/wje-menu.js.map +0 -1
- package/dist/wje-option.js +0 -112
- package/dist/wje-option.js.map +0 -1
- package/dist/wje-options.js +0 -355
- package/dist/wje-options.js.map +0 -1
- package/dist/wje-orgchart-group.js +0 -72
- package/dist/wje-orgchart-group.js.map +0 -1
- package/dist/wje-orgchart-item.js +0 -98
- package/dist/wje-orgchart-item.js.map +0 -1
- package/dist/wje-orgchart.js +0 -49
- package/dist/wje-orgchart.js.map +0 -1
- package/dist/wje-popup.js +0 -6
- package/dist/wje-popup.js.map +0 -1
- package/dist/wje-progress-bar.js +0 -213
- package/dist/wje-progress-bar.js.map +0 -1
- package/dist/wje-qr-code.js +0 -2892
- package/dist/wje-qr-code.js.map +0 -1
- package/dist/wje-radio-group.js +0 -228
- package/dist/wje-radio-group.js.map +0 -1
- package/dist/wje-radio.js +0 -106
- package/dist/wje-radio.js.map +0 -1
- package/dist/wje-rate.js +0 -300
- package/dist/wje-rate.js.map +0 -1
- package/dist/wje-relative-time.js +0 -115
- package/dist/wje-relative-time.js.map +0 -1
- package/dist/wje-reorder-dropzone.js +0 -49
- package/dist/wje-reorder-dropzone.js.map +0 -1
- package/dist/wje-reorder-handle.js +0 -218
- package/dist/wje-reorder-handle.js.map +0 -1
- package/dist/wje-reorder-item.js +0 -61
- package/dist/wje-reorder-item.js.map +0 -1
- package/dist/wje-reorder.js +0 -281
- package/dist/wje-reorder.js.map +0 -1
- package/dist/wje-route.js +0 -43
- package/dist/wje-route.js.map +0 -1
- package/dist/wje-router-link.js +0 -64
- package/dist/wje-router-link.js.map +0 -1
- package/dist/wje-router-outlet.js +0 -192
- package/dist/wje-router-outlet.js.map +0 -1
- package/dist/wje-routerx.js +0 -1437
- package/dist/wje-routerx.js.map +0 -1
- package/dist/wje-row.js +0 -49
- package/dist/wje-row.js.map +0 -1
- package/dist/wje-select.js +0 -630
- package/dist/wje-select.js.map +0 -1
- package/dist/wje-slider.js +0 -221
- package/dist/wje-slider.js.map +0 -1
- package/dist/wje-sliding-container.js +0 -478
- package/dist/wje-sliding-container.js.map +0 -1
- package/dist/wje-split-view.js +0 -153
- package/dist/wje-split-view.js.map +0 -1
- package/dist/wje-status.js +0 -61
- package/dist/wje-status.js.map +0 -1
- package/dist/wje-step.js +0 -50
- package/dist/wje-step.js.map +0 -1
- package/dist/wje-stepper.js +0 -231
- package/dist/wje-stepper.js.map +0 -1
- package/dist/wje-store.js +0 -401
- package/dist/wje-store.js.map +0 -1
- package/dist/wje-tab-group.js +0 -137
- package/dist/wje-tab-group.js.map +0 -1
- package/dist/wje-tab-panel.js +0 -46
- package/dist/wje-tab-panel.js.map +0 -1
- package/dist/wje-tab.js +0 -59
- package/dist/wje-tab.js.map +0 -1
- package/dist/wje-textarea.js +0 -373
- package/dist/wje-textarea.js.map +0 -1
- package/dist/wje-thumbnail.js +0 -54
- package/dist/wje-thumbnail.js.map +0 -1
- package/dist/wje-toast.js +0 -334
- package/dist/wje-toast.js.map +0 -1
- package/dist/wje-toggle.js +0 -125
- package/dist/wje-toggle.js.map +0 -1
- package/dist/wje-toolbar-action.js +0 -72
- package/dist/wje-toolbar-action.js.map +0 -1
- package/dist/wje-toolbar.js +0 -63
- package/dist/wje-toolbar.js.map +0 -1
- package/dist/wje-tooltip.js +0 -166
- package/dist/wje-tooltip.js.map +0 -1
- package/dist/wje-visually-hidden.js +0 -55
- package/dist/wje-visually-hidden.js.map +0 -1
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
-
import WJElement from "./wje-element.js";
|
|
5
|
-
const styles = ".disabled {\n opacity: 0.3;\n}\n";
|
|
6
|
-
class ReorderHandle extends WJElement {
|
|
7
|
-
/**
|
|
8
|
-
* Creates an instance of ReorderHandle.
|
|
9
|
-
*/
|
|
10
|
-
constructor() {
|
|
11
|
-
super();
|
|
12
|
-
/**
|
|
13
|
-
* The class name for the component.
|
|
14
|
-
* @type {string}
|
|
15
|
-
*/
|
|
16
|
-
__publicField(this, "className", "ReorderHandle");
|
|
17
|
-
this.addEventListener("mousedown", this.startDrag.bind(this));
|
|
18
|
-
this.addEventListener("touchstart", this.startTouchDrag.bind(this));
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Returns the CSS styles for the component.
|
|
22
|
-
* @returns {*}
|
|
23
|
-
*/
|
|
24
|
-
static get cssStyleSheet() {
|
|
25
|
-
return styles;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Returns the list of attributes to observe for changes.
|
|
29
|
-
* @returns {string[]}
|
|
30
|
-
*/
|
|
31
|
-
static get observedAttributes() {
|
|
32
|
-
return ["dropzone", "parent"];
|
|
33
|
-
}
|
|
34
|
-
setupAttributes() {
|
|
35
|
-
this.isShadowRoot = "open";
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Draws the component.
|
|
39
|
-
* @returns {DocumentFragment}
|
|
40
|
-
*/
|
|
41
|
-
draw() {
|
|
42
|
-
const fragment = document.createDocumentFragment();
|
|
43
|
-
const container = document.createElement("div");
|
|
44
|
-
container.classList.add("container");
|
|
45
|
-
container.setAttribute("part", "native");
|
|
46
|
-
const slot = document.createElement("slot");
|
|
47
|
-
container.appendChild(slot);
|
|
48
|
-
fragment.appendChild(container);
|
|
49
|
-
return fragment;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Draws the component after it is connected to the DOM.
|
|
53
|
-
*/
|
|
54
|
-
afterDraw() {
|
|
55
|
-
if (this.hasAttribute("disabled")) {
|
|
56
|
-
this.style.opacity = ".3";
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Handles the attribute changes.
|
|
61
|
-
* @param {DragEvent} event
|
|
62
|
-
*/
|
|
63
|
-
startDrag(event) {
|
|
64
|
-
if (this.hasAttribute("disabled") || this.hasAttribute("locked")) return;
|
|
65
|
-
this.startDragAction(event.clientX, event.clientY);
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Handles the touch start event.
|
|
69
|
-
* @param {TouchEvent} event
|
|
70
|
-
*/
|
|
71
|
-
startTouchDrag(event) {
|
|
72
|
-
if (this.hasAttribute("disabled") || this.hasAttribute("locked")) return;
|
|
73
|
-
const touch = event.touches[0];
|
|
74
|
-
this.startDragAction(touch.clientX, touch.clientY);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Initiates the drag-and-drop action for a sortable element.
|
|
78
|
-
* @param {number} clientX The x-coordinate of the mouse pointer at the start of the drag action.
|
|
79
|
-
* @param {number} clientY The y-coordinate of the mouse pointer at the start of the drag action.
|
|
80
|
-
*/
|
|
81
|
-
startDragAction(clientX, clientY) {
|
|
82
|
-
let draggable;
|
|
83
|
-
if (this.hasAttribute("parent")) {
|
|
84
|
-
const parentSelector = this.getAttribute("parent");
|
|
85
|
-
draggable = this.closest(parentSelector);
|
|
86
|
-
} else {
|
|
87
|
-
draggable = this.parentElement;
|
|
88
|
-
}
|
|
89
|
-
const initialContainer = this.getDropzone(draggable);
|
|
90
|
-
if (!this.getAttribute("dropzone")) {
|
|
91
|
-
this.setAttribute("dropzone", initialContainer.localName);
|
|
92
|
-
}
|
|
93
|
-
const rect = draggable.getBoundingClientRect();
|
|
94
|
-
const offsetX = clientX - rect.left;
|
|
95
|
-
const offsetY = clientY - rect.top;
|
|
96
|
-
let placeholder = document.createElement("div");
|
|
97
|
-
placeholder.classList.add("sortable-item");
|
|
98
|
-
placeholder.style.visibility = "hidden";
|
|
99
|
-
placeholder.style.height = `${rect.height}px`;
|
|
100
|
-
draggable.classList.add("dragging");
|
|
101
|
-
draggable.style.position = "fixed";
|
|
102
|
-
draggable.style.zIndex = "1000";
|
|
103
|
-
draggable.style.width = `${rect.width}px`;
|
|
104
|
-
const moveAt = (pageX, pageY) => {
|
|
105
|
-
draggable.style.left = `${pageX - offsetX - document.documentElement.scrollLeft}px`;
|
|
106
|
-
draggable.style.top = `${pageY - offsetY - document.documentElement.scrollTop}px`;
|
|
107
|
-
};
|
|
108
|
-
moveAt(clientX, clientY);
|
|
109
|
-
const onMouseMove = (event) => {
|
|
110
|
-
var _a;
|
|
111
|
-
moveAt(event.pageX, event.pageY);
|
|
112
|
-
const dropzone = this.getClosestDropzone(event.clientX, event.clientY);
|
|
113
|
-
if (!dropzone) return;
|
|
114
|
-
const siblings = Array.from(dropzone.children).filter(
|
|
115
|
-
(child) => child !== draggable && child !== placeholder
|
|
116
|
-
);
|
|
117
|
-
for (const sibling of siblings) {
|
|
118
|
-
const siblingRect = sibling.getBoundingClientRect();
|
|
119
|
-
if ((_a = sibling.children[0]) == null ? void 0 : _a.hasAttribute("locked")) continue;
|
|
120
|
-
if (event.clientY > siblingRect.top && event.clientY < siblingRect.bottom) {
|
|
121
|
-
if (event.clientY < siblingRect.top + siblingRect.height / 2) {
|
|
122
|
-
dropzone.insertBefore(placeholder, sibling);
|
|
123
|
-
} else {
|
|
124
|
-
dropzone.insertBefore(placeholder, sibling.nextSibling);
|
|
125
|
-
}
|
|
126
|
-
break;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
const onMouseUp = () => {
|
|
131
|
-
document.removeEventListener("mousemove", onMouseMove);
|
|
132
|
-
document.removeEventListener("mouseup", onMouseUp);
|
|
133
|
-
draggable.classList.remove("dragging");
|
|
134
|
-
draggable.style.position = "";
|
|
135
|
-
draggable.style.zIndex = "";
|
|
136
|
-
draggable.style.left = "";
|
|
137
|
-
draggable.style.top = "";
|
|
138
|
-
draggable.style.width = "";
|
|
139
|
-
const finalContainer = placeholder.parentElement;
|
|
140
|
-
finalContainer.insertBefore(draggable, placeholder);
|
|
141
|
-
finalContainer.removeChild(placeholder);
|
|
142
|
-
this.reIndexItems(finalContainer);
|
|
143
|
-
};
|
|
144
|
-
document.addEventListener("mousemove", onMouseMove);
|
|
145
|
-
document.addEventListener("mouseup", onMouseUp);
|
|
146
|
-
initialContainer.insertBefore(placeholder, draggable);
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Retrieves the dropzone associated with the given element.
|
|
150
|
-
* @param {HTMLElement} element The element from which to search for the closest dropzone.
|
|
151
|
-
* @returns {HTMLElement|null} - The closest dropzone element matching the `dropzone` attribute, or the parent element if no dropzone is found.
|
|
152
|
-
*/
|
|
153
|
-
getDropzone(element) {
|
|
154
|
-
const dropzoneAttr = this.getAttribute("dropzone");
|
|
155
|
-
if (dropzoneAttr) {
|
|
156
|
-
let dropzone = element.closest(dropzoneAttr);
|
|
157
|
-
if (dropzone) return dropzone;
|
|
158
|
-
}
|
|
159
|
-
return element.parentElement;
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Retrieves the closest dropzone element at the specified coordinates.
|
|
163
|
-
* @param {number} clientX The x-coordinate relative to the viewport.
|
|
164
|
-
* @param {number} clientY The y-coordinate relative to the viewport.
|
|
165
|
-
* @returns {HTMLElement|null} - The closest dropzone element matching the `dropzone` attribute, or `null` if none is found.
|
|
166
|
-
*/
|
|
167
|
-
getClosestDropzone(clientX, clientY) {
|
|
168
|
-
const elements = this.getElementsFromPointAll(clientX, clientY);
|
|
169
|
-
for (const element of elements) {
|
|
170
|
-
if (element.matches(this.getAttribute("dropzone"))) {
|
|
171
|
-
return element;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
return null;
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Retrieves all elements at the specified coordinates, including those within shadow DOMs.
|
|
178
|
-
* @param {number} x The x-coordinate relative to the viewport.
|
|
179
|
-
* @param {number} y The y-coordinate relative to the viewport.
|
|
180
|
-
* @param {Document|ShadowRoot} [root] The root context in which to search. Defaults to the main document.
|
|
181
|
-
* @param {Set<Node>} [visited] A set of already visited nodes to avoid infinite recursion in nested shadow DOMs.
|
|
182
|
-
* @returns {HTMLElement[]} An array of all elements found at the specified coordinates, including shadow DOM elements.
|
|
183
|
-
*/
|
|
184
|
-
getElementsFromPointAll(x, y, root = document, visited = /* @__PURE__ */ new Set()) {
|
|
185
|
-
if (visited.has(root)) return [];
|
|
186
|
-
visited.add(root);
|
|
187
|
-
const elements = root.elementsFromPoint(x, y);
|
|
188
|
-
let allElements = [...elements];
|
|
189
|
-
for (const element of elements) {
|
|
190
|
-
if (element.shadowRoot && !visited.has(element.shadowRoot)) {
|
|
191
|
-
allElements = allElements.concat(this.getElementsFromPointAll(x, y, element.shadowRoot, visited));
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
return allElements;
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Re-indexes the items in the container.
|
|
198
|
-
* @param container
|
|
199
|
-
*/
|
|
200
|
-
reIndexItems(container) {
|
|
201
|
-
const items = Array.from(container.children);
|
|
202
|
-
let index = 0;
|
|
203
|
-
items.forEach((child) => {
|
|
204
|
-
var _a;
|
|
205
|
-
if ((_a = child.children[0]) == null ? void 0 : _a.hasAttribute("locked")) {
|
|
206
|
-
child.dataset.index = index;
|
|
207
|
-
} else {
|
|
208
|
-
child.dataset.index = index;
|
|
209
|
-
}
|
|
210
|
-
index++;
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
ReorderHandle.define("wje-reorder-handle", ReorderHandle);
|
|
215
|
-
export {
|
|
216
|
-
ReorderHandle as default
|
|
217
|
-
};
|
|
218
|
-
//# sourceMappingURL=wje-reorder-handle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wje-reorder-handle.js","sources":["../packages/wje-reorder-handle/reorder-handle.element.js","../packages/wje-reorder-handle/reorder-handle.js"],"sourcesContent":["import { default as WJElement } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `ReorderHandle` is a custom web component that represents a reorder handle.\n * @summary This element represents a reorder handle.\n * @documentation https://elements.webjet.sk/components/reorder-handle\n * @status stable\n * @augments WJElement\n * @csspart native - The native part of the reorder handle.\n * @slot - The default slot for the reorder handle.\n * @tag wje-reorder-handle\n */\nexport default class ReorderHandle extends WJElement {\n /**\n * Creates an instance of ReorderHandle.\n */\n constructor() {\n super();\n this.addEventListener('mousedown', this.startDrag.bind(this));\n this.addEventListener('touchstart', this.startTouchDrag.bind(this));\n }\n\n /**\n * The class name for the component.\n * @type {string}\n */\n className = 'ReorderHandle';\n\n /**\n * Returns the CSS styles for the component.\n * @returns {*}\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Returns the list of attributes to observe for changes.\n * @returns {string[]}\n */\n static get observedAttributes() {\n return ['dropzone', 'parent'];\n }\n\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n /**\n * Draws the component.\n * @returns {DocumentFragment}\n */\n draw() {\n const fragment = document.createDocumentFragment();\n\n const container = document.createElement('div');\n container.classList.add('container');\n container.setAttribute('part', 'native');\n\n const slot = document.createElement('slot');\n\n container.appendChild(slot);\n\n fragment.appendChild(container);\n\n return fragment;\n }\n\n /**\n * Draws the component after it is connected to the DOM.\n */\n afterDraw() {\n if (this.hasAttribute('disabled')) {\n this.style.opacity = '.3';\n }\n }\n\n /**\n * Handles the attribute changes.\n * @param {DragEvent} event\n */\n startDrag(event) {\n if (this.hasAttribute('disabled') || this.hasAttribute('locked')) return;\n this.startDragAction(event.clientX, event.clientY);\n }\n\n /**\n * Handles the touch start event.\n * @param {TouchEvent} event\n */\n startTouchDrag(event) {\n if (this.hasAttribute('disabled') || this.hasAttribute('locked')) return;\n const touch = event.touches[0];\n this.startDragAction(touch.clientX, touch.clientY);\n }\n\n /**\n * Initiates the drag-and-drop action for a sortable element.\n * @param {number} clientX The x-coordinate of the mouse pointer at the start of the drag action.\n * @param {number} clientY The y-coordinate of the mouse pointer at the start of the drag action.\n */\n startDragAction(clientX, clientY) {\n let draggable;\n if (this.hasAttribute('parent')) {\n const parentSelector = this.getAttribute('parent');\n draggable = this.closest(parentSelector);\n } else {\n draggable = this.parentElement;\n }\n\n const initialContainer = this.getDropzone(draggable);\n\n if (!this.getAttribute('dropzone')) {\n this.setAttribute('dropzone', initialContainer.localName);\n }\n\n const rect = draggable.getBoundingClientRect();\n const offsetX = clientX - rect.left;\n const offsetY = clientY - rect.top;\n\n let placeholder = document.createElement('div');\n placeholder.classList.add('sortable-item');\n placeholder.style.visibility = 'hidden';\n placeholder.style.height = `${rect.height}px`;\n\n draggable.classList.add('dragging');\n\n draggable.style.position = 'fixed';\n draggable.style.zIndex = '1000';\n draggable.style.width = `${rect.width}px`;\n\n const moveAt = (pageX, pageY) => {\n draggable.style.left = `${pageX - offsetX - document.documentElement.scrollLeft}px`;\n draggable.style.top = `${pageY - offsetY - document.documentElement.scrollTop}px`;\n };\n\n moveAt(clientX, clientY);\n\n const onMouseMove = (event) => {\n moveAt(event.pageX, event.pageY);\n\n const dropzone = this.getClosestDropzone(event.clientX, event.clientY);\n if (!dropzone) return;\n\n const siblings = Array.from(dropzone.children).filter(\n (child) => child !== draggable && child !== placeholder\n );\n\n for (const sibling of siblings) {\n const siblingRect = sibling.getBoundingClientRect();\n\n if (sibling.children[0]?.hasAttribute('locked')) continue;\n\n if (event.clientY > siblingRect.top && event.clientY < siblingRect.bottom) {\n if (event.clientY < siblingRect.top + siblingRect.height / 2) {\n dropzone.insertBefore(placeholder, sibling);\n } else {\n dropzone.insertBefore(placeholder, sibling.nextSibling);\n }\n break;\n }\n }\n };\n\n const onMouseUp = () => {\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('mouseup', onMouseUp);\n\n draggable.classList.remove('dragging');\n\n draggable.style.position = '';\n draggable.style.zIndex = '';\n draggable.style.left = '';\n draggable.style.top = '';\n draggable.style.width = '';\n\n const finalContainer = placeholder.parentElement;\n finalContainer.insertBefore(draggable, placeholder);\n finalContainer.removeChild(placeholder);\n\n this.reIndexItems(finalContainer);\n };\n\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('mouseup', onMouseUp);\n\n initialContainer.insertBefore(placeholder, draggable);\n }\n\n /**\n * Retrieves the dropzone associated with the given element.\n * @param {HTMLElement} element The element from which to search for the closest dropzone.\n * @returns {HTMLElement|null} - The closest dropzone element matching the `dropzone` attribute, or the parent element if no dropzone is found.\n */\n getDropzone(element) {\n const dropzoneAttr = this.getAttribute('dropzone');\n if (dropzoneAttr) {\n let dropzone = element.closest(dropzoneAttr);\n if (dropzone) return dropzone;\n }\n return element.parentElement;\n }\n\n /**\n * Retrieves the closest dropzone element at the specified coordinates.\n * @param {number} clientX The x-coordinate relative to the viewport.\n * @param {number} clientY The y-coordinate relative to the viewport.\n * @returns {HTMLElement|null} - The closest dropzone element matching the `dropzone` attribute, or `null` if none is found.\n */\n getClosestDropzone(clientX, clientY) {\n const elements = this.getElementsFromPointAll(clientX, clientY);\n for (const element of elements) {\n if (element.matches(this.getAttribute('dropzone'))) {\n return element;\n }\n }\n return null;\n }\n\n /**\n * Retrieves all elements at the specified coordinates, including those within shadow DOMs.\n * @param {number} x The x-coordinate relative to the viewport.\n * @param {number} y The y-coordinate relative to the viewport.\n * @param {Document|ShadowRoot} [root] The root context in which to search. Defaults to the main document.\n * @param {Set<Node>} [visited] A set of already visited nodes to avoid infinite recursion in nested shadow DOMs.\n * @returns {HTMLElement[]} An array of all elements found at the specified coordinates, including shadow DOM elements.\n */\n getElementsFromPointAll(x, y, root = document, visited = new Set()) {\n if (visited.has(root)) return [];\n visited.add(root);\n\n const elements = root.elementsFromPoint(x, y);\n let allElements = [...elements];\n\n for (const element of elements) {\n if (element.shadowRoot && !visited.has(element.shadowRoot)) {\n allElements = allElements.concat(this.getElementsFromPointAll(x, y, element.shadowRoot, visited));\n }\n }\n\n return allElements;\n }\n\n /**\n * Re-indexes the items in the container.\n * @param container\n */\n reIndexItems(container) {\n const items = Array.from(container.children);\n let index = 0;\n\n items.forEach((child) => {\n if (child.children[0]?.hasAttribute('locked')) {\n child.dataset.index = index;\n } else {\n child.dataset.index = index;\n }\n index++;\n });\n }\n}\n","import ReorderHandle from './reorder-handle.element.js';\n\nexport default ReorderHandle;\n\nReorderHandle.define('wje-reorder-handle', ReorderHandle);\n"],"names":[],"mappings":"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"}
|
package/dist/wje-reorder-item.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
-
import WJElement, { WjElementUtils } from "./wje-element.js";
|
|
5
|
-
const styles = ":host {\n /*--reorder-background-color: var(--wje-color-contrast-0);*/\n --reorder-item-spacing: 0.5rem;\n}\n\n.item {\n width: 134px;\n height: 19px;\n display: flex;\n align-items: center;\n justify-content: left;\n position: relative;\n gap: var(--reorder-item-spacing);\n padding: var(--reorder-item-spacing);\n border-radius: var(--wje-border-radius-small);\n background-color: var(--reorder-background-color);\n cursor: grab;\n transition:\n top 0.3s ease,\n left 0.3s ease;\n}\n\n.item-w-handle {\n cursor: default;\n}\n\n.item-w-handle:active {\n opacity: 0.3;\n}\n\n.item:active:not(.item-w-handle):not(.moving) {\n background-color: var(--reorder-background-color);\n cursor: grabbing;\n}\n\n.moving {\n background-color: lightgrey;\n}\n\n.handle {\n cursor: grab;\n gap: 10px;\n}\n\n.handle:active {\n cursor: grabbing;\n}\n\n.name {\n width: 108px;\n height: 19px;\n text-align: center;\n font-size: var(--wje-font-size-medium);\n font-weight: 400;\n line-height: 19.36px;\n gap: 10px;\n}\n\n/* .drag--down {\n --item-transform: translateY(-5px);\n}\n\n.drag--up {\n --item-transform: translateY(5px);\n} */\n\n.item {\n transform: var(--item-transform);\n}\n";
|
|
6
|
-
class ReorderItem extends WJElement {
|
|
7
|
-
/**
|
|
8
|
-
* Creates an instance of ReorderItem.
|
|
9
|
-
*/
|
|
10
|
-
constructor() {
|
|
11
|
-
super();
|
|
12
|
-
/**
|
|
13
|
-
* The class name for the component.
|
|
14
|
-
* @type {string}
|
|
15
|
-
*/
|
|
16
|
-
__publicField(this, "className", "ReorderItem");
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Returns the CSS stylesheet for the component.
|
|
20
|
-
* @returns {CSSStyleSheet} The CSS stylesheet.
|
|
21
|
-
*/
|
|
22
|
-
static get cssStyleSheet() {
|
|
23
|
-
return styles;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Sets up the attributes for the component.
|
|
27
|
-
*/
|
|
28
|
-
setupAttributes() {
|
|
29
|
-
this.isShadowRoot = "open";
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Returns the list of observed attributes.
|
|
33
|
-
* @returns {DocumentFragment}
|
|
34
|
-
*/
|
|
35
|
-
draw() {
|
|
36
|
-
let fragment = document.createDocumentFragment();
|
|
37
|
-
let wrapper = document.createElement("div");
|
|
38
|
-
wrapper.classList.add("item");
|
|
39
|
-
wrapper.setAttribute("part", "native-reorder-item");
|
|
40
|
-
let element = document.createElement("slot");
|
|
41
|
-
element.classList.add("name");
|
|
42
|
-
if (WjElementUtils.hasSlot(this, "handle")) {
|
|
43
|
-
const handle = document.createElement("slot");
|
|
44
|
-
handle.classList.add("handle");
|
|
45
|
-
handle.setAttribute("name", "handle");
|
|
46
|
-
handle.setAttribute("part", "handle-part");
|
|
47
|
-
wrapper.classList.add("item-w-handle");
|
|
48
|
-
wrapper.appendChild(handle);
|
|
49
|
-
} else {
|
|
50
|
-
element.setAttribute("draggable", "true");
|
|
51
|
-
}
|
|
52
|
-
wrapper.appendChild(element);
|
|
53
|
-
fragment.appendChild(wrapper);
|
|
54
|
-
return fragment;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
ReorderItem.define("wje-reorder-item", ReorderItem);
|
|
58
|
-
export {
|
|
59
|
-
ReorderItem as default
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=wje-reorder-item.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wje-reorder-item.js","sources":["../packages/wje-reorder-item/reorder-item.element.js","../packages/wje-reorder-item/reorder-item.js"],"sourcesContent":["import { default as WJElement, WjElementUtils } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `ReorderItem` is a custom web component that represents a reorder item.\n * @summary This element represents a reorder item.\n * @documentation https://elements.webjet.sk/components/reorder-item\n * @status stable\n * @augments WJElement\n * @csspart native-reorder-item - The native part of the reorder item.\n * @csspart handle-part - The handle part of the reorder item when the handle slot is present.\n * @slot - The default slot for the reorder item.\n * @tag wje-reorder-item\n */\nexport default class ReorderItem extends WJElement {\n /**\n * Creates an instance of ReorderItem.\n */\n constructor() {\n super();\n }\n\n /**\n * The class name for the component.\n * @type {string}\n */\n className = 'ReorderItem';\n\n /**\n * Returns the CSS stylesheet for the component.\n * @returns {CSSStyleSheet} The CSS stylesheet.\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Sets up the attributes for the component.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n /**\n * Returns the list of observed attributes.\n * @returns {DocumentFragment}\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n let wrapper = document.createElement('div');\n wrapper.classList.add('item');\n wrapper.setAttribute('part', 'native-reorder-item');\n\n let element = document.createElement('slot');\n element.classList.add('name');\n\n if (WjElementUtils.hasSlot(this, 'handle')) {\n const handle = document.createElement('slot');\n handle.classList.add('handle');\n handle.setAttribute('name', 'handle');\n handle.setAttribute('part', 'handle-part');\n\n wrapper.classList.add('item-w-handle');\n wrapper.appendChild(handle);\n } else {\n element.setAttribute('draggable', 'true');\n }\n\n wrapper.appendChild(element);\n\n fragment.appendChild(wrapper);\n\n return fragment;\n }\n}\n","import ReorderItem from './reorder-item.element.js';\n\nexport default ReorderItem;\n\nReorderItem.define('wje-reorder-item', ReorderItem);\n"],"names":[],"mappings":";;;;;AAce,MAAM,oBAAoB,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/C,cAAc;AACV,UAAO;AAOX;AAAA;AAAA;AAAA;AAAA,qCAAY;AAAA,EANhB;AAAA;AAAA;AAAA;AAAA;AAAA,EAYI,WAAW,gBAAgB;AACvB,WAAO;AAAA,EACf;AAAA;AAAA;AAAA;AAAA,EAKI,kBAAkB;AACd,SAAK,eAAe;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMI,OAAO;AACH,QAAI,WAAW,SAAS,uBAAwB;AAEhD,QAAI,UAAU,SAAS,cAAc,KAAK;AAC1C,YAAQ,UAAU,IAAI,MAAM;AAC5B,YAAQ,aAAa,QAAQ,qBAAqB;AAElD,QAAI,UAAU,SAAS,cAAc,MAAM;AAC3C,YAAQ,UAAU,IAAI,MAAM;AAE5B,QAAI,eAAe,QAAQ,MAAM,QAAQ,GAAG;AACxC,YAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,aAAO,UAAU,IAAI,QAAQ;AAC7B,aAAO,aAAa,QAAQ,QAAQ;AACpC,aAAO,aAAa,QAAQ,aAAa;AAEzC,cAAQ,UAAU,IAAI,eAAe;AACrC,cAAQ,YAAY,MAAM;AAAA,IACtC,OAAe;AACH,cAAQ,aAAa,aAAa,MAAM;AAAA,IACpD;AAEQ,YAAQ,YAAY,OAAO;AAE3B,aAAS,YAAY,OAAO;AAE5B,WAAO;AAAA,EACf;AACA;ACvEA,YAAY,OAAO,oBAAoB,WAAW;"}
|
package/dist/wje-reorder.js
DELETED
|
@@ -1,281 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
-
import WJElement from "./wje-element.js";
|
|
5
|
-
const styles = ".container {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: auto;\n flex-direction: var(--flex-direction);\n}\n\n.container-w-dropzones {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: row;\n}\n\n.reversed {\n --flex-direction: column-reverse;\n}\n\n.basic {\n --flex-direction: column;\n}\n\n.dragging {\n position: absolute;\n pointer-events: none;\n z-index: 1000;\n}\n\n.reorder-item {\n transition:\n top 0.3s ease,\n left 0.3s ease;\n}\n";
|
|
6
|
-
class Reorder extends WJElement {
|
|
7
|
-
/**
|
|
8
|
-
* Creates an instance of Select.
|
|
9
|
-
* @class
|
|
10
|
-
*/
|
|
11
|
-
constructor() {
|
|
12
|
-
super();
|
|
13
|
-
/**
|
|
14
|
-
* The class name for the component.
|
|
15
|
-
* @type {string}
|
|
16
|
-
*/
|
|
17
|
-
__publicField(this, "className", "Select");
|
|
18
|
-
this.dragEl = null;
|
|
19
|
-
this.items = [];
|
|
20
|
-
this.originalIndex = null;
|
|
21
|
-
this.isDragging = false;
|
|
22
|
-
this.offsetX = 0;
|
|
23
|
-
this.offsetY = 0;
|
|
24
|
-
this.cloneEl = null;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Returns the CSS styles for the component.
|
|
28
|
-
* @static
|
|
29
|
-
* @returns {CSSStyleSheet}
|
|
30
|
-
*/
|
|
31
|
-
static get cssStyleSheet() {
|
|
32
|
-
return styles;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Returns the list of attributes to observe for changes.
|
|
36
|
-
* @static
|
|
37
|
-
* @returns {Array<string>}
|
|
38
|
-
*/
|
|
39
|
-
static get observedAttributes() {
|
|
40
|
-
return [];
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Sets up the attributes for the component.
|
|
44
|
-
*/
|
|
45
|
-
setupAttributes() {
|
|
46
|
-
this.isShadowRoot = "open";
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Draws the component after it is connected to the DOM.
|
|
50
|
-
* @returns {DocumentFragment}
|
|
51
|
-
*/
|
|
52
|
-
draw() {
|
|
53
|
-
const fragment = document.createDocumentFragment();
|
|
54
|
-
const container = document.createElement("div");
|
|
55
|
-
container.classList.add("container");
|
|
56
|
-
container.setAttribute("part", "native");
|
|
57
|
-
const slot = document.createElement("slot");
|
|
58
|
-
slot.classList.add("reorder-items");
|
|
59
|
-
container.appendChild(slot);
|
|
60
|
-
fragment.appendChild(container);
|
|
61
|
-
this.container = container;
|
|
62
|
-
return fragment;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Adds event listeners after the component is drawn.
|
|
66
|
-
*/
|
|
67
|
-
afterDraw() {
|
|
68
|
-
const items = this.querySelectorAll("wje-reorder-item");
|
|
69
|
-
const dropZones = this.querySelectorAll("wje-reorder-dropzone");
|
|
70
|
-
this.container.classList.add(this.hasAttribute("reverse") ? "reversed" : "basic");
|
|
71
|
-
if (dropZones) {
|
|
72
|
-
dropZones.forEach((dropZone) => {
|
|
73
|
-
this.container.classList.remove("container");
|
|
74
|
-
this.container.classList.add("container-w-dropzones");
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
if (items) {
|
|
78
|
-
items.forEach((item) => {
|
|
79
|
-
const handles = item.querySelectorAll("[slot=handle]");
|
|
80
|
-
const draggableElement = handles.length > 0 ? handles : [item];
|
|
81
|
-
draggableElement.forEach((element) => {
|
|
82
|
-
this.attachEventListeners(element);
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Attaches event listeners to the element.
|
|
89
|
-
* @param element
|
|
90
|
-
*/
|
|
91
|
-
attachEventListeners(element) {
|
|
92
|
-
element.addEventListener("mousedown", this.mouseDown.bind(this), false);
|
|
93
|
-
element.addEventListener("touchstart", this.touchStart.bind(this), false);
|
|
94
|
-
element.addEventListener("dragstart", this.dragStart.bind(this), false);
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Handles the mouse down event.
|
|
98
|
-
* @param {object} e
|
|
99
|
-
*/
|
|
100
|
-
mouseDown(e) {
|
|
101
|
-
this.startDragging(e.clientX, e.clientY, e.currentTarget);
|
|
102
|
-
document.addEventListener("mousemove", this.mouseMove.bind(this), false);
|
|
103
|
-
document.addEventListener("mouseup", this.mouseUp.bind(this), false);
|
|
104
|
-
document.body.style.userSelect = "none";
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Handles the touch start event.
|
|
108
|
-
* @param e
|
|
109
|
-
*/
|
|
110
|
-
touchStart(e) {
|
|
111
|
-
const touch = e.touches[0];
|
|
112
|
-
this.startDragging(touch.clientX, touch.clientY, e.currentTarget);
|
|
113
|
-
document.addEventListener("touchmove", this.touchMove.bind(this), false);
|
|
114
|
-
document.addEventListener("touchend", this.touchEnd.bind(this), false);
|
|
115
|
-
document.body.style.userSelect = "none";
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Initializes the dragging process for a reorderable item.
|
|
119
|
-
* @param {number} clientX The x-coordinate of the mouse pointer when the drag starts.
|
|
120
|
-
* @param {number} clientY The y-coordinate of the mouse pointer when the drag starts.
|
|
121
|
-
* @param {HTMLElement} target The target element where the drag event originated.
|
|
122
|
-
*/
|
|
123
|
-
startDragging(clientX, clientY, target) {
|
|
124
|
-
if (this.hasAttribute("disabled")) {
|
|
125
|
-
return;
|
|
126
|
-
}
|
|
127
|
-
this.isDragging = true;
|
|
128
|
-
this.dragEl = target.closest("wje-reorder-item");
|
|
129
|
-
this.createClone();
|
|
130
|
-
this.dragEl.style.opacity = "0.3";
|
|
131
|
-
const rect = this.dragEl.getBoundingClientRect();
|
|
132
|
-
this.offsetX = clientX - rect.left;
|
|
133
|
-
this.offsetY = clientY - rect.top;
|
|
134
|
-
this.dragEl.classList.add("dragging");
|
|
135
|
-
this.originalIndex = [...this.dragEl.parentNode.children].indexOf(this.dragEl);
|
|
136
|
-
this.originalParent = this.dragEl.parentNode;
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Handles the mouse move event.
|
|
140
|
-
* @param e
|
|
141
|
-
*/
|
|
142
|
-
mouseMove(e) {
|
|
143
|
-
if (!this.isDragging) return;
|
|
144
|
-
this.moveElement(e.pageX, e.pageY);
|
|
145
|
-
if (this.cloneEl) {
|
|
146
|
-
this.cloneEl.style.left = `${e.pageX - this.offsetX}px`;
|
|
147
|
-
this.cloneEl.style.top = `${e.pageY - this.offsetY}px`;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* Handles the `touchmove` event and updates the position of the dragged element.
|
|
152
|
-
* @param {TouchEvent} e The touch event containing touch position data.
|
|
153
|
-
*/
|
|
154
|
-
touchMove(e) {
|
|
155
|
-
if (!this.isDragging) return;
|
|
156
|
-
const touch = e.touches[0];
|
|
157
|
-
this.moveElement(touch.pageX, touch.pageY);
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Updates the position of the dragged element and handles reordering logic based on the mouse position.
|
|
161
|
-
* @param {number} pageX The x-coordinate of the mouse pointer relative to the viewport during the move event.
|
|
162
|
-
* @param {number} pageY The y-coordinate of the mouse pointer relative to the viewport during the move event.
|
|
163
|
-
*/
|
|
164
|
-
moveElement(pageX, pageY) {
|
|
165
|
-
const scrollX = window.scrollX || document.documentElement.scrollLeft;
|
|
166
|
-
const scrollY = window.scrollY || document.documentElement.scrollTop;
|
|
167
|
-
const adjustedPageX = pageX - scrollX;
|
|
168
|
-
const adjustedPageY = pageY - scrollY;
|
|
169
|
-
this.dragEl.style.left = `${adjustedPageX}px`;
|
|
170
|
-
this.dragEl.style.top = `${adjustedPageY}px`;
|
|
171
|
-
if (this.cloneEl) {
|
|
172
|
-
this.cloneEl.style.left = `${adjustedPageX}px`;
|
|
173
|
-
this.cloneEl.style.top = `${adjustedPageY}px`;
|
|
174
|
-
}
|
|
175
|
-
const items = this.querySelectorAll("wje-reorder-item");
|
|
176
|
-
items.forEach((item) => {
|
|
177
|
-
if (item === this.dragEl) return;
|
|
178
|
-
const boundingBox = item.getBoundingClientRect();
|
|
179
|
-
const mouseY = adjustedPageY - boundingBox.top;
|
|
180
|
-
const mouseYPercent = mouseY / boundingBox.height * 100;
|
|
181
|
-
if (mouseYPercent > 30 && this.isMovingDown(item)) {
|
|
182
|
-
item.parentNode.insertBefore(this.dragEl, item.nextSibling);
|
|
183
|
-
} else if (mouseYPercent < 30 && !this.isMovingDown(item)) {
|
|
184
|
-
item.parentNode.insertBefore(this.dragEl, item);
|
|
185
|
-
}
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Handles the mouse up event.
|
|
190
|
-
*/
|
|
191
|
-
mouseUp() {
|
|
192
|
-
this.stopDragging();
|
|
193
|
-
document.removeEventListener("mousemove", this.mouseMove.bind(this), false);
|
|
194
|
-
document.removeEventListener("mouseup", this.mouseUp.bind(this), false);
|
|
195
|
-
if (this.cloneEl) {
|
|
196
|
-
this.cloneEl.remove();
|
|
197
|
-
this.cloneEl = null;
|
|
198
|
-
}
|
|
199
|
-
if (this.dragEl) {
|
|
200
|
-
this.dragEl.style.opacity = "1";
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Handles the touch end event.
|
|
205
|
-
*/
|
|
206
|
-
touchEnd() {
|
|
207
|
-
this.stopDragging();
|
|
208
|
-
document.removeEventListener("touchmove", this.touchMove.bind(this), false);
|
|
209
|
-
document.removeEventListener("touchend", this.touchEnd.bind(this), false);
|
|
210
|
-
}
|
|
211
|
-
/**
|
|
212
|
-
* Stops dragging the element.
|
|
213
|
-
*/
|
|
214
|
-
stopDragging() {
|
|
215
|
-
if (!this.isDragging) return;
|
|
216
|
-
this.isDragging = false;
|
|
217
|
-
this.dragEl.classList.remove("dragging");
|
|
218
|
-
this.dragEl.style.left = "";
|
|
219
|
-
this.dragEl.style.top = "";
|
|
220
|
-
const parent = this.dragEl.parentNode;
|
|
221
|
-
const newIndex = Array.from(parent.children).indexOf(this.dragEl);
|
|
222
|
-
const newOrder = Array.from(parent.children).map((el) => {
|
|
223
|
-
const clonedNode = el.cloneNode(true);
|
|
224
|
-
const handle = clonedNode.querySelector(".handle");
|
|
225
|
-
if (handle) {
|
|
226
|
-
handle.remove();
|
|
227
|
-
}
|
|
228
|
-
return clonedNode.innerText.trim();
|
|
229
|
-
});
|
|
230
|
-
this.dispatchChange(this.originalIndex, newIndex, newOrder);
|
|
231
|
-
document.body.style.userSelect = "";
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Prevents the default behavior of the `dragstart` event.
|
|
235
|
-
* @param {DragEvent} e The drag event triggered when a drag operation starts.
|
|
236
|
-
*/
|
|
237
|
-
dragStart(e) {
|
|
238
|
-
e.preventDefault();
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* Creates a clone of the element.
|
|
242
|
-
*/
|
|
243
|
-
createClone() {
|
|
244
|
-
this.cloneEl = this.dragEl.cloneNode(true);
|
|
245
|
-
this.cloneEl.style.position = "absolute";
|
|
246
|
-
this.cloneEl.style.pointerEvents = "none";
|
|
247
|
-
this.cloneEl.style.visibility = "visible";
|
|
248
|
-
document.body.appendChild(this.cloneEl);
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* Checks if the dragged element is moving down.
|
|
252
|
-
* @param droppedElement
|
|
253
|
-
* @returns {boolean}
|
|
254
|
-
*/
|
|
255
|
-
isMovingDown(droppedElement) {
|
|
256
|
-
const parent = droppedElement.parentNode;
|
|
257
|
-
const dragIndex = Array.from(parent.children).indexOf(this.dragEl);
|
|
258
|
-
const dropIndex = Array.from(parent.children).indexOf(droppedElement);
|
|
259
|
-
return dragIndex < dropIndex;
|
|
260
|
-
}
|
|
261
|
-
/**
|
|
262
|
-
* Dispatches a custom event to signal that a reordering operation has occurred.
|
|
263
|
-
* @param {number} from The original index of the dragged item.
|
|
264
|
-
* @param {number} to The new index of the dragged item after reordering.
|
|
265
|
-
* @param {Array<number>} order The updated order of items after the reordering.
|
|
266
|
-
* // @fires wje-reorder:change - Dispatched when the reordering is completed.
|
|
267
|
-
* The event includes details about the initial position, the new position, and the new order.
|
|
268
|
-
*/
|
|
269
|
-
dispatchChange(from, to, order) {
|
|
270
|
-
this.dispatchEvent(
|
|
271
|
-
new CustomEvent("wje-reorder:change", {
|
|
272
|
-
detail: { from, to, order }
|
|
273
|
-
})
|
|
274
|
-
);
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
Reorder.define("wje-reorder", Reorder);
|
|
278
|
-
export {
|
|
279
|
-
Reorder as default
|
|
280
|
-
};
|
|
281
|
-
//# sourceMappingURL=wje-reorder.js.map
|
package/dist/wje-reorder.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wje-reorder.js","sources":["../packages/wje-reorder/reorder.element.js","../packages/wje-reorder/reorder.js"],"sourcesContent":["import { default as WJElement } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `Reorder` is a custom web component that represents a reorder.\n * It extends from `WJElement`.\n * @summary This element represents a reorder.\n * @documentation https://elements.webjet.sk/components/reorder\n * @status stable\n * @augments WJElement\n * @csspart native - The native part of the reorder.\n * @slot - The default slot for the reorder.\n * // @fires wje-reorder:change - Event fired when the reorder is changed.\n * @tag wje-reorder\n */\n\nexport default class Reorder extends WJElement {\n /**\n * Creates an instance of Select.\n * @class\n */\n constructor() {\n super();\n this.dragEl = null;\n this.items = [];\n this.originalIndex = null;\n this.isDragging = false;\n this.offsetX = 0;\n this.offsetY = 0;\n this.cloneEl = null;\n }\n\n /**\n * The class name for the component.\n * @type {string}\n */\n className = 'Select';\n\n /**\n * Returns the CSS styles for the component.\n * @static\n * @returns {CSSStyleSheet}\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Returns the list of attributes to observe for changes.\n * @static\n * @returns {Array<string>}\n */\n static get observedAttributes() {\n return [];\n }\n\n /**\n * Sets up the attributes for the component.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n /**\n * Draws the component after it is connected to the DOM.\n * @returns {DocumentFragment}\n */\n draw() {\n const fragment = document.createDocumentFragment();\n\n const container = document.createElement('div');\n container.classList.add('container');\n container.setAttribute('part', 'native');\n\n const slot = document.createElement('slot');\n slot.classList.add('reorder-items');\n\n container.appendChild(slot);\n\n fragment.appendChild(container);\n\n this.container = container;\n\n return fragment;\n }\n\n /**\n * Adds event listeners after the component is drawn.\n */\n afterDraw() {\n const items = this.querySelectorAll('wje-reorder-item');\n const dropZones = this.querySelectorAll('wje-reorder-dropzone');\n this.container.classList.add(this.hasAttribute('reverse') ? 'reversed' : 'basic');\n\n if (dropZones) {\n dropZones.forEach((dropZone) => {\n this.container.classList.remove('container');\n this.container.classList.add('container-w-dropzones');\n });\n }\n\n if (items) {\n items.forEach((item) => {\n const handles = item.querySelectorAll('[slot=handle]');\n const draggableElement = handles.length > 0 ? handles : [item];\n\n draggableElement.forEach((element) => {\n this.attachEventListeners(element);\n });\n });\n }\n }\n\n /**\n * Attaches event listeners to the element.\n * @param element\n */\n attachEventListeners(element) {\n element.addEventListener('mousedown', this.mouseDown.bind(this), false);\n element.addEventListener('touchstart', this.touchStart.bind(this), false);\n element.addEventListener('dragstart', this.dragStart.bind(this), false);\n }\n\n /**\n * Handles the mouse down event.\n * @param {object} e\n */\n mouseDown(e) {\n this.startDragging(e.clientX, e.clientY, e.currentTarget);\n document.addEventListener('mousemove', this.mouseMove.bind(this), false);\n document.addEventListener('mouseup', this.mouseUp.bind(this), false);\n document.body.style.userSelect = 'none';\n }\n\n /**\n * Handles the touch start event.\n * @param e\n */\n touchStart(e) {\n const touch = e.touches[0];\n this.startDragging(touch.clientX, touch.clientY, e.currentTarget);\n document.addEventListener('touchmove', this.touchMove.bind(this), false);\n document.addEventListener('touchend', this.touchEnd.bind(this), false);\n document.body.style.userSelect = 'none';\n }\n\n /**\n * Initializes the dragging process for a reorderable item.\n * @param {number} clientX The x-coordinate of the mouse pointer when the drag starts.\n * @param {number} clientY The y-coordinate of the mouse pointer when the drag starts.\n * @param {HTMLElement} target The target element where the drag event originated.\n */\n startDragging(clientX, clientY, target) {\n if (this.hasAttribute('disabled')) {\n return;\n }\n\n this.isDragging = true;\n this.dragEl = target.closest('wje-reorder-item');\n\n this.createClone();\n\n this.dragEl.style.opacity = '0.3';\n\n const rect = this.dragEl.getBoundingClientRect();\n this.offsetX = clientX - rect.left;\n this.offsetY = clientY - rect.top;\n\n this.dragEl.classList.add('dragging');\n\n this.originalIndex = [...this.dragEl.parentNode.children].indexOf(this.dragEl);\n this.originalParent = this.dragEl.parentNode;\n }\n\n /**\n * Handles the mouse move event.\n * @param e\n */\n mouseMove(e) {\n if (!this.isDragging) return;\n this.moveElement(e.pageX, e.pageY);\n\n if (this.cloneEl) {\n this.cloneEl.style.left = `${e.pageX - this.offsetX}px`;\n this.cloneEl.style.top = `${e.pageY - this.offsetY}px`;\n }\n }\n\n /**\n * Handles the `touchmove` event and updates the position of the dragged element.\n * @param {TouchEvent} e The touch event containing touch position data.\n */\n touchMove(e) {\n if (!this.isDragging) return;\n const touch = e.touches[0];\n this.moveElement(touch.pageX, touch.pageY);\n }\n\n /**\n * Updates the position of the dragged element and handles reordering logic based on the mouse position.\n * @param {number} pageX The x-coordinate of the mouse pointer relative to the viewport during the move event.\n * @param {number} pageY The y-coordinate of the mouse pointer relative to the viewport during the move event.\n */\n moveElement(pageX, pageY) {\n const scrollX = window.scrollX || document.documentElement.scrollLeft;\n const scrollY = window.scrollY || document.documentElement.scrollTop;\n const adjustedPageX = pageX - scrollX;\n const adjustedPageY = pageY - scrollY;\n\n this.dragEl.style.left = `${adjustedPageX}px`;\n this.dragEl.style.top = `${adjustedPageY}px`;\n\n if (this.cloneEl) {\n this.cloneEl.style.left = `${adjustedPageX}px`;\n this.cloneEl.style.top = `${adjustedPageY}px`;\n }\n\n const items = this.querySelectorAll('wje-reorder-item');\n items.forEach((item) => {\n if (item === this.dragEl) return;\n\n const boundingBox = item.getBoundingClientRect();\n const mouseY = adjustedPageY - boundingBox.top;\n const mouseYPercent = (mouseY / boundingBox.height) * 100;\n\n if (mouseYPercent > 30 && this.isMovingDown(item)) {\n item.parentNode.insertBefore(this.dragEl, item.nextSibling);\n } else if (mouseYPercent < 30 && !this.isMovingDown(item)) {\n item.parentNode.insertBefore(this.dragEl, item);\n }\n });\n }\n\n /**\n * Handles the mouse up event.\n */\n mouseUp() {\n this.stopDragging();\n document.removeEventListener('mousemove', this.mouseMove.bind(this), false);\n document.removeEventListener('mouseup', this.mouseUp.bind(this), false);\n\n if (this.cloneEl) {\n this.cloneEl.remove();\n this.cloneEl = null;\n }\n\n if (this.dragEl) {\n this.dragEl.style.opacity = '1';\n }\n }\n\n /**\n * Handles the touch end event.\n */\n touchEnd() {\n this.stopDragging();\n document.removeEventListener('touchmove', this.touchMove.bind(this), false);\n document.removeEventListener('touchend', this.touchEnd.bind(this), false);\n }\n\n /**\n * Stops dragging the element.\n */\n stopDragging() {\n if (!this.isDragging) return;\n\n this.isDragging = false;\n this.dragEl.classList.remove('dragging');\n this.dragEl.style.left = '';\n this.dragEl.style.top = '';\n\n const parent = this.dragEl.parentNode;\n const newIndex = Array.from(parent.children).indexOf(this.dragEl);\n\n const newOrder = Array.from(parent.children).map((el) => {\n const clonedNode = el.cloneNode(true);\n const handle = clonedNode.querySelector('.handle');\n if (handle) {\n handle.remove();\n }\n return clonedNode.innerText.trim();\n });\n\n this.dispatchChange(this.originalIndex, newIndex, newOrder);\n document.body.style.userSelect = '';\n }\n\n /**\n * Prevents the default behavior of the `dragstart` event.\n * @param {DragEvent} e The drag event triggered when a drag operation starts.\n */\n dragStart(e) {\n e.preventDefault();\n }\n\n /**\n * Creates a clone of the element.\n */\n createClone() {\n this.cloneEl = this.dragEl.cloneNode(true);\n this.cloneEl.style.position = 'absolute';\n this.cloneEl.style.pointerEvents = 'none';\n this.cloneEl.style.visibility = 'visible';\n\n document.body.appendChild(this.cloneEl);\n }\n\n /**\n * Checks if the dragged element is moving down.\n * @param droppedElement\n * @returns {boolean}\n */\n isMovingDown(droppedElement) {\n const parent = droppedElement.parentNode;\n const dragIndex = Array.from(parent.children).indexOf(this.dragEl);\n const dropIndex = Array.from(parent.children).indexOf(droppedElement);\n\n return dragIndex < dropIndex;\n }\n\n /**\n * Dispatches a custom event to signal that a reordering operation has occurred.\n * @param {number} from The original index of the dragged item.\n * @param {number} to The new index of the dragged item after reordering.\n * @param {Array<number>} order The updated order of items after the reordering.\n * // @fires wje-reorder:change - Dispatched when the reordering is completed.\n * The event includes details about the initial position, the new position, and the new order.\n */\n dispatchChange(from, to, order) {\n this.dispatchEvent(\n new CustomEvent('wje-reorder:change', {\n detail: { from, to, order },\n })\n );\n }\n}\n","import Reorder from './reorder.element.js';\n\nexport default Reorder;\n\nReorder.define('wje-reorder', Reorder);\n"],"names":[],"mappings":"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"}
|