@powerhousedao/design-system 6.1.0-dev.12 → 6.1.0-dev.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Removed-CO_5C1ce.js +178 -0
- package/dist/Removed-CO_5C1ce.js.map +1 -0
- package/dist/Tabler-FjvVqX5a.js +65 -0
- package/dist/Tabler-FjvVqX5a.js.map +1 -0
- package/dist/{button-49Walvwn.d.ts → button-C8doazjv.d.ts} +1 -1
- package/dist/{button-49Walvwn.d.ts.map → button-C8doazjv.d.ts.map} +1 -1
- package/dist/{character-counter-BcuG4STA.d.ts → character-counter-BWoglM2P.d.ts} +1 -1
- package/dist/{character-counter-BcuG4STA.d.ts.map → character-counter-BWoglM2P.d.ts.map} +1 -1
- package/dist/{checkbox-Bxc7-H_k.d.ts → checkbox-CGBtXQnI.d.ts} +3 -3
- package/dist/{checkbox-Bxc7-H_k.d.ts.map → checkbox-CGBtXQnI.d.ts.map} +1 -1
- package/dist/{checkbox-base-8xXJvAbj.d.ts → checkbox-base-CZo-4eL0.d.ts} +1 -1
- package/dist/{checkbox-base-8xXJvAbj.d.ts.map → checkbox-base-CZo-4eL0.d.ts.map} +1 -1
- package/dist/{command-CThXmS49.d.ts → command-By1kGfcI.d.ts} +15 -15
- package/dist/command-By1kGfcI.d.ts.map +1 -0
- package/dist/connect/components/toast/toast.d.ts.map +1 -1
- package/dist/connect/components/toast/toast.js +6 -6
- package/dist/connect/components/toast/toast.js.map +1 -1
- package/dist/connect/index.d.ts +49 -91
- package/dist/connect/index.d.ts.map +1 -1
- package/dist/connect/index.js +1032 -843
- package/dist/connect/index.js.map +1 -1
- package/dist/{content-Ce1V2wTc.d.ts → content-BHWIqmio.d.ts} +2 -2
- package/dist/{content-Ce1V2wTc.d.ts.map → content-BHWIqmio.d.ts.map} +1 -1
- package/dist/{enum-field-DJ4XRc2r.d.ts → enum-field-CwZVs3Ux.d.ts} +3 -3
- package/dist/{enum-field-DJ4XRc2r.d.ts.map → enum-field-CwZVs3Ux.d.ts.map} +1 -1
- package/dist/{form-B9JNvrH6.d.ts → form-CKRKn0TQ.d.ts} +1 -1
- package/dist/{form-B9JNvrH6.d.ts.map → form-CKRKn0TQ.d.ts.map} +1 -1
- package/dist/{form-description-BpST5Ww-.d.ts → form-description-CYkcMEzm.d.ts} +1 -1
- package/dist/{form-description-BpST5Ww-.d.ts.map → form-description-CYkcMEzm.d.ts.map} +1 -1
- package/dist/{form-group-BauWlFkQ.d.ts → form-group-C8kL6pdZ.d.ts} +1 -1
- package/dist/form-group-C8kL6pdZ.d.ts.map +1 -0
- package/dist/{form-label-Cz_gcj-B.d.ts → form-label-b6nQi0XO.d.ts} +1 -1
- package/dist/form-label-b6nQi0XO.d.ts.map +1 -0
- package/dist/{form-message-BPqNM4gG.d.ts → form-message-Dq72nBXz.d.ts} +1 -1
- package/dist/{form-message-BPqNM4gG.d.ts.map → form-message-Dq72nBXz.d.ts.map} +1 -1
- package/dist/{form-server-error-message-CzMQQ8ru.d.ts → form-server-error-message-DXbaiTfF.d.ts} +1 -1
- package/dist/{form-server-error-message-CzMQQ8ru.d.ts.map → form-server-error-message-DXbaiTfF.d.ts.map} +1 -1
- package/dist/{src-BgKEHW0i.js → icon-C4QOpsdI.js} +14 -964
- package/dist/icon-C4QOpsdI.js.map +1 -0
- package/dist/{id-autocomplete-ClooY-ur.d.ts → id-autocomplete-C-hwriS5.d.ts} +2 -2
- package/dist/{id-autocomplete-ClooY-ur.d.ts.map → id-autocomplete-C-hwriS5.d.ts.map} +1 -1
- package/dist/{id-autocomplete-input-container-O7l0T0zJ.d.ts → id-autocomplete-input-container-DFEyPh5p.d.ts} +2 -2
- package/dist/{id-autocomplete-input-container-O7l0T0zJ.d.ts.map → id-autocomplete-input-container-DFEyPh5p.d.ts.map} +1 -1
- package/dist/{id-autocomplete-list-CpPWWmw0.d.ts → id-autocomplete-list-EzLpF23C.d.ts} +2 -2
- package/dist/{id-autocomplete-list-CpPWWmw0.d.ts.map → id-autocomplete-list-EzLpF23C.d.ts.map} +1 -1
- package/dist/{id-autocomplete-list-option-QmSvQwgn.d.ts → id-autocomplete-list-option-CB5B07Hi.d.ts} +2 -2
- package/dist/{id-autocomplete-list-option-QmSvQwgn.d.ts.map → id-autocomplete-list-option-CB5B07Hi.d.ts.map} +1 -1
- package/dist/{index-BEiWWMW2.d.ts → index--hDSfvJT.d.ts} +2 -15
- package/dist/index--hDSfvJT.d.ts.map +1 -0
- package/dist/index-E7Wvm5uX.d.ts +1 -0
- package/dist/index-J3R2mDFQ.d.ts +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -2
- package/dist/{input-D11GgWGm.d.ts → input-BpEQjaWV.d.ts} +1 -1
- package/dist/input-BpEQjaWV.d.ts.map +1 -0
- package/dist/{json-viewer-vWp8vOvz.d.ts → json-viewer-DaTgmzkS.d.ts} +1 -1
- package/dist/{json-viewer-vWp8vOvz.d.ts.map → json-viewer-DaTgmzkS.d.ts.map} +1 -1
- package/dist/{message-list-aysvo-xf.d.ts → message-list-C4mPpBBa.d.ts} +2 -2
- package/dist/{message-list-aysvo-xf.d.ts.map → message-list-C4mPpBBa.d.ts.map} +1 -1
- package/dist/{popover-glLRVxPS.d.ts → popover-XSBOuSih.d.ts} +1 -1
- package/dist/{popover-glLRVxPS.d.ts.map → popover-XSBOuSih.d.ts.map} +1 -1
- package/dist/{radio-DZ4xl9oz.d.ts → radio-eL0Oy86J.d.ts} +1 -1
- package/dist/{radio-DZ4xl9oz.d.ts.map → radio-eL0Oy86J.d.ts.map} +1 -1
- package/dist/{radio-group-DjJbcDzB.d.ts → radio-group-Bkli6nUz.d.ts} +1 -1
- package/dist/{radio-group-DjJbcDzB.d.ts.map → radio-group-Bkli6nUz.d.ts.map} +1 -1
- package/dist/{radio-group-field-BkD0Nl0j.d.ts → radio-group-field-wlqeiLN3.d.ts} +3 -3
- package/dist/{radio-group-field-BkD0Nl0j.d.ts.map → radio-group-field-wlqeiLN3.d.ts.map} +1 -1
- package/dist/{search-autocomplete-OeZbE-VN.d.ts → search-autocomplete-BJJkrZ1i.d.ts} +2 -2
- package/dist/{search-autocomplete-OeZbE-VN.d.ts.map → search-autocomplete-BJJkrZ1i.d.ts.map} +1 -1
- package/dist/{select-field-B9KcyWc1.d.ts → select-field-C97QIhUL.d.ts} +2 -2
- package/dist/{select-field-B9KcyWc1.d.ts.map → select-field-C97QIhUL.d.ts.map} +1 -1
- package/dist/{selected-content-HHOKK679.d.ts → selected-content-CGsK5PR4.d.ts} +2 -2
- package/dist/selected-content-CGsK5PR4.d.ts.map +1 -0
- package/dist/sidebar-DOoE4krt.d.ts +102 -0
- package/dist/sidebar-DOoE4krt.d.ts.map +1 -0
- package/dist/sidebar-provider-C2eyz9TL.d.ts +46 -0
- package/dist/sidebar-provider-C2eyz9TL.d.ts.map +1 -0
- package/dist/{splitted-input-diff-DZ_0mBKD.d.ts → splitted-input-diff-CwPedpov.d.ts} +2 -2
- package/dist/splitted-input-diff-CwPedpov.d.ts.map +1 -0
- package/dist/src-BrrPQVce.js +710 -0
- package/dist/src-BrrPQVce.js.map +1 -0
- package/dist/style.css +84 -4173
- package/dist/{text-field-CwxxUhUk.d.ts → text-field-DSInH67J.d.ts} +3 -3
- package/dist/{text-field-CwxxUhUk.d.ts.map → text-field-DSInH67J.d.ts.map} +1 -1
- package/dist/{text-input-By73a1-n.d.ts → text-input-8zXIWHLi.d.ts} +3 -3
- package/dist/{text-input-By73a1-n.d.ts.map → text-input-8zXIWHLi.d.ts.map} +1 -1
- package/dist/{text-input-diff-C6OK2A4u.d.ts → text-input-diff-B0vLSKQm.d.ts} +2 -2
- package/dist/{text-input-diff-C6OK2A4u.d.ts.map → text-input-diff-B0vLSKQm.d.ts.map} +1 -1
- package/dist/{tooltip-Cf5jSzdt.d.ts → tooltip-BxS9HpML.d.ts} +1 -1
- package/dist/{tooltip-Cf5jSzdt.d.ts.map → tooltip-BxS9HpML.d.ts.map} +1 -1
- package/dist/{types-tThrTH_c.d.ts → types-BTq-St7H.d.ts} +1 -1
- package/dist/{types-tThrTH_c.d.ts.map → types-BTq-St7H.d.ts.map} +1 -1
- package/dist/{types-BfmDXMrz.d.ts → types-Bsn62tJB.d.ts} +1 -1
- package/dist/{types-BfmDXMrz.d.ts.map → types-Bsn62tJB.d.ts.map} +1 -1
- package/dist/{types-9JRQnd7a.d.ts → types-C04Q_Fan.d.ts} +1 -1
- package/dist/{types-9JRQnd7a.d.ts.map → types-C04Q_Fan.d.ts.map} +1 -1
- package/dist/types-CNbvfWjh.d.ts +31 -0
- package/dist/types-CNbvfWjh.d.ts.map +1 -0
- package/dist/ui/components/button/button.d.ts +1 -1
- package/dist/ui/components/button/button.js +3 -3
- package/dist/ui/components/button/button.js.map +1 -1
- package/dist/ui/components/character-counter/character-counter.d.ts +1 -1
- package/dist/ui/components/character-counter/character-counter.js +6 -6
- package/dist/ui/components/character-counter/character-counter.js.map +1 -1
- package/dist/ui/components/checkbox/checkbox-base.d.ts +1 -1
- package/dist/ui/components/checkbox/checkbox-base.js +3 -3
- package/dist/ui/components/checkbox/checkbox-base.js.map +1 -1
- package/dist/ui/components/checkbox/checkbox.d.ts +1 -1
- package/dist/ui/components/checkbox/checkbox.js +4 -4
- package/dist/ui/components/checkbox/checkbox.js.map +1 -1
- package/dist/ui/components/command/command.d.ts +1 -1
- package/dist/ui/components/command/command.js +9 -8
- package/dist/ui/components/command/command.js.map +1 -1
- package/dist/ui/components/enum-field/enum-field.d.ts +1 -1
- package/dist/ui/components/enum-field/types.d.ts +1 -1
- package/dist/ui/components/form/form.d.ts +1 -1
- package/dist/ui/components/form-description/form-description.d.ts +1 -1
- package/dist/ui/components/form-description/form-description.js +2 -2
- package/dist/ui/components/form-description/form-description.js.map +1 -1
- package/dist/ui/components/form-group/form-group.d.ts +1 -1
- package/dist/ui/components/form-label/form-label.d.ts +1 -1
- package/dist/ui/components/form-label/form-label.js +5 -4
- package/dist/ui/components/form-label/form-label.js.map +1 -1
- package/dist/ui/components/form-message/form-message.d.ts +1 -1
- package/dist/ui/components/form-message/form-message.js +5 -5
- package/dist/ui/components/form-message/form-message.js.map +1 -1
- package/dist/ui/components/form-message/form-server-error-message.d.ts +1 -1
- package/dist/ui/components/form-message/message-list.d.ts +1 -1
- package/dist/ui/components/form-message/message-list.js +6 -6
- package/dist/ui/components/form-message/message-list.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.d.ts +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.js +10 -9
- package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.d.ts +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.js +20 -19
- package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-list.d.ts +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-list.js +6 -6
- package/dist/ui/components/id-autocomplete/id-autocomplete-list.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete.d.ts +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete.js +4 -4
- package/dist/ui/components/id-autocomplete/id-autocomplete.js.map +1 -1
- package/dist/ui/components/id-autocomplete/types.d.ts +1 -1
- package/dist/ui/components/id-autocomplete/use-id-autocomplete.d.ts +1 -1
- package/dist/ui/components/index.d.ts +40 -37
- package/dist/ui/components/index.js +3 -1
- package/dist/ui/components/input/input.d.ts +1 -1
- package/dist/ui/components/input/input.js +2 -6
- package/dist/ui/components/input/input.js.map +1 -1
- package/dist/ui/components/input/splitted-input-diff.d.ts +1 -1
- package/dist/ui/components/input/splitted-input-diff.js +12 -11
- package/dist/ui/components/input/splitted-input-diff.js.map +1 -1
- package/dist/ui/components/input/subcomponent/input-diff.js +2 -2
- package/dist/ui/components/input/subcomponent/input-diff.js.map +1 -1
- package/dist/ui/components/input/subcomponent/text-diff.d.ts +1 -1
- package/dist/ui/components/input/subcomponent/text-diff.js +5 -5
- package/dist/ui/components/input/subcomponent/text-diff.js.map +1 -1
- package/dist/ui/components/json-viewer/json-viewer.d.ts +1 -1
- package/dist/ui/components/popover/popover.d.ts +1 -1
- package/dist/ui/components/popover/popover.js +3 -3
- package/dist/ui/components/popover/popover.js.map +1 -1
- package/dist/ui/components/radio-group-field/radio-group-field.d.ts +1 -1
- package/dist/ui/components/radio-group-field/radio-group-field.js +2 -2
- package/dist/ui/components/radio-group-field/radio-group-field.js.map +1 -1
- package/dist/ui/components/radio-group-field/radio-group.d.ts +1 -1
- package/dist/ui/components/radio-group-field/radio.d.ts +1 -1
- package/dist/ui/components/radio-group-field/radio.js +4 -4
- package/dist/ui/components/radio-group-field/radio.js.map +1 -1
- package/dist/ui/components/search-autocomplete/index.d.ts +3 -3
- package/dist/ui/components/search-autocomplete/search-autocomplete.d.ts +1 -1
- package/dist/ui/components/search-autocomplete/search-autocomplete.js +16 -16
- package/dist/ui/components/search-autocomplete/search-autocomplete.js.map +1 -1
- package/dist/ui/components/search-autocomplete/types.d.ts +1 -1
- package/dist/ui/components/search-autocomplete/use-search-autocomplete.d.ts +1 -1
- package/dist/ui/components/select-field/content.d.ts +1 -1
- package/dist/ui/components/select-field/content.js +10 -9
- package/dist/ui/components/select-field/content.js.map +1 -1
- package/dist/ui/components/select-field/select-field.d.ts +1 -1
- package/dist/ui/components/select-field/select-field.js +2 -2
- package/dist/ui/components/select-field/select-field.js.map +1 -1
- package/dist/ui/components/select-field/selected-content.d.ts +1 -1
- package/dist/ui/components/select-field/selected-content.js +11 -10
- package/dist/ui/components/select-field/selected-content.js.map +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.d.ts +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.d.ts.map +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.js +11 -10
- package/dist/ui/components/select-field/subcomponents/CommandItemList.js.map +1 -1
- package/dist/ui/components/select-field/use-select-field.d.ts +1 -1
- package/dist/ui/components/sidebar/index.d.ts +4 -0
- package/dist/ui/components/sidebar/index.js +3 -0
- package/dist/ui/components/sidebar/sidebar.d.ts +2 -0
- package/dist/ui/components/sidebar/sidebar.js +110 -0
- package/dist/ui/components/sidebar/sidebar.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.d.ts +14 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.js +56 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.d.ts +11 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.js +45 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.d.ts +35 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.js +156 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.d.ts +7 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.js +30 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/index.d.ts +2 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/index.js +2 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.d.ts +2 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.js +268 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts +92 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.js +107 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/index.d.ts +4 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/index.js +4 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.d.ts +10 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.js +22 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.d.ts +10 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.js +22 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.d.ts +8 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.js +85 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.d.ts +16 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.js +21 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.d.ts +7 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.js +63 -0
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.js.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/status-icon.d.ts +16 -0
- package/dist/ui/components/sidebar/subcomponents/status-icon.d.ts.map +1 -0
- package/dist/ui/components/sidebar/subcomponents/status-icon.js +43 -0
- package/dist/ui/components/sidebar/subcomponents/status-icon.js.map +1 -0
- package/dist/ui/components/sidebar/types.d.ts +2 -0
- package/dist/ui/components/sidebar/types.js +14 -0
- package/dist/ui/components/sidebar/types.js.map +1 -0
- package/dist/ui/components/sidebar/use-ellipsis.d.ts +10 -0
- package/dist/ui/components/sidebar/use-ellipsis.d.ts.map +1 -0
- package/dist/ui/components/sidebar/use-ellipsis.js +26 -0
- package/dist/ui/components/sidebar/use-ellipsis.js.map +1 -0
- package/dist/ui/components/sidebar/use-sidebar-resize.d.ts +22 -0
- package/dist/ui/components/sidebar/use-sidebar-resize.d.ts.map +1 -0
- package/dist/ui/components/sidebar/use-sidebar-resize.js +72 -0
- package/dist/ui/components/sidebar/use-sidebar-resize.js.map +1 -0
- package/dist/ui/components/sidebar/utils.d.ts +14 -0
- package/dist/ui/components/sidebar/utils.d.ts.map +1 -0
- package/dist/ui/components/sidebar/utils.js +118 -0
- package/dist/ui/components/sidebar/utils.js.map +1 -0
- package/dist/ui/components/text-field/text-field.d.ts +1 -1
- package/dist/ui/components/text-input/text-input-diff.d.ts +1 -1
- package/dist/ui/components/text-input/text-input.d.ts +1 -1
- package/dist/ui/components/text-input/text-input.js +2 -2
- package/dist/ui/components/text-input/text-input.js.map +1 -1
- package/dist/ui/components/text-input/types.d.ts +1 -1
- package/dist/ui/components/tooltip/tooltip.d.ts +1 -1
- package/dist/ui/components/tooltip/tooltip.js +2 -2
- package/dist/ui/components/tooltip/tooltip.js.map +1 -1
- package/dist/ui/components/types.d.ts +1 -1
- package/dist/ui/components/value-transformer/value-transformer.d.ts +1 -1
- package/dist/ui/components/with-field-validation/with-field-validation.d.ts +1 -1
- package/dist/ui/index.d.ts +42 -39
- package/dist/ui/index.js +3 -1
- package/dist/ui/lib/date-picker.d.ts +1 -1
- package/dist/ui/lib/shared-value-transformers.d.ts +1 -1
- package/dist/ui/lib/types.d.ts +1 -1
- package/dist/ui/types.d.ts +2 -2
- package/dist/{use-id-autocomplete-BcL_O50p.d.ts → use-id-autocomplete-By7YSChC.d.ts} +2 -2
- package/dist/{use-id-autocomplete-BcL_O50p.d.ts.map → use-id-autocomplete-By7YSChC.d.ts.map} +1 -1
- package/dist/{use-search-autocomplete-Xf7shCtk.d.ts → use-search-autocomplete-IfcQ_gKh.d.ts} +2 -2
- package/dist/{use-search-autocomplete-Xf7shCtk.d.ts.map → use-search-autocomplete-IfcQ_gKh.d.ts.map} +1 -1
- package/dist/{value-transformer-DCiU65Qa.d.ts → value-transformer-DQjqtNih.d.ts} +2 -2
- package/dist/{value-transformer-DCiU65Qa.d.ts.map → value-transformer-DQjqtNih.d.ts.map} +1 -1
- package/dist/{with-field-validation-BIac25Sm.d.ts → with-field-validation-Di5D8vU-.d.ts} +2 -2
- package/dist/{with-field-validation-BIac25Sm.d.ts.map → with-field-validation-Di5D8vU-.d.ts.map} +1 -1
- package/package.json +9 -5
- package/theme.css +60 -14
- package/dist/command-CThXmS49.d.ts.map +0 -1
- package/dist/form-group-BauWlFkQ.d.ts.map +0 -1
- package/dist/form-label-Cz_gcj-B.d.ts.map +0 -1
- package/dist/index-BEiWWMW2.d.ts.map +0 -1
- package/dist/input-D11GgWGm.d.ts.map +0 -1
- package/dist/selected-content-HHOKK679.d.ts.map +0 -1
- package/dist/splitted-input-diff-DZ_0mBKD.d.ts.map +0 -1
- package/dist/src-BgKEHW0i.js.map +0 -1
- /package/dist/{index-CWsYGvaO.d.ts → index--okzibnx.d.ts} +0 -0
- /package/dist/{index-qM4PwHTs.d.ts → index-BLwMeReG.d.ts} +0 -0
- /package/dist/{index-uQcTfU6c.d.ts → index-Cw3C7_1f.d.ts} +0 -0
package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-result-counter.d.ts","names":[],"sources":["../../../../../../src/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.tsx"],"mappings":";UAAU,wBAAA;EACR,WAAA;EACA,WAAA;EACA,YAAA;AAAA;AAAA,cAGW,mBAAA,EAAqB,KAAA,CAAM,EAAA,CAAG,wBAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.tsx
|
|
3
|
+
const SearchResultCounter = ({ isSearching, activeIndex, totalResults }) => {
|
|
4
|
+
if (isSearching) return /* @__PURE__ */ jsx("div", { className: "h-4 w-6 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-800" });
|
|
5
|
+
return /* @__PURE__ */ jsx("div", {
|
|
6
|
+
className: "text-xs",
|
|
7
|
+
children: totalResults > 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", {
|
|
8
|
+
className: "text-gray-700 dark:text-slate-50",
|
|
9
|
+
children: activeIndex + 1
|
|
10
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
11
|
+
className: "text-gray-500 dark:text-slate-700",
|
|
12
|
+
children: ["/", totalResults]
|
|
13
|
+
})] }) : /* @__PURE__ */ jsx("span", {
|
|
14
|
+
className: "text-gray-500 dark:text-slate-700",
|
|
15
|
+
children: "0/0"
|
|
16
|
+
})
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { SearchResultCounter };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=search-result-counter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-result-counter.js","names":["SearchResultCounter","isSearching","activeIndex","totalResults"],"sources":["../../../../../../src/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.tsx"],"sourcesContent":["interface SearchResultCounterProps {\n isSearching: boolean;\n activeIndex: number;\n totalResults: number;\n}\n\nexport const SearchResultCounter: React.FC<SearchResultCounterProps> = ({\n isSearching,\n activeIndex,\n totalResults,\n}) => {\n if (isSearching) {\n return (\n <div className=\"h-4 w-6 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-800\" />\n );\n }\n\n return (\n <div className=\"text-xs\">\n {totalResults > 0 ? (\n <>\n <span className=\"text-gray-700 dark:text-slate-50\">\n {activeIndex + 1}\n </span>\n <span className=\"text-gray-500 dark:text-slate-700\">\n /{totalResults}\n </span>\n </>\n ) : (\n <span className=\"text-gray-500 dark:text-slate-700\">0/0</span>\n )}\n </div>\n );\n};\n"],"mappings":";;AAMA,MAAaA,uBAA2D,EACtEC,aACAC,aACAC,mBACI;AACJ,KAAIF,YACF,QACE,oBAAC,OAAD,EAAK,WAAU,kEAAmE,CAAA;AAItF,QACE,oBAAC,OAAD;EAAK,WAAU;YACZE,eAAe,IACd,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,QAAD;GAAM,WAAU;aACbD,cAAc;GACX,CAAA,EACN,qBAAC,QAAD;GAAM,WAAU;aAAhB,CAAmD,KAC/CC,aACE;KACL,EAAA,CAAA,GAEH,oBAAC,QAAD;GAAM,WAAU;aAAoC;GACrD,CAAA;EACG,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.d.ts
|
|
2
|
+
interface SidebarSearchProps {
|
|
3
|
+
showStatusFilter: boolean;
|
|
4
|
+
}
|
|
5
|
+
declare const SidebarSearch: React.FC<SidebarSearchProps>;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { SidebarSearch };
|
|
8
|
+
//# sourceMappingURL=sidebar-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-search.d.ts","names":[],"sources":["../../../../../../src/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.tsx"],"mappings":";UAUU,kBAAA;EACR,gBAAA;AAAA;AAAA,cAGW,aAAA,EAAe,KAAA,CAAM,EAAA,CAAG,kBAAA"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { n as Search, r as CrossCircle, t as Tabler } from "../../../../../Tabler-FjvVqX5a.js";
|
|
2
|
+
import { Input } from "../../../input/input.js";
|
|
3
|
+
import { useSidebar } from "../sidebar-provider/sidebar-provider.js";
|
|
4
|
+
import { SearchNavigationArrow } from "./search-navigation-arrow.js";
|
|
5
|
+
import { SearchResultCounter } from "./search-result-counter.js";
|
|
6
|
+
import { useLayoutEffect, useRef, useState } from "react";
|
|
7
|
+
import { twMerge } from "tailwind-merge";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.tsx
|
|
10
|
+
const SidebarSearch = ({ showStatusFilter }) => {
|
|
11
|
+
const { searchTerm, isSearching, searchResults, activeSearchIndex, isStatusFilterEnabled, changeSearchTerm, nextSearchResult, previousSearchResult, toggleStatusFilter } = useSidebar();
|
|
12
|
+
const searchControlsRef = useRef(null);
|
|
13
|
+
const [searchControlsPaddingRight, setSearchControlsPaddingRight] = useState(16);
|
|
14
|
+
useLayoutEffect(() => {
|
|
15
|
+
if (searchControlsRef.current) setSearchControlsPaddingRight(searchControlsRef.current.clientWidth + 16);
|
|
16
|
+
}, [searchTerm]);
|
|
17
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
18
|
+
className: "flex w-full gap-2 border-t border-gray-300 p-2 dark:border-slate-800",
|
|
19
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
20
|
+
className: "relative flex-1",
|
|
21
|
+
children: [
|
|
22
|
+
/* @__PURE__ */ jsx(Input, {
|
|
23
|
+
type: "search",
|
|
24
|
+
value: searchTerm,
|
|
25
|
+
onChange: (e) => changeSearchTerm(e.target.value),
|
|
26
|
+
onKeyDown: (e) => {
|
|
27
|
+
if (e.key === "ArrowDown" || e.key === "Enter") nextSearchResult();
|
|
28
|
+
else if (e.key === "ArrowUp") previousSearchResult();
|
|
29
|
+
},
|
|
30
|
+
tabIndex: 1,
|
|
31
|
+
placeholder: "Search",
|
|
32
|
+
className: "w-full appearance-none pl-8 [&::-webkit-search-cancel-button]:hidden",
|
|
33
|
+
style: { paddingRight: searchControlsPaddingRight }
|
|
34
|
+
}),
|
|
35
|
+
/* @__PURE__ */ jsx(Search, {
|
|
36
|
+
height: 16,
|
|
37
|
+
width: 16,
|
|
38
|
+
className: "absolute top-1/2 left-2 -translate-y-1/2 text-gray-700 dark:text-slate-50"
|
|
39
|
+
}),
|
|
40
|
+
searchTerm && /* @__PURE__ */ jsxs("div", {
|
|
41
|
+
ref: searchControlsRef,
|
|
42
|
+
className: "absolute top-1/2 right-2 flex -translate-y-1/2 items-center gap-2 select-none",
|
|
43
|
+
children: [
|
|
44
|
+
/* @__PURE__ */ jsx(SearchResultCounter, {
|
|
45
|
+
isSearching,
|
|
46
|
+
activeIndex: activeSearchIndex,
|
|
47
|
+
totalResults: searchResults.length
|
|
48
|
+
}),
|
|
49
|
+
/* @__PURE__ */ jsxs("div", {
|
|
50
|
+
className: "flex flex-col text-gray-500 dark:text-slate-700",
|
|
51
|
+
children: [/* @__PURE__ */ jsx(SearchNavigationArrow, {
|
|
52
|
+
direction: "up",
|
|
53
|
+
isDisabled: activeSearchIndex === 0,
|
|
54
|
+
onClick: previousSearchResult
|
|
55
|
+
}), /* @__PURE__ */ jsx(SearchNavigationArrow, {
|
|
56
|
+
direction: "down",
|
|
57
|
+
isDisabled: activeSearchIndex === searchResults.length - 1,
|
|
58
|
+
onClick: nextSearchResult
|
|
59
|
+
})]
|
|
60
|
+
}),
|
|
61
|
+
/* @__PURE__ */ jsx(CrossCircle, {
|
|
62
|
+
onClick: () => changeSearchTerm(""),
|
|
63
|
+
height: 16,
|
|
64
|
+
width: 16,
|
|
65
|
+
className: "cursor-pointer text-gray-500 hover:text-gray-700 active:text-gray-900 dark:text-slate-700 dark:hover:text-slate-600 dark:active:text-slate-300"
|
|
66
|
+
})
|
|
67
|
+
]
|
|
68
|
+
})
|
|
69
|
+
]
|
|
70
|
+
}), showStatusFilter && /* @__PURE__ */ jsx("button", {
|
|
71
|
+
type: "button",
|
|
72
|
+
onClick: toggleStatusFilter,
|
|
73
|
+
tabIndex: 1,
|
|
74
|
+
className: twMerge("rounded-md border border-gray-300 px-2 py-1 text-sm text-gray-500", isStatusFilterEnabled ? "border-blue-500 bg-blue-100 text-blue-900" : "hover:bg-gray-100 hover:text-gray-700"),
|
|
75
|
+
children: /* @__PURE__ */ jsx(Tabler, {
|
|
76
|
+
height: 16,
|
|
77
|
+
width: 16
|
|
78
|
+
})
|
|
79
|
+
})]
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
//#endregion
|
|
83
|
+
export { SidebarSearch };
|
|
84
|
+
|
|
85
|
+
//# sourceMappingURL=sidebar-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-search.js","names":["useLayoutEffect","useRef","useState","twMerge","Input","CrossCircle","Search","Tabler","useSidebar","SearchNavigationArrow","SearchResultCounter","SidebarSearch","showStatusFilter","searchTerm","isSearching","searchResults","activeSearchIndex","isStatusFilterEnabled","changeSearchTerm","nextSearchResult","previousSearchResult","toggleStatusFilter","searchControlsRef","searchControlsPaddingRight","setSearchControlsPaddingRight","current","clientWidth","e","target","value","key","paddingRight","length"],"sources":["../../../../../../src/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.tsx"],"sourcesContent":["import { useLayoutEffect, useRef, useState } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Input } from \"../../../input/input.js\";\nimport CrossCircle from \"../../../../../powerhouse/components/icon-components/CrossCircle.js\";\nimport Search from \"../../../../../powerhouse/components/icon-components/Search.js\";\nimport Tabler from \"../../../../../powerhouse/components/icon-components/Tabler.js\";\nimport { useSidebar } from \"../sidebar-provider/index.js\";\nimport { SearchNavigationArrow } from \"./search-navigation-arrow.js\";\nimport { SearchResultCounter } from \"./search-result-counter.js\";\n\ninterface SidebarSearchProps {\n showStatusFilter: boolean;\n}\n\nexport const SidebarSearch: React.FC<SidebarSearchProps> = ({\n showStatusFilter,\n}) => {\n const {\n searchTerm,\n isSearching,\n searchResults,\n activeSearchIndex,\n isStatusFilterEnabled,\n changeSearchTerm,\n nextSearchResult,\n previousSearchResult,\n toggleStatusFilter,\n } = useSidebar();\n const searchControlsRef = useRef<HTMLDivElement>(null);\n const [searchControlsPaddingRight, setSearchControlsPaddingRight] =\n useState(16);\n\n useLayoutEffect(() => {\n if (searchControlsRef.current) {\n setSearchControlsPaddingRight(searchControlsRef.current.clientWidth + 16);\n }\n }, [searchTerm]);\n\n return (\n <div className=\"flex w-full gap-2 border-t border-gray-300 p-2 dark:border-slate-800\">\n <div className=\"relative flex-1\">\n <Input\n type=\"search\"\n value={searchTerm}\n onChange={(e) => changeSearchTerm(e.target.value)}\n onKeyDown={(e) => {\n if (e.key === \"ArrowDown\" || e.key === \"Enter\") {\n nextSearchResult();\n } else if (e.key === \"ArrowUp\") {\n previousSearchResult();\n }\n }}\n tabIndex={1}\n placeholder=\"Search\"\n className=\"w-full appearance-none pl-8 [&::-webkit-search-cancel-button]:hidden\"\n style={{ paddingRight: searchControlsPaddingRight }}\n />\n\n <Search\n height={16}\n width={16}\n className=\"absolute top-1/2 left-2 -translate-y-1/2 text-gray-700 dark:text-slate-50\"\n />\n\n {/* Search controls - only shown when there's a search term */}\n {searchTerm && (\n <div\n ref={searchControlsRef}\n className=\"absolute top-1/2 right-2 flex -translate-y-1/2 items-center gap-2 select-none\"\n >\n <SearchResultCounter\n isSearching={isSearching}\n activeIndex={activeSearchIndex}\n totalResults={searchResults.length}\n />\n\n <div className=\"flex flex-col text-gray-500 dark:text-slate-700\">\n <SearchNavigationArrow\n direction=\"up\"\n isDisabled={activeSearchIndex === 0}\n onClick={previousSearchResult}\n />\n <SearchNavigationArrow\n direction=\"down\"\n isDisabled={activeSearchIndex === searchResults.length - 1}\n onClick={nextSearchResult}\n />\n </div>\n\n {/* Clear search button */}\n <CrossCircle\n onClick={() => changeSearchTerm(\"\")}\n height={16}\n width={16}\n className=\"cursor-pointer text-gray-500 hover:text-gray-700 active:text-gray-900 dark:text-slate-700 dark:hover:text-slate-600 dark:active:text-slate-300\"\n />\n </div>\n )}\n </div>\n\n {showStatusFilter && (\n <button\n type=\"button\"\n onClick={toggleStatusFilter}\n tabIndex={1}\n className={twMerge(\n \"rounded-md border border-gray-300 px-2 py-1 text-sm text-gray-500\",\n isStatusFilterEnabled\n ? \"border-blue-500 bg-blue-100 text-blue-900\"\n : \"hover:bg-gray-100 hover:text-gray-700\",\n )}\n >\n <Tabler height={16} width={16} />\n </button>\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;AAcA,MAAaW,iBAA+C,EAC1DC,uBACI;CACJ,MAAM,EACJC,YACAC,aACAC,eACAC,mBACAC,uBACAC,kBACAC,kBACAC,sBACAC,uBACEb,YAAY;CAChB,MAAMc,oBAAoBrB,OAAuB,KAAK;CACtD,MAAM,CAACsB,4BAA4BC,iCACjCtB,SAAS,GAAG;AAEdF,uBAAsB;AACpB,MAAIsB,kBAAkBG,QACpBD,+BAA8BF,kBAAkBG,QAAQC,cAAc,GAAG;IAE1E,CAACb,WAAW,CAAC;AAEhB,QACE,qBAAC,OAAD;EAAK,WAAU;YAAf,CACE,qBAAC,OAAD;GAAK,WAAU;aAAf;IACE,oBAAC,OAAD;KACE,MAAK;KACL,OAAOA;KACP,WAAWc,MAAMT,iBAAiBS,EAAEC,OAAOC,MAAM;KACjD,YAAYF,MAAM;AAChB,UAAIA,EAAEG,QAAQ,eAAeH,EAAEG,QAAQ,QACrCX,mBAAkB;eACTQ,EAAEG,QAAQ,UACnBV,uBAAsB;;KAG1B,UAAU;KACV,aAAY;KACZ,WAAU;KACV,OAAO,EAAEW,cAAcR,4BAA4B;KAAC,CAAA;IAGtD,oBAAC,QAAD;KACE,QAAQ;KACR,OAAO;KACP,WAAU;KAA2E,CAAA;IAItFV,cACC,qBAAC,OAAD;KACE,KAAKS;KACL,WAAU;eAFZ;MAIE,oBAAC,qBAAD;OACeR;OACb,aAAaE;OACb,cAAcD,cAAciB;OAAO,CAAA;MAGrC,qBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,oBAAC,uBAAD;QACE,WAAU;QACV,YAAYhB,sBAAsB;QAClC,SAASI;QAAqB,CAAA,EAEhC,oBAAC,uBAAD;QACE,WAAU;QACV,YAAYJ,sBAAsBD,cAAciB,SAAS;QACzD,SAASb;QAAiB,CAAA,CAEzB;;MAGL,oBAAC,aAAD;OACE,eAAeD,iBAAiB,GAAG;OACnC,QAAQ;OACR,OAAO;OACP,WAAU;OAAgJ,CAAA;MAG/J;;IACE;MAEJN,oBACC,oBAAC,UAAD;GACE,MAAK;GACL,SAASS;GACT,UAAU;GACV,WAAWlB,QACT,qEACAc,wBACI,8CACA,wCACL;aAED,oBAAC,QAAD;IAAQ,QAAQ;IAAI,OAAO;IAAG,CAAA;GAEjC,CAAA,CACG"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-skeleton-item.d.ts
|
|
4
|
+
interface SidebarSkeletonItemProps {
|
|
5
|
+
depth: number;
|
|
6
|
+
textWidth: string;
|
|
7
|
+
style?: React.CSSProperties;
|
|
8
|
+
}
|
|
9
|
+
declare const SidebarSkeletonItem: ({
|
|
10
|
+
depth,
|
|
11
|
+
textWidth,
|
|
12
|
+
style
|
|
13
|
+
}: SidebarSkeletonItemProps) => react_jsx_runtime0.JSX.Element;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { SidebarSkeletonItem };
|
|
16
|
+
//# sourceMappingURL=sidebar-skeleton-item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-skeleton-item.d.ts","names":[],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-skeleton-item.tsx"],"mappings":";;;UAEU,wBAAA;EACR,KAAA;EACA,SAAA;EACA,KAAA,GAAQ,KAAA,CAAM,aAAA;AAAA;AAAA,cAGH,mBAAA;EAAuB,KAAA;EAAA,SAAA;EAAA;AAAA,GAIjC,wBAAA,KAAwB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { twMerge } from "tailwind-merge";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-skeleton-item.tsx
|
|
4
|
+
const SidebarSkeletonItem = ({ depth, textWidth, style }) => {
|
|
5
|
+
return /* @__PURE__ */ jsx("div", {
|
|
6
|
+
style,
|
|
7
|
+
className: "flex items-center px-2",
|
|
8
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
9
|
+
className: "flex h-8 w-full items-center gap-2 px-2 py-1",
|
|
10
|
+
style: { paddingLeft: depth * 24 + 8 },
|
|
11
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
12
|
+
className: "flex size-4 min-w-4 items-center justify-center",
|
|
13
|
+
children: /* @__PURE__ */ jsx("div", { className: "size-4 min-w-4 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-600" })
|
|
14
|
+
}), /* @__PURE__ */ jsx("div", { className: twMerge("h-4 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-600", textWidth) })]
|
|
15
|
+
})
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { SidebarSkeletonItem };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=sidebar-skeleton-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-skeleton-item.js","names":["twMerge","SidebarSkeletonItem","depth","textWidth","style","paddingLeft"],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-skeleton-item.tsx"],"sourcesContent":["import { twMerge } from \"tailwind-merge\";\n\ninterface SidebarSkeletonItemProps {\n depth: number;\n textWidth: string;\n style?: React.CSSProperties;\n}\n\nexport const SidebarSkeletonItem = ({\n depth,\n textWidth,\n style,\n}: SidebarSkeletonItemProps) => {\n const paddingLeft = depth * 24;\n\n return (\n <div style={style} className=\"flex items-center px-2\">\n <div\n className=\"flex h-8 w-full items-center gap-2 px-2 py-1\"\n style={{ paddingLeft: paddingLeft + 8 }}\n >\n {/* Chevron icon skeleton */}\n <div className=\"flex size-4 min-w-4 items-center justify-center\">\n <div className=\"size-4 min-w-4 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-600\" />\n </div>\n\n {/* Text content skeleton */}\n <div\n className={twMerge(\n \"h-4 animate-pulse rounded-sm bg-gray-200 dark:bg-slate-600\",\n textWidth,\n )}\n />\n </div>\n </div>\n );\n};\n"],"mappings":";;;AAQA,MAAaC,uBAAuB,EAClCC,OACAC,WACAC,YAC8B;AAG9B,QACE,oBAAC,OAAD;EAAYA;EAAO,WAAU;YAC3B,qBAAC,OAAD;GACE,WAAU;GACV,OAAO,EAAEC,aANKH,QAAQ,KAMc,GAAG;aAFzC,CAKE,oBAAC,OAAD;IAAK,WAAU;cACb,oBAAC,OAAD,EAAK,WAAU,yEAAuE,CAAA;IACnF,CAAA,EAGL,oBAAC,OAAD,EACE,WAAWF,QACT,8DACAG,UACD,EAAC,CAAA,CAED;;EACD,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-skeleton.d.ts
|
|
4
|
+
declare const SidebarSkeleton: () => react_jsx_runtime0.JSX.Element;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { SidebarSkeleton };
|
|
7
|
+
//# sourceMappingURL=sidebar-skeleton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-skeleton.d.ts","names":[],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-skeleton.tsx"],"mappings":";;;cAea,eAAA,QAAe,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { SidebarSkeletonItem } from "./sidebar-skeleton-item.js";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
//#region src/ui/components/sidebar/subcomponents/sidebar-skeleton.tsx
|
|
4
|
+
const skeletonItems = [
|
|
5
|
+
{
|
|
6
|
+
depth: 0,
|
|
7
|
+
textWidth: "w-32"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
depth: 1,
|
|
11
|
+
textWidth: "w-28"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
depth: 1,
|
|
15
|
+
textWidth: "w-36"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
depth: 2,
|
|
19
|
+
textWidth: "w-24"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
depth: 2,
|
|
23
|
+
textWidth: "w-30"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
depth: 0,
|
|
27
|
+
textWidth: "w-40"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
depth: 1,
|
|
31
|
+
textWidth: "w-26"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
depth: 1,
|
|
35
|
+
textWidth: "w-34"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
depth: 2,
|
|
39
|
+
textWidth: "w-22"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
depth: 0,
|
|
43
|
+
textWidth: "w-38"
|
|
44
|
+
}
|
|
45
|
+
];
|
|
46
|
+
const SidebarSkeleton = () => {
|
|
47
|
+
return /* @__PURE__ */ jsx("div", {
|
|
48
|
+
className: "flex-1 overflow-hidden p-2",
|
|
49
|
+
role: "status",
|
|
50
|
+
"aria-label": "Loading sidebar content",
|
|
51
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
52
|
+
className: "flex flex-col gap-2",
|
|
53
|
+
children: skeletonItems.map((item, index) => /* @__PURE__ */ jsx(SidebarSkeletonItem, {
|
|
54
|
+
depth: item.depth,
|
|
55
|
+
textWidth: item.textWidth
|
|
56
|
+
}, index))
|
|
57
|
+
})
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
//#endregion
|
|
61
|
+
export { SidebarSkeleton };
|
|
62
|
+
|
|
63
|
+
//# sourceMappingURL=sidebar-skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sidebar-skeleton.js","names":["SidebarSkeletonItem","skeletonItems","depth","textWidth","SidebarSkeleton","map","item","index"],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-skeleton.tsx"],"sourcesContent":["import { SidebarSkeletonItem } from \"./sidebar-skeleton-item.js\";\n\nconst skeletonItems = [\n { depth: 0, textWidth: \"w-32\" },\n { depth: 1, textWidth: \"w-28\" },\n { depth: 1, textWidth: \"w-36\" },\n { depth: 2, textWidth: \"w-24\" },\n { depth: 2, textWidth: \"w-30\" },\n { depth: 0, textWidth: \"w-40\" },\n { depth: 1, textWidth: \"w-26\" },\n { depth: 1, textWidth: \"w-34\" },\n { depth: 2, textWidth: \"w-22\" },\n { depth: 0, textWidth: \"w-38\" },\n];\n\nexport const SidebarSkeleton = () => {\n return (\n <div\n className=\"flex-1 overflow-hidden p-2\"\n role=\"status\"\n aria-label=\"Loading sidebar content\"\n >\n <div className=\"flex flex-col gap-2\">\n {skeletonItems.map((item, index) => (\n <SidebarSkeletonItem\n key={index}\n depth={item.depth}\n textWidth={item.textWidth}\n />\n ))}\n </div>\n </div>\n );\n};\n"],"mappings":";;;AAEA,MAAMC,gBAAgB;CACpB;EAAEC,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAC/B;EAAED,OAAO;EAAGC,WAAW;EAAQ;CAChC;AAED,MAAaC,wBAAwB;AACnC,QACE,oBAAC,OAAD;EACE,WAAU;EACV,MAAK;EACL,cAAW;YAEX,oBAAC,OAAD;GAAK,WAAU;aACZH,cAAcI,KAAKC,MAAMC,UACxB,oBAAC,qBAAD;IAEE,OAAOD,KAAKJ;IACZ,WAAWI,KAAKH;IAEnB,EAJQI,MAIR,CAAC;GACC,CAAA;EACD,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { a as NodeStatus } from "../../../../types-CNbvfWjh.js";
|
|
2
|
+
import * as react from "react";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/ui/components/sidebar/subcomponents/status-icon.d.ts
|
|
6
|
+
interface StatusIconProps {
|
|
7
|
+
status: NodeStatus;
|
|
8
|
+
isDescendenceModified?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const StatusIcon: ({
|
|
11
|
+
status,
|
|
12
|
+
isDescendenceModified
|
|
13
|
+
}: StatusIconProps) => string | number | bigint | boolean | Iterable<react.ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<react.ReactNode> | null | undefined> | react_jsx_runtime0.JSX.Element | null | undefined;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { StatusIcon };
|
|
16
|
+
//# sourceMappingURL=status-icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-icon.d.ts","names":[],"sources":["../../../../../src/ui/components/sidebar/subcomponents/status-icon.tsx"],"mappings":";;;;;UAQU,eAAA;EACR,MAAA,EAAQ,UAAA;EACR,qBAAA;AAAA;AAAA,cAwBW,UAAA;EAAc,MAAA;EAAA;AAAA,GAGxB,eAAA,0CAAe,QAAA,CAAA,KAAA,CAAA,SAAA,IAAA,OAAA,sCAAA,KAAA,CAAA,WAAA,GAAA,KAAA,CAAA,YAAA,mBAAA,KAAA,CAAA,qBAAA,SAAA,QAAA,CAAA,KAAA,CAAA,SAAA,wBAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { a as DescendenceModified, i as Duplicated, n as Moved, o as Created, r as Modified, t as Removed } from "../../../../Removed-CO_5C1ce.js";
|
|
2
|
+
import { NodeStatus } from "../types.js";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
//#region src/ui/components/sidebar/subcomponents/status-icon.tsx
|
|
5
|
+
const STATUS_ICON_MAP = {
|
|
6
|
+
[NodeStatus.CREATED]: { icon: /* @__PURE__ */ jsx(Created, {
|
|
7
|
+
height: 16,
|
|
8
|
+
width: 16,
|
|
9
|
+
className: "text-green-900"
|
|
10
|
+
}) },
|
|
11
|
+
[NodeStatus.MODIFIED]: { icon: /* @__PURE__ */ jsx(Modified, {
|
|
12
|
+
height: 16,
|
|
13
|
+
width: 16,
|
|
14
|
+
className: "text-blue-900"
|
|
15
|
+
}) },
|
|
16
|
+
[NodeStatus.REMOVED]: { icon: /* @__PURE__ */ jsx(Removed, {
|
|
17
|
+
height: 16,
|
|
18
|
+
width: 16,
|
|
19
|
+
className: "text-red-900"
|
|
20
|
+
}) },
|
|
21
|
+
[NodeStatus.MOVED]: { icon: /* @__PURE__ */ jsx(Moved, {
|
|
22
|
+
height: 16,
|
|
23
|
+
width: 16,
|
|
24
|
+
className: "text-blue-900"
|
|
25
|
+
}) },
|
|
26
|
+
[NodeStatus.DUPLICATED]: { icon: /* @__PURE__ */ jsx(Duplicated, {
|
|
27
|
+
height: 16,
|
|
28
|
+
width: 16,
|
|
29
|
+
className: "text-blue-900"
|
|
30
|
+
}) }
|
|
31
|
+
};
|
|
32
|
+
const StatusIcon = ({ status, isDescendenceModified }) => {
|
|
33
|
+
if (status === NodeStatus.UNCHANGED) return isDescendenceModified ? /* @__PURE__ */ jsx(DescendenceModified, {
|
|
34
|
+
height: 16,
|
|
35
|
+
width: 16,
|
|
36
|
+
className: "text-gray-500"
|
|
37
|
+
}) : null;
|
|
38
|
+
return STATUS_ICON_MAP[status].icon;
|
|
39
|
+
};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { StatusIcon };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=status-icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-icon.js","names":["Created","DescendenceModified","Duplicated","Modified","Moved","Removed","NodeStatus","STATUS_ICON_MAP","CREATED","icon","MODIFIED","REMOVED","MOVED","DUPLICATED","StatusIcon","status","isDescendenceModified","UNCHANGED"],"sources":["../../../../../src/ui/components/sidebar/subcomponents/status-icon.tsx"],"sourcesContent":["import Created from \"../../../../powerhouse/components/icon-components/Created.js\";\nimport DescendenceModified from \"../../../../powerhouse/components/icon-components/DescendenceModified.js\";\nimport Duplicated from \"../../../../powerhouse/components/icon-components/Duplicated.js\";\nimport Modified from \"../../../../powerhouse/components/icon-components/Modified.js\";\nimport Moved from \"../../../../powerhouse/components/icon-components/Moved.js\";\nimport Removed from \"../../../../powerhouse/components/icon-components/Removed.js\";\nimport { NodeStatus } from \"../types.js\";\n\ninterface StatusIconProps {\n status: NodeStatus;\n isDescendenceModified?: boolean;\n}\n\nconst STATUS_ICON_MAP: Record<\n Exclude<NodeStatus, NodeStatus.UNCHANGED>,\n { icon: React.ReactNode }\n> = {\n [NodeStatus.CREATED]: {\n icon: <Created height={16} width={16} className=\"text-green-900\" />,\n },\n [NodeStatus.MODIFIED]: {\n icon: <Modified height={16} width={16} className=\"text-blue-900\" />,\n },\n [NodeStatus.REMOVED]: {\n icon: <Removed height={16} width={16} className=\"text-red-900\" />,\n },\n [NodeStatus.MOVED]: {\n icon: <Moved height={16} width={16} className=\"text-blue-900\" />,\n },\n [NodeStatus.DUPLICATED]: {\n icon: <Duplicated height={16} width={16} className=\"text-blue-900\" />,\n },\n};\n\nexport const StatusIcon = ({\n status,\n isDescendenceModified,\n}: StatusIconProps) => {\n if (status === NodeStatus.UNCHANGED) {\n return isDescendenceModified ? (\n <DescendenceModified height={16} width={16} className=\"text-gray-500\" />\n ) : null;\n }\n\n return STATUS_ICON_MAP[status].icon;\n};\n"],"mappings":";;;;AAaA,MAAMO,kBAGF;EACDD,WAAWE,UAAU,EACpBC,MAAM,oBAAC,SAAD;EAAS,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAgB,CAAA,EACjE;EACAH,WAAWI,WAAW,EACrBD,MAAM,oBAAC,UAAD;EAAU,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAe,CAAA,EACjE;EACAH,WAAWK,UAAU,EACpBF,MAAM,oBAAC,SAAD;EAAS,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAc,CAAA,EAC/D;EACAH,WAAWM,QAAQ,EAClBH,MAAM,oBAAC,OAAD;EAAO,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAe,CAAA,EAC9D;EACAH,WAAWO,aAAa,EACvBJ,MAAM,oBAAC,YAAD;EAAY,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAe,CAAA,EACpE;CACD;AAED,MAAaK,cAAc,EACzBC,QACAC,4BACqB;AACrB,KAAID,WAAWT,WAAWW,UACxB,QAAOD,wBACL,oBAAC,qBAAD;EAAqB,QAAQ;EAAI,OAAO;EAAI,WAAU;EAAkB,CAAA,GACtE;AAGN,QAAOT,gBAAgBQ,QAAQN"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../../types-CNbvfWjh.js";
|
|
2
|
+
export { FlattenedNode, NodeSortComparisonFn, NodeSortOrder, NodeSortType, NodeStatus, SidebarIcon, SidebarNode };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region src/ui/components/sidebar/types.ts
|
|
2
|
+
let NodeStatus = /* @__PURE__ */ function(NodeStatus) {
|
|
3
|
+
NodeStatus["CREATED"] = "CREATED";
|
|
4
|
+
NodeStatus["MODIFIED"] = "MODIFIED";
|
|
5
|
+
NodeStatus["REMOVED"] = "REMOVED";
|
|
6
|
+
NodeStatus["MOVED"] = "MOVED";
|
|
7
|
+
NodeStatus["DUPLICATED"] = "DUPLICATED";
|
|
8
|
+
NodeStatus["UNCHANGED"] = "UNCHANGED";
|
|
9
|
+
return NodeStatus;
|
|
10
|
+
}({});
|
|
11
|
+
//#endregion
|
|
12
|
+
export { NodeStatus };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","names":["NodeStatus"],"sources":["../../../../src/ui/components/sidebar/types.ts"],"sourcesContent":["import type { IconName } from \"../../../powerhouse/types.js\";\n\nexport enum NodeStatus {\n CREATED = \"CREATED\",\n MODIFIED = \"MODIFIED\",\n REMOVED = \"REMOVED\",\n MOVED = \"MOVED\",\n DUPLICATED = \"DUPLICATED\",\n UNCHANGED = \"UNCHANGED\", // default\n}\n\nexport type SidebarIcon = IconName | React.ReactElement;\n\nexport interface SidebarNode {\n title: string;\n id: string;\n children?: SidebarNode[];\n icon?: SidebarIcon;\n expandedIcon?: SidebarIcon;\n status?: NodeStatus;\n className?: string;\n}\n\nexport type NodeSortComparisonFn = (\n valueA: string,\n valueB: string,\n) => -1 | 0 | 1;\nexport type NodeSortType = \"alphabetical\" | \"natural\" | NodeSortComparisonFn;\nexport type NodeSortOrder = \"asc\" | \"desc\";\n\nexport interface FlattenedNode extends SidebarNode {\n depth: number;\n isExpanded: boolean;\n}\n"],"mappings":";AAEA,IAAYA,aAAU,yBAAVA,YAAU;AAAVA,YAAU,aAAA;AAAVA,YAAU,cAAA;AAAVA,YAAU,aAAA;AAAVA,YAAU,WAAA;AAAVA,YAAU,gBAAA;AAAVA,YAAU,eAAA;AAMK,QANfA;EAAU,EAAA,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region src/ui/components/sidebar/use-ellipsis.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Custom hook to detect if an element's text is truncated with ellipsis
|
|
4
|
+
* @param ref - The ref of the element to detect ellipsis on
|
|
5
|
+
* @returns Whether the element's text is truncated with ellipsis
|
|
6
|
+
*/
|
|
7
|
+
declare const useEllipsis: <T extends HTMLElement>(ref: React.RefObject<T | null>) => boolean;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { useEllipsis };
|
|
10
|
+
//# sourceMappingURL=use-ellipsis.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-ellipsis.d.ts","names":[],"sources":["../../../../src/ui/components/sidebar/use-ellipsis.ts"],"mappings":";;AAOA;;;;cAAa,WAAA,aAAyB,WAAA,EACpC,GAAA,EAAK,KAAA,CAAM,SAAA,CAAU,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
//#region src/ui/components/sidebar/use-ellipsis.ts
|
|
3
|
+
/**
|
|
4
|
+
* Custom hook to detect if an element's text is truncated with ellipsis
|
|
5
|
+
* @param ref - The ref of the element to detect ellipsis on
|
|
6
|
+
* @returns Whether the element's text is truncated with ellipsis
|
|
7
|
+
*/
|
|
8
|
+
const useEllipsis = (ref) => {
|
|
9
|
+
const [hasEllipsis, setHasEllipsis] = useState(false);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
const element = ref.current;
|
|
12
|
+
if (!element) return;
|
|
13
|
+
const observer = new ResizeObserver(() => {
|
|
14
|
+
setHasEllipsis(element.offsetWidth < element.scrollWidth);
|
|
15
|
+
});
|
|
16
|
+
observer.observe(element);
|
|
17
|
+
return () => {
|
|
18
|
+
observer.disconnect();
|
|
19
|
+
};
|
|
20
|
+
}, [ref]);
|
|
21
|
+
return hasEllipsis;
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
24
|
+
export { useEllipsis };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=use-ellipsis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-ellipsis.js","names":["useEffect","useState","useEllipsis","ref","hasEllipsis","setHasEllipsis","element","current","observer","ResizeObserver","offsetWidth","scrollWidth","observe","disconnect"],"sources":["../../../../src/ui/components/sidebar/use-ellipsis.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\n/**\n * Custom hook to detect if an element's text is truncated with ellipsis\n * @param ref - The ref of the element to detect ellipsis on\n * @returns Whether the element's text is truncated with ellipsis\n */\nexport const useEllipsis = <T extends HTMLElement>(\n ref: React.RefObject<T | null>,\n): boolean => {\n const [hasEllipsis, setHasEllipsis] = useState(false);\n\n useEffect(() => {\n const element = ref.current;\n if (!element) return;\n\n const observer = new ResizeObserver(() => {\n setHasEllipsis(element.offsetWidth < element.scrollWidth);\n });\n observer.observe(element);\n\n return () => {\n observer.disconnect();\n };\n }, [ref]);\n\n return hasEllipsis;\n};\n"],"mappings":";;;;;;;AAOA,MAAaE,eACXC,QACY;CACZ,MAAM,CAACC,aAAaC,kBAAkBJ,SAAS,MAAM;AAErDD,iBAAgB;EACd,MAAMM,UAAUH,IAAII;AACpB,MAAI,CAACD,QAAS;EAEd,MAAME,WAAW,IAAIC,qBAAqB;AACxCJ,kBAAeC,QAAQI,cAAcJ,QAAQK,YAAY;IACzD;AACFH,WAASI,QAAQN,QAAQ;AAEzB,eAAa;AACXE,YAASK,YAAY;;IAEtB,CAACV,IAAI,CAAC;AAET,QAAOC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as react from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/components/sidebar/use-sidebar-resize.d.ts
|
|
4
|
+
interface SidebarResizeProps {
|
|
5
|
+
defaultWidth?: number;
|
|
6
|
+
minWidth?: number;
|
|
7
|
+
maxWidth?: number;
|
|
8
|
+
}
|
|
9
|
+
declare const useSidebarResize: ({
|
|
10
|
+
defaultWidth,
|
|
11
|
+
minWidth,
|
|
12
|
+
maxWidth
|
|
13
|
+
}: SidebarResizeProps) => {
|
|
14
|
+
sidebarRef: react.RefObject<HTMLDivElement | null>;
|
|
15
|
+
startResizing: () => void;
|
|
16
|
+
isResizing: boolean;
|
|
17
|
+
isSidebarOpen: boolean;
|
|
18
|
+
handleToggleSidebar: () => void;
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { useSidebarResize };
|
|
22
|
+
//# sourceMappingURL=use-sidebar-resize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-sidebar-resize.d.ts","names":[],"sources":["../../../../src/ui/components/sidebar/use-sidebar-resize.ts"],"mappings":";;;UAGU,kBAAA;EACR,YAAA;EACA,QAAA;EACA,QAAA;AAAA;AAAA,cAGW,gBAAA;EAAoB,YAAA;EAAA,QAAA;EAAA;AAAA,GAI9B,kBAAA"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { triggerEvent } from "./utils.js";
|
|
2
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
3
|
+
//#region src/ui/components/sidebar/use-sidebar-resize.ts
|
|
4
|
+
const useSidebarResize = ({ defaultWidth = 300, minWidth = 100, maxWidth }) => {
|
|
5
|
+
const [isResizing, setIsResizing] = useState(false);
|
|
6
|
+
const [sidebarWidth, setSidebarWidth] = useState(Math.max(defaultWidth, minWidth));
|
|
7
|
+
const sidebarRef = useRef(null);
|
|
8
|
+
const [isSidebarOpen, setIsSidebarOpen] = useState(true);
|
|
9
|
+
const handleToggleSidebar = useCallback(() => {
|
|
10
|
+
const newState = !isSidebarOpen;
|
|
11
|
+
setIsSidebarOpen(newState);
|
|
12
|
+
triggerEvent("sidebar:resize:toggle", { isSidebarOpen: newState }, sidebarRef.current);
|
|
13
|
+
}, [isSidebarOpen]);
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
const width = isSidebarOpen ? sidebarWidth : 8;
|
|
16
|
+
document.documentElement.style.setProperty("--sidebar-width", `${width}px`);
|
|
17
|
+
}, [isSidebarOpen, sidebarWidth]);
|
|
18
|
+
const startResizing = useCallback(() => {
|
|
19
|
+
if (!isSidebarOpen) return;
|
|
20
|
+
setIsResizing(true);
|
|
21
|
+
triggerEvent("sidebar:resize:start", { isSidebarOpen }, sidebarRef.current);
|
|
22
|
+
}, [isSidebarOpen]);
|
|
23
|
+
const stopResizing = useCallback(() => {
|
|
24
|
+
if (!isResizing) return;
|
|
25
|
+
setIsResizing(false);
|
|
26
|
+
triggerEvent("sidebar:resize", {
|
|
27
|
+
isSidebarOpen,
|
|
28
|
+
sidebarWidth: isSidebarOpen ? sidebarWidth : 8
|
|
29
|
+
}, sidebarRef.current);
|
|
30
|
+
}, [
|
|
31
|
+
isResizing,
|
|
32
|
+
isSidebarOpen,
|
|
33
|
+
sidebarWidth
|
|
34
|
+
]);
|
|
35
|
+
const resize = useCallback((mouseMoveEvent) => {
|
|
36
|
+
if (!isResizing || !sidebarRef.current) return;
|
|
37
|
+
const sidebarLeft = sidebarRef.current.getBoundingClientRect().left;
|
|
38
|
+
let newWidth = mouseMoveEvent.clientX - sidebarLeft;
|
|
39
|
+
newWidth = Math.max(newWidth, minWidth);
|
|
40
|
+
if (maxWidth !== void 0) newWidth = Math.min(newWidth, maxWidth);
|
|
41
|
+
setSidebarWidth(newWidth);
|
|
42
|
+
triggerEvent("sidebar:resize:active", {
|
|
43
|
+
isSidebarOpen,
|
|
44
|
+
sidebarWidth: newWidth
|
|
45
|
+
}, sidebarRef.current);
|
|
46
|
+
}, [
|
|
47
|
+
isResizing,
|
|
48
|
+
minWidth,
|
|
49
|
+
maxWidth,
|
|
50
|
+
isSidebarOpen
|
|
51
|
+
]);
|
|
52
|
+
useEffect(() => {
|
|
53
|
+
if (typeof window === "undefined") return;
|
|
54
|
+
window.addEventListener("mousemove", resize);
|
|
55
|
+
window.addEventListener("mouseup", stopResizing);
|
|
56
|
+
return () => {
|
|
57
|
+
window.removeEventListener("mousemove", resize);
|
|
58
|
+
window.removeEventListener("mouseup", stopResizing);
|
|
59
|
+
};
|
|
60
|
+
}, [resize, stopResizing]);
|
|
61
|
+
return {
|
|
62
|
+
sidebarRef,
|
|
63
|
+
startResizing,
|
|
64
|
+
isResizing,
|
|
65
|
+
isSidebarOpen,
|
|
66
|
+
handleToggleSidebar
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
//#endregion
|
|
70
|
+
export { useSidebarResize };
|
|
71
|
+
|
|
72
|
+
//# sourceMappingURL=use-sidebar-resize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-sidebar-resize.js","names":["useCallback","useEffect","useRef","useState","triggerEvent","useSidebarResize","defaultWidth","minWidth","maxWidth","isResizing","setIsResizing","sidebarWidth","setSidebarWidth","Math","max","sidebarRef","isSidebarOpen","setIsSidebarOpen","handleToggleSidebar","newState","current","width","document","documentElement","style","setProperty","startResizing","stopResizing","resize","mouseMoveEvent","sidebarLeft","getBoundingClientRect","left","newWidth","clientX","undefined","min","window","addEventListener","removeEventListener"],"sources":["../../../../src/ui/components/sidebar/use-sidebar-resize.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport { triggerEvent } from \"./utils.js\";\n\ninterface SidebarResizeProps {\n defaultWidth?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\nexport const useSidebarResize = ({\n defaultWidth = 300,\n minWidth = 100,\n maxWidth,\n}: SidebarResizeProps) => {\n const [isResizing, setIsResizing] = useState<boolean>(false);\n\n const [sidebarWidth, setSidebarWidth] = useState<number>(\n Math.max(defaultWidth, minWidth),\n );\n\n const sidebarRef = useRef<HTMLDivElement>(null);\n\n const [isSidebarOpen, setIsSidebarOpen] = useState<boolean>(true);\n\n const handleToggleSidebar = useCallback(() => {\n const newState = !isSidebarOpen;\n setIsSidebarOpen(newState);\n\n // Trigger custom event for external listeners\n triggerEvent(\n \"sidebar:resize:toggle\",\n { isSidebarOpen: newState },\n sidebarRef.current,\n );\n }, [isSidebarOpen]);\n\n // Update CSS variable when sidebar width or open state changes\n useEffect(() => {\n const width = isSidebarOpen ? sidebarWidth : 8;\n document.documentElement.style.setProperty(\"--sidebar-width\", `${width}px`);\n }, [isSidebarOpen, sidebarWidth]);\n\n const startResizing = useCallback(() => {\n if (!isSidebarOpen) return;\n\n setIsResizing(true);\n\n // Trigger custom event for external listeners\n triggerEvent(\"sidebar:resize:start\", { isSidebarOpen }, sidebarRef.current);\n }, [isSidebarOpen]);\n\n const stopResizing = useCallback(() => {\n if (!isResizing) return;\n\n setIsResizing(false);\n\n // Trigger custom event for external listeners\n triggerEvent(\n \"sidebar:resize\",\n {\n isSidebarOpen,\n sidebarWidth: isSidebarOpen ? sidebarWidth : 8,\n },\n sidebarRef.current,\n );\n }, [isResizing, isSidebarOpen, sidebarWidth]);\n\n const resize = useCallback(\n (mouseMoveEvent: MouseEvent) => {\n if (!isResizing || !sidebarRef.current) return;\n\n const sidebarLeft = sidebarRef.current.getBoundingClientRect().left;\n let newWidth = mouseMoveEvent.clientX - sidebarLeft;\n\n newWidth = Math.max(newWidth, minWidth);\n if (maxWidth !== undefined) {\n newWidth = Math.min(newWidth, maxWidth);\n }\n\n setSidebarWidth(newWidth);\n\n // Trigger custom event for external listeners\n triggerEvent(\n \"sidebar:resize:active\",\n {\n isSidebarOpen,\n sidebarWidth: newWidth,\n },\n sidebarRef.current,\n );\n },\n [isResizing, minWidth, maxWidth, isSidebarOpen],\n );\n\n // Set up and clean up event listeners for resize operation\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n\n window.addEventListener(\"mousemove\", resize);\n window.addEventListener(\"mouseup\", stopResizing);\n\n return () => {\n window.removeEventListener(\"mousemove\", resize);\n window.removeEventListener(\"mouseup\", stopResizing);\n };\n }, [resize, stopResizing]);\n\n return {\n sidebarRef,\n startResizing,\n isResizing,\n isSidebarOpen,\n handleToggleSidebar,\n };\n};\n"],"mappings":";;;AASA,MAAaK,oBAAoB,EAC/BC,eAAe,KACfC,WAAW,KACXC,eACwB;CACxB,MAAM,CAACC,YAAYC,iBAAiBP,SAAkB,MAAM;CAE5D,MAAM,CAACQ,cAAcC,mBAAmBT,SACtCU,KAAKC,IAAIR,cAAcC,SACzB,CAAC;CAED,MAAMQ,aAAab,OAAuB,KAAK;CAE/C,MAAM,CAACc,eAAeC,oBAAoBd,SAAkB,KAAK;CAEjE,MAAMe,sBAAsBlB,kBAAkB;EAC5C,MAAMmB,WAAW,CAACH;AAClBC,mBAAiBE,SAAS;AAG1Bf,eACE,yBACA,EAAEY,eAAeG,UAAU,EAC3BJ,WAAWK,QACZ;IACA,CAACJ,cAAc,CAAC;AAGnBf,iBAAgB;EACd,MAAMoB,QAAQL,gBAAgBL,eAAe;AAC7CW,WAASC,gBAAgBC,MAAMC,YAAY,mBAAmB,GAAGJ,MAAK,IAAK;IAC1E,CAACL,eAAeL,aAAa,CAAC;CAEjC,MAAMe,gBAAgB1B,kBAAkB;AACtC,MAAI,CAACgB,cAAe;AAEpBN,gBAAc,KAAK;AAGnBN,eAAa,wBAAwB,EAAEY,eAAe,EAAED,WAAWK,QAAQ;IAC1E,CAACJ,cAAc,CAAC;CAEnB,MAAMW,eAAe3B,kBAAkB;AACrC,MAAI,CAACS,WAAY;AAEjBC,gBAAc,MAAM;AAGpBN,eACE,kBACA;GACEY;GACAL,cAAcK,gBAAgBL,eAAe;GAC9C,EACDI,WAAWK,QACZ;IACA;EAACX;EAAYO;EAAeL;EAAa,CAAC;CAE7C,MAAMiB,SAAS5B,aACZ6B,mBAA+B;AAC9B,MAAI,CAACpB,cAAc,CAACM,WAAWK,QAAS;EAExC,MAAMU,cAAcf,WAAWK,QAAQW,uBAAuB,CAACC;EAC/D,IAAIC,WAAWJ,eAAeK,UAAUJ;AAExCG,aAAWpB,KAAKC,IAAImB,UAAU1B,SAAS;AACvC,MAAIC,aAAa2B,KAAAA,EACfF,YAAWpB,KAAKuB,IAAIH,UAAUzB,SAAS;AAGzCI,kBAAgBqB,SAAS;AAGzB7B,eACE,yBACA;GACEY;GACAL,cAAcsB;GACf,EACDlB,WAAWK,QACZ;IAEH;EAACX;EAAYF;EAAUC;EAAUQ;EACnC,CAAC;AAGDf,iBAAgB;AACd,MAAI,OAAOoC,WAAW,YAAa;AAEnCA,SAAOC,iBAAiB,aAAaV,OAAO;AAC5CS,SAAOC,iBAAiB,WAAWX,aAAa;AAEhD,eAAa;AACXU,UAAOE,oBAAoB,aAAaX,OAAO;AAC/CS,UAAOE,oBAAoB,WAAWZ,aAAa;;IAEpD,CAACC,QAAQD,aAAa,CAAC;AAE1B,QAAO;EACLZ;EACAW;EACAjB;EACAO;EACAE;EACD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { a as NodeStatus, i as NodeSortType, r as NodeSortOrder, s as SidebarNode } from "../../../types-CNbvfWjh.js";
|
|
2
|
+
|
|
3
|
+
//#region src/ui/components/sidebar/utils.d.ts
|
|
4
|
+
declare const nodesSearch: (nodes: SidebarNode[], searchTerm: string, searchType?: "bfs" | "dfs") => SidebarNode[];
|
|
5
|
+
declare const getOpenLevels: (items: SidebarNode[], level: number) => Set<string>;
|
|
6
|
+
declare const isOpenLevel: (items: SidebarNode[], expandedNodes: Set<string>, level: number) => boolean;
|
|
7
|
+
declare const getNodePath: (items: SidebarNode[], nodeId: string) => SidebarNode[] | null;
|
|
8
|
+
declare const getMaxDepth: (items: SidebarNode[]) => number;
|
|
9
|
+
declare const filterStatuses: (nodes: SidebarNode[], statuses: NodeStatus[]) => SidebarNode[];
|
|
10
|
+
declare const triggerEvent: (eventType: string, data: unknown, element?: Document | HTMLElement | null) => void;
|
|
11
|
+
declare const sortNodes: (nodes: SidebarNode[], sortType: NodeSortType, sortOrder: NodeSortOrder) => SidebarNode[];
|
|
12
|
+
//#endregion
|
|
13
|
+
export { filterStatuses, getMaxDepth, getNodePath, getOpenLevels, isOpenLevel, nodesSearch, sortNodes, triggerEvent };
|
|
14
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../../../src/ui/components/sidebar/utils.ts"],"mappings":";;;cAQa,WAAA,GACX,KAAA,EAAO,WAAA,IACP,UAAA,UACA,UAAA,qBACC,WAAA;AAAA,cAmDU,aAAA,GACX,KAAA,EAAO,WAAA,IACP,KAAA,aACC,GAAA;AAAA,cAsBU,WAAA,GACX,KAAA,EAAO,WAAA,IACP,aAAA,EAAe,GAAA,UACf,KAAA;AAAA,cAuCW,WAAA,GACX,KAAA,EAAO,WAAA,IACP,MAAA,aACC,WAAA;AAAA,cA2CU,WAAA,GAAe,KAAA,EAAO,WAAA;AAAA,cA2BtB,cAAA,GACX,KAAA,EAAO,WAAA,IACP,QAAA,EAAU,UAAA,OACT,WAAA;AAAA,cA6BU,YAAA,GACX,SAAA,UACA,IAAA,WACA,OAAA,GAAS,QAAA,GAAW,WAAA;AAAA,cAgBT,SAAA,GACX,KAAA,EAAO,WAAA,IACP,QAAA,EAAU,YAAA,EACV,SAAA,EAAW,aAAA,KACV,WAAA"}
|