@xlabs-store/core 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/components/index.d.ts +35 -0
- package/components/index.js +1 -0
- package/components/p-5c86X8JO.js +1 -0
- package/components/p-6KpqCGp9.js +1 -0
- package/components/p-ADwHM_jT.js +1 -0
- package/components/p-AgSyA7Ia.js +1 -0
- package/components/p-B-7Hwizp.js +1 -0
- package/components/p-B-ClGFfy.js +1 -0
- package/components/p-B4R9Mtmk.js +1 -0
- package/components/p-B4rO7Sgt.js +1 -0
- package/components/p-B5Syz0fw.js +1 -0
- package/components/p-B6p-mzW-.js +1 -0
- package/components/p-B8SZP5Xz.js +1 -0
- package/components/p-BBGHXZqR.js +1 -0
- package/components/p-BHLvuyOq.js +1 -0
- package/components/p-BM-ap7lt.js +1 -0
- package/components/p-BOCR5Zk0.js +1 -0
- package/components/p-BPeosvTA.js +1 -0
- package/components/p-BRBrLtOz.js +1 -0
- package/components/p-BSRP2TGa.js +1 -0
- package/components/p-BUjRcJoK.js +1 -0
- package/components/p-BVeQ5W_G.js +1 -0
- package/components/p-BVnVlCcd.js +1 -0
- package/components/p-BZQcq9R_.js +1 -0
- package/components/p-BeIFU-wn.js +1 -0
- package/components/p-BkEgl31q.js +1 -0
- package/components/p-BkPJ1Whr.js +1 -0
- package/components/p-BkevSugc.js +1 -0
- package/components/p-BkiOFW3H.js +1 -0
- package/components/p-BskMfHyY.js +1 -0
- package/components/p-Bu2JqZs8.js +1 -0
- package/components/p-BvjR2Q5Q.js +1 -0
- package/components/p-Bz7MhZ4K.js +1 -0
- package/components/p-C3gvR6nN.js +1 -0
- package/components/p-C70KKm8p.js +1 -0
- package/components/p-C7csgUoA.js +1 -0
- package/components/p-CAPfC5Vn.js +1 -0
- package/components/p-CEBSDVyp.js +1 -0
- package/components/p-CFB6xkAX.js +1 -0
- package/components/p-CGIxdOEm.js +1 -0
- package/components/p-CGYOWZnh.js +1 -0
- package/components/p-CHRrsVXB.js +1 -0
- package/components/p-CKUzvJue.js +1 -0
- package/components/p-CKVSyuIH.js +1 -0
- package/components/p-COpzIi1n.js +1 -0
- package/components/p-CRBPzT4B.js +1 -0
- package/components/p-CSfrs76m.js +1 -0
- package/components/p-C_ZBjXFP.js +1 -0
- package/components/p-Cd919NAP.js +1 -0
- package/components/p-Ce32Mo_Q.js +1 -0
- package/components/p-Ce5L9qbY.js +1 -0
- package/components/p-CeBfFEIa.js +1 -0
- package/components/p-CfhgoXyB.js +1 -0
- package/components/p-Ck6SW8G3.js +1 -0
- package/components/p-Co3Y9VjQ.js +1 -0
- package/components/p-D66tF8_2.js +1 -0
- package/components/p-D7ijqXRY.js +1 -0
- package/components/p-D7n-26Q5.js +1 -0
- package/components/p-D8ew7Rgv.js +1 -0
- package/components/p-DBk4T-b-.js +1 -0
- package/components/p-DD-W_fMF.js +1 -0
- package/components/p-DElCk9ta.js +1 -0
- package/components/p-DEumEVI3.js +1 -0
- package/components/p-DGqQ8PT4.js +1 -0
- package/components/p-DJ1WhSJ4.js +1 -0
- package/components/p-DOxXxhXb.js +1 -0
- package/components/p-DRa4o4c6.js +1 -0
- package/components/p-DTlSrH8_.js +1 -0
- package/components/p-DTvD0UO5.js +1 -0
- package/components/p-DVz50Dd3.js +1 -0
- package/components/p-DZFphzg1.js +1 -0
- package/components/p-DZPUUptR.js +1 -0
- package/components/p-D_xaGiZU.js +1 -0
- package/components/p-DaL42JUi.js +1 -0
- package/components/p-DbRpEXwX.js +1 -0
- package/components/p-DcRlYBIl.js +1 -0
- package/components/p-Dg0xgMke.js +1 -0
- package/components/p-Dgxy93Bg.js +1 -0
- package/components/p-Dky_8i8S.js +1 -0
- package/components/p-DlwlBBr4.js +1 -0
- package/components/p-DoTf8yXn.js +1 -0
- package/components/p-DphUq6Z5.js +1 -0
- package/components/p-DsgWQbJY.js +1 -0
- package/components/p-Dx3yBe39.js +1 -0
- package/components/p-DxKMnrS8.js +1 -0
- package/components/p-O88oQkR1.js +1 -0
- package/components/p-PlUkLT0A.js +1 -0
- package/components/p-QTSiPk0I.js +1 -0
- package/components/p-TC9DZAbC.js +1 -0
- package/components/p-XBF88YT_.js +1 -0
- package/components/p-bVsOg7S9.js +1 -0
- package/components/p-ccpcKv5U.js +1 -0
- package/components/p-en06CSUT.js +1 -0
- package/components/p-g6ZBqIze.js +1 -0
- package/components/p-noTpj1Kh.js +1 -0
- package/components/x-address.d.ts +11 -0
- package/components/x-address.js +1 -0
- package/components/x-affix.d.ts +11 -0
- package/components/x-affix.js +1 -0
- package/components/x-alert.d.ts +11 -0
- package/components/x-alert.js +1 -0
- package/components/x-anchor-link.d.ts +11 -0
- package/components/x-anchor-link.js +1 -0
- package/components/x-anchor.d.ts +11 -0
- package/components/x-anchor.js +1 -0
- package/components/x-app.d.ts +11 -0
- package/components/x-app.js +1 -0
- package/components/x-auto-complete-dropdown-content.d.ts +11 -0
- package/components/x-auto-complete-dropdown-content.js +1 -0
- package/components/x-auto-complete.d.ts +11 -0
- package/components/x-auto-complete.js +1 -0
- package/components/x-avatar.d.ts +11 -0
- package/components/x-avatar.js +1 -0
- package/components/x-back-top.d.ts +11 -0
- package/components/x-back-top.js +1 -0
- package/components/x-badge.d.ts +11 -0
- package/components/x-badge.js +1 -0
- package/components/x-breadcrumb-item.d.ts +11 -0
- package/components/x-breadcrumb-item.js +1 -0
- package/components/x-breadcrumb.d.ts +11 -0
- package/components/x-breadcrumb.js +1 -0
- package/components/x-button.d.ts +11 -0
- package/components/x-button.js +1 -0
- package/components/x-captcha.d.ts +11 -0
- package/components/x-captcha.js +1 -0
- package/components/x-card.d.ts +11 -0
- package/components/x-card.js +1 -0
- package/components/x-carousel.d.ts +11 -0
- package/components/x-carousel.js +1 -0
- package/components/x-cascader-dropdown-content.d.ts +11 -0
- package/components/x-cascader-dropdown-content.js +1 -0
- package/components/x-cascader.d.ts +11 -0
- package/components/x-cascader.js +1 -0
- package/components/x-checkbox.d.ts +11 -0
- package/components/x-checkbox.js +1 -0
- package/components/x-col.d.ts +11 -0
- package/components/x-col.js +1 -0
- package/components/x-collapse-panel.d.ts +11 -0
- package/components/x-collapse-panel.js +1 -0
- package/components/x-collapse.d.ts +11 -0
- package/components/x-collapse.js +1 -0
- package/components/x-color-picker-panel.d.ts +11 -0
- package/components/x-color-picker-panel.js +1 -0
- package/components/x-color-picker.d.ts +11 -0
- package/components/x-color-picker.js +1 -0
- package/components/x-comment.d.ts +11 -0
- package/components/x-comment.js +1 -0
- package/components/x-content.d.ts +11 -0
- package/components/x-content.js +1 -0
- package/components/x-date-picker-dropdown-content.d.ts +11 -0
- package/components/x-date-picker-dropdown-content.js +1 -0
- package/components/x-date-picker.d.ts +11 -0
- package/components/x-date-picker.js +1 -0
- package/components/x-descriptions-item.d.ts +11 -0
- package/components/x-descriptions-item.js +1 -0
- package/components/x-descriptions.d.ts +11 -0
- package/components/x-descriptions.js +1 -0
- package/components/x-divider.d.ts +11 -0
- package/components/x-divider.js +1 -0
- package/components/x-drawer-content.d.ts +11 -0
- package/components/x-drawer-content.js +1 -0
- package/components/x-drawer.d.ts +11 -0
- package/components/x-drawer.js +1 -0
- package/components/x-dropdown-content.d.ts +11 -0
- package/components/x-dropdown-content.js +1 -0
- package/components/x-dropdown.d.ts +11 -0
- package/components/x-dropdown.js +1 -0
- package/components/x-editor.d.ts +11 -0
- package/components/x-editor.js +1 -0
- package/components/x-empty.d.ts +11 -0
- package/components/x-empty.js +1 -0
- package/components/x-finder.d.ts +11 -0
- package/components/x-finder.js +1 -0
- package/components/x-flex.d.ts +11 -0
- package/components/x-flex.js +1 -0
- package/components/x-float-button.d.ts +11 -0
- package/components/x-float-button.js +1 -0
- package/components/x-footer.d.ts +11 -0
- package/components/x-footer.js +1 -0
- package/components/x-form-builder.d.ts +11 -0
- package/components/x-form-builder.js +1 -0
- package/components/x-form-item.d.ts +11 -0
- package/components/x-form-item.js +1 -0
- package/components/x-form.d.ts +11 -0
- package/components/x-form.js +1 -0
- package/components/x-header.d.ts +11 -0
- package/components/x-header.js +1 -0
- package/components/x-icon.d.ts +11 -0
- package/components/x-icon.js +1 -0
- package/components/x-image.d.ts +11 -0
- package/components/x-image.js +1 -0
- package/components/x-infinite-scroll.d.ts +11 -0
- package/components/x-infinite-scroll.js +1 -0
- package/components/x-input-number.d.ts +11 -0
- package/components/x-input-number.js +1 -0
- package/components/x-input.d.ts +11 -0
- package/components/x-input.js +1 -0
- package/components/x-layout.d.ts +11 -0
- package/components/x-layout.js +1 -0
- package/components/x-list-item.d.ts +11 -0
- package/components/x-list-item.js +1 -0
- package/components/x-list.d.ts +11 -0
- package/components/x-list.js +1 -0
- package/components/x-mentions.d.ts +11 -0
- package/components/x-mentions.js +1 -0
- package/components/x-menu-divider.d.ts +11 -0
- package/components/x-menu-divider.js +1 -0
- package/components/x-menu-item-group.d.ts +11 -0
- package/components/x-menu-item-group.js +1 -0
- package/components/x-menu-item.d.ts +11 -0
- package/components/x-menu-item.js +1 -0
- package/components/x-menu-submenu.d.ts +11 -0
- package/components/x-menu-submenu.js +1 -0
- package/components/x-menu.d.ts +11 -0
- package/components/x-menu.js +1 -0
- package/components/x-message.d.ts +11 -0
- package/components/x-message.js +1 -0
- package/components/x-modal-content.d.ts +11 -0
- package/components/x-modal-content.js +1 -0
- package/components/x-modal.d.ts +11 -0
- package/components/x-modal.js +1 -0
- package/components/x-notification.d.ts +11 -0
- package/components/x-notification.js +1 -0
- package/components/x-page-header.d.ts +11 -0
- package/components/x-page-header.js +1 -0
- package/components/x-pagination.d.ts +11 -0
- package/components/x-pagination.js +1 -0
- package/components/x-popconfirm-content.d.ts +11 -0
- package/components/x-popconfirm-content.js +1 -0
- package/components/x-popconfirm.d.ts +11 -0
- package/components/x-popconfirm.js +1 -0
- package/components/x-popover-content.d.ts +11 -0
- package/components/x-popover-content.js +1 -0
- package/components/x-popover.d.ts +11 -0
- package/components/x-popover.js +1 -0
- package/components/x-progress.d.ts +11 -0
- package/components/x-progress.js +1 -0
- package/components/x-qr-code.d.ts +11 -0
- package/components/x-qr-code.js +1 -0
- package/components/x-radio-group.d.ts +11 -0
- package/components/x-radio-group.js +1 -0
- package/components/x-radio.d.ts +11 -0
- package/components/x-radio.js +1 -0
- package/components/x-range-picker-dropdown-content.d.ts +11 -0
- package/components/x-range-picker-dropdown-content.js +1 -0
- package/components/x-range-picker.d.ts +11 -0
- package/components/x-range-picker.js +1 -0
- package/components/x-rate.d.ts +11 -0
- package/components/x-rate.js +1 -0
- package/components/x-result.d.ts +11 -0
- package/components/x-result.js +1 -0
- package/components/x-row.d.ts +11 -0
- package/components/x-row.js +1 -0
- package/components/x-segmented.d.ts +11 -0
- package/components/x-segmented.js +1 -0
- package/components/x-select-dropdown-content.d.ts +11 -0
- package/components/x-select-dropdown-content.js +1 -0
- package/components/x-select-option.d.ts +11 -0
- package/components/x-select-option.js +1 -0
- package/components/x-select.d.ts +11 -0
- package/components/x-select.js +1 -0
- package/components/x-sider.d.ts +11 -0
- package/components/x-sider.js +1 -0
- package/components/x-skeleton.d.ts +11 -0
- package/components/x-skeleton.js +1 -0
- package/components/x-slider.d.ts +11 -0
- package/components/x-slider.js +1 -0
- package/components/x-space.d.ts +11 -0
- package/components/x-space.js +1 -0
- package/components/x-spin.d.ts +11 -0
- package/components/x-spin.js +1 -0
- package/components/x-splitter-panel.d.ts +11 -0
- package/components/x-splitter-panel.js +1 -0
- package/components/x-splitter.d.ts +11 -0
- package/components/x-splitter.js +1 -0
- package/components/x-statistic.d.ts +11 -0
- package/components/x-statistic.js +1 -0
- package/components/x-step.d.ts +11 -0
- package/components/x-step.js +1 -0
- package/components/x-steps.d.ts +11 -0
- package/components/x-steps.js +1 -0
- package/components/x-switch.d.ts +11 -0
- package/components/x-switch.js +1 -0
- package/components/x-tab-pane.d.ts +11 -0
- package/components/x-tab-pane.js +1 -0
- package/components/x-table-cell.d.ts +11 -0
- package/components/x-table-cell.js +1 -0
- package/components/x-table-row.d.ts +11 -0
- package/components/x-table-row.js +1 -0
- package/components/x-table.d.ts +11 -0
- package/components/x-table.js +1 -0
- package/components/x-tabs.d.ts +11 -0
- package/components/x-tabs.js +1 -0
- package/components/x-tag.d.ts +11 -0
- package/components/x-tag.js +1 -0
- package/components/x-textarea.d.ts +11 -0
- package/components/x-textarea.js +1 -0
- package/components/x-time-picker-dropdown-content.d.ts +11 -0
- package/components/x-time-picker-dropdown-content.js +1 -0
- package/components/x-time-picker.d.ts +11 -0
- package/components/x-time-picker.js +1 -0
- package/components/x-timeline-item.d.ts +11 -0
- package/components/x-timeline-item.js +1 -0
- package/components/x-timeline.d.ts +11 -0
- package/components/x-timeline.js +1 -0
- package/components/x-tooltip-content.d.ts +11 -0
- package/components/x-tooltip-content.js +1 -0
- package/components/x-tooltip.d.ts +11 -0
- package/components/x-tooltip.js +1 -0
- package/components/x-tour-panel.d.ts +11 -0
- package/components/x-tour-panel.js +1 -0
- package/components/x-tour.d.ts +11 -0
- package/components/x-tour.js +1 -0
- package/components/x-transfer.d.ts +11 -0
- package/components/x-transfer.js +1 -0
- package/components/x-tree-select-dropdown-content.d.ts +11 -0
- package/components/x-tree-select-dropdown-content.js +1 -0
- package/components/x-tree-select.d.ts +11 -0
- package/components/x-tree-select.js +1 -0
- package/components/x-tree.d.ts +11 -0
- package/components/x-tree.js +1 -0
- package/components/x-typography.d.ts +11 -0
- package/components/x-typography.js +1 -0
- package/components/x-upload.d.ts +11 -0
- package/components/x-upload.js +1 -0
- package/components/x-virtual-scroll.d.ts +11 -0
- package/components/x-virtual-scroll.js +1 -0
- package/components/x-workflow-builder.d.ts +11 -0
- package/components/x-workflow-builder.js +1 -0
- package/components/x-workflow.d.ts +11 -0
- package/components/x-workflow.js +1 -0
- package/dist/cjs/abstract-control-C4D0eNCC.js +277 -0
- package/dist/cjs/config-BP9bROYD.js +63 -0
- package/dist/cjs/index-C7sKs9A2.js +2170 -0
- package/dist/cjs/index.cjs.js +14 -0
- package/dist/cjs/loader.cjs.js +12 -0
- package/dist/cjs/locale.service-Cz-aZQnr.js +8203 -0
- package/dist/cjs/modal-service-BtAF0mFq.js +399 -0
- package/dist/cjs/notification-service-m6I5U9aG.js +602 -0
- package/dist/cjs/portal-controller-CtYVbhXL.js +504 -0
- package/dist/cjs/schema-builder-CYnX7lKi.js +1505 -0
- package/dist/cjs/tree.service-fxLOCSpD.js +339 -0
- package/dist/cjs/types-DQ-V76ZQ.js +255 -0
- package/dist/cjs/x-address_14.cjs.entry.js +12577 -0
- package/dist/cjs/x-affix.cjs.entry.js +182 -0
- package/dist/cjs/x-alert_11.cjs.entry.js +3239 -0
- package/dist/cjs/x-anchor-link.cjs.entry.js +67 -0
- package/dist/cjs/x-anchor.cjs.entry.js +158 -0
- package/dist/cjs/x-app.cjs.entry.js +137 -0
- package/dist/cjs/x-auto-complete-dropdown-content.cjs.entry.js +69 -0
- package/dist/cjs/x-avatar.cjs.entry.js +269 -0
- package/dist/cjs/x-back-top.cjs.entry.js +89 -0
- package/dist/cjs/x-breadcrumb_5.cjs.entry.js +1554 -0
- package/dist/cjs/x-button.cjs.entry.js +174 -0
- package/dist/cjs/x-card_12.cjs.entry.js +1386 -0
- package/dist/cjs/x-carousel.cjs.entry.js +147 -0
- package/dist/cjs/x-cascader-dropdown-content.cjs.entry.js +364 -0
- package/dist/cjs/x-checkbox_5.cjs.entry.js +1376 -0
- package/dist/cjs/x-collapse-panel.cjs.entry.js +243 -0
- package/dist/cjs/x-collapse.cjs.entry.js +291 -0
- package/dist/cjs/x-color-picker-panel_2.cjs.entry.js +873 -0
- package/dist/cjs/x-color-picker_9.cjs.entry.js +3085 -0
- package/dist/cjs/x-comment.cjs.entry.js +189 -0
- package/dist/cjs/x-date-picker-dropdown-content.cjs.entry.js +757 -0
- package/dist/cjs/x-descriptions-item.cjs.entry.js +108 -0
- package/dist/cjs/x-drawer-content.cjs.entry.js +197 -0
- package/dist/cjs/x-drawer.cjs.entry.js +294 -0
- package/dist/cjs/x-dropdown_2.cjs.entry.js +735 -0
- package/dist/cjs/x-empty.cjs.entry.js +64 -0
- package/dist/cjs/x-finder.cjs.entry.js +647 -0
- package/dist/cjs/x-form-builder.cjs.entry.js +807 -0
- package/dist/cjs/x-icon.cjs.entry.js +144 -0
- package/dist/cjs/x-infinite-scroll.cjs.entry.js +129 -0
- package/dist/cjs/x-list-item.cjs.entry.js +27 -0
- package/dist/cjs/x-list.cjs.entry.js +138 -0
- package/dist/cjs/x-mentions.cjs.entry.js +275 -0
- package/dist/cjs/x-menu-divider.cjs.entry.js +49 -0
- package/dist/cjs/x-menu-item-group.cjs.entry.js +149 -0
- package/dist/cjs/x-menu-submenu.cjs.entry.js +373 -0
- package/dist/cjs/x-message.cjs.entry.js +219 -0
- package/dist/cjs/x-modal-content.cjs.entry.js +217 -0
- package/dist/cjs/x-notification.cjs.entry.js +325 -0
- package/dist/cjs/x-page-header.cjs.entry.js +67 -0
- package/dist/cjs/x-popconfirm-content.cjs.entry.js +72 -0
- package/dist/cjs/x-popconfirm.cjs.entry.js +181 -0
- package/dist/cjs/x-progress.cjs.entry.js +136 -0
- package/dist/cjs/x-qr-code.cjs.entry.js +446 -0
- package/dist/cjs/x-range-picker-dropdown-content.cjs.entry.js +821 -0
- package/dist/cjs/x-select_2.cjs.entry.js +1316 -0
- package/dist/cjs/x-skeleton.cjs.entry.js +75 -0
- package/dist/cjs/x-spin.cjs.entry.js +62 -0
- package/dist/cjs/x-splitter-panel.cjs.entry.js +91 -0
- package/dist/cjs/x-splitter.cjs.entry.js +612 -0
- package/dist/cjs/x-statistic.cjs.entry.js +104 -0
- package/dist/cjs/x-step.cjs.entry.js +179 -0
- package/dist/cjs/x-steps.cjs.entry.js +439 -0
- package/dist/cjs/x-tab-pane.cjs.entry.js +73 -0
- package/dist/cjs/x-table-cell.cjs.entry.js +45 -0
- package/dist/cjs/x-table-row.cjs.entry.js +85 -0
- package/dist/cjs/x-tabs.cjs.entry.js +609 -0
- package/dist/cjs/x-time-picker-dropdown-content.cjs.entry.js +389 -0
- package/dist/cjs/x-timeline-item.cjs.entry.js +50 -0
- package/dist/cjs/x-timeline.cjs.entry.js +52 -0
- package/dist/cjs/x-tour-panel.cjs.entry.js +89 -0
- package/dist/cjs/x-tour.cjs.entry.js +344 -0
- package/dist/cjs/x-tree-select-dropdown-content.cjs.entry.js +439 -0
- package/dist/cjs/x-virtual-scroll.cjs.entry.js +203 -0
- package/dist/cjs/x-workflow-builder.cjs.entry.js +366 -0
- package/dist/cjs/xlabs-store.cjs.js +24 -0
- package/dist/collection/collection-manifest.json +130 -0
- package/dist/collection/components/x-address/vietnam-data.js +28 -0
- package/dist/collection/components/x-address/x-address.css +367 -0
- package/dist/collection/components/x-address/x-address.js +403 -0
- package/dist/collection/components/x-affix/x-affix.css +27 -0
- package/dist/collection/components/x-affix/x-affix.js +299 -0
- package/dist/collection/components/x-alert/x-alert.css +475 -0
- package/dist/collection/components/x-alert/x-alert.js +273 -0
- package/dist/collection/components/x-anchor/x-anchor.css +74 -0
- package/dist/collection/components/x-anchor/x-anchor.js +371 -0
- package/dist/collection/components/x-anchor-link/x-anchor-link.css +43 -0
- package/dist/collection/components/x-anchor-link/x-anchor-link.js +145 -0
- package/dist/collection/components/x-app/x-app.css +14 -0
- package/dist/collection/components/x-app/x-app.js +308 -0
- package/dist/collection/components/x-auto-complete/auto-complete-dropdown-content/auto-complete-dropdown-content.css +410 -0
- package/dist/collection/components/x-auto-complete/auto-complete-dropdown-content/auto-complete-dropdown-content.js +166 -0
- package/dist/collection/components/x-auto-complete/auto-complete-dropdown-content/index.js +1 -0
- package/dist/collection/components/x-auto-complete/auto-complete-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-auto-complete/types.js +61 -0
- package/dist/collection/components/x-auto-complete/x-auto-complete.css +535 -0
- package/dist/collection/components/x-auto-complete/x-auto-complete.js +1829 -0
- package/dist/collection/components/x-avatar/types.js +1 -0
- package/dist/collection/components/x-avatar/x-avatar.css +128 -0
- package/dist/collection/components/x-avatar/x-avatar.js +533 -0
- package/dist/collection/components/x-back-top/x-back-top.css +56 -0
- package/dist/collection/components/x-back-top/x-back-top.js +148 -0
- package/dist/collection/components/x-badge/types.js +1 -0
- package/dist/collection/components/x-badge/x-badge.css +233 -0
- package/dist/collection/components/x-badge/x-badge.js +618 -0
- package/dist/collection/components/x-breadcrumb/x-breadcrumb.css +44 -0
- package/dist/collection/components/x-breadcrumb/x-breadcrumb.js +96 -0
- package/dist/collection/components/x-breadcrumb-item/x-breadcrumb-item.css +63 -0
- package/dist/collection/components/x-breadcrumb-item/x-breadcrumb-item.js +147 -0
- package/dist/collection/components/x-button/x-button.css +278 -0
- package/dist/collection/components/x-button/x-button.js +488 -0
- package/dist/collection/components/x-captcha/x-captcha.css +125 -0
- package/dist/collection/components/x-captcha/x-captcha.js +408 -0
- package/dist/collection/components/x-card/x-card.css +523 -0
- package/dist/collection/components/x-card/x-card.js +389 -0
- package/dist/collection/components/x-carousel/x-carousel.css +417 -0
- package/dist/collection/components/x-carousel/x-carousel.js +257 -0
- package/dist/collection/components/x-cascader/cascader-dropdown-content/cascader-dropdown-content.css +529 -0
- package/dist/collection/components/x-cascader/cascader-dropdown-content/cascader-dropdown-content.js +771 -0
- package/dist/collection/components/x-cascader/cascader-dropdown-content/index.js +2 -0
- package/dist/collection/components/x-cascader/cascader-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-cascader/types.js +1 -0
- package/dist/collection/components/x-cascader/x-cascader.css +691 -0
- package/dist/collection/components/x-cascader/x-cascader.js +1841 -0
- package/dist/collection/components/x-checkbox/types.js +1 -0
- package/dist/collection/components/x-checkbox/x-checkbox.css +541 -0
- package/dist/collection/components/x-checkbox/x-checkbox.js +681 -0
- package/dist/collection/components/x-col/x-col.css +1704 -0
- package/dist/collection/components/x-col/x-col.js +479 -0
- package/dist/collection/components/x-collapse/types.js +1 -0
- package/dist/collection/components/x-collapse/x-collapse.css +384 -0
- package/dist/collection/components/x-collapse/x-collapse.js +579 -0
- package/dist/collection/components/x-collapse-panel/x-collapse-panel.css +486 -0
- package/dist/collection/components/x-collapse-panel/x-collapse-panel.js +500 -0
- package/dist/collection/components/x-color-picker/types.js +251 -0
- package/dist/collection/components/x-color-picker/x-color-picker-panel.css +310 -0
- package/dist/collection/components/x-color-picker/x-color-picker-panel.js +575 -0
- package/dist/collection/components/x-color-picker/x-color-picker.css +446 -0
- package/dist/collection/components/x-color-picker/x-color-picker.js +1209 -0
- package/dist/collection/components/x-comment/types.js +1 -0
- package/dist/collection/components/x-comment/x-comment.css +442 -0
- package/dist/collection/components/x-comment/x-comment.js +306 -0
- package/dist/collection/components/x-content/types.js +1 -0
- package/dist/collection/components/x-content/x-content.css +361 -0
- package/dist/collection/components/x-content/x-content.js +402 -0
- package/dist/collection/components/x-date-picker/date-picker-dropdown-content/date-picker-dropdown-content.css +691 -0
- package/dist/collection/components/x-date-picker/date-picker-dropdown-content/date-picker-dropdown-content.js +1496 -0
- package/dist/collection/components/x-date-picker/date-picker-dropdown-content/index.js +1 -0
- package/dist/collection/components/x-date-picker/date-picker-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-date-picker/types.js +1 -0
- package/dist/collection/components/x-date-picker/x-date-picker.css +804 -0
- package/dist/collection/components/x-date-picker/x-date-picker.js +2110 -0
- package/dist/collection/components/x-descriptions/types.js +1 -0
- package/dist/collection/components/x-descriptions/x-descriptions.css +417 -0
- package/dist/collection/components/x-descriptions/x-descriptions.js +494 -0
- package/dist/collection/components/x-descriptions-item/x-descriptions-item.css +387 -0
- package/dist/collection/components/x-descriptions-item/x-descriptions-item.js +238 -0
- package/dist/collection/components/x-divider/x-divider.css +417 -0
- package/dist/collection/components/x-divider/x-divider.js +263 -0
- package/dist/collection/components/x-drawer/x-drawer.css +333 -0
- package/dist/collection/components/x-drawer/x-drawer.js +623 -0
- package/dist/collection/components/x-drawer-content/x-drawer-content.css +481 -0
- package/dist/collection/components/x-drawer-content/x-drawer-content.js +579 -0
- package/dist/collection/components/x-dropdown/dropdown-content/dropdown-content.css +673 -0
- package/dist/collection/components/x-dropdown/dropdown-content/dropdown-content.js +294 -0
- package/dist/collection/components/x-dropdown/dropdown-content/types.js +1 -0
- package/dist/collection/components/x-dropdown/types.js +1 -0
- package/dist/collection/components/x-dropdown/x-dropdown.css +669 -0
- package/dist/collection/components/x-dropdown/x-dropdown.js +1004 -0
- package/dist/collection/components/x-editor/editor-history.js +118 -0
- package/dist/collection/components/x-editor/editor-normalizer.js +263 -0
- package/dist/collection/components/x-editor/editor-parser.js +326 -0
- package/dist/collection/components/x-editor/editor-selection.js +415 -0
- package/dist/collection/components/x-editor/types.js +33 -0
- package/dist/collection/components/x-editor/x-editor.css +599 -0
- package/dist/collection/components/x-editor/x-editor.js +1636 -0
- package/dist/collection/components/x-empty/x-empty.css +357 -0
- package/dist/collection/components/x-empty/x-empty.js +117 -0
- package/dist/collection/components/x-finder/services/finder-service.js +250 -0
- package/dist/collection/components/x-finder/types.js +1 -0
- package/dist/collection/components/x-finder/x-finder.css +633 -0
- package/dist/collection/components/x-finder/x-finder.js +540 -0
- package/dist/collection/components/x-flex/x-flex.css +344 -0
- package/dist/collection/components/x-flex/x-flex.js +285 -0
- package/dist/collection/components/x-float-button/x-float-button.css +389 -0
- package/dist/collection/components/x-float-button/x-float-button.js +265 -0
- package/dist/collection/components/x-footer/x-footer.css +346 -0
- package/dist/collection/components/x-footer/x-footer.js +29 -0
- package/dist/collection/components/x-form/x-form.css +365 -0
- package/dist/collection/components/x-form/x-form.js +355 -0
- package/dist/collection/components/x-form-builder/services/apis/api-client.js +240 -0
- package/dist/collection/components/x-form-builder/services/constants/index.js +33 -0
- package/dist/collection/components/x-form-builder/services/forms/abstract-control.js +175 -0
- package/dist/collection/components/x-form-builder/services/forms/form-array.js +92 -0
- package/dist/collection/components/x-form-builder/services/forms/form-builder.js +40 -0
- package/dist/collection/components/x-form-builder/services/forms/form-control.js +33 -0
- package/dist/collection/components/x-form-builder/services/forms/form-group.js +150 -0
- package/dist/collection/components/x-form-builder/services/forms/index.js +7 -0
- package/dist/collection/components/x-form-builder/services/forms/types.js +1 -0
- package/dist/collection/components/x-form-builder/services/forms/validators.js +83 -0
- package/dist/collection/components/x-form-builder/services/schema/condition-builder.js +337 -0
- package/dist/collection/components/x-form-builder/services/schema/default-registry.js +440 -0
- package/dist/collection/components/x-form-builder/services/schema/form-mapping.js +176 -0
- package/dist/collection/components/x-form-builder/services/schema/form-registry.js +30 -0
- package/dist/collection/components/x-form-builder/services/schema/schema-actions.js +3 -0
- package/dist/collection/components/x-form-builder/services/schema/schema-builder.js +52 -0
- package/dist/collection/components/x-form-builder/services/schema/schema-validator.js +53 -0
- package/dist/collection/components/x-form-builder/types/api/api-common-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/api/api-interfaces.js +1 -0
- package/dist/collection/components/x-form-builder/types/api/index.js +2 -0
- package/dist/collection/components/x-form-builder/types/common/common-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/common/condition-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/common/field-types-enum.js +1 -0
- package/dist/collection/components/x-form-builder/types/common/index.js +7 -0
- package/dist/collection/components/x-form-builder/types/common/shared-interfaces.js +1 -0
- package/dist/collection/components/x-form-builder/types/common/validation-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/common/value-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/event/event-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/event/index.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/advanced-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/base-field.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/datetime-file-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/display-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/form-field-union.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/index.js +9 -0
- package/dist/collection/components/x-form-builder/types/fields/input-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/layout-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/fields/selection-fields.js +10 -0
- package/dist/collection/components/x-form-builder/types/fields/special-input-fields.js +1 -0
- package/dist/collection/components/x-form-builder/types/form/events-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/form/form-config.js +50 -0
- package/dist/collection/components/x-form-builder/types/form/index.js +2 -0
- package/dist/collection/components/x-form-builder/types/form/schema-types.js +1 -0
- package/dist/collection/components/x-form-builder/types/index.js +4 -0
- package/dist/collection/components/x-form-builder/utils/condition-engine.js +118 -0
- package/dist/collection/components/x-form-builder/utils/utils.js +138 -0
- package/dist/collection/components/x-form-builder/utils/values.js +36 -0
- package/dist/collection/components/x-form-builder/x-form-builder.css +3 -0
- package/dist/collection/components/x-form-builder/x-form-builder.js +1017 -0
- package/dist/collection/components/x-form-item/x-form-item.css +564 -0
- package/dist/collection/components/x-form-item/x-form-item.js +538 -0
- package/dist/collection/components/x-header/x-header.css +344 -0
- package/dist/collection/components/x-header/x-header.js +29 -0
- package/dist/collection/components/x-icon/fonts/xlabs-outlined.woff2 +0 -0
- package/dist/collection/components/x-icon/fonts/xlabs-rounded.woff2 +0 -0
- package/dist/collection/components/x-icon/fonts/xlabs-solided.woff2 +0 -0
- package/dist/collection/components/x-icon/icons.js +2716 -0
- package/dist/collection/components/x-icon/x-icon.css +378 -0
- package/dist/collection/components/x-icon/x-icon.js +353 -0
- package/dist/collection/components/x-image/types.js +1 -0
- package/dist/collection/components/x-image/x-image.css +556 -0
- package/dist/collection/components/x-image/x-image.js +628 -0
- package/dist/collection/components/x-infinite-scroll/x-infinite-scroll.css +345 -0
- package/dist/collection/components/x-infinite-scroll/x-infinite-scroll.js +294 -0
- package/dist/collection/components/x-input/types.js +1 -0
- package/dist/collection/components/x-input/x-input.css +640 -0
- package/dist/collection/components/x-input/x-input.js +1449 -0
- package/dist/collection/components/x-input-number/types.js +96 -0
- package/dist/collection/components/x-input-number/x-input-number.css +612 -0
- package/dist/collection/components/x-input-number/x-input-number.js +1488 -0
- package/dist/collection/components/x-layout/x-layout.css +361 -0
- package/dist/collection/components/x-layout/x-layout.js +188 -0
- package/dist/collection/components/x-list/x-list.css +382 -0
- package/dist/collection/components/x-list/x-list.js +373 -0
- package/dist/collection/components/x-list-item/x-list-item.css +351 -0
- package/dist/collection/components/x-list-item/x-list-item.js +31 -0
- package/dist/collection/components/x-mentions/types.js +1 -0
- package/dist/collection/components/x-mentions/x-mentions.css +388 -0
- package/dist/collection/components/x-mentions/x-mentions.js +528 -0
- package/dist/collection/components/x-menu/types.js +1 -0
- package/dist/collection/components/x-menu/x-menu.css +78 -0
- package/dist/collection/components/x-menu/x-menu.js +793 -0
- package/dist/collection/components/x-menu-divider/types.js +1 -0
- package/dist/collection/components/x-menu-divider/x-menu-divider.css +31 -0
- package/dist/collection/components/x-menu-divider/x-menu-divider.js +126 -0
- package/dist/collection/components/x-menu-item/types.js +1 -0
- package/dist/collection/components/x-menu-item/x-menu-item.css +183 -0
- package/dist/collection/components/x-menu-item/x-menu-item.js +449 -0
- package/dist/collection/components/x-menu-item-group/types.js +1 -0
- package/dist/collection/components/x-menu-item-group/x-menu-item-group.css +45 -0
- package/dist/collection/components/x-menu-item-group/x-menu-item-group.js +299 -0
- package/dist/collection/components/x-menu-submenu/types.js +1 -0
- package/dist/collection/components/x-menu-submenu/x-menu-submenu.css +236 -0
- package/dist/collection/components/x-menu-submenu/x-menu-submenu.js +775 -0
- package/dist/collection/components/x-message/message-service.js +263 -0
- package/dist/collection/components/x-message/types.js +1 -0
- package/dist/collection/components/x-message/x-message.css +402 -0
- package/dist/collection/components/x-message/x-message.js +487 -0
- package/dist/collection/components/x-modal/modal-service.js +402 -0
- package/dist/collection/components/x-modal/modal-service.types.js +1 -0
- package/dist/collection/components/x-modal/x-modal.css +468 -0
- package/dist/collection/components/x-modal/x-modal.js +683 -0
- package/dist/collection/components/x-modal-content/index.js +1 -0
- package/dist/collection/components/x-modal-content/types.js +1 -0
- package/dist/collection/components/x-modal-content/x-modal-content.css +749 -0
- package/dist/collection/components/x-modal-content/x-modal-content.js +701 -0
- package/dist/collection/components/x-notification/notification-service.js +335 -0
- package/dist/collection/components/x-notification/types.js +1 -0
- package/dist/collection/components/x-notification/x-notification.css +486 -0
- package/dist/collection/components/x-notification/x-notification.js +788 -0
- package/dist/collection/components/x-page-header/x-page-header.css +406 -0
- package/dist/collection/components/x-page-header/x-page-header.js +159 -0
- package/dist/collection/components/x-pagination/types.js +1 -0
- package/dist/collection/components/x-pagination/x-pagination.css +705 -0
- package/dist/collection/components/x-pagination/x-pagination.js +1241 -0
- package/dist/collection/components/x-popconfirm/popconfirm-content/popconfirm-content.css +456 -0
- package/dist/collection/components/x-popconfirm/popconfirm-content/popconfirm-content.js +244 -0
- package/dist/collection/components/x-popconfirm/x-popconfirm.css +412 -0
- package/dist/collection/components/x-popconfirm/x-popconfirm.js +355 -0
- package/dist/collection/components/x-popover/popover-content/popover-content.css +437 -0
- package/dist/collection/components/x-popover/popover-content/popover-content.js +261 -0
- package/dist/collection/components/x-popover/x-popover.css +442 -0
- package/dist/collection/components/x-popover/x-popover.js +390 -0
- package/dist/collection/components/x-portal/debug.js +42 -0
- package/dist/collection/components/x-portal/index.js +1 -0
- package/dist/collection/components/x-portal/portal-controller.js +146 -0
- package/dist/collection/components/x-portal/positioning.js +332 -0
- package/dist/collection/components/x-portal/types.js +1 -0
- package/dist/collection/components/x-portal/x-portal.js +21 -0
- package/dist/collection/components/x-progress/x-progress.css +424 -0
- package/dist/collection/components/x-progress/x-progress.js +326 -0
- package/dist/collection/components/x-qr-code/x-qr-code.css +37 -0
- package/dist/collection/components/x-qr-code/x-qr-code.js +292 -0
- package/dist/collection/components/x-radio/types.js +1 -0
- package/dist/collection/components/x-radio/x-radio.css +523 -0
- package/dist/collection/components/x-radio/x-radio.js +689 -0
- package/dist/collection/components/x-radio-group/types.js +1 -0
- package/dist/collection/components/x-radio-group/x-radio-group.css +326 -0
- package/dist/collection/components/x-radio-group/x-radio-group.js +531 -0
- package/dist/collection/components/x-range-picker/range-picker-dropdown-content/index.js +1 -0
- package/dist/collection/components/x-range-picker/range-picker-dropdown-content/range-picker-dropdown-content.css +609 -0
- package/dist/collection/components/x-range-picker/range-picker-dropdown-content/range-picker-dropdown-content.js +1497 -0
- package/dist/collection/components/x-range-picker/range-picker-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-range-picker/types.js +1 -0
- package/dist/collection/components/x-range-picker/x-range-picker.css +775 -0
- package/dist/collection/components/x-range-picker/x-range-picker.js +1883 -0
- package/dist/collection/components/x-rate/x-rate.css +396 -0
- package/dist/collection/components/x-rate/x-rate.js +445 -0
- package/dist/collection/components/x-result/types.js +1 -0
- package/dist/collection/components/x-result/x-result.css +434 -0
- package/dist/collection/components/x-result/x-result.js +376 -0
- package/dist/collection/components/x-row/x-row.css +345 -0
- package/dist/collection/components/x-row/x-row.js +196 -0
- package/dist/collection/components/x-segmented/types.js +1 -0
- package/dist/collection/components/x-segmented/x-segmented.css +407 -0
- package/dist/collection/components/x-segmented/x-segmented.js +414 -0
- package/dist/collection/components/x-select/select-dropdown-content/index.js +1 -0
- package/dist/collection/components/x-select/select-dropdown-content/select-dropdown-content.css +827 -0
- package/dist/collection/components/x-select/select-dropdown-content/select-dropdown-content.js +163 -0
- package/dist/collection/components/x-select/select-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-select/types.js +9 -0
- package/dist/collection/components/x-select/x-select.css +823 -0
- package/dist/collection/components/x-select/x-select.js +2247 -0
- package/dist/collection/components/x-select-option/x-select-option.css +379 -0
- package/dist/collection/components/x-select-option/x-select-option.js +207 -0
- package/dist/collection/components/x-sider/x-sider.css +379 -0
- package/dist/collection/components/x-sider/x-sider.js +379 -0
- package/dist/collection/components/x-skeleton/x-skeleton.css +400 -0
- package/dist/collection/components/x-skeleton/x-skeleton.js +221 -0
- package/dist/collection/components/x-slider/types.js +1 -0
- package/dist/collection/components/x-slider/x-slider.css +511 -0
- package/dist/collection/components/x-slider/x-slider.js +785 -0
- package/dist/collection/components/x-space/x-space.css +339 -0
- package/dist/collection/components/x-space/x-space.js +228 -0
- package/dist/collection/components/x-spin/x-spin.css +465 -0
- package/dist/collection/components/x-spin/x-spin.js +142 -0
- package/dist/collection/components/x-splitter/types.js +1 -0
- package/dist/collection/components/x-splitter/x-splitter.css +181 -0
- package/dist/collection/components/x-splitter/x-splitter.js +884 -0
- package/dist/collection/components/x-splitter-panel/types.js +1 -0
- package/dist/collection/components/x-splitter-panel/x-splitter-panel.css +25 -0
- package/dist/collection/components/x-splitter-panel/x-splitter-panel.js +292 -0
- package/dist/collection/components/x-statistic/x-statistic.css +366 -0
- package/dist/collection/components/x-statistic/x-statistic.js +291 -0
- package/dist/collection/components/x-step/types.js +1 -0
- package/dist/collection/components/x-step/x-step.css +801 -0
- package/dist/collection/components/x-step/x-step.js +539 -0
- package/dist/collection/components/x-steps/types.js +1 -0
- package/dist/collection/components/x-steps/x-steps.css +830 -0
- package/dist/collection/components/x-steps/x-steps.js +1032 -0
- package/dist/collection/components/x-switch/types.js +1 -0
- package/dist/collection/components/x-switch/x-switch.css +463 -0
- package/dist/collection/components/x-switch/x-switch.js +356 -0
- package/dist/collection/components/x-tab-pane/x-tab-pane.css +337 -0
- package/dist/collection/components/x-tab-pane/x-tab-pane.js +243 -0
- package/dist/collection/components/x-table/column-util.js +87 -0
- package/dist/collection/components/x-table/types.js +1 -0
- package/dist/collection/components/x-table/x-table.css +898 -0
- package/dist/collection/components/x-table/x-table.js +2464 -0
- package/dist/collection/components/x-table-cell/x-table-cell.css +337 -0
- package/dist/collection/components/x-table-cell/x-table-cell.js +167 -0
- package/dist/collection/components/x-table-row/x-table-row.css +336 -0
- package/dist/collection/components/x-table-row/x-table-row.js +172 -0
- package/dist/collection/components/x-tabs/types.js +1 -0
- package/dist/collection/components/x-tabs/x-tabs.css +664 -0
- package/dist/collection/components/x-tabs/x-tabs.js +1264 -0
- package/dist/collection/components/x-tag/types.js +1 -0
- package/dist/collection/components/x-tag/x-tag.css +1047 -0
- package/dist/collection/components/x-tag/x-tag.js +535 -0
- package/dist/collection/components/x-textarea/x-textarea.css +446 -0
- package/dist/collection/components/x-textarea/x-textarea.js +553 -0
- package/dist/collection/components/x-time-picker/time-picker-dropdown-content/index.js +1 -0
- package/dist/collection/components/x-time-picker/time-picker-dropdown-content/time-picker-dropdown-content.css +409 -0
- package/dist/collection/components/x-time-picker/time-picker-dropdown-content/time-picker-dropdown-content.js +855 -0
- package/dist/collection/components/x-time-picker/time-picker-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-time-picker/types.js +1 -0
- package/dist/collection/components/x-time-picker/x-time-picker.css +653 -0
- package/dist/collection/components/x-time-picker/x-time-picker.js +1454 -0
- package/dist/collection/components/x-timeline/x-timeline.css +404 -0
- package/dist/collection/components/x-timeline/x-timeline.js +129 -0
- package/dist/collection/components/x-timeline-item/x-timeline-item.css +400 -0
- package/dist/collection/components/x-timeline-item/x-timeline-item.js +125 -0
- package/dist/collection/components/x-tooltip/types.js +1 -0
- package/dist/collection/components/x-tooltip/x-tooltip.css +528 -0
- package/dist/collection/components/x-tooltip/x-tooltip.js +1006 -0
- package/dist/collection/components/x-tooltip-content/index.js +1 -0
- package/dist/collection/components/x-tooltip-content/types.js +1 -0
- package/dist/collection/components/x-tooltip-content/x-tooltip-content.css +217 -0
- package/dist/collection/components/x-tooltip-content/x-tooltip-content.js +238 -0
- package/dist/collection/components/x-tour/index.js +1 -0
- package/dist/collection/components/x-tour/types.js +1 -0
- package/dist/collection/components/x-tour/x-tour-panel.css +467 -0
- package/dist/collection/components/x-tour/x-tour-panel.js +265 -0
- package/dist/collection/components/x-tour/x-tour.css +353 -0
- package/dist/collection/components/x-tour/x-tour.js +555 -0
- package/dist/collection/components/x-transfer/types.js +1 -0
- package/dist/collection/components/x-transfer/x-transfer.css +626 -0
- package/dist/collection/components/x-transfer/x-transfer.js +956 -0
- package/dist/collection/components/x-tree/types.js +1 -0
- package/dist/collection/components/x-tree/x-tree.css +703 -0
- package/dist/collection/components/x-tree/x-tree.js +1793 -0
- package/dist/collection/components/x-tree-select/tree-select-dropdown-content/index.js +2 -0
- package/dist/collection/components/x-tree-select/tree-select-dropdown-content/tree-select-dropdown-content.css +635 -0
- package/dist/collection/components/x-tree-select/tree-select-dropdown-content/tree-select-dropdown-content.js +890 -0
- package/dist/collection/components/x-tree-select/tree-select-dropdown-content/types.js +1 -0
- package/dist/collection/components/x-tree-select/types.js +2 -0
- package/dist/collection/components/x-tree-select/x-tree-select.css +790 -0
- package/dist/collection/components/x-tree-select/x-tree-select.js +2750 -0
- package/dist/collection/components/x-typography/x-typography.css +409 -0
- package/dist/collection/components/x-typography/x-typography.js +431 -0
- package/dist/collection/components/x-upload/types.js +1 -0
- package/dist/collection/components/x-upload/x-upload.css +774 -0
- package/dist/collection/components/x-upload/x-upload.js +1452 -0
- package/dist/collection/components/x-virtual-scroll/x-virtual-scroll.css +79 -0
- package/dist/collection/components/x-virtual-scroll/x-virtual-scroll.js +478 -0
- package/dist/collection/components/x-workflow/x-workflow.css +486 -0
- package/dist/collection/components/x-workflow/x-workflow.js +1403 -0
- package/dist/collection/components/x-workflow-builder/x-workflow-builder.css +538 -0
- package/dist/collection/components/x-workflow-builder/x-workflow-builder.js +468 -0
- package/dist/collection/index.js +5 -0
- package/dist/collection/locales/index.js +2 -0
- package/dist/collection/locales/languages/ar_EG.js +120 -0
- package/dist/collection/locales/languages/az_AZ.js +120 -0
- package/dist/collection/locales/languages/bg_BG.js +120 -0
- package/dist/collection/locales/languages/bn_BD.js +120 -0
- package/dist/collection/locales/languages/by_BY.js +120 -0
- package/dist/collection/locales/languages/ca_ES.js +120 -0
- package/dist/collection/locales/languages/cs_CZ.js +120 -0
- package/dist/collection/locales/languages/da_DK.js +120 -0
- package/dist/collection/locales/languages/de_DE.js +120 -0
- package/dist/collection/locales/languages/el_GR.js +120 -0
- package/dist/collection/locales/languages/en_AU.js +120 -0
- package/dist/collection/locales/languages/en_GB.js +120 -0
- package/dist/collection/locales/languages/en_US.js +120 -0
- package/dist/collection/locales/languages/es_ES.js +120 -0
- package/dist/collection/locales/languages/et_EE.js +120 -0
- package/dist/collection/locales/languages/fa_IR.js +120 -0
- package/dist/collection/locales/languages/fi_FI.js +120 -0
- package/dist/collection/locales/languages/fr_BE.js +120 -0
- package/dist/collection/locales/languages/fr_CA.js +120 -0
- package/dist/collection/locales/languages/fr_FR.js +120 -0
- package/dist/collection/locales/languages/ga_IE.js +120 -0
- package/dist/collection/locales/languages/gl_ES.js +120 -0
- package/dist/collection/locales/languages/he_IL.js +120 -0
- package/dist/collection/locales/languages/hi_IN.js +120 -0
- package/dist/collection/locales/languages/hr_HR.js +120 -0
- package/dist/collection/locales/languages/hu_HU.js +120 -0
- package/dist/collection/locales/languages/hy_AM.js +120 -0
- package/dist/collection/locales/languages/id_ID.js +120 -0
- package/dist/collection/locales/languages/index.js +137 -0
- package/dist/collection/locales/languages/is_IS.js +120 -0
- package/dist/collection/locales/languages/it_IT.js +120 -0
- package/dist/collection/locales/languages/ja_JP.js +120 -0
- package/dist/collection/locales/languages/ka_GE.js +120 -0
- package/dist/collection/locales/languages/kk_KZ.js +120 -0
- package/dist/collection/locales/languages/km_KH.js +120 -0
- package/dist/collection/locales/languages/kmr_IQ.js +120 -0
- package/dist/collection/locales/languages/kn_IN.js +120 -0
- package/dist/collection/locales/languages/ko_KR.js +120 -0
- package/dist/collection/locales/languages/ku_IQ.js +120 -0
- package/dist/collection/locales/languages/lt_LT.js +120 -0
- package/dist/collection/locales/languages/lv_LV.js +120 -0
- package/dist/collection/locales/languages/mk_MK.js +120 -0
- package/dist/collection/locales/languages/ml_IN.js +120 -0
- package/dist/collection/locales/languages/mn_MN.js +120 -0
- package/dist/collection/locales/languages/ms_MY.js +120 -0
- package/dist/collection/locales/languages/nb_NO.js +120 -0
- package/dist/collection/locales/languages/ne_NP.js +120 -0
- package/dist/collection/locales/languages/nl_BE.js +120 -0
- package/dist/collection/locales/languages/nl_NL.js +120 -0
- package/dist/collection/locales/languages/pl_PL.js +120 -0
- package/dist/collection/locales/languages/pt_BR.js +120 -0
- package/dist/collection/locales/languages/pt_PT.js +120 -0
- package/dist/collection/locales/languages/ro_RO.js +120 -0
- package/dist/collection/locales/languages/ru_RU.js +120 -0
- package/dist/collection/locales/languages/sk_SK.js +120 -0
- package/dist/collection/locales/languages/sl_SI.js +120 -0
- package/dist/collection/locales/languages/sr_RS.js +120 -0
- package/dist/collection/locales/languages/sv_SE.js +120 -0
- package/dist/collection/locales/languages/ta_IN.js +120 -0
- package/dist/collection/locales/languages/th_TH.js +120 -0
- package/dist/collection/locales/languages/tr_TR.js +120 -0
- package/dist/collection/locales/languages/uk_UA.js +120 -0
- package/dist/collection/locales/languages/ur_PK.js +120 -0
- package/dist/collection/locales/languages/vi_VN.js +120 -0
- package/dist/collection/locales/languages/zh_CN.js +120 -0
- package/dist/collection/locales/languages/zh_HK.js +120 -0
- package/dist/collection/locales/languages/zh_TW.js +120 -0
- package/dist/collection/locales/locale.service.js +179 -0
- package/dist/collection/types.js +11 -0
- package/dist/collection/utils/app-service.js +19 -0
- package/dist/collection/utils/cascader.service.js +142 -0
- package/dist/collection/utils/config.js +59 -0
- package/dist/collection/utils/form/core/abstract-control.js +273 -0
- package/dist/collection/utils/form/core/form-array.js +131 -0
- package/dist/collection/utils/form/core/form-builder.js +56 -0
- package/dist/collection/utils/form/core/form-control.js +69 -0
- package/dist/collection/utils/form/core/form-group.js +163 -0
- package/dist/collection/utils/form/frameworks.js +37 -0
- package/dist/collection/utils/form/types.js +1 -0
- package/dist/collection/utils/form/validators/validators.js +198 -0
- package/dist/collection/utils/index.js +3 -0
- package/dist/collection/utils/qr-code/cache/qr.cache.js +20 -0
- package/dist/collection/utils/qr-code/engine/qr.engine.js +130 -0
- package/dist/collection/utils/qr-code/engine/qr.gf.js +22 -0
- package/dist/collection/utils/qr-code/engine/qr.mask.js +54 -0
- package/dist/collection/utils/qr-code/engine/qr.rs.js +29 -0
- package/dist/collection/utils/qr-code/engine/qr.util.js +0 -0
- package/dist/collection/utils/qr-code/engine/qr.version.js +11 -0
- package/dist/collection/utils/qr-code/renderer/canvas.renderer.js +36 -0
- package/dist/collection/utils/qr-code/renderer/svg.renderer.js +33 -0
- package/dist/collection/utils/qr-code/worker/worker.manager.js +24 -0
- package/dist/collection/utils/table.service.js +150 -0
- package/dist/collection/utils/tree.service.js +335 -0
- package/dist/collection/utils/workflow/flow.service.js +382 -0
- package/dist/collection/utils/workflow/types.js +1 -0
- package/dist/esm/abstract-control-XBF88YT_.js +275 -0
- package/dist/esm/config-BPeosvTA.js +60 -0
- package/dist/esm/index-ig_mFsVk.js +2159 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/loader.js +10 -0
- package/dist/esm/locale.service-D66tF8_2.js +8199 -0
- package/dist/esm/modal-service-C_e0SaFZ.js +397 -0
- package/dist/esm/notification-service-DJTSPOq7.js +599 -0
- package/dist/esm/portal-controller-COpzIi1n.js +499 -0
- package/dist/esm/schema-builder-DBPGgJBx.js +1502 -0
- package/dist/esm/tree.service-Dgxy93Bg.js +337 -0
- package/dist/esm/types-C_QdJRdB.js +253 -0
- package/dist/esm/x-address_14.entry.js +12562 -0
- package/dist/esm/x-affix.entry.js +180 -0
- package/dist/esm/x-alert_11.entry.js +3227 -0
- package/dist/esm/x-anchor-link.entry.js +65 -0
- package/dist/esm/x-anchor.entry.js +156 -0
- package/dist/esm/x-app.entry.js +135 -0
- package/dist/esm/x-auto-complete-dropdown-content.entry.js +67 -0
- package/dist/esm/x-avatar.entry.js +267 -0
- package/dist/esm/x-back-top.entry.js +87 -0
- package/dist/esm/x-breadcrumb_5.entry.js +1548 -0
- package/dist/esm/x-button.entry.js +172 -0
- package/dist/esm/x-card_12.entry.js +1373 -0
- package/dist/esm/x-carousel.entry.js +145 -0
- package/dist/esm/x-cascader-dropdown-content.entry.js +362 -0
- package/dist/esm/x-checkbox_5.entry.js +1370 -0
- package/dist/esm/x-collapse-panel.entry.js +241 -0
- package/dist/esm/x-collapse.entry.js +289 -0
- package/dist/esm/x-color-picker-panel_2.entry.js +870 -0
- package/dist/esm/x-color-picker_9.entry.js +3075 -0
- package/dist/esm/x-comment.entry.js +187 -0
- package/dist/esm/x-date-picker-dropdown-content.entry.js +755 -0
- package/dist/esm/x-descriptions-item.entry.js +106 -0
- package/dist/esm/x-drawer-content.entry.js +195 -0
- package/dist/esm/x-drawer.entry.js +292 -0
- package/dist/esm/x-dropdown_2.entry.js +732 -0
- package/dist/esm/x-empty.entry.js +62 -0
- package/dist/esm/x-finder.entry.js +645 -0
- package/dist/esm/x-form-builder.entry.js +805 -0
- package/dist/esm/x-icon.entry.js +142 -0
- package/dist/esm/x-infinite-scroll.entry.js +127 -0
- package/dist/esm/x-list-item.entry.js +25 -0
- package/dist/esm/x-list.entry.js +136 -0
- package/dist/esm/x-mentions.entry.js +273 -0
- package/dist/esm/x-menu-divider.entry.js +47 -0
- package/dist/esm/x-menu-item-group.entry.js +147 -0
- package/dist/esm/x-menu-submenu.entry.js +371 -0
- package/dist/esm/x-message.entry.js +217 -0
- package/dist/esm/x-modal-content.entry.js +215 -0
- package/dist/esm/x-notification.entry.js +323 -0
- package/dist/esm/x-page-header.entry.js +65 -0
- package/dist/esm/x-popconfirm-content.entry.js +70 -0
- package/dist/esm/x-popconfirm.entry.js +179 -0
- package/dist/esm/x-progress.entry.js +134 -0
- package/dist/esm/x-qr-code.entry.js +444 -0
- package/dist/esm/x-range-picker-dropdown-content.entry.js +819 -0
- package/dist/esm/x-select_2.entry.js +1313 -0
- package/dist/esm/x-skeleton.entry.js +73 -0
- package/dist/esm/x-spin.entry.js +60 -0
- package/dist/esm/x-splitter-panel.entry.js +89 -0
- package/dist/esm/x-splitter.entry.js +610 -0
- package/dist/esm/x-statistic.entry.js +102 -0
- package/dist/esm/x-step.entry.js +177 -0
- package/dist/esm/x-steps.entry.js +437 -0
- package/dist/esm/x-tab-pane.entry.js +71 -0
- package/dist/esm/x-table-cell.entry.js +43 -0
- package/dist/esm/x-table-row.entry.js +83 -0
- package/dist/esm/x-tabs.entry.js +607 -0
- package/dist/esm/x-time-picker-dropdown-content.entry.js +387 -0
- package/dist/esm/x-timeline-item.entry.js +48 -0
- package/dist/esm/x-timeline.entry.js +50 -0
- package/dist/esm/x-tour-panel.entry.js +87 -0
- package/dist/esm/x-tour.entry.js +342 -0
- package/dist/esm/x-tree-select-dropdown-content.entry.js +437 -0
- package/dist/esm/x-virtual-scroll.entry.js +201 -0
- package/dist/esm/x-workflow-builder.entry.js +364 -0
- package/dist/esm/xlabs-store.js +20 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/types/components/x-address/vietnam-data.d.ts +14 -0
- package/dist/types/components/x-address/x-address.d.ts +64 -0
- package/dist/types/components/x-affix/x-affix.d.ts +111 -0
- package/dist/types/components/x-alert/x-alert.d.ts +74 -0
- package/dist/types/components/x-anchor/x-anchor.d.ts +120 -0
- package/dist/types/components/x-anchor-link/x-anchor-link.d.ts +47 -0
- package/dist/types/components/x-app/x-app.d.ts +93 -0
- package/dist/types/components/x-auto-complete/auto-complete-dropdown-content/auto-complete-dropdown-content.d.ts +58 -0
- package/dist/types/components/x-auto-complete/auto-complete-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-auto-complete/auto-complete-dropdown-content/types.d.ts +14 -0
- package/dist/types/components/x-auto-complete/types.d.ts +150 -0
- package/dist/types/components/x-auto-complete/x-auto-complete.d.ts +480 -0
- package/dist/types/components/x-avatar/types.d.ts +38 -0
- package/dist/types/components/x-avatar/x-avatar.d.ts +171 -0
- package/dist/types/components/x-back-top/x-back-top.d.ts +59 -0
- package/dist/types/components/x-badge/types.d.ts +23 -0
- package/dist/types/components/x-badge/x-badge.d.ts +184 -0
- package/dist/types/components/x-breadcrumb/x-breadcrumb.d.ts +43 -0
- package/dist/types/components/x-breadcrumb-item/x-breadcrumb-item.d.ts +43 -0
- package/dist/types/components/x-button/x-button.d.ts +121 -0
- package/dist/types/components/x-captcha/x-captcha.d.ts +78 -0
- package/dist/types/components/x-card/x-card.d.ts +139 -0
- package/dist/types/components/x-carousel/x-carousel.d.ts +104 -0
- package/dist/types/components/x-cascader/cascader-dropdown-content/cascader-dropdown-content.d.ts +255 -0
- package/dist/types/components/x-cascader/cascader-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-cascader/cascader-dropdown-content/types.d.ts +20 -0
- package/dist/types/components/x-cascader/types.d.ts +143 -0
- package/dist/types/components/x-cascader/x-cascader.d.ts +520 -0
- package/dist/types/components/x-checkbox/types.d.ts +83 -0
- package/dist/types/components/x-checkbox/x-checkbox.d.ts +156 -0
- package/dist/types/components/x-col/x-col.d.ts +89 -0
- package/dist/types/components/x-collapse/types.d.ts +55 -0
- package/dist/types/components/x-collapse/x-collapse.d.ts +157 -0
- package/dist/types/components/x-collapse-panel/x-collapse-panel.d.ts +143 -0
- package/dist/types/components/x-color-picker/types.d.ts +135 -0
- package/dist/types/components/x-color-picker/x-color-picker-panel.d.ts +80 -0
- package/dist/types/components/x-color-picker/x-color-picker.d.ts +328 -0
- package/dist/types/components/x-comment/types.d.ts +20 -0
- package/dist/types/components/x-comment/x-comment.d.ts +111 -0
- package/dist/types/components/x-content/types.d.ts +6 -0
- package/dist/types/components/x-content/x-content.d.ts +64 -0
- package/dist/types/components/x-date-picker/date-picker-dropdown-content/date-picker-dropdown-content.d.ts +376 -0
- package/dist/types/components/x-date-picker/date-picker-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-date-picker/date-picker-dropdown-content/types.d.ts +61 -0
- package/dist/types/components/x-date-picker/types.d.ts +28 -0
- package/dist/types/components/x-date-picker/x-date-picker.d.ts +512 -0
- package/dist/types/components/x-descriptions/types.d.ts +41 -0
- package/dist/types/components/x-descriptions/x-descriptions.d.ts +141 -0
- package/dist/types/components/x-descriptions-item/x-descriptions-item.d.ts +70 -0
- package/dist/types/components/x-divider/x-divider.d.ts +82 -0
- package/dist/types/components/x-drawer/x-drawer.d.ts +156 -0
- package/dist/types/components/x-drawer-content/x-drawer-content.d.ts +142 -0
- package/dist/types/components/x-dropdown/dropdown-content/dropdown-content.d.ts +83 -0
- package/dist/types/components/x-dropdown/dropdown-content/types.d.ts +16 -0
- package/dist/types/components/x-dropdown/types.d.ts +119 -0
- package/dist/types/components/x-dropdown/x-dropdown.d.ts +292 -0
- package/dist/types/components/x-editor/editor-history.d.ts +62 -0
- package/dist/types/components/x-editor/editor-normalizer.d.ts +70 -0
- package/dist/types/components/x-editor/editor-parser.d.ts +34 -0
- package/dist/types/components/x-editor/editor-selection.d.ts +92 -0
- package/dist/types/components/x-editor/types.d.ts +62 -0
- package/dist/types/components/x-editor/x-editor.d.ts +279 -0
- package/dist/types/components/x-empty/x-empty.d.ts +45 -0
- package/dist/types/components/x-finder/services/finder-service.d.ts +38 -0
- package/dist/types/components/x-finder/types.d.ts +63 -0
- package/dist/types/components/x-finder/x-finder.d.ts +66 -0
- package/dist/types/components/x-flex/x-flex.d.ts +62 -0
- package/dist/types/components/x-float-button/x-float-button.d.ts +66 -0
- package/dist/types/components/x-footer/x-footer.d.ts +11 -0
- package/dist/types/components/x-form/x-form.d.ts +64 -0
- package/dist/types/components/x-form-builder/services/apis/api-client.d.ts +63 -0
- package/dist/types/components/x-form-builder/services/constants/index.d.ts +2 -0
- package/dist/types/components/x-form-builder/services/forms/abstract-control.d.ts +59 -0
- package/dist/types/components/x-form-builder/services/forms/form-array.d.ts +25 -0
- package/dist/types/components/x-form-builder/services/forms/form-builder.d.ts +17 -0
- package/dist/types/components/x-form-builder/services/forms/form-control.d.ts +14 -0
- package/dist/types/components/x-form-builder/services/forms/form-group.d.ts +33 -0
- package/dist/types/components/x-form-builder/services/forms/index.d.ts +11 -0
- package/dist/types/components/x-form-builder/services/forms/types.d.ts +11 -0
- package/dist/types/components/x-form-builder/services/forms/validators.d.ts +16 -0
- package/dist/types/components/x-form-builder/services/schema/condition-builder.d.ts +39 -0
- package/dist/types/components/x-form-builder/services/schema/default-registry.d.ts +1 -0
- package/dist/types/components/x-form-builder/services/schema/form-mapping.d.ts +26 -0
- package/dist/types/components/x-form-builder/services/schema/form-registry.d.ts +27 -0
- package/dist/types/components/x-form-builder/services/schema/schema-actions.d.ts +3 -0
- package/dist/types/components/x-form-builder/services/schema/schema-builder.d.ts +19 -0
- package/dist/types/components/x-form-builder/services/schema/schema-validator.d.ts +9 -0
- package/dist/types/components/x-form-builder/types/api/api-common-types.d.ts +5 -0
- package/dist/types/components/x-form-builder/types/api/api-interfaces.d.ts +52 -0
- package/dist/types/components/x-form-builder/types/api/index.d.ts +2 -0
- package/dist/types/components/x-form-builder/types/common/common-types.d.ts +49 -0
- package/dist/types/components/x-form-builder/types/common/condition-types.d.ts +53 -0
- package/dist/types/components/x-form-builder/types/common/field-types-enum.d.ts +2 -0
- package/dist/types/components/x-form-builder/types/common/index.d.ts +7 -0
- package/dist/types/components/x-form-builder/types/common/shared-interfaces.d.ts +37 -0
- package/dist/types/components/x-form-builder/types/common/validation-types.d.ts +36 -0
- package/dist/types/components/x-form-builder/types/common/value-types.d.ts +15 -0
- package/dist/types/components/x-form-builder/types/event/event-types.d.ts +16 -0
- package/dist/types/components/x-form-builder/types/event/index.d.ts +1 -0
- package/dist/types/components/x-form-builder/types/fields/advanced-fields.d.ts +125 -0
- package/dist/types/components/x-form-builder/types/fields/base-field.d.ts +49 -0
- package/dist/types/components/x-form-builder/types/fields/datetime-file-fields.d.ts +37 -0
- package/dist/types/components/x-form-builder/types/fields/display-fields.d.ts +92 -0
- package/dist/types/components/x-form-builder/types/fields/form-field-union.d.ts +9 -0
- package/dist/types/components/x-form-builder/types/fields/index.d.ts +9 -0
- package/dist/types/components/x-form-builder/types/fields/input-fields.d.ts +53 -0
- package/dist/types/components/x-form-builder/types/fields/layout-fields.d.ts +55 -0
- package/dist/types/components/x-form-builder/types/fields/selection-fields.d.ts +130 -0
- package/dist/types/components/x-form-builder/types/fields/special-input-fields.d.ts +99 -0
- package/dist/types/components/x-form-builder/types/form/events-types.d.ts +29 -0
- package/dist/types/components/x-form-builder/types/form/form-config.d.ts +0 -0
- package/dist/types/components/x-form-builder/types/form/index.d.ts +2 -0
- package/dist/types/components/x-form-builder/types/form/schema-types.d.ts +134 -0
- package/dist/types/components/x-form-builder/types/index.d.ts +4 -0
- package/dist/types/components/x-form-builder/utils/condition-engine.d.ts +23 -0
- package/dist/types/components/x-form-builder/utils/utils.d.ts +19 -0
- package/dist/types/components/x-form-builder/utils/values.d.ts +8 -0
- package/dist/types/components/x-form-builder/x-form-builder.d.ts +65 -0
- package/dist/types/components/x-form-item/x-form-item.d.ts +94 -0
- package/dist/types/components/x-header/x-header.d.ts +11 -0
- package/dist/types/components/x-icon/icons.d.ts +2717 -0
- package/dist/types/components/x-icon/x-icon.d.ts +89 -0
- package/dist/types/components/x-image/types.d.ts +94 -0
- package/dist/types/components/x-image/x-image.d.ts +150 -0
- package/dist/types/components/x-infinite-scroll/x-infinite-scroll.d.ts +75 -0
- package/dist/types/components/x-input/types.d.ts +14 -0
- package/dist/types/components/x-input/x-input.d.ts +385 -0
- package/dist/types/components/x-input-number/types.d.ts +98 -0
- package/dist/types/components/x-input-number/x-input-number.d.ts +395 -0
- package/dist/types/components/x-layout/x-layout.d.ts +61 -0
- package/dist/types/components/x-list/x-list.d.ts +100 -0
- package/dist/types/components/x-list-item/x-list-item.d.ts +13 -0
- package/dist/types/components/x-mentions/types.d.ts +7 -0
- package/dist/types/components/x-mentions/x-mentions.d.ts +159 -0
- package/dist/types/components/x-menu/types.d.ts +83 -0
- package/dist/types/components/x-menu/x-menu.d.ts +153 -0
- package/dist/types/components/x-menu-divider/types.d.ts +6 -0
- package/dist/types/components/x-menu-divider/x-menu-divider.d.ts +19 -0
- package/dist/types/components/x-menu-item/types.d.ts +8 -0
- package/dist/types/components/x-menu-item/x-menu-item.d.ts +80 -0
- package/dist/types/components/x-menu-item-group/types.d.ts +6 -0
- package/dist/types/components/x-menu-item-group/x-menu-item-group.d.ts +60 -0
- package/dist/types/components/x-menu-submenu/types.d.ts +15 -0
- package/dist/types/components/x-menu-submenu/x-menu-submenu.d.ts +135 -0
- package/dist/types/components/x-message/message-service.d.ts +58 -0
- package/dist/types/components/x-message/types.d.ts +90 -0
- package/dist/types/components/x-message/x-message.d.ts +133 -0
- package/dist/types/components/x-modal/modal-service.d.ts +6 -0
- package/dist/types/components/x-modal/modal-service.types.d.ts +278 -0
- package/dist/types/components/x-modal/x-modal.d.ts +160 -0
- package/dist/types/components/x-modal-content/index.d.ts +1 -0
- package/dist/types/components/x-modal-content/types.d.ts +83 -0
- package/dist/types/components/x-modal-content/x-modal-content.d.ts +174 -0
- package/dist/types/components/x-notification/notification-service.d.ts +83 -0
- package/dist/types/components/x-notification/types.d.ts +112 -0
- package/dist/types/components/x-notification/x-notification.d.ts +212 -0
- package/dist/types/components/x-page-header/x-page-header.d.ts +51 -0
- package/dist/types/components/x-pagination/types.d.ts +104 -0
- package/dist/types/components/x-pagination/x-pagination.d.ts +274 -0
- package/dist/types/components/x-popconfirm/popconfirm-content/popconfirm-content.d.ts +62 -0
- package/dist/types/components/x-popconfirm/x-popconfirm.d.ts +97 -0
- package/dist/types/components/x-popover/popover-content/popover-content.d.ts +71 -0
- package/dist/types/components/x-popover/x-popover.d.ts +99 -0
- package/dist/types/components/x-portal/debug.d.ts +5 -0
- package/dist/types/components/x-portal/index.d.ts +2 -0
- package/dist/types/components/x-portal/portal-controller.d.ts +20 -0
- package/dist/types/components/x-portal/positioning.d.ts +102 -0
- package/dist/types/components/x-portal/types.d.ts +43 -0
- package/dist/types/components/x-portal/x-portal.d.ts +19 -0
- package/dist/types/components/x-progress/x-progress.d.ts +85 -0
- package/dist/types/components/x-qr-code/x-qr-code.d.ts +26 -0
- package/dist/types/components/x-radio/types.d.ts +94 -0
- package/dist/types/components/x-radio/x-radio.d.ts +186 -0
- package/dist/types/components/x-radio-group/types.d.ts +20 -0
- package/dist/types/components/x-radio-group/x-radio-group.d.ts +90 -0
- package/dist/types/components/x-range-picker/range-picker-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-range-picker/range-picker-dropdown-content/range-picker-dropdown-content.d.ts +437 -0
- package/dist/types/components/x-range-picker/range-picker-dropdown-content/types.d.ts +48 -0
- package/dist/types/components/x-range-picker/types.d.ts +35 -0
- package/dist/types/components/x-range-picker/x-range-picker.d.ts +457 -0
- package/dist/types/components/x-rate/x-rate.d.ts +129 -0
- package/dist/types/components/x-result/types.d.ts +45 -0
- package/dist/types/components/x-result/x-result.d.ts +120 -0
- package/dist/types/components/x-row/x-row.d.ts +44 -0
- package/dist/types/components/x-segmented/types.d.ts +10 -0
- package/dist/types/components/x-segmented/x-segmented.d.ts +128 -0
- package/dist/types/components/x-select/select-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-select/select-dropdown-content/select-dropdown-content.d.ts +52 -0
- package/dist/types/components/x-select/select-dropdown-content/types.d.ts +14 -0
- package/dist/types/components/x-select/types.d.ts +41 -0
- package/dist/types/components/x-select/x-select.d.ts +635 -0
- package/dist/types/components/x-select-option/x-select-option.d.ts +51 -0
- package/dist/types/components/x-sider/x-sider.d.ts +99 -0
- package/dist/types/components/x-skeleton/x-skeleton.d.ts +54 -0
- package/dist/types/components/x-slider/types.d.ts +1 -0
- package/dist/types/components/x-slider/x-slider.d.ts +240 -0
- package/dist/types/components/x-space/x-space.d.ts +54 -0
- package/dist/types/components/x-spin/x-spin.d.ts +41 -0
- package/dist/types/components/x-splitter/types.d.ts +41 -0
- package/dist/types/components/x-splitter/x-splitter.d.ts +187 -0
- package/dist/types/components/x-splitter-panel/types.d.ts +23 -0
- package/dist/types/components/x-splitter-panel/x-splitter-panel.d.ts +67 -0
- package/dist/types/components/x-statistic/x-statistic.d.ts +80 -0
- package/dist/types/components/x-step/types.d.ts +14 -0
- package/dist/types/components/x-step/x-step.d.ts +104 -0
- package/dist/types/components/x-steps/types.d.ts +124 -0
- package/dist/types/components/x-steps/x-steps.d.ts +270 -0
- package/dist/types/components/x-switch/types.d.ts +5 -0
- package/dist/types/components/x-switch/x-switch.d.ts +92 -0
- package/dist/types/components/x-tab-pane/x-tab-pane.d.ts +55 -0
- package/dist/types/components/x-table/column-util.d.ts +26 -0
- package/dist/types/components/x-table/types.d.ts +386 -0
- package/dist/types/components/x-table/x-table.d.ts +552 -0
- package/dist/types/components/x-table-cell/x-table-cell.d.ts +27 -0
- package/dist/types/components/x-table-row/x-table-row.d.ts +24 -0
- package/dist/types/components/x-tabs/types.d.ts +190 -0
- package/dist/types/components/x-tabs/x-tabs.d.ts +359 -0
- package/dist/types/components/x-tag/types.d.ts +27 -0
- package/dist/types/components/x-tag/x-tag.d.ts +148 -0
- package/dist/types/components/x-textarea/x-textarea.d.ts +165 -0
- package/dist/types/components/x-time-picker/time-picker-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-time-picker/time-picker-dropdown-content/time-picker-dropdown-content.d.ts +239 -0
- package/dist/types/components/x-time-picker/time-picker-dropdown-content/types.d.ts +28 -0
- package/dist/types/components/x-time-picker/types.d.ts +18 -0
- package/dist/types/components/x-time-picker/x-time-picker.d.ts +378 -0
- package/dist/types/components/x-timeline/x-timeline.d.ts +33 -0
- package/dist/types/components/x-timeline-item/x-timeline-item.d.ts +33 -0
- package/dist/types/components/x-tooltip/types.d.ts +53 -0
- package/dist/types/components/x-tooltip/x-tooltip.d.ts +274 -0
- package/dist/types/components/x-tooltip-content/index.d.ts +1 -0
- package/dist/types/components/x-tooltip-content/types.d.ts +25 -0
- package/dist/types/components/x-tooltip-content/x-tooltip-content.d.ts +57 -0
- package/dist/types/components/x-tour/index.d.ts +1 -0
- package/dist/types/components/x-tour/types.d.ts +71 -0
- package/dist/types/components/x-tour/x-tour-panel.d.ts +73 -0
- package/dist/types/components/x-tour/x-tour.d.ts +158 -0
- package/dist/types/components/x-transfer/types.d.ts +89 -0
- package/dist/types/components/x-transfer/x-transfer.d.ts +291 -0
- package/dist/types/components/x-tree/types.d.ts +163 -0
- package/dist/types/components/x-tree/x-tree.d.ts +406 -0
- package/dist/types/components/x-tree-select/tree-select-dropdown-content/index.d.ts +2 -0
- package/dist/types/components/x-tree-select/tree-select-dropdown-content/tree-select-dropdown-content.d.ts +268 -0
- package/dist/types/components/x-tree-select/tree-select-dropdown-content/types.d.ts +24 -0
- package/dist/types/components/x-tree-select/types.d.ts +100 -0
- package/dist/types/components/x-tree-select/x-tree-select.d.ts +750 -0
- package/dist/types/components/x-typography/x-typography.d.ts +89 -0
- package/dist/types/components/x-upload/types.d.ts +177 -0
- package/dist/types/components/x-upload/x-upload.d.ts +361 -0
- package/dist/types/components/x-virtual-scroll/x-virtual-scroll.d.ts +127 -0
- package/dist/types/components/x-workflow/x-workflow.d.ts +126 -0
- package/dist/types/components/x-workflow-builder/x-workflow-builder.d.ts +69 -0
- package/dist/types/components.d.ts +19048 -0
- package/dist/types/index.d.ts +63 -0
- package/dist/types/locales/index.d.ts +2 -0
- package/dist/types/locales/languages/ar_EG.d.ts +119 -0
- package/dist/types/locales/languages/az_AZ.d.ts +119 -0
- package/dist/types/locales/languages/bg_BG.d.ts +119 -0
- package/dist/types/locales/languages/bn_BD.d.ts +119 -0
- package/dist/types/locales/languages/by_BY.d.ts +119 -0
- package/dist/types/locales/languages/ca_ES.d.ts +119 -0
- package/dist/types/locales/languages/cs_CZ.d.ts +119 -0
- package/dist/types/locales/languages/da_DK.d.ts +119 -0
- package/dist/types/locales/languages/de_DE.d.ts +119 -0
- package/dist/types/locales/languages/el_GR.d.ts +119 -0
- package/dist/types/locales/languages/en_AU.d.ts +119 -0
- package/dist/types/locales/languages/en_GB.d.ts +119 -0
- package/dist/types/locales/languages/en_US.d.ts +119 -0
- package/dist/types/locales/languages/es_ES.d.ts +119 -0
- package/dist/types/locales/languages/et_EE.d.ts +119 -0
- package/dist/types/locales/languages/fa_IR.d.ts +119 -0
- package/dist/types/locales/languages/fi_FI.d.ts +119 -0
- package/dist/types/locales/languages/fr_BE.d.ts +119 -0
- package/dist/types/locales/languages/fr_CA.d.ts +119 -0
- package/dist/types/locales/languages/fr_FR.d.ts +119 -0
- package/dist/types/locales/languages/ga_IE.d.ts +119 -0
- package/dist/types/locales/languages/gl_ES.d.ts +119 -0
- package/dist/types/locales/languages/he_IL.d.ts +119 -0
- package/dist/types/locales/languages/hi_IN.d.ts +119 -0
- package/dist/types/locales/languages/hr_HR.d.ts +119 -0
- package/dist/types/locales/languages/hu_HU.d.ts +119 -0
- package/dist/types/locales/languages/hy_AM.d.ts +119 -0
- package/dist/types/locales/languages/id_ID.d.ts +119 -0
- package/dist/types/locales/languages/index.d.ts +13 -0
- package/dist/types/locales/languages/is_IS.d.ts +119 -0
- package/dist/types/locales/languages/it_IT.d.ts +119 -0
- package/dist/types/locales/languages/ja_JP.d.ts +119 -0
- package/dist/types/locales/languages/ka_GE.d.ts +119 -0
- package/dist/types/locales/languages/kk_KZ.d.ts +119 -0
- package/dist/types/locales/languages/km_KH.d.ts +119 -0
- package/dist/types/locales/languages/kmr_IQ.d.ts +119 -0
- package/dist/types/locales/languages/kn_IN.d.ts +119 -0
- package/dist/types/locales/languages/ko_KR.d.ts +119 -0
- package/dist/types/locales/languages/ku_IQ.d.ts +119 -0
- package/dist/types/locales/languages/lt_LT.d.ts +119 -0
- package/dist/types/locales/languages/lv_LV.d.ts +119 -0
- package/dist/types/locales/languages/mk_MK.d.ts +119 -0
- package/dist/types/locales/languages/ml_IN.d.ts +119 -0
- package/dist/types/locales/languages/mn_MN.d.ts +119 -0
- package/dist/types/locales/languages/ms_MY.d.ts +119 -0
- package/dist/types/locales/languages/nb_NO.d.ts +119 -0
- package/dist/types/locales/languages/ne_NP.d.ts +119 -0
- package/dist/types/locales/languages/nl_BE.d.ts +119 -0
- package/dist/types/locales/languages/nl_NL.d.ts +119 -0
- package/dist/types/locales/languages/pl_PL.d.ts +119 -0
- package/dist/types/locales/languages/pt_BR.d.ts +119 -0
- package/dist/types/locales/languages/pt_PT.d.ts +119 -0
- package/dist/types/locales/languages/ro_RO.d.ts +119 -0
- package/dist/types/locales/languages/ru_RU.d.ts +119 -0
- package/dist/types/locales/languages/sk_SK.d.ts +119 -0
- package/dist/types/locales/languages/sl_SI.d.ts +119 -0
- package/dist/types/locales/languages/sr_RS.d.ts +119 -0
- package/dist/types/locales/languages/sv_SE.d.ts +119 -0
- package/dist/types/locales/languages/ta_IN.d.ts +119 -0
- package/dist/types/locales/languages/th_TH.d.ts +119 -0
- package/dist/types/locales/languages/tr_TR.d.ts +119 -0
- package/dist/types/locales/languages/uk_UA.d.ts +119 -0
- package/dist/types/locales/languages/ur_PK.d.ts +119 -0
- package/dist/types/locales/languages/vi_VN.d.ts +119 -0
- package/dist/types/locales/languages/zh_CN.d.ts +119 -0
- package/dist/types/locales/languages/zh_HK.d.ts +119 -0
- package/dist/types/locales/languages/zh_TW.d.ts +119 -0
- package/dist/types/locales/locale.service.d.ts +93 -0
- package/dist/types/stencil-public-runtime.d.ts +1860 -0
- package/dist/types/types.d.ts +59 -0
- package/dist/types/utils/app-service.d.ts +20 -0
- package/dist/types/utils/cascader.service.d.ts +45 -0
- package/dist/types/utils/config.d.ts +47 -0
- package/dist/types/utils/form/core/abstract-control.d.ts +121 -0
- package/dist/types/utils/form/core/form-array.d.ts +51 -0
- package/dist/types/utils/form/core/form-builder.d.ts +45 -0
- package/dist/types/utils/form/core/form-control.d.ts +37 -0
- package/dist/types/utils/form/core/form-group.d.ts +63 -0
- package/dist/types/utils/form/frameworks.d.ts +18 -0
- package/dist/types/utils/form/types.d.ts +8 -0
- package/dist/types/utils/form/validators/validators.d.ts +39 -0
- package/dist/types/utils/index.d.ts +10 -0
- package/dist/types/utils/qr-code/cache/qr.cache.d.ts +7 -0
- package/dist/types/utils/qr-code/engine/qr.engine.d.ts +15 -0
- package/dist/types/utils/qr-code/engine/qr.gf.d.ts +4 -0
- package/dist/types/utils/qr-code/engine/qr.mask.d.ts +2 -0
- package/dist/types/utils/qr-code/engine/qr.rs.d.ts +1 -0
- package/dist/types/utils/qr-code/engine/qr.util.d.ts +0 -0
- package/dist/types/utils/qr-code/engine/qr.version.d.ts +16 -0
- package/dist/types/utils/qr-code/renderer/canvas.renderer.d.ts +6 -0
- package/dist/types/utils/qr-code/renderer/svg.renderer.d.ts +7 -0
- package/dist/types/utils/qr-code/worker/worker.manager.d.ts +12 -0
- package/dist/types/utils/table.service.d.ts +48 -0
- package/dist/types/utils/tree.service.d.ts +85 -0
- package/dist/types/utils/workflow/flow.service.d.ts +61 -0
- package/dist/types/utils/workflow/types.d.ts +120 -0
- package/dist/xlabs-store/fonts/xlabs-outlined.woff2 +0 -0
- package/dist/xlabs-store/fonts/xlabs-rounded.woff2 +0 -0
- package/dist/xlabs-store/fonts/xlabs-solided.woff2 +0 -0
- package/dist/xlabs-store/index.esm.js +1 -0
- package/dist/xlabs-store/p-016194dc.entry.js +1 -0
- package/dist/xlabs-store/p-023259c9.entry.js +1 -0
- package/dist/xlabs-store/p-04a3721a.entry.js +1 -0
- package/dist/xlabs-store/p-072445b7.entry.js +1 -0
- package/dist/xlabs-store/p-0ec21454.entry.js +1 -0
- package/dist/xlabs-store/p-12b6a843.entry.js +1 -0
- package/dist/xlabs-store/p-1a81cf09.entry.js +1 -0
- package/dist/xlabs-store/p-1b019aeb.entry.js +1 -0
- package/dist/xlabs-store/p-262a0673.entry.js +1 -0
- package/dist/xlabs-store/p-34cce823.entry.js +1 -0
- package/dist/xlabs-store/p-3a9fdefe.entry.js +1 -0
- package/dist/xlabs-store/p-40036100.entry.js +1 -0
- package/dist/xlabs-store/p-45f04e8d.entry.js +1 -0
- package/dist/xlabs-store/p-48ba7c34.entry.js +1 -0
- package/dist/xlabs-store/p-48e2c26e.entry.js +1 -0
- package/dist/xlabs-store/p-4ac2e915.entry.js +1 -0
- package/dist/xlabs-store/p-4d7c2a35.entry.js +1 -0
- package/dist/xlabs-store/p-4f67cb33.entry.js +1 -0
- package/dist/xlabs-store/p-502b345e.entry.js +1 -0
- package/dist/xlabs-store/p-555c5e48.entry.js +1 -0
- package/dist/xlabs-store/p-5878525f.entry.js +1 -0
- package/dist/xlabs-store/p-5abbdca7.entry.js +1 -0
- package/dist/xlabs-store/p-6243ca69.entry.js +1 -0
- package/dist/xlabs-store/p-64e7a057.entry.js +1 -0
- package/dist/xlabs-store/p-6530d2ef.entry.js +1 -0
- package/dist/xlabs-store/p-675a39e1.entry.js +1 -0
- package/dist/xlabs-store/p-689c52ef.entry.js +1 -0
- package/dist/xlabs-store/p-69b8cb7d.entry.js +1 -0
- package/dist/xlabs-store/p-6b121c60.entry.js +1 -0
- package/dist/xlabs-store/p-6c75fc39.entry.js +1 -0
- package/dist/xlabs-store/p-6f705deb.entry.js +1 -0
- package/dist/xlabs-store/p-723d362c.entry.js +1 -0
- package/dist/xlabs-store/p-783545e3.entry.js +1 -0
- package/dist/xlabs-store/p-7a8f11b4.entry.js +1 -0
- package/dist/xlabs-store/p-81fb4caf.entry.js +1 -0
- package/dist/xlabs-store/p-863dd67d.entry.js +1 -0
- package/dist/xlabs-store/p-8bcbb4e3.entry.js +1 -0
- package/dist/xlabs-store/p-8bcc219a.entry.js +1 -0
- package/dist/xlabs-store/p-914b0ae2.entry.js +1 -0
- package/dist/xlabs-store/p-96b1939d.entry.js +1 -0
- package/dist/xlabs-store/p-9ac291ea.entry.js +1 -0
- package/dist/xlabs-store/p-9de03a07.entry.js +1 -0
- package/dist/xlabs-store/p-BPeosvTA.js +1 -0
- package/dist/xlabs-store/p-COpzIi1n.js +1 -0
- package/dist/xlabs-store/p-C_QdJRdB.js +1 -0
- package/dist/xlabs-store/p-Ce5L9qbY.js +1 -0
- package/dist/xlabs-store/p-Co3Y9VjQ.js +1 -0
- package/dist/xlabs-store/p-D66tF8_2.js +1 -0
- package/dist/xlabs-store/p-DElCk9ta.js +1 -0
- package/dist/xlabs-store/p-Dgxy93Bg.js +1 -0
- package/dist/xlabs-store/p-XBF88YT_.js +1 -0
- package/dist/xlabs-store/p-a4223feb.entry.js +1 -0
- package/dist/xlabs-store/p-a8c2eca7.entry.js +1 -0
- package/dist/xlabs-store/p-ac9ba3aa.entry.js +1 -0
- package/dist/xlabs-store/p-bd5084b8.entry.js +1 -0
- package/dist/xlabs-store/p-bda322db.entry.js +1 -0
- package/dist/xlabs-store/p-c0ca6f7d.entry.js +1 -0
- package/dist/xlabs-store/p-c4c8840c.entry.js +1 -0
- package/dist/xlabs-store/p-c4d0ce0d.entry.js +1 -0
- package/dist/xlabs-store/p-cd3c3374.entry.js +1 -0
- package/dist/xlabs-store/p-cf4697bc.entry.js +1 -0
- package/dist/xlabs-store/p-d2ec3d4a.entry.js +1 -0
- package/dist/xlabs-store/p-d4d00aff.entry.js +1 -0
- package/dist/xlabs-store/p-d9d0147b.entry.js +1 -0
- package/dist/xlabs-store/p-dd930f2a.entry.js +1 -0
- package/dist/xlabs-store/p-e04836e8.entry.js +1 -0
- package/dist/xlabs-store/p-e14b5f6d.entry.js +1 -0
- package/dist/xlabs-store/p-eb1dd3c2.entry.js +1 -0
- package/dist/xlabs-store/p-f02155e4.entry.js +1 -0
- package/dist/xlabs-store/p-f1331938.entry.js +1 -0
- package/dist/xlabs-store/p-fac0b689.entry.js +1 -0
- package/dist/xlabs-store/p-fd2e1d9c.entry.js +1 -0
- package/dist/xlabs-store/p-fdec5d89.entry.js +1 -0
- package/dist/xlabs-store/p-ffba56b2.entry.js +1 -0
- package/dist/xlabs-store/p-ig_mFsVk.js +2 -0
- package/dist/xlabs-store/xlabs-store.css +1 -0
- package/dist/xlabs-store/xlabs-store.esm.js +1 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/package.json +69 -0
- package/readme.md +50 -0
|
@@ -0,0 +1,645 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, a as getElement, h, F as Fragment, H as Host } from './index-ig_mFsVk.js';
|
|
2
|
+
import { M as Modal } from './modal-service-C_e0SaFZ.js';
|
|
3
|
+
import './portal-controller-COpzIi1n.js';
|
|
4
|
+
import './locale.service-D66tF8_2.js';
|
|
5
|
+
|
|
6
|
+
class FinderService {
|
|
7
|
+
config;
|
|
8
|
+
state = {
|
|
9
|
+
items: [],
|
|
10
|
+
filteredItems: [],
|
|
11
|
+
selectedItems: [],
|
|
12
|
+
pathTrail: [{ id: null, name: 'Home' }],
|
|
13
|
+
currentFolderId: null,
|
|
14
|
+
loading: false,
|
|
15
|
+
viewMode: 'grid',
|
|
16
|
+
filterMode: 'all',
|
|
17
|
+
searchQuery: '',
|
|
18
|
+
sortBy: 'name',
|
|
19
|
+
sortOrder: 'asc',
|
|
20
|
+
showDetails: true,
|
|
21
|
+
storage: { used: 12.4, total: 20 }
|
|
22
|
+
};
|
|
23
|
+
onChange;
|
|
24
|
+
constructor(config, onStateChange) {
|
|
25
|
+
this.config = config;
|
|
26
|
+
this.onChange = onStateChange;
|
|
27
|
+
if (config.defaultViewMode) {
|
|
28
|
+
this.state.viewMode = config.defaultViewMode;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
getState() {
|
|
32
|
+
return { ...this.state };
|
|
33
|
+
}
|
|
34
|
+
updateState(newState) {
|
|
35
|
+
this.state = { ...this.state, ...newState };
|
|
36
|
+
this.applyFilters();
|
|
37
|
+
this.onChange(this.state);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* API Actions
|
|
41
|
+
*/
|
|
42
|
+
async loadItems(folderId = this.state.currentFolderId) {
|
|
43
|
+
if (!this.config.list)
|
|
44
|
+
return;
|
|
45
|
+
this.updateState({ loading: true, currentFolderId: folderId, selectedItems: [] });
|
|
46
|
+
try {
|
|
47
|
+
const items = await this.config.list(folderId);
|
|
48
|
+
this.updateState({ items, loading: false });
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
console.error('Failed to load items', e);
|
|
52
|
+
this.updateState({ loading: false });
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
async createFolder() {
|
|
56
|
+
if (!this.config.createFolder)
|
|
57
|
+
return;
|
|
58
|
+
const modalRef = Modal.create({
|
|
59
|
+
title: 'Create New Folder',
|
|
60
|
+
content: this.renderInputTemplate('Enter folder name...', ''),
|
|
61
|
+
onOk: async () => {
|
|
62
|
+
const name = this.getInputValue(modalRef);
|
|
63
|
+
if (!name)
|
|
64
|
+
return false;
|
|
65
|
+
const newItem = await this.config.createFolder(name, this.state.currentFolderId);
|
|
66
|
+
if (newItem) {
|
|
67
|
+
await this.loadItems();
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
async createProject() {
|
|
75
|
+
if (!this.config.createProject)
|
|
76
|
+
return;
|
|
77
|
+
const modalRef = Modal.create({
|
|
78
|
+
title: 'Create New Project',
|
|
79
|
+
content: this.renderInputTemplate('Enter project name...', ''),
|
|
80
|
+
onOk: async () => {
|
|
81
|
+
const name = this.getInputValue(modalRef);
|
|
82
|
+
if (!name)
|
|
83
|
+
return false;
|
|
84
|
+
const newItem = await this.config.createProject(name);
|
|
85
|
+
if (newItem) {
|
|
86
|
+
await this.loadItems();
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
async upload(file) {
|
|
94
|
+
if (!this.config.upload)
|
|
95
|
+
return;
|
|
96
|
+
this.updateState({ loading: true });
|
|
97
|
+
try {
|
|
98
|
+
const newItem = await this.config.upload(file, this.state.currentFolderId);
|
|
99
|
+
if (newItem) {
|
|
100
|
+
await this.loadItems();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
finally {
|
|
104
|
+
this.updateState({ loading: false });
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
async rename(item) {
|
|
108
|
+
if (!this.config.update)
|
|
109
|
+
return;
|
|
110
|
+
const modalRef = Modal.create({
|
|
111
|
+
title: 'Rename Item',
|
|
112
|
+
content: this.renderInputTemplate('Enter new name...', item.name),
|
|
113
|
+
onOk: async () => {
|
|
114
|
+
const name = this.getInputValue(modalRef);
|
|
115
|
+
if (!name || name === item.name)
|
|
116
|
+
return false;
|
|
117
|
+
const updatedItem = await this.config.update(item, { name });
|
|
118
|
+
if (updatedItem) {
|
|
119
|
+
await this.loadItems();
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
async delete(item) {
|
|
127
|
+
if (!this.config.delete)
|
|
128
|
+
return;
|
|
129
|
+
Modal.confirm({
|
|
130
|
+
title: 'Confirm Delete',
|
|
131
|
+
content: `Are you sure you want to delete <strong>${item.name}</strong>?`,
|
|
132
|
+
okText: 'Delete',
|
|
133
|
+
okDanger: true,
|
|
134
|
+
onOk: async () => {
|
|
135
|
+
const success = await this.config.delete(item);
|
|
136
|
+
if (success) {
|
|
137
|
+
await this.loadItems();
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
download(item) {
|
|
143
|
+
if (this.config.download) {
|
|
144
|
+
this.config.download(item);
|
|
145
|
+
}
|
|
146
|
+
else if (item.url) {
|
|
147
|
+
const link = document.createElement('a');
|
|
148
|
+
link.href = item.url;
|
|
149
|
+
link.download = item.name;
|
|
150
|
+
link.click();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* UI Navigation & State Control
|
|
155
|
+
*/
|
|
156
|
+
navigateTo(folderId, name) {
|
|
157
|
+
const idx = this.state.pathTrail.findIndex(p => p.id === folderId);
|
|
158
|
+
let newTrail = [];
|
|
159
|
+
if (idx !== -1) {
|
|
160
|
+
newTrail = this.state.pathTrail.slice(0, idx + 1);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
newTrail = [...this.state.pathTrail, { id: folderId, name }];
|
|
164
|
+
}
|
|
165
|
+
this.updateState({ pathTrail: newTrail });
|
|
166
|
+
this.loadItems(folderId);
|
|
167
|
+
}
|
|
168
|
+
setSearchQuery(query) {
|
|
169
|
+
this.updateState({ searchQuery: query });
|
|
170
|
+
}
|
|
171
|
+
setFilterMode(mode) {
|
|
172
|
+
this.updateState({ filterMode: mode });
|
|
173
|
+
}
|
|
174
|
+
setViewMode(mode) {
|
|
175
|
+
this.updateState({ viewMode: mode });
|
|
176
|
+
}
|
|
177
|
+
setSorting(field, order) {
|
|
178
|
+
const newOrder = order || (this.state.sortBy === field && this.state.sortOrder === 'asc' ? 'desc' : 'asc');
|
|
179
|
+
this.updateState({ sortBy: field, sortOrder: newOrder });
|
|
180
|
+
}
|
|
181
|
+
toggleDetails(show) {
|
|
182
|
+
this.updateState({ showDetails: show !== undefined ? show : !this.state.showDetails });
|
|
183
|
+
}
|
|
184
|
+
selectItem(item, multi = false) {
|
|
185
|
+
if (multi) {
|
|
186
|
+
const index = this.state.selectedItems.findIndex(i => i.id === item.id);
|
|
187
|
+
const newSelection = index > -1
|
|
188
|
+
? this.state.selectedItems.filter(i => i.id !== item.id)
|
|
189
|
+
: [...this.state.selectedItems, item];
|
|
190
|
+
this.updateState({ selectedItems: newSelection });
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
this.updateState({ selectedItems: [item], showDetails: true });
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
clearSelection() {
|
|
197
|
+
this.updateState({ selectedItems: [] });
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Helpers
|
|
201
|
+
*/
|
|
202
|
+
applyFilters() {
|
|
203
|
+
let result = [...this.state.items];
|
|
204
|
+
if (this.state.filterMode === 'images') {
|
|
205
|
+
result = result.filter(i => i.type === 'file' && this.isImageItem(i));
|
|
206
|
+
}
|
|
207
|
+
// Search
|
|
208
|
+
if (this.state.searchQuery) {
|
|
209
|
+
const q = this.state.searchQuery.toLowerCase();
|
|
210
|
+
result = result.filter(i => i.name.toLowerCase().includes(q));
|
|
211
|
+
}
|
|
212
|
+
// Sort
|
|
213
|
+
result.sort((a, b) => {
|
|
214
|
+
let valA = a[this.state.sortBy];
|
|
215
|
+
let valB = b[this.state.sortBy];
|
|
216
|
+
if (this.state.sortBy === 'name') {
|
|
217
|
+
valA = a.name.toLowerCase();
|
|
218
|
+
valB = b.name.toLowerCase();
|
|
219
|
+
}
|
|
220
|
+
const order = this.state.sortOrder === 'asc' ? 1 : -1;
|
|
221
|
+
return valA > valB ? order : (valA < valB ? -order : 0);
|
|
222
|
+
});
|
|
223
|
+
this.state.filteredItems = result;
|
|
224
|
+
}
|
|
225
|
+
getFileExtension(name) {
|
|
226
|
+
const n = (name || '').trim();
|
|
227
|
+
const idx = n.lastIndexOf('.');
|
|
228
|
+
if (idx === -1)
|
|
229
|
+
return '';
|
|
230
|
+
return n.slice(idx + 1).toLowerCase();
|
|
231
|
+
}
|
|
232
|
+
isImageItem(item) {
|
|
233
|
+
const mime = (item.mimeType || '').toLowerCase();
|
|
234
|
+
if (mime.startsWith('image/'))
|
|
235
|
+
return true;
|
|
236
|
+
const ext = this.getFileExtension(item.name);
|
|
237
|
+
return ['png', 'jpg', 'jpeg', 'gif', 'webp', 'bmp', 'svg', 'avif'].includes(ext);
|
|
238
|
+
}
|
|
239
|
+
renderInputTemplate(placeholder, value) {
|
|
240
|
+
return `
|
|
241
|
+
<div style="padding: 8px 0;">
|
|
242
|
+
<div style="font-size: 14px; font-weight: 500; color: #64748b; margin-bottom: 8px;">Name</div>
|
|
243
|
+
<input type="text" id="finder-modal-input" value="${value}" placeholder="${placeholder}"
|
|
244
|
+
style="width: 100%; padding: 8px 12px; border: 1px solid #d9d9d9; border-radius: 4px; box-sizing: border-box; font-family: inherit;"
|
|
245
|
+
/>
|
|
246
|
+
</div>
|
|
247
|
+
`;
|
|
248
|
+
}
|
|
249
|
+
getInputValue(modalRef) {
|
|
250
|
+
const contentEl = modalRef.getContentElement();
|
|
251
|
+
const input = contentEl.querySelector('#finder-modal-input');
|
|
252
|
+
return input?.value?.trim() || '';
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
const xFinderCss = () => `@charset "UTF-8";:root{--x-color-primary:#1677ff;--x-color-primary-rgb:22, 119, 255;--x-color-primary-contrast:#ffffff;--x-color-primary-contrast-rgb:255, 255, 255;--x-color-primary-shade:#0958d9;--x-color-primary-tint:#4096ff;--x-color-primary-bg:#e6f4ff;--x-color-primary-bg-hover:#bae0ff;--x-color-primary-border:#91caff;--x-color-primary-border-hover:#69b1ff;--x-color-primary-hover:#4096ff;--x-color-primary-active:#0958d9;--x-color-primary-text:#1677ff;--x-color-primary-text-hover:#4096ff;--x-color-primary-text-active:#0958d9;--x-color-secondary:#3dc2ff;--x-color-secondary-rgb:61, 194, 255;--x-color-secondary-contrast:#ffffff;--x-color-secondary-contrast-rgb:255, 255, 255;--x-color-secondary-shade:#36abe0;--x-color-secondary-tint:#50c8ff;--x-color-success:#52c41a;--x-color-success-rgb:82, 196, 26;--x-color-success-contrast:#ffffff;--x-color-success-contrast-rgb:255, 255, 255;--x-color-success-shade:#389e0d;--x-color-success-tint:#73d13d;--x-color-success-bg:#f6ffed;--x-color-success-bg-hover:#d9f7be;--x-color-success-border:#b7eb8f;--x-color-success-border-hover:#95de64;--x-color-success-hover:#73d13d;--x-color-success-active:#389e0d;--x-color-success-text:#52c41a;--x-color-success-text-hover:#73d13d;--x-color-success-text-active:#389e0d;--x-color-warning:#faad14;--x-color-warning-rgb:250, 173, 20;--x-color-warning-contrast:#000000;--x-color-warning-contrast-rgb:0, 0, 0;--x-color-warning-shade:#d48806;--x-color-warning-tint:#ffc53d;--x-color-warning-bg:#fffbe6;--x-color-warning-bg-hover:#fff1b8;--x-color-warning-border:#ffe58f;--x-color-warning-border-hover:#ffd666;--x-color-warning-hover:#ffc53d;--x-color-warning-active:#d48806;--x-color-warning-text:#faad14;--x-color-warning-text-hover:#ffc53d;--x-color-warning-text-active:#d48806;--x-color-danger:#ff4d4f;--x-color-danger-rgb:255, 77, 79;--x-color-danger-contrast:#ffffff;--x-color-danger-contrast-rgb:255, 255, 255;--x-color-danger-shade:#cf1322;--x-color-danger-tint:#ff7875;--x-color-error:#ff4d4f;--x-color-error-rgb:255, 77, 79;--x-color-error-bg:#fff2f0;--x-color-error-bg-hover:#ffccc7;--x-color-error-border:#ffa39e;--x-color-error-border-hover:#ff7875;--x-color-error-hover:#ff7875;--x-color-error-active:#d9363e;--x-color-error-text:#ff4d4f;--x-color-error-text-hover:#ff7875;--x-color-error-text-active:#d9363e;--x-color-info:#1677ff;--x-color-info-rgb:22, 119, 255;--x-color-info-bg:#e6f4ff;--x-color-info-bg-hover:#bae0ff;--x-color-info-border:#91caff;--x-color-info-border-hover:#69b1ff;--x-color-info-hover:#69b1ff;--x-color-info-active:#0958d9;--x-color-info-text:#1677ff;--x-color-info-text-hover:#69b1ff;--x-color-info-text-active:#0958d9;--x-color-text:rgba(0, 0, 0, 0.88);--x-color-text-secondary:rgba(0, 0, 0, 0.65);--x-color-text-tertiary:rgba(0, 0, 0, 0.45);--x-color-text-quaternary:rgba(0, 0, 0, 0.25);--x-color-text-disabled:rgba(0, 0, 0, 0.25);--x-color-text-placeholder:rgba(0, 0, 0, 0.25);--x-color-text-heading:rgba(0, 0, 0, 0.88);--x-color-text-label:rgba(0, 0, 0, 0.65);--x-color-text-description:rgba(0, 0, 0, 0.45);--x-color-text-light-solid:#ffffff;--x-color-bg-container:#ffffff;--x-color-bg-elevated:#ffffff;--x-color-bg-layout:#f5f5f5;--x-color-bg-spotlight:rgba(0, 0, 0, 0.85);--x-color-bg-mask:rgba(0, 0, 0, 0.45);--x-color-bg-base:#ffffff;--x-color-bg-container-disabled:#f5f5f5;--x-color-bg-container-loading:rgba(255, 255, 255, 0.65);--x-color-white:#ffffff;--x-color-fill:rgba(0, 0, 0, 0.15);--x-color-fill-secondary:rgba(0, 0, 0, 0.06);--x-color-fill-tertiary:rgba(0, 0, 0, 0.04);--x-color-fill-quaternary:rgba(0, 0, 0, 0.02);--x-color-border:#d9d9d9;--x-color-border-secondary:#f0f0f0;--x-color-border-bg:#ffffff;--x-color-split:rgba(5, 5, 5, 0.06);--x-color-dark:#222428;--x-color-dark-rgb:34, 36, 40;--x-color-dark-contrast:#ffffff;--x-color-dark-contrast-rgb:255, 255, 255;--x-color-dark-shade:#1e2023;--x-color-dark-tint:#383a3e;--x-color-medium:#92949c;--x-color-medium-rgb:146, 148, 156;--x-color-medium-contrast:#ffffff;--x-color-medium-contrast-rgb:255, 255, 255;--x-color-medium-shade:#808289;--x-color-medium-tint:#9d9fa6;--x-color-light:#f4f5f8;--x-color-light-rgb:244, 245, 248;--x-color-light-contrast:#000000;--x-color-light-contrast-rgb:0, 0, 0;--x-color-light-shade:#d7d8da;--x-color-light-tint:#f5f6f9;--x-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--x-font-family-code:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;--x-font-size:14px;--x-font-size-sm:12px;--x-font-size-lg:16px;--x-font-size-xl:20px;--x-font-size-heading-1:38px;--x-font-size-heading-2:30px;--x-font-size-heading-3:24px;--x-font-size-heading-4:20px;--x-font-size-heading-5:16px;--x-line-height:1.5714285714285714;--x-line-height-lg:1.5;--x-line-height-sm:1.6666666666666667;--x-line-height-heading-1:1.2105263157894737;--x-line-height-heading-2:1.2666666666666666;--x-line-height-heading-3:1.3333333333333333;--x-line-height-heading-4:1.4;--x-line-height-heading-5:1.5;--x-font-weight-normal:400;--x-font-weight-medium:500;--x-font-weight-semibold:600;--x-font-weight-strong:600;--x-font-size-base:14px;--x-font-size-xxl:24px;--x-line-height-base:1.5714285714285714;--x-spacing-xxs:4px;--x-spacing-xs:8px;--x-spacing-sm:12px;--x-spacing-md:16px;--x-spacing-lg:20px;--x-spacing-xl:24px;--x-spacing-xxl:32px;--x-spacing-xxxl:48px;--x-margin-xxs:4px;--x-margin-xs:8px;--x-margin-sm:12px;--x-margin-md:16px;--x-margin-lg:24px;--x-margin-xl:32px;--x-margin-xxl:48px;--x-padding-xxs:4px;--x-padding-xs:8px;--x-padding-sm:12px;--x-padding-md:16px;--x-padding-lg:24px;--x-padding-content-horizontal-lg:24px;--x-padding-content-vertical-lg:12px;--x-padding-content-horizontal:16px;--x-padding-content-vertical:12px;--x-padding-content-horizontal-sm:16px;--x-padding-content-vertical-sm:8px;--x-border-radius:6px;--x-border-radius-xs:2px;--x-border-radius-sm:4px;--x-border-radius-lg:8px;--x-border-radius-xl:12px;--x-border-radius-outer:4px;--x-border-radius-base:6px;--x-border-width:1px;--x-border-width-base:1px;--x-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-shadow-secondary:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-shadow-tertiary:0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px 0 rgba(0, 0, 0, 0.02);--x-shadow-lg:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-secondary:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-tertiary:0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px 0 rgba(0, 0, 0, 0.02);--x-box-shadow-popover-arrow:2px 2px 5px rgba(0, 0, 0, 0.05);--x-box-shadow-card:0 1px 2px -2px rgba(0, 0, 0, 0.16), 0 3px 6px 0 rgba(0, 0, 0, 0.12), 0 5px 12px 4px rgba(0, 0, 0, 0.09);--x-box-shadow-drawer-right:-6px 0 16px 0 rgba(0, 0, 0, 0.08), -3px 0 6px -4px rgba(0, 0, 0, 0.12), -9px 0 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-drawer-left:6px 0 16px 0 rgba(0, 0, 0, 0.08), 3px 0 6px -4px rgba(0, 0, 0, 0.12), 9px 0 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-drawer-up:0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-drawer-down:0 -6px 16px 0 rgba(0, 0, 0, 0.08), 0 -3px 6px -4px rgba(0, 0, 0, 0.12), 0 -9px 28px 8px rgba(0, 0, 0, 0.05);--x-box-shadow-tabs-overflow-left:inset 10px 0 8px -8px rgba(0, 0, 0, 0.08);--x-box-shadow-tabs-overflow-right:inset -10px 0 8px -8px rgba(0, 0, 0, 0.08);--x-box-shadow-tabs-overflow-top:inset 0 10px 8px -8px rgba(0, 0, 0, 0.08);--x-box-shadow-tabs-overflow-bottom:inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08);--x-motion-duration-fast:0.1s;--x-motion-duration-mid:0.2s;--x-motion-duration-slow:0.3s;--x-motion-ease-in-out:cubic-bezier(0.645, 0.045, 0.355, 1);--x-motion-ease-out:cubic-bezier(0.215, 0.61, 0.355, 1);--x-motion-ease-in:cubic-bezier(0.55, 0.055, 0.675, 0.19);--x-motion-ease-out-back:cubic-bezier(0.12, 0.4, 0.29, 1.46);--x-motion-ease-in-back:cubic-bezier(0.71, -0.46, 0.88, 0.6);--x-motion-ease-in-out-circle:cubic-bezier(0.78, 0.14, 0.15, 0.86);--x-motion-ease-out-circle:cubic-bezier(0.08, 0.82, 0.17, 1);--x-motion-ease-in-circle:cubic-bezier(0.6, 0.04, 0.98, 0.34);--x-motion-ease-in-quint:cubic-bezier(0.755, 0.05, 0.855, 0.06);--x-motion-ease-out-quint:cubic-bezier(0.23, 1, 0.32, 1);--x-z-index-base:0;--x-z-index-popup-base:1000;--x-z-index-popup:1030;--x-z-index-affix:10;--x-z-index-modal:1000;--x-z-index-modal-mask:1000;--x-z-index-drawer:1000;--x-z-index-popover:1030;--x-z-index-dropdown:1050;--x-z-index-tooltip:1070;--x-z-index-notification:1080;--x-z-index-message:1090;--x-z-index-popconfirm:1060;--x-z-index-table-fixed:10;--x-opacity-loading:0.65;--x-opacity-image:1;--x-opacity-disabled:0.5;--x-control-height:32px;--x-control-height-xs:24px;--x-control-height-sm:24px;--x-control-height-lg:40px;--x-control-radio-size:16px;--x-control-checkbox-size:16px;--x-control-padding-horizontal:12px;--x-control-padding-horizontal-sm:8px;--x-control-outline-width:2px;--x-control-outline:rgba(5, 145, 255, 0.1);--x-control-item-bg-hover:rgba(0, 0, 0, 0.04);--x-control-item-bg-active:#e6f4ff;--x-control-item-bg-active-hover:#bae0ff;--x-control-item-bg-active-disabled:rgba(0, 0, 0, 0.15);--x-control-tmp-outline:rgba(0, 0, 0, 0.02);--x-color-yellow:#fadb14;--x-color-yellow-rgb:250, 219, 20;--x-font-family-base:var(--x-font-family);--x-color-link:#1677ff;--x-color-link-hover:#69b1ff;--x-color-link-active:#0958d9;--x-color-icon:rgba(0, 0, 0, 0.45);--x-color-icon-hover:rgba(0, 0, 0, 0.88);--x-color-highlight:#ff4d4f;--x-color-bg-text-hover:rgba(0, 0, 0, 0.06);--x-color-bg-text-active:rgba(0, 0, 0, 0.15);--x-screen-xs:480px;--x-screen-xs-min:480px;--x-screen-xs-max:575px;--x-screen-sm:576px;--x-screen-sm-min:576px;--x-screen-sm-max:767px;--x-screen-md:768px;--x-screen-md-min:768px;--x-screen-md-max:991px;--x-screen-lg:992px;--x-screen-lg-min:992px;--x-screen-lg-max:1199px;--x-screen-xl:1200px;--x-screen-xl-min:1200px;--x-screen-xl-max:1599px;--x-screen-xxl:1600px;--x-screen-xxl-min:1600px;--x-color-fill-content:rgba(0, 0, 0, 0.06);--x-color-fill-content-hover:rgba(0, 0, 0, 0.15);--x-color-fill-alter:rgba(0, 0, 0, 0.02);--x-scrollbar-width:12px;--x-scrollbar-track-bg:rgba(0, 0, 0, 0.04);--x-scrollbar-thumb-bg:rgba(0, 0, 0, 0.25);--x-scrollbar-thumb-bg-hover:rgba(0, 0, 0, 0.35);--x-menu-dark-bg:#001529;--x-menu-dark-item-bg:#001529;--x-menu-dark-popup-bg:#001529;--x-menu-dark-submenu-item-bg:#000c17}:host{display:block;font-family:inherit;border-radius:var(--x-modal-content-border-radius, var(--x-border-radius-lg, 8px)) var(--x-modal-content-border-radius, var(--x-border-radius-lg, 8px)) 0 0;overflow:hidden}.page-wrapper{height:100%;background-color:white;position:relative;overflow:hidden}.finder-container{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:80vh}.details-sidebar,.finder-sidebar{--x-sider-bg:#fff !important}.finder-header{height:64px;background:var(--x-finder-header-bg, var(--x-color-bg-container, #ffffff));border-bottom:var(--x-border-width-base, 1px) solid var(--x-finder-border-color, var(--x-color-border-secondary, #f0f0f0));-ms-flex-negative:0;flex-shrink:0;z-index:10}.finder-header .header-logo{font-size:20px;font-weight:700;color:var(--x-finder-text-color, var(--x-text-color, #1e293b));white-space:nowrap}.finder-header .nav-link{text-decoration:none;color:var(--x-finder-text-secondary, var(--x-text-color-secondary, #64748b)) !important;font-weight:500;font-size:14px;-webkit-transition:color 0.2s;transition:color 0.2s;white-space:nowrap}.finder-header .nav-link:hover{color:var(--x-finder-text-color, var(--x-text-color, #1e293b)) !important}.finder-header .nav-link.active{color:var(--x-color-primary, #137fec) !important;font-weight:600}.finder-sidebar{overflow:hidden}.finder-sidebar .sidebar-top{padding:24px;-ms-flex-negative:0;flex-shrink:0}.finder-sidebar .sidebar-section{padding:0 24px}.finder-sidebar .sidebar-section .section-title{font-size:12px;font-weight:600;color:var(--x-text-color-secondary);margin-bottom:12px;letter-spacing:0.5px}.main-content{background:var(--x-finder-content-bg, var(--x-color-bg-layout, #f1f5f9));padding:0px 15px 15px;-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden;min-height:0}.main-content .content-toolbar{margin:20px 0px;-ms-flex-negative:0;flex-shrink:0}.items-grid{width:100%}.grid-item{height:100%;cursor:pointer;border-radius:var(--x-finder-border-radius-lg, var(--x-border-radius-lg, 16px));border:2px solid transparent;-webkit-transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1);transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.grid-item::part(body){display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%}.grid-item.selected{border-color:var(--x-color-primary, #137fec)}.grid-item.selected::part(card){background-color:var(--x-finder-item-selected-bg, var(--x-color-primary-bg, #f0f9ff))}.grid-item .thumbnail{background-color:var(--x-finder-thumbnail-bg, var(--x-color-fill-quaternary, #f1f5f9));border-radius:var(--x-finder-border-radius-md, var(--x-border-radius-base, 12px));display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:12px;position:relative;overflow:hidden;width:100%;aspect-ratio:16/10}.grid-item .thumbnail img,.grid-item .thumbnail x-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.grid-item .thumbnail .badge{position:absolute;top:8px;right:8px;background:var(--x-color-primary, #137fec);color:var(--x-finder-item-bg, var(--x-color-bg-container, #ffffff));width:22px;height:22px;border-radius:50%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.grid-item .info{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.grid-item .info .name{font-weight:600;font-size:var(--x-finder-font-size-md, var(--x-font-size-lg, 14px));color:var(--x-finder-text-color, var(--x-text-color, #1e293b));margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-item .info .meta{font-size:var(--x-finder-font-size-sm, var(--x-font-size-base, 12px));color:var(--x-finder-text-secondary, var(--x-text-color-secondary, #64748b));font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.items-list{position:relative}.virtual-spacer{width:100%;position:relative}.virtual-items{position:absolute;top:0;left:0;right:0}.list-item{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 16px;border-radius:var(--x-finder-border-radius-sm, var(--x-border-radius-sm, 8px));cursor:pointer;-webkit-transition:background 0.2s;transition:background 0.2s;height:56px;-webkit-box-sizing:border-box;box-sizing:border-box}.list-item:hover{background:var(--x-finder-item-hover-bg, var(--x-color-fill-tertiary, #f8fafc))}.list-item.selected{background:var(--x-finder-item-selected-bg, var(--x-color-primary-bg, #f0f9ff))}.list-item.selected .name{color:var(--x-color-primary, #137fec);font-weight:600}.list-item .name{font-size:var(--x-finder-font-size-md, var(--x-font-size-lg, 14px));color:var(--x-finder-text-color, var(--x-text-color, #1e293b));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item .type,.list-item .size,.list-item .date{font-size:13px;color:var(--x-finder-text-secondary, var(--x-text-color-secondary, #64748b));width:120px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item .type{-ms-flex-negative:0;flex-shrink:0;width:150px;text-align:left;margin-left:16px}.details-sidebar .preview{aspect-ratio:16/10;background:var(--x-finder-thumbnail-bg, var(--x-color-fill-quaternary, #f1f5f9));border-radius:var(--x-finder-border-radius-lg, var(--x-border-radius-lg, 16px));margin-bottom:24px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;overflow:hidden}.details-sidebar .preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.details-sidebar .info-section{margin-bottom:32px}.details-sidebar .info-section .filename{font-size:var(--x-finder-font-size-lg, 16px);font-weight:600;color:var(--x-finder-text-color, var(--x-text-color, #1e293b));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.details-sidebar .info-section .time{font-size:var(--x-finder-font-size-xs, var(--x-font-size-sm, 11px));color:var(--x-finder-text-muted, var(--x-text-color-description, #94a3b8));font-weight:700;letter-spacing:0.1em;text-transform:uppercase;margin-top:4px}.details-sidebar .actions{margin-top:auto;padding-top:24px;border-top:var(--x-border-width-base, 1px) solid var(--x-finder-thumbnail-bg, var(--x-color-fill-quaternary, #f1f5f9))}.details-sidebar .actions .label{font-size:var(--x-finder-font-size-xs, var(--x-font-size-sm, 11px));font-weight:700;color:var(--x-finder-text-muted, var(--x-text-color-description, #94a3b8));margin-bottom:20px}.details-sidebar .actions .action-btn{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:10px;cursor:pointer;color:var(--x-finder-text-secondary, var(--x-text-color-secondary, #64748b));-webkit-transition:all 0.2s;transition:all 0.2s}.details-sidebar .actions .action-btn span{font-size:var(--x-finder-font-size-sm, var(--x-font-size-base, 12px));font-weight:600}.details-sidebar .actions .action-btn:hover{color:var(--x-color-primary, #137fec);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.details-sidebar .actions .action-btn.danger:hover{color:var(--x-finder-danger-color, var(--x-color-error, #ef4444))}.selection-footer{height:80px;background:var(--x-finder-footer-bg, var(--x-color-bg-container, #ffffff));border-top:var(--x-border-width-base, 1px) solid var(--x-finder-border-color, var(--x-color-border-secondary, #f0f0f0));padding:0 40px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0}.selection-footer .text{font-size:15px;font-weight:600;color:var(--x-finder-text-color, var(--x-text-color, #1e293b))}.clickable{cursor:pointer;-webkit-transition:opacity 0.2s;transition:opacity 0.2s}.clickable:hover{opacity:0.7}x-layout{position:relative !important}`;
|
|
257
|
+
|
|
258
|
+
const XFinder = class {
|
|
259
|
+
constructor(hostRef) {
|
|
260
|
+
registerInstance(this, hostRef);
|
|
261
|
+
this.xSelect = createEvent(this, "xSelect", 7);
|
|
262
|
+
this.xClose = createEvent(this, "xClose", 7);
|
|
263
|
+
}
|
|
264
|
+
get el() { return getElement(this); }
|
|
265
|
+
/**
|
|
266
|
+
* Interface mode for the finder.
|
|
267
|
+
* 'page' takes up full height/width of container.
|
|
268
|
+
* 'dialog' shows up in a modal.
|
|
269
|
+
*/
|
|
270
|
+
displayMode = 'page';
|
|
271
|
+
/**
|
|
272
|
+
* Visibility state, mainly for 'dialog' mode.
|
|
273
|
+
*/
|
|
274
|
+
visible = false;
|
|
275
|
+
/**
|
|
276
|
+
* Configuration for CRUD operations.
|
|
277
|
+
*/
|
|
278
|
+
config = {};
|
|
279
|
+
/**
|
|
280
|
+
* Title of the finder shown in the header.
|
|
281
|
+
*/
|
|
282
|
+
finderTitle = 'File Manager';
|
|
283
|
+
async handleConfigChange(newConfig) {
|
|
284
|
+
this.initService(newConfig);
|
|
285
|
+
await this.service.loadItems();
|
|
286
|
+
}
|
|
287
|
+
state;
|
|
288
|
+
/**
|
|
289
|
+
* Triggered when user selects files/folders and confirms (e.g. in dialog mode).
|
|
290
|
+
*/
|
|
291
|
+
xSelect;
|
|
292
|
+
/**
|
|
293
|
+
* Triggered when dialog is closed.
|
|
294
|
+
*/
|
|
295
|
+
xClose;
|
|
296
|
+
service;
|
|
297
|
+
fileInput;
|
|
298
|
+
itemsViewportRef;
|
|
299
|
+
itemsResizeObserver;
|
|
300
|
+
itemsViewportHeight = 0;
|
|
301
|
+
itemsViewportScrollTop = 0;
|
|
302
|
+
async componentWillLoad() {
|
|
303
|
+
this.initService(this.config);
|
|
304
|
+
await this.service.loadItems();
|
|
305
|
+
}
|
|
306
|
+
componentDidLoad() {
|
|
307
|
+
this.initItemsViewportObserver();
|
|
308
|
+
}
|
|
309
|
+
disconnectedCallback() {
|
|
310
|
+
this.itemsResizeObserver?.disconnect();
|
|
311
|
+
}
|
|
312
|
+
initService(config) {
|
|
313
|
+
this.service = new FinderService(config, (newState) => {
|
|
314
|
+
this.state = { ...newState };
|
|
315
|
+
});
|
|
316
|
+
this.state = this.service.getState();
|
|
317
|
+
}
|
|
318
|
+
initItemsViewportObserver() {
|
|
319
|
+
if (this.itemsResizeObserver)
|
|
320
|
+
return;
|
|
321
|
+
if (!this.itemsViewportRef)
|
|
322
|
+
return;
|
|
323
|
+
this.itemsResizeObserver = new ResizeObserver(() => {
|
|
324
|
+
const h = this.itemsViewportRef?.clientHeight || 0;
|
|
325
|
+
if (h !== this.itemsViewportHeight)
|
|
326
|
+
this.itemsViewportHeight = h;
|
|
327
|
+
});
|
|
328
|
+
this.itemsResizeObserver.observe(this.itemsViewportRef);
|
|
329
|
+
this.itemsViewportHeight = this.itemsViewportRef.clientHeight || 0;
|
|
330
|
+
}
|
|
331
|
+
setItemsViewportRef = (el) => {
|
|
332
|
+
this.itemsViewportRef = el;
|
|
333
|
+
this.initItemsViewportObserver();
|
|
334
|
+
};
|
|
335
|
+
handleItemsViewportScroll = (ev) => {
|
|
336
|
+
const target = ev.target;
|
|
337
|
+
this.itemsViewportScrollTop = target.scrollTop;
|
|
338
|
+
};
|
|
339
|
+
handleFileSelected = async (ev) => {
|
|
340
|
+
const target = ev.target;
|
|
341
|
+
const file = target.files?.[0];
|
|
342
|
+
if (file) {
|
|
343
|
+
await this.service.upload(file);
|
|
344
|
+
}
|
|
345
|
+
target.value = '';
|
|
346
|
+
};
|
|
347
|
+
handleConfirmSelect = (e) => {
|
|
348
|
+
if (e && e.stopPropagation)
|
|
349
|
+
e.stopPropagation();
|
|
350
|
+
this.xSelect.emit(this.state.selectedItems);
|
|
351
|
+
if (this.displayMode === 'dialog') {
|
|
352
|
+
this.visible = false;
|
|
353
|
+
this.xClose.emit();
|
|
354
|
+
}
|
|
355
|
+
};
|
|
356
|
+
renderHeader() {
|
|
357
|
+
const filterMode = this.state?.filterMode || 'all';
|
|
358
|
+
return (h("x-header", { class: "finder-header" }, h("x-flex", { justify: "space-between", align: "center", style: { width: '100%', height: '100%' } }, h("x-flex", { align: "center", gap: "32" }, h("div", { class: "header-logo" }, this.finderTitle), h("x-flex", { align: "center", gap: "24" }, h("a", { href: "#", class: { 'nav-link': true, 'active': filterMode === 'all' }, onClick: (e) => {
|
|
359
|
+
e.preventDefault();
|
|
360
|
+
this.service.setFilterMode('all');
|
|
361
|
+
} }, "All Files"), h("a", { href: "#", class: { 'nav-link': true, 'active': filterMode === 'images' }, onClick: (e) => {
|
|
362
|
+
e.preventDefault();
|
|
363
|
+
this.service.setFilterMode('images');
|
|
364
|
+
} }, "Images"))), h("x-flex", { align: "center", gap: "16" }, h("div", null, h("x-input", { placeholder: "Search assets...", prefixIcon: "search", size: "small", style: { width: '240px' }, onXChange: (ev) => this.service.setSearchQuery(ev.detail.value) })), h("x-segmented", { value: this.state.viewMode, options: [
|
|
365
|
+
{ label: 'Grid', value: 'grid', icon: 'grid_view' },
|
|
366
|
+
{ label: 'List', value: 'list', icon: 'list' }
|
|
367
|
+
], onXChange: (ev) => this.service.setViewMode(ev.detail) }), h("x-flex", { align: "center", gap: "12" }, h("x-icon", { name: "settings", size: "18", color: "#64748b", class: "clickable", onClick: () => this.openSettings() }), h("x-icon", { name: "info", size: "18", color: "#64748b", class: "clickable", onClick: () => this.openInfo() }))))));
|
|
368
|
+
}
|
|
369
|
+
openSettings() {
|
|
370
|
+
const modalRef = Modal.create({
|
|
371
|
+
title: 'Finder Settings',
|
|
372
|
+
content: `
|
|
373
|
+
<div style="display:flex;flex-direction:column;gap:12px;padding-top:6px;">
|
|
374
|
+
<label style="font-size:13px;color:#64748b;display:flex;flex-direction:column;gap:6px;">
|
|
375
|
+
View Mode
|
|
376
|
+
<select id="finder-setting-viewmode" style="padding:8px;border:1px solid #d9d9d9;border-radius:6px;">
|
|
377
|
+
<option value="grid"${this.state.viewMode === 'grid' ? ' selected' : ''}>Grid</option>
|
|
378
|
+
<option value="list"${this.state.viewMode === 'list' ? ' selected' : ''}>List</option>
|
|
379
|
+
</select>
|
|
380
|
+
</label>
|
|
381
|
+
<label style="font-size:13px;color:#64748b;display:flex;flex-direction:column;gap:6px;">
|
|
382
|
+
Filter
|
|
383
|
+
<select id="finder-setting-filter" style="padding:8px;border:1px solid #d9d9d9;border-radius:6px;">
|
|
384
|
+
<option value="all"${this.state.filterMode === 'all' ? ' selected' : ''}>All Files</option>
|
|
385
|
+
<option value="images"${this.state.filterMode === 'images' ? ' selected' : ''}>Images</option>
|
|
386
|
+
</select>
|
|
387
|
+
</label>
|
|
388
|
+
<label style="font-size:13px;color:#64748b;display:flex;align-items:center;gap:8px;">
|
|
389
|
+
<input type="checkbox" id="finder-setting-showdetails"${this.state.showDetails ? ' checked' : ''} />
|
|
390
|
+
Show Details Panel
|
|
391
|
+
</label>
|
|
392
|
+
</div>
|
|
393
|
+
`,
|
|
394
|
+
onOk: async () => {
|
|
395
|
+
const el = modalRef.getContentElement();
|
|
396
|
+
const vm = el.querySelector('#finder-setting-viewmode')?.value;
|
|
397
|
+
const fm = el.querySelector('#finder-setting-filter')?.value;
|
|
398
|
+
const sd = el.querySelector('#finder-setting-showdetails')?.checked;
|
|
399
|
+
if (vm)
|
|
400
|
+
this.service.setViewMode(vm);
|
|
401
|
+
if (fm)
|
|
402
|
+
this.service.setFilterMode(fm);
|
|
403
|
+
this.service.toggleDetails(sd);
|
|
404
|
+
return true;
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
}
|
|
408
|
+
openInfo() {
|
|
409
|
+
const total = (this.state.items || []).length;
|
|
410
|
+
const filtered = (this.state.filteredItems || []).length;
|
|
411
|
+
const selected = (this.state.selectedItems || []).length;
|
|
412
|
+
const path = (this.state.pathTrail || []).map(p => p.name).join(' / ');
|
|
413
|
+
const storage = this.state.storage ? `${this.state.storage.used} GB / ${this.state.storage.total} GB` : 'N/A';
|
|
414
|
+
Modal.info({
|
|
415
|
+
title: 'Finder Info',
|
|
416
|
+
content: `
|
|
417
|
+
<div style="display:flex;flex-direction:column;gap:8px;">
|
|
418
|
+
<div><strong>Path:</strong> ${path || 'Home'}</div>
|
|
419
|
+
<div><strong>Total Items:</strong> ${total}</div>
|
|
420
|
+
<div><strong>Visible Items:</strong> ${filtered}</div>
|
|
421
|
+
<div><strong>Selected:</strong> ${selected}</div>
|
|
422
|
+
<div><strong>Storage:</strong> ${storage}</div>
|
|
423
|
+
</div>
|
|
424
|
+
`
|
|
425
|
+
});
|
|
426
|
+
}
|
|
427
|
+
renderSidebar() {
|
|
428
|
+
const folders = (this.state.items || []).filter(i => i.type === 'folder');
|
|
429
|
+
const selectedKey = this.state.currentFolderId == null ? '__root__' : String(this.state.currentFolderId);
|
|
430
|
+
const rootNode = { key: '__root__', title: 'Home', icon: 'home', folderId: null, children: [] };
|
|
431
|
+
const trail = this.state.pathTrail || [{ id: null, name: 'Home' }];
|
|
432
|
+
let cursor = rootNode;
|
|
433
|
+
for (let i = 1; i < trail.length; i++) {
|
|
434
|
+
const seg = trail[i];
|
|
435
|
+
const node = {
|
|
436
|
+
key: String(seg.id),
|
|
437
|
+
title: seg.name,
|
|
438
|
+
icon: 'folder',
|
|
439
|
+
folderId: seg.id,
|
|
440
|
+
children: [],
|
|
441
|
+
};
|
|
442
|
+
cursor.children = [node];
|
|
443
|
+
cursor = node;
|
|
444
|
+
}
|
|
445
|
+
cursor.children = folders.map(f => ({
|
|
446
|
+
key: String(f.id),
|
|
447
|
+
title: f.name,
|
|
448
|
+
icon: 'folder',
|
|
449
|
+
folderId: f.id,
|
|
450
|
+
}));
|
|
451
|
+
const treeData = [rootNode];
|
|
452
|
+
const expandedKeys = ['__root__', ...trail.slice(1).map(t => String(t.id))];
|
|
453
|
+
return (h("x-sider", { class: "finder-sidebar", width: 240, style: { display: 'flex', flexDirection: 'column' } }, h("x-layout", { hasSiderProp: false, fixed: false }, h("x-header", { class: "finder-header" }, h("x-flex", { align: "center", style: { height: '100%' }, justify: 'space-between', gap: "12" }, h("x-button", { type: "primary", style: { width: '100%' }, block: true, size: "large", onClick: () => this.fileInput.click() }, h("x-icon", { slot: "icon", name: "cloud_upload" }), "Upload"))), h("x-layout", { hasSiderProp: false, fixed: true }, h("div", { class: "sidebar-section" }, h("div", { class: "section-title" }, "FOLDERS"), h("x-tree", { treeData: treeData, selectedKeys: [selectedKey], expandedKeys: expandedKeys, showIcon: true, blockNode: true, onXSelect: (ev) => {
|
|
454
|
+
if (ev && ev.stopPropagation) {
|
|
455
|
+
ev.stopPropagation();
|
|
456
|
+
}
|
|
457
|
+
const node = ev?.detail?.node;
|
|
458
|
+
const folderId = node?.folderId ?? null;
|
|
459
|
+
const name = node?.title || 'Home';
|
|
460
|
+
this.service.navigateTo(folderId, name);
|
|
461
|
+
} }))))));
|
|
462
|
+
}
|
|
463
|
+
renderBreadcrumbs() {
|
|
464
|
+
return (h("div", null, h("x-breadcrumb", null, this.state.pathTrail.map(p => (h("x-breadcrumb-item", { onClick: (e) => {
|
|
465
|
+
if (e && e.stopPropagation)
|
|
466
|
+
e.stopPropagation();
|
|
467
|
+
this.service.navigateTo(p.id, p.name);
|
|
468
|
+
} }, h("a", { href: "javascript:void(0)" }, p.name))))), h("x-flex", { justify: "space-between", align: "center", style: { marginTop: '16px' } }, h("div", null), h("div", null))));
|
|
469
|
+
}
|
|
470
|
+
getFileExtension(name) {
|
|
471
|
+
const n = (name || '').trim();
|
|
472
|
+
const idx = n.lastIndexOf('.');
|
|
473
|
+
if (idx === -1)
|
|
474
|
+
return '';
|
|
475
|
+
return n.slice(idx + 1).toLowerCase();
|
|
476
|
+
}
|
|
477
|
+
formatMiddleEllipsis(text, head, tail) {
|
|
478
|
+
const s = (text || '').trim();
|
|
479
|
+
if (!s)
|
|
480
|
+
return '';
|
|
481
|
+
if (head <= 0 || tail <= 0)
|
|
482
|
+
return s;
|
|
483
|
+
if (s.length <= head + tail + 1)
|
|
484
|
+
return s;
|
|
485
|
+
return `${s.slice(0, head)}…${s.slice(-tail)}`;
|
|
486
|
+
}
|
|
487
|
+
isImageFile(item) {
|
|
488
|
+
const mime = (item.mimeType || '').toLowerCase();
|
|
489
|
+
if (mime.startsWith('image/'))
|
|
490
|
+
return true;
|
|
491
|
+
const ext = this.getFileExtension(item.name);
|
|
492
|
+
return ['png', 'jpg', 'jpeg', 'gif', 'webp', 'bmp', 'svg', 'avif'].includes(ext);
|
|
493
|
+
}
|
|
494
|
+
getFileIconName(item) {
|
|
495
|
+
if (item.type === 'folder')
|
|
496
|
+
return 'folder';
|
|
497
|
+
const mime = (item.mimeType || '').toLowerCase();
|
|
498
|
+
const ext = this.getFileExtension(item.name);
|
|
499
|
+
if (this.isImageFile(item))
|
|
500
|
+
return 'image';
|
|
501
|
+
if (mime === 'application/pdf' || ext === 'pdf')
|
|
502
|
+
return 'picture_as_pdf';
|
|
503
|
+
if (mime.includes('spreadsheet') || ['xls', 'xlsx', 'csv'].includes(ext))
|
|
504
|
+
return 'table_chart';
|
|
505
|
+
if (mime.includes('word') || ['doc', 'docx', 'rtf'].includes(ext))
|
|
506
|
+
return 'article';
|
|
507
|
+
if (mime.includes('presentation') || ['ppt', 'pptx'].includes(ext))
|
|
508
|
+
return 'slideshow';
|
|
509
|
+
if (mime.startsWith('audio/') || ['mp3', 'wav', 'ogg', 'm4a', 'flac'].includes(ext))
|
|
510
|
+
return 'audiotrack';
|
|
511
|
+
if (mime.startsWith('video/') || ['mp4', 'mov', 'mkv', 'webm'].includes(ext))
|
|
512
|
+
return 'movie';
|
|
513
|
+
if (['zip', 'rar', '7z', 'tar', 'gz'].includes(ext))
|
|
514
|
+
return 'folder_zip';
|
|
515
|
+
if (['txt', 'md', 'log'].includes(ext))
|
|
516
|
+
return 'text_snippet';
|
|
517
|
+
if (['json', 'xml', 'yml', 'yaml', 'js', 'ts', 'tsx', 'jsx', 'css', 'scss', 'html'].includes(ext))
|
|
518
|
+
return 'code';
|
|
519
|
+
return 'description';
|
|
520
|
+
}
|
|
521
|
+
getFileIconColor(item) {
|
|
522
|
+
if (item.type === 'folder')
|
|
523
|
+
return '#f59e0b';
|
|
524
|
+
const ext = this.getFileExtension(item.name);
|
|
525
|
+
const mime = (item.mimeType || '').toLowerCase();
|
|
526
|
+
if (this.isImageFile(item))
|
|
527
|
+
return '#0ea5e9';
|
|
528
|
+
if (mime === 'application/pdf' || ext === 'pdf')
|
|
529
|
+
return '#ef4444';
|
|
530
|
+
if (mime.includes('spreadsheet') || ['xls', 'xlsx', 'csv'].includes(ext))
|
|
531
|
+
return '#16a34a';
|
|
532
|
+
if (mime.includes('word') || ['doc', 'docx', 'rtf'].includes(ext))
|
|
533
|
+
return '#2563eb';
|
|
534
|
+
if (mime.includes('presentation') || ['ppt', 'pptx'].includes(ext))
|
|
535
|
+
return '#f97316';
|
|
536
|
+
if (mime.startsWith('audio/') || ['mp3', 'wav', 'ogg', 'm4a', 'flac'].includes(ext))
|
|
537
|
+
return '#8b5cf6';
|
|
538
|
+
if (mime.startsWith('video/') || ['mp4', 'mov', 'mkv', 'webm'].includes(ext))
|
|
539
|
+
return '#a855f7';
|
|
540
|
+
if (['zip', 'rar', '7z', 'tar', 'gz'].includes(ext))
|
|
541
|
+
return '#64748b';
|
|
542
|
+
return '#94a3b8';
|
|
543
|
+
}
|
|
544
|
+
formatDate(date) {
|
|
545
|
+
if (!date)
|
|
546
|
+
return '-';
|
|
547
|
+
const d = new Date(date);
|
|
548
|
+
if (isNaN(d.getTime()))
|
|
549
|
+
return String(date);
|
|
550
|
+
const year = d.getFullYear();
|
|
551
|
+
const month = String(d.getMonth() + 1).padStart(2, '0');
|
|
552
|
+
const day = String(d.getDate()).padStart(2, '0');
|
|
553
|
+
const hours = String(d.getHours()).padStart(2, '0');
|
|
554
|
+
const minutes = String(d.getMinutes()).padStart(2, '0');
|
|
555
|
+
const seconds = String(d.getSeconds()).padStart(2, '0');
|
|
556
|
+
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
|
|
557
|
+
}
|
|
558
|
+
renderItemThumb(item, isSelected, size) {
|
|
559
|
+
if (item.type === 'folder') {
|
|
560
|
+
return (h("x-icon", { name: "folder", size: size, color: isSelected ? 'var(--x-color-primary)' : this.getFileIconColor(item) }));
|
|
561
|
+
}
|
|
562
|
+
if (this.isImageFile(item) && (item.thumbnail || item.url)) {
|
|
563
|
+
return (h("x-image", { src: item.thumbnail || item.url, alt: item.name, width: "100%", height: "100%", loading: "lazy", preview: false, style: { pointerEvents: 'none' } }));
|
|
564
|
+
}
|
|
565
|
+
return (h("x-icon", { name: this.getFileIconName(item), size: size, color: isSelected ? 'var(--x-color-primary)' : this.getFileIconColor(item) }));
|
|
566
|
+
}
|
|
567
|
+
renderGridItem(item) {
|
|
568
|
+
const isSelected = this.state.selectedItems.some(i => i.id === item.id);
|
|
569
|
+
const displayName = this.formatMiddleEllipsis(item.name, 18, 12);
|
|
570
|
+
return (h("x-col", { flex: "0 0 240px", style: { width: '240px', minWidth: '240px', maxWidth: '240px', marginBottom: '24px' } }, h("x-card", { class: `grid-item ${isSelected ? 'selected' : ''}`, hoverable: true, onClick: (e) => {
|
|
571
|
+
e.stopPropagation();
|
|
572
|
+
const multi = e.ctrlKey || e.metaKey;
|
|
573
|
+
if (item.type === 'folder' && !multi) {
|
|
574
|
+
this.service.navigateTo(item.id, item.name);
|
|
575
|
+
return;
|
|
576
|
+
}
|
|
577
|
+
this.service.selectItem(item, multi);
|
|
578
|
+
}, onDblClick: (e) => {
|
|
579
|
+
e.stopPropagation();
|
|
580
|
+
item.type === 'folder' ? this.service.navigateTo(item.id, item.name) : this.service.download(item);
|
|
581
|
+
} }, h("div", { class: "thumbnail", slot: 'cover' }, this.renderItemThumb(item, isSelected, 48), isSelected && h("div", { class: "badge" }, h("x-icon", { name: "check", size: 12 }))), h("div", { class: "info" }, h("div", { class: "name", title: item.name }, displayName), h("div", { class: "meta" }, item.size ? `${item.size} MB` : '-', " \u2022 ", item.mimeType || (item.type === 'folder' ? 'Folder' : ''))))));
|
|
582
|
+
}
|
|
583
|
+
renderListItem(item) {
|
|
584
|
+
const isSelected = this.state.selectedItems.some(i => i.id === item.id);
|
|
585
|
+
const displayName = this.formatMiddleEllipsis(item.name, 28, 16);
|
|
586
|
+
return (h("div", { class: `list-item ${isSelected ? 'selected' : ''}`, onClick: (e) => {
|
|
587
|
+
e.stopPropagation();
|
|
588
|
+
const multi = e.ctrlKey || e.metaKey;
|
|
589
|
+
if (item.type === 'folder' && !multi) {
|
|
590
|
+
this.service.navigateTo(item.id, item.name);
|
|
591
|
+
return;
|
|
592
|
+
}
|
|
593
|
+
this.service.selectItem(item, multi);
|
|
594
|
+
}, onDblClick: (e) => {
|
|
595
|
+
e.stopPropagation();
|
|
596
|
+
item.type === 'folder' ? this.service.navigateTo(item.id, item.name) : this.service.download(item);
|
|
597
|
+
} }, h("x-flex", { align: "center", gap: "12", style: { flex: '1', minWidth: '0' } }, h("x-icon", { name: this.getFileIconName(item), size: "20", color: isSelected ? 'var(--x-color-primary)' : this.getFileIconColor(item) }), h("span", { class: "name", title: item.name }, displayName)), h("span", { class: "type" }, item.mimeType || item.type), h("span", { class: "size" }, item.size ? `${item.size} MB` : '-'), h("span", { class: "date" }, this.formatDate(item.updatedAt))));
|
|
598
|
+
}
|
|
599
|
+
renderVirtualList(items) {
|
|
600
|
+
const itemHeight = 56;
|
|
601
|
+
const overscan = 8;
|
|
602
|
+
const totalHeight = items.length * itemHeight;
|
|
603
|
+
const start = Math.max(0, Math.floor(this.itemsViewportScrollTop / itemHeight) - overscan);
|
|
604
|
+
const end = Math.min(items.length - 1, Math.ceil((this.itemsViewportScrollTop + this.itemsViewportHeight) / itemHeight) + overscan);
|
|
605
|
+
const visibleItems = items.slice(start, end + 1);
|
|
606
|
+
const offsetY = start * itemHeight;
|
|
607
|
+
return (h("div", { class: "virtual-spacer", style: { height: `${totalHeight}px` } }, h("div", { class: "virtual-items", style: { transform: `translateY(${offsetY}px)` } }, visibleItems.map((item) => (h("div", { key: String(item.id), style: { height: `${itemHeight}px` } }, this.renderListItem(item)))))));
|
|
608
|
+
}
|
|
609
|
+
renderDetails() {
|
|
610
|
+
if (!this.state.showDetails || this.state.selectedItems.length === 0)
|
|
611
|
+
return null;
|
|
612
|
+
const item = this.state.selectedItems[0];
|
|
613
|
+
const displayName = this.formatMiddleEllipsis(item.name, 28, 16);
|
|
614
|
+
return (h("x-sider", { class: "details-sidebar", width: 320, style: { display: 'flex', flexDirection: 'column' } }, h("x-layout", { hasSiderProp: false, fixed: false }, h("x-header", { class: "finder-header" }, h("x-flex", { align: "center", justify: 'space-between', gap: "12" }, h("x-flex", { flex: '1', align: "center", gap: "4" }, h("x-typography", { type: 'title', level: 4 }, "Details")), h("x-icon", { name: "close", onClick: () => this.service.toggleDetails(false), class: "clickable" }))), h("x-layout", { hasSiderProp: false, fixed: true }, h("x-content", null, h("div", { class: "details-content" }, h("div", { class: "preview" }, this.isImageFile(item) && (item.url || item.thumbnail) ? (h("x-image", { src: item.url || item.thumbnail, alt: item.name, width: "100%", height: "100%", loading: "lazy", placeholder: true, preview: true })) : (h("x-icon", { name: item.type === 'folder' ? 'folder' : this.getFileIconName(item), size: "80", color: "#cbd5e1" }))), h("div", { class: "info-section" }, h("x-flex", { align: "center", gap: "8", style: { marginBottom: '4px', minWidth: '0' } }, h("x-icon", { name: "description", size: 16, color: "var(--x-color-primary)" }), h("div", { class: "filename", title: item.name }, displayName)), h("div", { class: "time" }, item.updatedAt ? `MODIFIED ${this.formatDate(item.updatedAt)}` : '')), h("x-descriptions", { column: 1, size: "small", style: { marginTop: '24px' } }, h("x-descriptions-item", { label: "Type" }, item.mimeType || item.type), h("x-descriptions-item", { label: "Size" }, item.size ? `${item.size} MB` : '-'), h("x-descriptions-item", { label: "Dimensions" }, item.dimensions || '-'), h("x-descriptions-item", { label: "Created" }, this.formatDate(item.createdAt)), h("x-descriptions-item", { label: "Modified" }, this.formatDate(item.updatedAt)))))), h("x-footer", null, h("div", { class: "actions" }, h("div", { class: "label" }, "QUICK ACTIONS"), h("x-flex", { justify: "space-around", style: { marginTop: '16px' } }, h("div", { class: "action-btn", onClick: (e) => { e.stopPropagation(); this.service.download(item); } }, h("x-icon", { name: "download", size: 20 }), h("span", null, "Download")), h("div", { class: "action-btn", onClick: (e) => { e.stopPropagation(); this.service.rename(item); } }, h("x-icon", { name: "edit", size: 20 }), h("span", null, "Rename")), h("div", { class: "action-btn danger", onClick: (e) => { e.stopPropagation(); this.service.delete(item); } }, h("x-icon", { name: "delete", size: 20 }), h("span", null, "Delete"))))))));
|
|
615
|
+
}
|
|
616
|
+
renderFooter() {
|
|
617
|
+
const hasSelection = this.state.selectedItems.length > 0;
|
|
618
|
+
return (h("x-footer", { class: "selection-footer" }, h("x-flex", { justify: "space-between", align: "center", style: { width: '100%' } }, h("x-flex", { align: "center", gap: "8" }, hasSelection && (h(Fragment, null, h("x-icon", { name: "check_circle", size: "18", color: "var(--x-color-primary)" }), h("span", { class: "text" }, this.state.selectedItems.length, " items selected")))), h("x-flex", { align: "center", gap: "8" }, h("x-space", null, h("x-button", { type: "text", onClick: (e) => {
|
|
619
|
+
e.stopPropagation();
|
|
620
|
+
this.service.clearSelection();
|
|
621
|
+
if (this.displayMode === 'dialog') {
|
|
622
|
+
this.visible = false;
|
|
623
|
+
this.xClose.emit();
|
|
624
|
+
}
|
|
625
|
+
} }, "Cancel"), h("x-button", { type: "primary", disabled: !hasSelection, onClick: this.handleConfirmSelect }, "Select Files"))))));
|
|
626
|
+
}
|
|
627
|
+
render() {
|
|
628
|
+
const isGrid = this.state.viewMode === 'grid';
|
|
629
|
+
const items = this.state.filteredItems || [];
|
|
630
|
+
const content = (h("x-layout", { key: '5094b9695720b295e038e97f3f18726e926970ba', class: "finder-container", fixed: true }, this.renderHeader(), h("x-layout", { key: '123f21a544c21a73658e4ff9a98458bb691e9104', hasSiderProp: true, fixed: false }, this.renderSidebar(), h("x-layout", { key: 'aea9694a8167a070dd16102dcaa1a8262d580dcd', hasSiderProp: true, fixed: true }, h("x-content", { key: '5f27961a6e0dbe85b16b5ad590429bcb0515eaf5', class: "main-content" }, this.renderBreadcrumbs(), h("div", { key: '07ca6371d162b9f0a3f99e5db0c1f2e514765b47', class: {
|
|
631
|
+
'items-viewport': true,
|
|
632
|
+
'items-viewport-grid': isGrid,
|
|
633
|
+
'items-viewport-list': !isGrid,
|
|
634
|
+
}, ref: this.setItemsViewportRef, onScroll: this.handleItemsViewportScroll }, h("x-spin", { key: '61612ab7ff99bfb22649673f8c791ce95a749007', spinning: this.state.loading, style: { width: '100%' } }, items.length === 0 ? (h("div", { class: "empty-center" }, h("x-empty", { description: "No items found" }))) : isGrid ? (h("div", { class: "items-grid" }, h("x-row", { gutter: 24 }, items.map((item) => this.renderGridItem(item))))) : (h("div", { class: "items-list" }, this.renderVirtualList(items))))))), this.renderDetails()), this.renderFooter(), h("input", { key: 'a613a663e1cf46ea33b807544a853bdbcb7f9c05', type: "file", ref: (el) => (this.fileInput = el), style: { display: 'none' }, onChange: this.handleFileSelected })));
|
|
635
|
+
return (h(Host, { key: 'ee145b2cabb7020bf1db35477ed2299774408844' }, h("div", { key: 'f56a8f764b044a4842c5cb121e393475db16b762', class: "page-wrapper" }, content)));
|
|
636
|
+
}
|
|
637
|
+
static get watchers() { return {
|
|
638
|
+
"config": [{
|
|
639
|
+
"handleConfigChange": 0
|
|
640
|
+
}]
|
|
641
|
+
}; }
|
|
642
|
+
};
|
|
643
|
+
XFinder.style = xFinderCss();
|
|
644
|
+
|
|
645
|
+
export { XFinder as x_finder };
|