@powerhousedao/design-system 6.2.3-dev.3 → 6.2.3-dev.30
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 → Removed-OP4eTrAN.js} +1 -1
- package/dist/{Removed-CO_5C1ce.js.map → Removed-OP4eTrAN.js.map} +1 -1
- package/dist/{Tabler-FjvVqX5a.js → Tabler-rjLxlzUV.js} +1 -1
- package/dist/{Tabler-FjvVqX5a.js.map → Tabler-rjLxlzUV.js.map} +1 -1
- package/dist/button-BYcXvZXr.d.ts +13 -0
- package/dist/button-BYcXvZXr.d.ts.map +1 -0
- package/dist/{character-counter-BWoglM2P.d.ts → character-counter-BZmZZCHN.d.ts} +2 -1
- package/dist/character-counter-BZmZZCHN.d.ts.map +1 -0
- package/dist/{checkbox-CGBtXQnI.d.ts → checkbox-BmTXBcCE.d.ts} +4 -4
- package/dist/checkbox-BmTXBcCE.d.ts.map +1 -0
- package/dist/{checkbox-base-CZo-4eL0.d.ts → checkbox-base-Bm0GPWgm.d.ts} +2 -2
- package/dist/checkbox-base-Bm0GPWgm.d.ts.map +1 -0
- package/dist/{command-B5BuEBfZ.d.ts → command-DHHTsHfH.d.ts} +15 -15
- package/dist/command-DHHTsHfH.d.ts.map +1 -0
- package/dist/connect/components/toast/toast.d.ts +8 -10
- package/dist/connect/components/toast/toast.d.ts.map +1 -1
- package/dist/connect/components/toast/toast.js +4 -4
- package/dist/connect/components/toast/toast.js.map +1 -1
- package/dist/connect/index.d.ts +327 -354
- package/dist/connect/index.d.ts.map +1 -1
- package/dist/connect/index.js +263 -145
- package/dist/connect/index.js.map +1 -1
- package/dist/{content-BHWIqmio.d.ts → content-BMXLcwWY.d.ts} +3 -3
- package/dist/content-BMXLcwWY.d.ts.map +1 -0
- package/dist/{enum-field-Cct-i2Uz.d.ts → enum-field-qgV9wsyI.d.ts} +5 -5
- package/dist/enum-field-qgV9wsyI.d.ts.map +1 -0
- package/dist/{form-CKRKn0TQ.d.ts → form-Brj5AQNr.d.ts} +3 -4
- package/dist/form-Brj5AQNr.d.ts.map +1 -0
- package/dist/{form-description-CYkcMEzm.d.ts → form-description-DJrDJzJi.d.ts} +2 -1
- package/dist/form-description-DJrDJzJi.d.ts.map +1 -0
- package/dist/{form-group-C8kL6pdZ.d.ts → form-group-Ckd28lpW.d.ts} +2 -1
- package/dist/form-group-Ckd28lpW.d.ts.map +1 -0
- package/dist/{form-label-b6nQi0XO.d.ts → form-label-C8ghd_lR.d.ts} +2 -1
- package/dist/form-label-C8ghd_lR.d.ts.map +1 -0
- package/dist/{form-message-Dq72nBXz.d.ts → form-message-CnKUkvlj.d.ts} +2 -1
- package/dist/form-message-CnKUkvlj.d.ts.map +1 -0
- package/dist/form-server-error-message-D2tFtDZ0.d.ts +6 -0
- package/dist/form-server-error-message-D2tFtDZ0.d.ts.map +1 -0
- package/dist/{icon-C4QOpsdI.js → icon-01W_S_9A.js} +3 -3
- package/dist/{icon-C4QOpsdI.js.map → icon-01W_S_9A.js.map} +1 -1
- package/dist/{id-autocomplete-C-hwriS5.d.ts → id-autocomplete-CHvGhffo.d.ts} +3 -3
- package/dist/id-autocomplete-CHvGhffo.d.ts.map +1 -0
- package/dist/{id-autocomplete-input-container-DFEyPh5p.d.ts → id-autocomplete-input-container-BqRQGpcs.d.ts} +3 -3
- package/dist/id-autocomplete-input-container-BqRQGpcs.d.ts.map +1 -0
- package/dist/{id-autocomplete-list-EzLpF23C.d.ts → id-autocomplete-list-ChQsiJDg.d.ts} +3 -3
- package/dist/id-autocomplete-list-ChQsiJDg.d.ts.map +1 -0
- package/dist/{id-autocomplete-list-option-CB5B07Hi.d.ts → id-autocomplete-list-option-MsqKeLXD.d.ts} +3 -3
- package/dist/id-autocomplete-list-option-MsqKeLXD.d.ts.map +1 -0
- package/dist/{index--hDSfvJT.d.ts → index-C05uhexJ.d.ts} +14 -45
- package/dist/index-C05uhexJ.d.ts.map +1 -0
- package/dist/index-CpSqVZKp.d.ts +2 -0
- package/dist/index-D6Zk5OLV.d.ts +4 -0
- package/dist/index-DSknqh8u.d.ts +30 -0
- package/dist/index-DU-WgcAh.d.ts +4 -0
- package/dist/index-DaRBrjZI.d.ts +3 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.js +2 -2
- package/dist/{input-BpEQjaWV.d.ts → input-WDvjJFqf.d.ts} +2 -2
- package/dist/input-WDvjJFqf.d.ts.map +1 -0
- package/dist/json-viewer-Kg0IBIt-.d.ts +7 -0
- package/dist/json-viewer-Kg0IBIt-.d.ts.map +1 -0
- package/dist/{message-list-C4mPpBBa.d.ts → message-list-D8d2ltLd.d.ts} +3 -3
- package/dist/message-list-D8d2ltLd.d.ts.map +1 -0
- package/dist/{popover-XSBOuSih.d.ts → popover-TvQxa0RU.d.ts} +2 -2
- package/dist/popover-TvQxa0RU.d.ts.map +1 -0
- package/dist/{radio-eL0Oy86J.d.ts → radio-CTS4WsNy.d.ts} +2 -2
- package/dist/radio-CTS4WsNy.d.ts.map +1 -0
- package/dist/{radio-group-Bkli6nUz.d.ts → radio-group-CROIwgYz.d.ts} +2 -2
- package/dist/radio-group-CROIwgYz.d.ts.map +1 -0
- package/dist/{radio-group-field-BN654-SO.d.ts → radio-group-field-CjX_Zt0C.d.ts} +5 -6
- package/dist/radio-group-field-CjX_Zt0C.d.ts.map +1 -0
- package/dist/{search-autocomplete-BJJkrZ1i.d.ts → search-autocomplete-COvFRZIb.d.ts} +3 -3
- package/dist/search-autocomplete-COvFRZIb.d.ts.map +1 -0
- package/dist/{select-field-C97QIhUL.d.ts → select-field-BuXjM43L.d.ts} +5 -5
- package/dist/select-field-BuXjM43L.d.ts.map +1 -0
- package/dist/{selected-content-CGsK5PR4.d.ts → selected-content-C49jmTLU.d.ts} +3 -3
- package/dist/selected-content-C49jmTLU.d.ts.map +1 -0
- package/dist/{sidebar-DOoE4krt.d.ts → sidebar-4juLhREX.d.ts} +3 -3
- package/dist/sidebar-4juLhREX.d.ts.map +1 -0
- package/dist/{sidebar-provider-C2eyz9TL.d.ts → sidebar-provider-CMG6WQWo.d.ts} +4 -8
- package/dist/sidebar-provider-CMG6WQWo.d.ts.map +1 -0
- package/dist/splitted-input-diff-DBkgDh9Q.d.ts +11 -0
- package/dist/splitted-input-diff-DBkgDh9Q.d.ts.map +1 -0
- package/dist/{src-CVV6HzQZ.js → src-CrUksCLW.js} +17 -14
- package/dist/{src-CVV6HzQZ.js.map → src-CrUksCLW.js.map} +1 -1
- package/dist/text-field-3j4fLJ-7.d.ts +9 -0
- package/dist/text-field-3j4fLJ-7.d.ts.map +1 -0
- package/dist/text-input-diff-B7iFyzTK.d.ts +12 -0
- package/dist/text-input-diff-B7iFyzTK.d.ts.map +1 -0
- package/dist/{text-input-8zXIWHLi.d.ts → text-input-tkqggbWx.d.ts} +5 -6
- package/dist/text-input-tkqggbWx.d.ts.map +1 -0
- package/dist/{tooltip-BxS9HpML.d.ts → tooltip-B4uQJPUm.d.ts} +3 -4
- package/dist/tooltip-B4uQJPUm.d.ts.map +1 -0
- package/dist/{types-Bsn62tJB.d.ts → types-BNTIrhb5.d.ts} +2 -1
- package/dist/types-BNTIrhb5.d.ts.map +1 -0
- package/dist/{types-BTq-St7H.d.ts → types-CpFPFB1a.d.ts} +2 -1
- package/dist/types-CpFPFB1a.d.ts.map +1 -0
- package/dist/{types-C04Q_Fan.d.ts → types-D4CirgNk.d.ts} +2 -2
- package/dist/types-D4CirgNk.d.ts.map +1 -0
- package/dist/{types-CNbvfWjh.d.ts → types-DDSmPhHp.d.ts} +3 -3
- package/dist/types-DDSmPhHp.d.ts.map +1 -0
- package/dist/ui/components/button/button.d.ts +3 -2
- package/dist/ui/components/button/button.js +1 -1
- package/dist/ui/components/button/button.js.map +1 -1
- package/dist/ui/components/character-counter/character-counter.d.ts +3 -2
- package/dist/ui/components/character-counter/character-counter.js.map +1 -1
- package/dist/ui/components/checkbox/checkbox-base.d.ts +3 -2
- package/dist/ui/components/checkbox/checkbox-base.js +1 -1
- package/dist/ui/components/checkbox/checkbox-base.js.map +1 -1
- package/dist/ui/components/checkbox/checkbox.d.ts +3 -2
- package/dist/ui/components/checkbox/checkbox.js +1 -1
- package/dist/ui/components/checkbox/checkbox.js.map +1 -1
- package/dist/ui/components/command/command.d.ts +3 -2
- package/dist/ui/components/command/command.js +8 -8
- package/dist/ui/components/command/command.js.map +1 -1
- package/dist/ui/components/enum-field/enum-field.d.ts +3 -2
- package/dist/ui/components/enum-field/enum-field.js +1 -1
- package/dist/ui/components/enum-field/enum-field.js.map +1 -1
- package/dist/ui/components/enum-field/types.d.ts +3 -2
- package/dist/ui/components/form/form.d.ts +3 -2
- package/dist/ui/components/form/form.js +1 -1
- package/dist/ui/components/form/form.js.map +1 -1
- package/dist/ui/components/form/utils.d.ts +4 -4
- package/dist/ui/components/form/utils.d.ts.map +1 -1
- package/dist/ui/components/form/utils.js.map +1 -1
- package/dist/ui/components/form-description/form-description.d.ts +3 -2
- package/dist/ui/components/form-description/form-description.js.map +1 -1
- package/dist/ui/components/form-group/form-group.d.ts +3 -2
- package/dist/ui/components/form-group/form-group.js.map +1 -1
- package/dist/ui/components/form-label/form-label.d.ts +3 -2
- package/dist/ui/components/form-label/form-label.js +3 -2
- package/dist/ui/components/form-label/form-label.js.map +1 -1
- package/dist/ui/components/form-message/form-message.d.ts +3 -2
- package/dist/ui/components/form-message/form-message.js.map +1 -1
- package/dist/ui/components/form-message/form-server-error-message.d.ts +3 -2
- package/dist/ui/components/form-message/form-server-error-message.js.map +1 -1
- package/dist/ui/components/form-message/message-list.d.ts +3 -2
- package/dist/ui/components/form-message/message-list.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-context.d.ts +3 -5
- package/dist/ui/components/id-autocomplete/id-autocomplete-context.d.ts.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-context.js +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-context.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.d.ts +3 -2
- package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.js +2 -2
- 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 +3 -2
- package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.js +2 -2
- 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 +3 -2
- package/dist/ui/components/id-autocomplete/id-autocomplete-list.js.map +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete.d.ts +3 -2
- package/dist/ui/components/id-autocomplete/id-autocomplete.js +1 -1
- package/dist/ui/components/id-autocomplete/id-autocomplete.js.map +1 -1
- package/dist/ui/components/id-autocomplete/types.d.ts +3 -2
- package/dist/ui/components/id-autocomplete/use-id-autocomplete.d.ts +3 -2
- package/dist/ui/components/id-autocomplete/use-id-autocomplete.js.map +1 -1
- package/dist/ui/components/index.d.ts +42 -40
- package/dist/ui/components/input/input.d.ts +3 -2
- package/dist/ui/components/input/input.js +1 -1
- package/dist/ui/components/input/input.js.map +1 -1
- package/dist/ui/components/input/splitted-input-diff.d.ts +3 -2
- package/dist/ui/components/input/splitted-input-diff.js +10 -9
- package/dist/ui/components/input/splitted-input-diff.js.map +1 -1
- package/dist/ui/components/input/subcomponent/input-diff.d.ts +2 -11
- package/dist/ui/components/input/subcomponent/input-diff.d.ts.map +1 -1
- package/dist/ui/components/input/subcomponent/input-diff.js.map +1 -1
- package/dist/ui/components/input/subcomponent/text-diff.d.ts +3 -12
- package/dist/ui/components/input/subcomponent/text-diff.d.ts.map +1 -1
- package/dist/ui/components/input/subcomponent/text-diff.js.map +1 -1
- package/dist/ui/components/json-viewer/json-viewer.d.ts +3 -2
- package/dist/ui/components/json-viewer/json-viewer.js +1 -1
- package/dist/ui/components/json-viewer/json-viewer.js.map +1 -1
- package/dist/ui/components/popover/popover.d.ts +3 -2
- package/dist/ui/components/popover/popover.js +1 -1
- package/dist/ui/components/popover/popover.js.map +1 -1
- package/dist/ui/components/radio-group-field/radio-group-field.d.ts +3 -2
- package/dist/ui/components/radio-group-field/radio-group-field.js +4 -3
- 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 +3 -2
- package/dist/ui/components/radio-group-field/radio-group.js +1 -1
- package/dist/ui/components/radio-group-field/radio-group.js.map +1 -1
- package/dist/ui/components/radio-group-field/radio.d.ts +3 -2
- package/dist/ui/components/radio-group-field/radio.js +1 -1
- package/dist/ui/components/radio-group-field/radio.js.map +1 -1
- package/dist/ui/components/search-autocomplete/index.d.ts +6 -4
- package/dist/ui/components/search-autocomplete/search-autocomplete.d.ts +3 -2
- package/dist/ui/components/search-autocomplete/search-autocomplete.js.map +1 -1
- package/dist/ui/components/search-autocomplete/types.d.ts +3 -2
- package/dist/ui/components/search-autocomplete/use-search-autocomplete.d.ts +3 -2
- package/dist/ui/components/search-autocomplete/use-search-autocomplete.js.map +1 -1
- package/dist/ui/components/select-field/content.d.ts +3 -2
- package/dist/ui/components/select-field/content.js +1 -1
- package/dist/ui/components/select-field/content.js.map +1 -1
- package/dist/ui/components/select-field/select-field.d.ts +3 -2
- package/dist/ui/components/select-field/select-field.js +1 -1
- package/dist/ui/components/select-field/select-field.js.map +1 -1
- package/dist/ui/components/select-field/selected-content.d.ts +3 -2
- package/dist/ui/components/select-field/selected-content.js +1 -1
- package/dist/ui/components/select-field/selected-content.js.map +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.d.ts +3 -4
- package/dist/ui/components/select-field/subcomponents/CommandItemList.d.ts.map +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.js +1 -1
- package/dist/ui/components/select-field/subcomponents/CommandItemList.js.map +1 -1
- package/dist/ui/components/select-field/use-select-field.d.ts +4 -12
- package/dist/ui/components/select-field/use-select-field.d.ts.map +1 -1
- package/dist/ui/components/select-field/use-select-field.js.map +1 -1
- package/dist/ui/components/sidebar/index.d.ts +6 -4
- package/dist/ui/components/sidebar/sidebar.d.ts +3 -2
- package/dist/ui/components/sidebar/sidebar.js +1 -1
- package/dist/ui/components/sidebar/sidebar.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.d.ts +2 -7
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.js +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.d.ts +2 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-header.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.d.ts +3 -18
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.js +3 -3
- package/dist/ui/components/sidebar/subcomponents/sidebar-item.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.d.ts +2 -4
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-pinning-area.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/index.d.ts +4 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.d.ts +3 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.js +2 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts +7 -8
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.js +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/index.d.ts +2 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.d.ts +2 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-navigation-arrow.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.d.ts +2 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/search-result-counter.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.d.ts +2 -2
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.js +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.d.ts +2 -8
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.js +2 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton-item.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.d.ts +2 -4
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/sidebar-skeleton.js.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/status-icon.d.ts +3 -9
- package/dist/ui/components/sidebar/subcomponents/status-icon.d.ts.map +1 -1
- package/dist/ui/components/sidebar/subcomponents/status-icon.js +1 -1
- package/dist/ui/components/sidebar/subcomponents/status-icon.js.map +1 -1
- package/dist/ui/components/sidebar/types.d.ts +3 -2
- package/dist/ui/components/sidebar/types.js +1 -1
- package/dist/ui/components/sidebar/types.js.map +1 -1
- package/dist/ui/components/sidebar/use-ellipsis.d.ts +2 -2
- package/dist/ui/components/sidebar/use-ellipsis.d.ts.map +1 -1
- package/dist/ui/components/sidebar/use-ellipsis.js.map +1 -1
- package/dist/ui/components/sidebar/use-sidebar-resize.d.ts +3 -9
- package/dist/ui/components/sidebar/use-sidebar-resize.d.ts.map +1 -1
- package/dist/ui/components/sidebar/use-sidebar-resize.js.map +1 -1
- package/dist/ui/components/sidebar/utils.d.ts +10 -11
- package/dist/ui/components/sidebar/utils.d.ts.map +1 -1
- package/dist/ui/components/sidebar/utils.js.map +1 -1
- package/dist/ui/components/text-field/text-field.d.ts +3 -2
- package/dist/ui/components/text-field/text-field.js +3 -2
- package/dist/ui/components/text-field/text-field.js.map +1 -1
- package/dist/ui/components/text-input/text-input-diff.d.ts +3 -2
- package/dist/ui/components/text-input/text-input-diff.js.map +1 -1
- package/dist/ui/components/text-input/text-input.d.ts +3 -2
- package/dist/ui/components/text-input/text-input.js +1 -1
- package/dist/ui/components/text-input/text-input.js.map +1 -1
- package/dist/ui/components/text-input/types.d.ts +3 -2
- package/dist/ui/components/tooltip/tooltip.d.ts +3 -2
- package/dist/ui/components/tooltip/tooltip.js +1 -1
- package/dist/ui/components/tooltip/tooltip.js.map +1 -1
- package/dist/ui/components/types.d.ts +3 -2
- package/dist/ui/components/value-transformer/value-transformer.d.ts +3 -2
- package/dist/ui/components/value-transformer/value-transformer.js +5 -3
- package/dist/ui/components/value-transformer/value-transformer.js.map +1 -1
- package/dist/ui/components/with-field-validation/with-field-validation.d.ts +3 -2
- package/dist/ui/components/with-field-validation/with-field-validation.js +1 -1
- package/dist/ui/components/with-field-validation/with-field-validation.js.map +1 -1
- package/dist/ui/index.d.ts +44 -42
- package/dist/ui/lib/date-picker.d.ts +4 -5
- package/dist/ui/lib/date-picker.d.ts.map +1 -1
- package/dist/ui/lib/date-picker.js +2 -1
- package/dist/ui/lib/date-picker.js.map +1 -1
- package/dist/ui/lib/date-time-picker.d.ts +6 -6
- package/dist/ui/lib/date-time-picker.d.ts.map +1 -1
- package/dist/ui/lib/date-time-picker.js.map +1 -1
- package/dist/ui/lib/deep-equal.d.ts +2 -2
- package/dist/ui/lib/deep-equal.d.ts.map +1 -1
- package/dist/ui/lib/deep-equal.js.map +1 -1
- package/dist/ui/lib/index.d.ts +2 -1
- package/dist/ui/lib/is-empty.d.ts +2 -2
- package/dist/ui/lib/is-empty.d.ts.map +1 -1
- package/dist/ui/lib/is-empty.js.map +1 -1
- package/dist/ui/lib/shared-value-transformers.d.ts +3 -4
- package/dist/ui/lib/shared-value-transformers.d.ts.map +1 -1
- package/dist/ui/lib/shared-value-transformers.js.map +1 -1
- package/dist/ui/lib/types.d.ts +3 -2
- package/dist/ui/lib/value-cast.d.ts +4 -4
- package/dist/ui/lib/value-cast.d.ts.map +1 -1
- package/dist/ui/lib/value-cast.js +10 -4
- package/dist/ui/lib/value-cast.js.map +1 -1
- package/dist/ui/types.d.ts +4 -3
- package/dist/{use-id-autocomplete-By7YSChC.d.ts → use-id-autocomplete-wdw3CfYc.d.ts} +5 -16
- package/dist/use-id-autocomplete-wdw3CfYc.d.ts.map +1 -0
- package/dist/{use-search-autocomplete-IfcQ_gKh.d.ts → use-search-autocomplete-vSvcsvcB.d.ts} +5 -6
- package/dist/use-search-autocomplete-vSvcsvcB.d.ts.map +1 -0
- package/dist/{value-transformer-DQjqtNih.d.ts → value-transformer-BAD6r8Ol.d.ts} +5 -7
- package/dist/value-transformer-BAD6r8Ol.d.ts.map +1 -0
- package/dist/{with-field-validation-Di5D8vU-.d.ts → with-field-validation-Bt02MQn2.d.ts} +3 -3
- package/dist/with-field-validation-Bt02MQn2.d.ts.map +1 -0
- package/package.json +8 -9
- package/dist/button-C8doazjv.d.ts +0 -15
- package/dist/button-C8doazjv.d.ts.map +0 -1
- package/dist/character-counter-BWoglM2P.d.ts.map +0 -1
- package/dist/checkbox-CGBtXQnI.d.ts.map +0 -1
- package/dist/checkbox-base-CZo-4eL0.d.ts.map +0 -1
- package/dist/command-B5BuEBfZ.d.ts.map +0 -1
- package/dist/content-BHWIqmio.d.ts.map +0 -1
- package/dist/enum-field-Cct-i2Uz.d.ts.map +0 -1
- package/dist/form-CKRKn0TQ.d.ts.map +0 -1
- package/dist/form-description-CYkcMEzm.d.ts.map +0 -1
- package/dist/form-group-C8kL6pdZ.d.ts.map +0 -1
- package/dist/form-label-b6nQi0XO.d.ts.map +0 -1
- package/dist/form-message-Dq72nBXz.d.ts.map +0 -1
- package/dist/form-server-error-message-DXbaiTfF.d.ts +0 -7
- package/dist/form-server-error-message-DXbaiTfF.d.ts.map +0 -1
- package/dist/id-autocomplete-C-hwriS5.d.ts.map +0 -1
- package/dist/id-autocomplete-input-container-DFEyPh5p.d.ts.map +0 -1
- package/dist/id-autocomplete-list-EzLpF23C.d.ts.map +0 -1
- package/dist/id-autocomplete-list-option-CB5B07Hi.d.ts.map +0 -1
- package/dist/index--hDSfvJT.d.ts.map +0 -1
- package/dist/index--okzibnx.d.ts +0 -1
- package/dist/index-BLwMeReG.d.ts +0 -1
- package/dist/index-Cw3C7_1f.d.ts +0 -1
- package/dist/index-E7Wvm5uX.d.ts +0 -1
- package/dist/index-J3R2mDFQ.d.ts +0 -1
- package/dist/input-BpEQjaWV.d.ts.map +0 -1
- package/dist/json-viewer-DaTgmzkS.d.ts +0 -8
- package/dist/json-viewer-DaTgmzkS.d.ts.map +0 -1
- package/dist/message-list-C4mPpBBa.d.ts.map +0 -1
- package/dist/popover-XSBOuSih.d.ts.map +0 -1
- package/dist/radio-eL0Oy86J.d.ts.map +0 -1
- package/dist/radio-group-Bkli6nUz.d.ts.map +0 -1
- package/dist/radio-group-field-BN654-SO.d.ts.map +0 -1
- package/dist/search-autocomplete-BJJkrZ1i.d.ts.map +0 -1
- package/dist/select-field-C97QIhUL.d.ts.map +0 -1
- package/dist/selected-content-CGsK5PR4.d.ts.map +0 -1
- package/dist/sidebar-DOoE4krt.d.ts.map +0 -1
- package/dist/sidebar-provider-C2eyz9TL.d.ts.map +0 -1
- package/dist/splitted-input-diff-CwPedpov.d.ts +0 -18
- package/dist/splitted-input-diff-CwPedpov.d.ts.map +0 -1
- package/dist/text-field-DSInH67J.d.ts +0 -10
- package/dist/text-field-DSInH67J.d.ts.map +0 -1
- package/dist/text-input-8zXIWHLi.d.ts.map +0 -1
- package/dist/text-input-diff-B0vLSKQm.d.ts +0 -20
- package/dist/text-input-diff-B0vLSKQm.d.ts.map +0 -1
- package/dist/tooltip-BxS9HpML.d.ts.map +0 -1
- package/dist/types-BTq-St7H.d.ts.map +0 -1
- package/dist/types-Bsn62tJB.d.ts.map +0 -1
- package/dist/types-C04Q_Fan.d.ts.map +0 -1
- package/dist/types-CNbvfWjh.d.ts.map +0 -1
- package/dist/use-id-autocomplete-By7YSChC.d.ts.map +0 -1
- package/dist/use-search-autocomplete-IfcQ_gKh.d.ts.map +0 -1
- package/dist/value-transformer-DQjqtNih.d.ts.map +0 -1
- package/dist/with-field-validation-Di5D8vU-.d.ts.map +0 -1
package/dist/connect/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { _ as DropdownMenuTrigger, c as SidebarHeader, d as PackageAnimation, f as Modal, h as DropdownMenuItem, l as SidebarPanel, m as DropdownMenuContent, n as usePagination, o as Sidebar, p as DropdownMenu, s as SidebarFooter, u as Pagination, v as PowerhouseButton } from "../src-
|
|
2
|
-
import { n as getDimensions, t as Icon } from "../icon-
|
|
1
|
+
import { _ as DropdownMenuTrigger, c as SidebarHeader, d as PackageAnimation, f as Modal, h as DropdownMenuItem, l as SidebarPanel, m as DropdownMenuContent, n as usePagination, o as Sidebar, p as DropdownMenu, s as SidebarFooter, u as Pagination, v as PowerhouseButton } from "../src-CrUksCLW.js";
|
|
2
|
+
import { n as getDimensions, t as Icon } from "../icon-01W_S_9A.js";
|
|
3
3
|
import { Popover, PopoverContent, PopoverTrigger } from "../ui/components/popover/popover.js";
|
|
4
4
|
import { SelectFieldRaw } from "../ui/components/select-field/select-field.js";
|
|
5
5
|
import { Input } from "../ui/components/input/input.js";
|
|
@@ -527,8 +527,9 @@ function ModalButton(props) {
|
|
|
527
527
|
const { variant, className, ...rest } = props;
|
|
528
528
|
const confirmStyle = twMerge(defaultStyle, "bg-primary text-primary-foreground");
|
|
529
529
|
const cancelStyle = twMerge(defaultStyle, "bg-muted text-muted-foreground");
|
|
530
|
+
const variantStyle = twMerge(variant === "confirm" ? confirmStyle : cancelStyle, className);
|
|
530
531
|
return /* @__PURE__ */ jsx("button", {
|
|
531
|
-
className:
|
|
532
|
+
className: variantStyle,
|
|
532
533
|
...rest
|
|
533
534
|
});
|
|
534
535
|
}
|
|
@@ -702,7 +703,7 @@ function SchemaTreeSidebar({ schema, tables, selectedTable, onSelectTable, onRef
|
|
|
702
703
|
//#endregion
|
|
703
704
|
//#region src/connect/components/select/select.tsx
|
|
704
705
|
function fixedForwardRef(render) {
|
|
705
|
-
return
|
|
706
|
+
return /*#__PURE__*/ forwardRef(render);
|
|
706
707
|
}
|
|
707
708
|
const ConnectSelect = /* @__PURE__ */ fixedForwardRef(function Select(props, ref) {
|
|
708
709
|
const { items, value, id, onChange, containerClassName, menuClassName, itemClassName, absolutePositionMenu = false, borderRadius = "6px", listClassName } = props;
|
|
@@ -1279,9 +1280,10 @@ function DBExplorer({ schema, getTables, getTableRows, getDefaultSort, pageSize
|
|
|
1279
1280
|
]);
|
|
1280
1281
|
const handleCopyAll = useCallback(async () => {
|
|
1281
1282
|
if (!selectedTable) return "";
|
|
1283
|
+
const limit = pagination.total ?? 1e6;
|
|
1282
1284
|
return rowsToCsv((await getTableRows(selectedTable, {
|
|
1283
1285
|
schema,
|
|
1284
|
-
limit
|
|
1286
|
+
limit,
|
|
1285
1287
|
offset: 0,
|
|
1286
1288
|
sort,
|
|
1287
1289
|
filters
|
|
@@ -1638,9 +1640,7 @@ const SEQUENCE = [
|
|
|
1638
1640
|
}
|
|
1639
1641
|
];
|
|
1640
1642
|
const ANIM_DUR = 460;
|
|
1641
|
-
const
|
|
1642
|
-
const LAST_DROP = 1220;
|
|
1643
|
-
const LOOP_TOTAL = LAST_DROP + ANIM_DUR + HOLD + 1040 + ANIM_DUR + 400;
|
|
1643
|
+
const LOOP_TOTAL = 4380;
|
|
1644
1644
|
const DROP_STYLE = `brickDrop ${ANIM_DUR}ms cubic-bezier(0.28, 1.08, 0.58, 1) forwards`;
|
|
1645
1645
|
const FALL_STYLE = `brickFall ${ANIM_DUR}ms cubic-bezier(0.28, 1.08, 0.58, 1) forwards`;
|
|
1646
1646
|
const PATHS = {
|
|
@@ -1699,7 +1699,7 @@ function LogoAnimation({ size = 48, className = "" }) {
|
|
|
1699
1699
|
clearTimers();
|
|
1700
1700
|
resetAll();
|
|
1701
1701
|
SEQUENCE.forEach(({ id, dropDelay }) => runDrop(id, dropDelay));
|
|
1702
|
-
const fallStart =
|
|
1702
|
+
const fallStart = 2480;
|
|
1703
1703
|
SEQUENCE.forEach(({ id, fallDelay }) => runFall(id, fallStart + fallDelay));
|
|
1704
1704
|
schedule(startLoop, LOOP_TOTAL);
|
|
1705
1705
|
}
|
|
@@ -1798,7 +1798,7 @@ function Tabs({ children, defaultValue, onValueChange, listClassName }) {
|
|
|
1798
1798
|
children: /* @__PURE__ */ jsx(List, {
|
|
1799
1799
|
className: "flex w-full gap-x-2 rounded-xl p-1 text-sm font-semibold text-foreground outline-none",
|
|
1800
1800
|
children: React.Children.map(children, (child, _i) => {
|
|
1801
|
-
if (
|
|
1801
|
+
if (!/*#__PURE__*/ React.isValidElement(child)) return;
|
|
1802
1802
|
const props = child.props;
|
|
1803
1803
|
const value = resolveTabValue(props);
|
|
1804
1804
|
return /* @__PURE__ */ jsx(Trigger$2, {
|
|
@@ -1812,10 +1812,11 @@ function Tabs({ children, defaultValue, onValueChange, listClassName }) {
|
|
|
1812
1812
|
}), /* @__PURE__ */ jsx("div", {
|
|
1813
1813
|
className: "mt-3 min-h-0 flex-1 rounded-md bg-background",
|
|
1814
1814
|
children: React.Children.map(children, (child, i) => {
|
|
1815
|
-
if (
|
|
1815
|
+
if (!/*#__PURE__*/ React.isValidElement(child)) return;
|
|
1816
|
+
const value = resolveTabValue(child.props);
|
|
1816
1817
|
return /* @__PURE__ */ jsx(Content$2, {
|
|
1817
1818
|
className: "h-full",
|
|
1818
|
-
value
|
|
1819
|
+
value,
|
|
1819
1820
|
children: child
|
|
1820
1821
|
}, i);
|
|
1821
1822
|
})
|
|
@@ -1954,7 +1955,8 @@ const getBarHeight = (size = 0) => {
|
|
|
1954
1955
|
const formatTimestamp$1 = (isoString) => {
|
|
1955
1956
|
if (!isoString) return "";
|
|
1956
1957
|
try {
|
|
1957
|
-
|
|
1958
|
+
const date = parseISO(isoString);
|
|
1959
|
+
return format(date, "HH:mm, dd, MMMM");
|
|
1958
1960
|
} catch {
|
|
1959
1961
|
return isoString;
|
|
1960
1962
|
}
|
|
@@ -2239,12 +2241,11 @@ function ToolbarRedoButton(props) {
|
|
|
2239
2241
|
}) } = props;
|
|
2240
2242
|
const { redo, canRedo } = useRedo(document?.header.id);
|
|
2241
2243
|
const onClick = makeOnClick(document, onClickOverride, redo);
|
|
2242
|
-
const disabled = !canRedo;
|
|
2243
2244
|
return /* @__PURE__ */ jsx(ToolbarButton, {
|
|
2244
2245
|
"data-testid": "toolbar-redo-button",
|
|
2245
2246
|
"aria-label": "Redo",
|
|
2246
2247
|
className,
|
|
2247
|
-
disabled,
|
|
2248
|
+
disabled: !canRedo,
|
|
2248
2249
|
onClick,
|
|
2249
2250
|
children
|
|
2250
2251
|
});
|
|
@@ -2617,10 +2618,16 @@ function ControlsContainerSlot(props) {
|
|
|
2617
2618
|
//#endregion
|
|
2618
2619
|
//#region src/connect/components/drive-auth-gate/drive-auth-gate.tsx
|
|
2619
2620
|
function DriveAuthGate(props) {
|
|
2620
|
-
const { mode = "login", onLogin, onLogout, className } = props;
|
|
2621
|
-
return /* @__PURE__ */
|
|
2622
|
-
className: twMerge("flex w-[28rem] max-w-[calc(100%-2rem)] flex-col items-center gap-4 rounded-3xl bg-background p-8 text-center shadow-2xl ring-1 ring-black/5 dark:ring-white/10", className),
|
|
2623
|
-
children:
|
|
2621
|
+
const { mode = "login", onLogin, onLogout, onClose, className } = props;
|
|
2622
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
2623
|
+
className: twMerge("relative flex w-[28rem] max-w-[calc(100%-2rem)] flex-col items-center gap-4 rounded-3xl bg-background p-8 text-center shadow-2xl ring-1 ring-black/5 dark:ring-white/10", className),
|
|
2624
|
+
children: [onClose ? /* @__PURE__ */ jsx("button", {
|
|
2625
|
+
type: "button",
|
|
2626
|
+
"aria-label": "Close",
|
|
2627
|
+
onClick: onClose,
|
|
2628
|
+
className: "absolute top-4 right-4 flex size-6 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
2629
|
+
children: /* @__PURE__ */ jsx(CloseGlyph, {})
|
|
2630
|
+
}) : null, mode === "login" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
2624
2631
|
/* @__PURE__ */ jsx("h2", {
|
|
2625
2632
|
className: "text-xl font-semibold text-foreground",
|
|
2626
2633
|
children: "Log in to access this drive"
|
|
@@ -2654,7 +2661,21 @@ function DriveAuthGate(props) {
|
|
|
2654
2661
|
className: "mt-2 flex items-center gap-2 rounded-lg border border-border bg-card px-6 py-2.5 text-sm font-semibold text-foreground shadow-sm transition-colors hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
2655
2662
|
children: "Log out"
|
|
2656
2663
|
})
|
|
2657
|
-
] })
|
|
2664
|
+
] })]
|
|
2665
|
+
});
|
|
2666
|
+
}
|
|
2667
|
+
function CloseGlyph() {
|
|
2668
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
2669
|
+
"aria-hidden": "true",
|
|
2670
|
+
focusable: "false",
|
|
2671
|
+
width: 14,
|
|
2672
|
+
height: 14,
|
|
2673
|
+
viewBox: "0 0 14 14",
|
|
2674
|
+
fill: "none",
|
|
2675
|
+
stroke: "currentColor",
|
|
2676
|
+
strokeWidth: 1.5,
|
|
2677
|
+
strokeLinecap: "round",
|
|
2678
|
+
children: /* @__PURE__ */ jsx("path", { d: "M2 2 L12 12 M12 2 L2 12" })
|
|
2658
2679
|
});
|
|
2659
2680
|
}
|
|
2660
2681
|
//#endregion
|
|
@@ -2840,7 +2861,7 @@ function UploadFileItemStatusRow(props) {
|
|
|
2840
2861
|
}
|
|
2841
2862
|
//#endregion
|
|
2842
2863
|
//#region src/connect/components/upload-file-item/upload-file-item.tsx
|
|
2843
|
-
const UploadFileItem =
|
|
2864
|
+
const UploadFileItem = /*#__PURE__*/ forwardRef(function UploadFileItem(props, ref) {
|
|
2844
2865
|
const { fileName, fileSize, status, documentType, progress = 0, errorDetails, onClose, onOpenDocument, onFindResolution, className, ...delegatedProps } = props;
|
|
2845
2866
|
return /* @__PURE__ */ jsxs("div", {
|
|
2846
2867
|
ref,
|
|
@@ -3080,7 +3101,7 @@ function uploadsReducer(state, action) {
|
|
|
3080
3101
|
}
|
|
3081
3102
|
}
|
|
3082
3103
|
function useUploadTracker(useLocalStorage = false, driveId) {
|
|
3083
|
-
const
|
|
3104
|
+
const getInitialState = useCallback(() => {
|
|
3084
3105
|
if (useLocalStorage && driveId) try {
|
|
3085
3106
|
const stored = localStorage.getItem(`uploadTracker_${driveId}`);
|
|
3086
3107
|
if (stored) return JSON.parse(stored);
|
|
@@ -3090,7 +3111,8 @@ function useUploadTracker(useLocalStorage = false, driveId) {
|
|
|
3090
3111
|
return {};
|
|
3091
3112
|
}
|
|
3092
3113
|
return {};
|
|
3093
|
-
}, [useLocalStorage, driveId])
|
|
3114
|
+
}, [useLocalStorage, driveId]);
|
|
3115
|
+
const [uploads, dispatch] = useReducer(uploadsReducer, getInitialState());
|
|
3094
3116
|
useEffect(() => {
|
|
3095
3117
|
if (useLocalStorage && driveId) try {
|
|
3096
3118
|
localStorage.setItem(`uploadTracker_${driveId}`, JSON.stringify(uploads));
|
|
@@ -3132,11 +3154,12 @@ function useUploadTracker(useLocalStorage = false, driveId) {
|
|
|
3132
3154
|
});
|
|
3133
3155
|
};
|
|
3134
3156
|
try {
|
|
3157
|
+
const fileNode = await onAddFile(file, parent, progressCallback);
|
|
3135
3158
|
dispatch({
|
|
3136
3159
|
type: "SET_FILE_NODE",
|
|
3137
3160
|
payload: {
|
|
3138
3161
|
id: fileId,
|
|
3139
|
-
fileNode:
|
|
3162
|
+
fileNode: fileNode || void 0
|
|
3140
3163
|
}
|
|
3141
3164
|
});
|
|
3142
3165
|
} catch (error) {
|
|
@@ -3988,7 +4011,7 @@ const Footer = ({ children, className, ...props }) => {
|
|
|
3988
4011
|
};
|
|
3989
4012
|
//#endregion
|
|
3990
4013
|
//#region src/connect/components/form-input/form-input.tsx
|
|
3991
|
-
const FormInput =
|
|
4014
|
+
const FormInput = /*#__PURE__*/ forwardRef(function FormInput(props, ref) {
|
|
3992
4015
|
const { icon, errorMessage, isDirty, containerClassName, inputClassName, errorMessageClassName, hideErrors = false, ...delegatedProps } = props;
|
|
3993
4016
|
const type = props.type ?? "text";
|
|
3994
4017
|
const isError = !!errorMessage;
|
|
@@ -4086,7 +4109,7 @@ function AddLocalDriveForm(props) {
|
|
|
4086
4109
|
}
|
|
4087
4110
|
//#endregion
|
|
4088
4111
|
//#region src/connect/components/toggle/toggle.tsx
|
|
4089
|
-
const Toggle =
|
|
4112
|
+
const Toggle = /*#__PURE__*/ forwardRef(function Toggle(props, ref) {
|
|
4090
4113
|
return /* @__PURE__ */ jsxs("label", {
|
|
4091
4114
|
className: "relative cursor-pointer items-center",
|
|
4092
4115
|
htmlFor: props.id,
|
|
@@ -4101,7 +4124,7 @@ const Toggle = /* @__PURE__ */ forwardRef(function Toggle(props, ref) {
|
|
|
4101
4124
|
});
|
|
4102
4125
|
//#endregion
|
|
4103
4126
|
//#region src/connect/components/form/inputs/available-offline-toggle.tsx
|
|
4104
|
-
const AvailableOfflineToggle =
|
|
4127
|
+
const AvailableOfflineToggle = /*#__PURE__*/ forwardRef(function AvailableOfflineToggle(props, ref) {
|
|
4105
4128
|
return /* @__PURE__ */ jsxs("div", {
|
|
4106
4129
|
className: "flex items-center rounded-md border border-border bg-background p-3 text-foreground",
|
|
4107
4130
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
@@ -4470,7 +4493,8 @@ function IntegrityInspector({ onValidate, onRebuildKeyframes, onRebuildSnapshots
|
|
|
4470
4493
|
clearResults();
|
|
4471
4494
|
setStatus("running");
|
|
4472
4495
|
try {
|
|
4473
|
-
|
|
4496
|
+
const result = await onValidate(documentId.trim(), branch.trim() || void 0);
|
|
4497
|
+
setValidationResult(result);
|
|
4474
4498
|
setStatus("done");
|
|
4475
4499
|
} catch (err) {
|
|
4476
4500
|
setError(err instanceof Error ? err.message : String(err));
|
|
@@ -4487,7 +4511,8 @@ function IntegrityInspector({ onValidate, onRebuildKeyframes, onRebuildSnapshots
|
|
|
4487
4511
|
clearResults();
|
|
4488
4512
|
setStatus("running");
|
|
4489
4513
|
try {
|
|
4490
|
-
|
|
4514
|
+
const result = await onRebuildKeyframes(documentId.trim(), branch.trim() || void 0);
|
|
4515
|
+
setRebuildResult(result);
|
|
4491
4516
|
setStatus("done");
|
|
4492
4517
|
} catch (err) {
|
|
4493
4518
|
setError(err instanceof Error ? err.message : String(err));
|
|
@@ -4504,7 +4529,8 @@ function IntegrityInspector({ onValidate, onRebuildKeyframes, onRebuildSnapshots
|
|
|
4504
4529
|
clearResults();
|
|
4505
4530
|
setStatus("running");
|
|
4506
4531
|
try {
|
|
4507
|
-
|
|
4532
|
+
const result = await onRebuildSnapshots(documentId.trim(), branch.trim() || void 0);
|
|
4533
|
+
setRebuildResult(result);
|
|
4508
4534
|
setStatus("done");
|
|
4509
4535
|
} catch (err) {
|
|
4510
4536
|
setError(err instanceof Error ? err.message : String(err));
|
|
@@ -4941,8 +4967,14 @@ function CreateDocumentWithTypeModal(props) {
|
|
|
4941
4967
|
value: PLACEHOLDER_KEY,
|
|
4942
4968
|
displayValue: "Select document type…"
|
|
4943
4969
|
}, ...typeItems] : typeItems;
|
|
4970
|
+
const resetTimer = useRef(void 0);
|
|
4971
|
+
useEffect(() => () => {
|
|
4972
|
+
if (resetTimer.current !== void 0) clearTimeout(resetTimer.current);
|
|
4973
|
+
}, []);
|
|
4944
4974
|
const resetAfterClose = useCallback(() => {
|
|
4945
|
-
|
|
4975
|
+
if (resetTimer.current !== void 0) clearTimeout(resetTimer.current);
|
|
4976
|
+
resetTimer.current = setTimeout(() => {
|
|
4977
|
+
resetTimer.current = void 0;
|
|
4946
4978
|
setDocumentName("");
|
|
4947
4979
|
setIsNameValid(false);
|
|
4948
4980
|
setSelectedKey(PLACEHOLDER_KEY);
|
|
@@ -5077,7 +5109,7 @@ function ConnectDeleteItemModal(props) {
|
|
|
5077
5109
|
}
|
|
5078
5110
|
//#endregion
|
|
5079
5111
|
//#region src/connect/components/form/inputs/drive-name-input.tsx
|
|
5080
|
-
const DriveNameInput =
|
|
5112
|
+
const DriveNameInput = /*#__PURE__*/ forwardRef(function DriveNameInput(props, ref) {
|
|
5081
5113
|
return /* @__PURE__ */ jsx(FormInput, {
|
|
5082
5114
|
...props,
|
|
5083
5115
|
icon: props.icon ?? /* @__PURE__ */ jsx(Icon, { name: "Drive" }),
|
|
@@ -5461,7 +5493,8 @@ function ProcessorsInspector({ getProcessors, onRetry }) {
|
|
|
5461
5493
|
const [error, setError] = useState(null);
|
|
5462
5494
|
const loadProcessors = useCallback(async () => {
|
|
5463
5495
|
try {
|
|
5464
|
-
|
|
5496
|
+
const result = await getProcessors();
|
|
5497
|
+
setProcessors(result);
|
|
5465
5498
|
setError(null);
|
|
5466
5499
|
} catch (e) {
|
|
5467
5500
|
setError(e instanceof Error ? e.message : String(e));
|
|
@@ -5491,9 +5524,10 @@ function ProcessorsInspector({ getProcessors, onRetry }) {
|
|
|
5491
5524
|
}
|
|
5492
5525
|
}, [onRetry, loadProcessors]);
|
|
5493
5526
|
const handleSort = (columnKey) => {
|
|
5527
|
+
const newDirection = sort?.column === columnKey && sort.direction === "asc" ? "desc" : "asc";
|
|
5494
5528
|
setSort({
|
|
5495
5529
|
column: columnKey,
|
|
5496
|
-
direction:
|
|
5530
|
+
direction: newDirection
|
|
5497
5531
|
});
|
|
5498
5532
|
};
|
|
5499
5533
|
const sortedProcessors = sortProcessors(processors, sort);
|
|
@@ -5815,7 +5849,8 @@ function QueueInspector({ getQueueState, onPause, onResume }) {
|
|
|
5815
5849
|
const [actionInProgress, setActionInProgress] = useState(false);
|
|
5816
5850
|
const [selectedJob, setSelectedJob] = useState(null);
|
|
5817
5851
|
const loadState = useCallback(async () => {
|
|
5818
|
-
|
|
5852
|
+
const newState = await getQueueState();
|
|
5853
|
+
setState(newState);
|
|
5819
5854
|
setLoading(false);
|
|
5820
5855
|
}, [getQueueState]);
|
|
5821
5856
|
useEffect(() => {
|
|
@@ -5842,9 +5877,10 @@ function QueueInspector({ getQueueState, onPause, onResume }) {
|
|
|
5842
5877
|
loadState
|
|
5843
5878
|
]);
|
|
5844
5879
|
const handleSort = (columnKey) => {
|
|
5880
|
+
const newDirection = sort?.column === columnKey && sort.direction === "asc" ? "desc" : "asc";
|
|
5845
5881
|
setSort({
|
|
5846
5882
|
column: columnKey,
|
|
5847
|
-
direction:
|
|
5883
|
+
direction: newDirection
|
|
5848
5884
|
});
|
|
5849
5885
|
};
|
|
5850
5886
|
const sortedJobs = sortJobs([...state.executingJobs.map((job) => ({
|
|
@@ -6045,8 +6081,9 @@ const stateStyles = {
|
|
|
6045
6081
|
disconnected: "bg-muted text-foreground"
|
|
6046
6082
|
};
|
|
6047
6083
|
function ConnectionStateBadge({ state, failureCount }) {
|
|
6084
|
+
const style = stateStyles[state] ?? "bg-muted text-foreground";
|
|
6048
6085
|
return /* @__PURE__ */ jsxs("span", {
|
|
6049
|
-
className: twMerge("inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium",
|
|
6086
|
+
className: twMerge("inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium", style),
|
|
6050
6087
|
children: [state, failureCount > 0 && /* @__PURE__ */ jsxs("span", {
|
|
6051
6088
|
className: "text-xs opacity-75",
|
|
6052
6089
|
children: [
|
|
@@ -6781,7 +6818,8 @@ function RemotesInspector({ getRemotes, removeRemote, addRemoteManual, triggerPu
|
|
|
6781
6818
|
const columns = useMemo(() => hasRowActions ? [...BASE_COLUMNS, ACTIONS_COLUMN] : BASE_COLUMNS, [hasRowActions]);
|
|
6782
6819
|
const loadRemotes = useCallback(async () => {
|
|
6783
6820
|
setLoading(true);
|
|
6784
|
-
|
|
6821
|
+
const data = await getRemotes();
|
|
6822
|
+
setRemotes(data);
|
|
6785
6823
|
setLoading(false);
|
|
6786
6824
|
}, [getRemotes]);
|
|
6787
6825
|
useEffect(() => {
|
|
@@ -6789,7 +6827,10 @@ function RemotesInspector({ getRemotes, removeRemote, addRemoteManual, triggerPu
|
|
|
6789
6827
|
}, [loadRemotes]);
|
|
6790
6828
|
const handleRefresh = useCallback(async () => {
|
|
6791
6829
|
await loadRemotes();
|
|
6792
|
-
if (selectedRemote)
|
|
6830
|
+
if (selectedRemote) {
|
|
6831
|
+
const updated = remotes.find((r) => r.meta.id === selectedRemote.meta.id);
|
|
6832
|
+
setSelectedRemote(updated);
|
|
6833
|
+
}
|
|
6793
6834
|
}, [
|
|
6794
6835
|
loadRemotes,
|
|
6795
6836
|
selectedRemote,
|
|
@@ -6797,9 +6838,10 @@ function RemotesInspector({ getRemotes, removeRemote, addRemoteManual, triggerPu
|
|
|
6797
6838
|
]);
|
|
6798
6839
|
const handleSort = (columnKey) => {
|
|
6799
6840
|
if (columnKey === "channel" || columnKey === "actions" || columnKey === "status") return;
|
|
6841
|
+
const newDirection = sort?.column === columnKey && sort.direction === "asc" ? "desc" : "asc";
|
|
6800
6842
|
setSort({
|
|
6801
6843
|
column: columnKey,
|
|
6802
|
-
direction:
|
|
6844
|
+
direction: newDirection
|
|
6803
6845
|
});
|
|
6804
6846
|
};
|
|
6805
6847
|
const handleViewChannel = (remote) => {
|
|
@@ -7051,7 +7093,8 @@ function WorkerInspector({ getInfo, onRestart }) {
|
|
|
7051
7093
|
const [restarting, setRestarting] = useState(false);
|
|
7052
7094
|
const loadInfo = useCallback(async () => {
|
|
7053
7095
|
try {
|
|
7054
|
-
|
|
7096
|
+
const next = await getInfo();
|
|
7097
|
+
setInfo(next);
|
|
7055
7098
|
setError(null);
|
|
7056
7099
|
} catch (e) {
|
|
7057
7100
|
setError(e instanceof Error ? e.message : String(e));
|
|
@@ -7354,10 +7397,12 @@ function ReadRequiredModal(props) {
|
|
|
7354
7397
|
useEffect(() => {
|
|
7355
7398
|
const checkScroll = () => {
|
|
7356
7399
|
const element = contentRef.current;
|
|
7357
|
-
if (element)
|
|
7358
|
-
|
|
7359
|
-
|
|
7360
|
-
|
|
7400
|
+
if (element) {
|
|
7401
|
+
if (element.scrollHeight > element.clientHeight) {
|
|
7402
|
+
setDisableClose(true);
|
|
7403
|
+
element.addEventListener("scroll", handleScroll);
|
|
7404
|
+
} else setDisableClose(false);
|
|
7405
|
+
}
|
|
7361
7406
|
};
|
|
7362
7407
|
const handleScroll = () => {
|
|
7363
7408
|
const element = contentRef.current;
|
|
@@ -7870,6 +7915,7 @@ const VersionPicker = (props) => {
|
|
|
7870
7915
|
className: "px-3 py-1 text-xs font-semibold tracking-wide text-muted-foreground uppercase",
|
|
7871
7916
|
children: "Tags"
|
|
7872
7917
|
}), filteredTags.map(([tag, ver]) => {
|
|
7918
|
+
const isSelected = selected.kind === "tag" && selected.value === tag;
|
|
7873
7919
|
return /* @__PURE__ */ jsxs("button", {
|
|
7874
7920
|
type: "button",
|
|
7875
7921
|
onClick: () => {
|
|
@@ -7880,7 +7926,7 @@ const VersionPicker = (props) => {
|
|
|
7880
7926
|
setOpen(false);
|
|
7881
7927
|
setQuery("");
|
|
7882
7928
|
},
|
|
7883
|
-
className: twMerge("flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left text-xs transition-colors", "hover:hover-effect",
|
|
7929
|
+
className: twMerge("flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left text-xs transition-colors", "hover:hover-effect", isSelected && "bg-muted font-semibold"),
|
|
7884
7930
|
children: [/* @__PURE__ */ jsx("span", {
|
|
7885
7931
|
className: "truncate text-foreground",
|
|
7886
7932
|
children: tag
|
|
@@ -7901,6 +7947,7 @@ const VersionPicker = (props) => {
|
|
|
7901
7947
|
className: "px-3 py-1 text-xs font-semibold tracking-wide text-muted-foreground uppercase",
|
|
7902
7948
|
children: "Versions"
|
|
7903
7949
|
}), filteredVersions.map((ver) => {
|
|
7950
|
+
const isSelected = selected.kind === "version" && selected.value === ver;
|
|
7904
7951
|
return /* @__PURE__ */ jsx("button", {
|
|
7905
7952
|
type: "button",
|
|
7906
7953
|
onClick: () => {
|
|
@@ -7911,7 +7958,7 @@ const VersionPicker = (props) => {
|
|
|
7911
7958
|
setOpen(false);
|
|
7912
7959
|
setQuery("");
|
|
7913
7960
|
},
|
|
7914
|
-
className: twMerge("flex w-full items-center px-3 py-1.5 text-left text-xs transition-colors", "hover:hover-effect",
|
|
7961
|
+
className: twMerge("flex w-full items-center px-3 py-1.5 text-left text-xs transition-colors", "hover:hover-effect", isSelected && "bg-muted font-semibold"),
|
|
7915
7962
|
children: /* @__PURE__ */ jsxs("span", {
|
|
7916
7963
|
className: "flex min-w-0 items-center gap-1.5 text-foreground",
|
|
7917
7964
|
children: [/* @__PURE__ */ jsx("span", {
|
|
@@ -8060,6 +8107,14 @@ const PackageManagerListItem = (props) => {
|
|
|
8060
8107
|
updateTarget
|
|
8061
8108
|
]
|
|
8062
8109
|
}),
|
|
8110
|
+
registryPackage.sharedDepWarnings && registryPackage.sharedDepWarnings.length > 0 && /* @__PURE__ */ jsxs("span", {
|
|
8111
|
+
className: "inline-flex items-center gap-1 rounded-full border border-warning/40 bg-warning/10 px-2 py-0.5 text-[11px] font-medium text-warning",
|
|
8112
|
+
title: registryPackage.sharedDepWarnings.join("\n"),
|
|
8113
|
+
children: [/* @__PURE__ */ jsx(Icon, {
|
|
8114
|
+
name: "Exclamation",
|
|
8115
|
+
size: 10
|
|
8116
|
+
}), "Shared deps out of date"]
|
|
8117
|
+
}),
|
|
8063
8118
|
!(canPickVersion && hasVersionMetadata) && registryPackage.version && /* @__PURE__ */ jsxs("span", {
|
|
8064
8119
|
className: "text-xs font-normal text-muted-foreground",
|
|
8065
8120
|
children: ["v", registryPackage.version]
|
|
@@ -8103,7 +8158,8 @@ const PackageManagerListItem = (props) => {
|
|
|
8103
8158
|
items: dropdownItems,
|
|
8104
8159
|
onItemClick: (id) => {
|
|
8105
8160
|
if (id === "install") {
|
|
8106
|
-
|
|
8161
|
+
const spec = canPickVersion && hasVersionMetadata ? buildPackageSpec(registryPackage.name, selected.value) : registryPackage.name;
|
|
8162
|
+
onInstall(spec).catch(console.error);
|
|
8107
8163
|
return;
|
|
8108
8164
|
}
|
|
8109
8165
|
if (id === "update") {
|
|
@@ -8619,7 +8675,8 @@ const DocumentState = (props) => {
|
|
|
8619
8675
|
const { documentState, onCopyState } = props;
|
|
8620
8676
|
const [, copy] = useCopyToClipboard();
|
|
8621
8677
|
function handleCopy() {
|
|
8622
|
-
|
|
8678
|
+
const jsonState = JSON.stringify(documentState, null, 2);
|
|
8679
|
+
copy(jsonState).then(() => {
|
|
8623
8680
|
onCopyState?.();
|
|
8624
8681
|
}).catch((error) => {
|
|
8625
8682
|
console.error("Failed to copy document state!", error);
|
|
@@ -8633,20 +8690,21 @@ const DocumentState = (props) => {
|
|
|
8633
8690
|
};
|
|
8634
8691
|
//#endregion
|
|
8635
8692
|
//#region src/connect/components/revision-history/header/scope.tsx
|
|
8693
|
+
function labelFor(scope) {
|
|
8694
|
+
return `${scope.charAt(0).toUpperCase()}${scope.slice(1)} scope`;
|
|
8695
|
+
}
|
|
8636
8696
|
function Scope(props) {
|
|
8637
|
-
const { value, onChange } = props;
|
|
8697
|
+
const { scopes, value, onChange } = props;
|
|
8698
|
+
const items = scopes.map((scope) => ({
|
|
8699
|
+
displayValue: labelFor(scope),
|
|
8700
|
+
value: scope
|
|
8701
|
+
}));
|
|
8638
8702
|
return /* @__PURE__ */ jsx(ConnectSelect, {
|
|
8639
8703
|
absolutePositionMenu: true,
|
|
8640
8704
|
containerClassName: "z-10 w-fit rounded-lg bg-background text-xs text-muted-foreground",
|
|
8641
8705
|
id: "scope select",
|
|
8642
8706
|
itemClassName: "grid grid-cols-[auto,auto] gap-1 py-2 text-muted-foreground",
|
|
8643
|
-
items
|
|
8644
|
-
displayValue: "Global scope",
|
|
8645
|
-
value: "global"
|
|
8646
|
-
}, {
|
|
8647
|
-
displayValue: "Local scope",
|
|
8648
|
-
value: "local"
|
|
8649
|
-
}],
|
|
8707
|
+
items,
|
|
8650
8708
|
menuClassName: "min-w-0 text-muted-foreground",
|
|
8651
8709
|
onChange,
|
|
8652
8710
|
value
|
|
@@ -8655,7 +8713,7 @@ function Scope(props) {
|
|
|
8655
8713
|
//#endregion
|
|
8656
8714
|
//#region src/connect/components/revision-history/header/header.tsx
|
|
8657
8715
|
function Header(props) {
|
|
8658
|
-
const { title, docId, scope, onChangeScope, onClose, className, documentState, onCopyState, onCopyDocId, ...divProps } = props;
|
|
8716
|
+
const { title, docId, scope, scopes, onChangeScope, onClose, className, documentState, onCopyState, onCopyDocId, ...divProps } = props;
|
|
8659
8717
|
return /* @__PURE__ */ jsxs("header", {
|
|
8660
8718
|
className: twMerge("flex items-center justify-between bg-transparent", className),
|
|
8661
8719
|
...divProps,
|
|
@@ -8684,6 +8742,7 @@ function Header(props) {
|
|
|
8684
8742
|
/* @__PURE__ */ jsx(Branch, {}),
|
|
8685
8743
|
/* @__PURE__ */ jsx(Scope, {
|
|
8686
8744
|
onChange: onChangeScope,
|
|
8745
|
+
scopes,
|
|
8687
8746
|
value: scope
|
|
8688
8747
|
})
|
|
8689
8748
|
]
|
|
@@ -8924,9 +8983,10 @@ function Timestamp(props) {
|
|
|
8924
8983
|
const timestampNumber = typeof timestamp === "string" && !timestamp.includes("-") ? parseInt(timestamp) : timestamp;
|
|
8925
8984
|
const date = new Date(timestampNumber);
|
|
8926
8985
|
const shortDate = format(date, "HH:mm 'UTC'");
|
|
8986
|
+
const longDate = format(date, "eee, dd MMM yyyy HH:mm:ss 'UTC'");
|
|
8927
8987
|
return /* @__PURE__ */ jsx(CodePopover, {
|
|
8928
8988
|
content: /* @__PURE__ */ jsx(FormattedJsonViewer, { value: {
|
|
8929
|
-
timestampFormatted:
|
|
8989
|
+
timestampFormatted: longDate,
|
|
8930
8990
|
timestampUtcMs: timestamp
|
|
8931
8991
|
} }),
|
|
8932
8992
|
trigger: /* @__PURE__ */ jsxs("span", {
|
|
@@ -8954,7 +9014,7 @@ function _Revision(props) {
|
|
|
8954
9014
|
})]
|
|
8955
9015
|
});
|
|
8956
9016
|
}
|
|
8957
|
-
const Revision =
|
|
9017
|
+
const Revision = /*#__PURE__*/ memo(_Revision);
|
|
8958
9018
|
//#endregion
|
|
8959
9019
|
//#region src/connect/components/revision-history/skip/skip.tsx
|
|
8960
9020
|
function Skip(props) {
|
|
@@ -9049,90 +9109,110 @@ function Day(props) {
|
|
|
9049
9109
|
}
|
|
9050
9110
|
//#endregion
|
|
9051
9111
|
//#region src/connect/components/revision-history/timeline/timeline.tsx
|
|
9112
|
+
/** How far each row is indented from the timeline's vertical line. */
|
|
9113
|
+
const ROW_INSET = 16;
|
|
9114
|
+
/**
|
|
9115
|
+
* How far the line is inset from the scroll container's clip edge -- exactly
|
|
9116
|
+
* the amount the day marker hangs past it (24 pulled back from a 16 inset
|
|
9117
|
+
* leaves 8 on the wrong side of zero). Without this the ring is sliced in
|
|
9118
|
+
* half, since a scrolling box clips on both axes.
|
|
9119
|
+
*/
|
|
9120
|
+
const DAY_MARKER_OVERHANG = 8;
|
|
9121
|
+
/**
|
|
9122
|
+
* The revision timeline, windowed by row.
|
|
9123
|
+
*
|
|
9124
|
+
* The scroll element and the content are deliberately two different
|
|
9125
|
+
* elements. A virtualizer decides what is visible by comparing its scroll
|
|
9126
|
+
* element's viewport against the total content size, so a scroll element
|
|
9127
|
+
* sized to the content is a viewport that shows everything at once: it never
|
|
9128
|
+
* scrolls, every row is "visible", and the whole page renders while still
|
|
9129
|
+
* paying the virtualizer's bookkeeping. The outer element here is therefore
|
|
9130
|
+
* bounded and scrollable, and the inner sizer carries the full height that
|
|
9131
|
+
* the absolutely positioned rows are placed within.
|
|
9132
|
+
*/
|
|
9052
9133
|
function Timeline(props) {
|
|
9053
|
-
const {
|
|
9054
|
-
const
|
|
9055
|
-
const initialNumRowsToShow = 100;
|
|
9056
|
-
const allRows = useMemo(() => makeRows(operations), [operations]);
|
|
9057
|
-
const [scrollAmount, setScrollAmount] = useState(0);
|
|
9058
|
-
const [numRowsToShow, setNumRowsToShow] = useState(initialNumRowsToShow);
|
|
9059
|
-
const [rows, setRows] = useState(() => allRows.slice(0, numRowsToShow));
|
|
9134
|
+
const { operations, maxHeight = "70vh" } = props;
|
|
9135
|
+
const rows = useMemo(() => makeRows([...operations]), [operations]);
|
|
9060
9136
|
const parentRef = useRef(null);
|
|
9061
|
-
const hasNextPage = rows.length < allRows.length;
|
|
9062
9137
|
const rowVirtualizer = useVirtualizer({
|
|
9063
9138
|
count: rows.length,
|
|
9064
9139
|
getScrollElement: () => parentRef.current,
|
|
9065
|
-
estimateSize: (i) =>
|
|
9066
|
-
gap: 8
|
|
9140
|
+
estimateSize: (i) => rows[i]?.height ?? 0,
|
|
9141
|
+
gap: 8,
|
|
9142
|
+
overscan: 8
|
|
9067
9143
|
});
|
|
9068
|
-
useEffect(() => {
|
|
9069
|
-
if (!hasNextPage) return;
|
|
9070
|
-
const newNumRevisions = initialNumRowsToShow + Math.floor(scrollAmount / 46);
|
|
9071
|
-
setNumRowsToShow((prev) => newNumRevisions > prev ? newNumRevisions : prev);
|
|
9072
|
-
}, [scrollAmount, hasNextPage]);
|
|
9073
|
-
useEffect(() => {
|
|
9074
|
-
setRows(allRows.slice(0, numRowsToShow));
|
|
9075
|
-
}, [allRows, numRowsToShow]);
|
|
9076
|
-
const handleScroll = (e) => {
|
|
9077
|
-
setScrollAmount((prev) => {
|
|
9078
|
-
const n = prev + e.deltaY;
|
|
9079
|
-
if (n < 0) return 0;
|
|
9080
|
-
return n;
|
|
9081
|
-
});
|
|
9082
|
-
};
|
|
9083
|
-
useEffect(() => {
|
|
9084
|
-
window.addEventListener("wheel", handleScroll);
|
|
9085
|
-
return () => {
|
|
9086
|
-
window.removeEventListener("wheel", handleScroll);
|
|
9087
|
-
};
|
|
9088
|
-
}, []);
|
|
9089
9144
|
return /* @__PURE__ */ jsx("div", {
|
|
9090
|
-
|
|
9145
|
+
"data-testid": "revision-timeline",
|
|
9091
9146
|
ref: parentRef,
|
|
9092
9147
|
style: {
|
|
9093
|
-
|
|
9148
|
+
maxHeight,
|
|
9149
|
+
overflowY: "auto",
|
|
9094
9150
|
width: "100%",
|
|
9095
9151
|
position: "relative"
|
|
9096
9152
|
},
|
|
9097
|
-
children:
|
|
9098
|
-
|
|
9099
|
-
|
|
9100
|
-
|
|
9101
|
-
|
|
9102
|
-
|
|
9103
|
-
|
|
9104
|
-
|
|
9105
|
-
|
|
9106
|
-
|
|
9107
|
-
|
|
9108
|
-
|
|
9109
|
-
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
|
|
9153
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
9154
|
+
className: "border-l border-border dark:border-none",
|
|
9155
|
+
style: {
|
|
9156
|
+
height: `${rowVirtualizer.getTotalSize()}px`,
|
|
9157
|
+
marginLeft: DAY_MARKER_OVERHANG,
|
|
9158
|
+
position: "relative"
|
|
9159
|
+
},
|
|
9160
|
+
children: rowVirtualizer.getVirtualItems().map((virtualRow) => {
|
|
9161
|
+
const row = rows[virtualRow.index];
|
|
9162
|
+
if (!row) return null;
|
|
9163
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
9164
|
+
style: {
|
|
9165
|
+
position: "absolute",
|
|
9166
|
+
top: 0,
|
|
9167
|
+
left: ROW_INSET,
|
|
9168
|
+
right: 0,
|
|
9169
|
+
height: `${virtualRow.size}px`,
|
|
9170
|
+
transform: `translateY(${virtualRow.start}px)`
|
|
9171
|
+
},
|
|
9172
|
+
children: [
|
|
9173
|
+
row.type === "revision" && /* @__PURE__ */ jsx(Revision, { ...row }),
|
|
9174
|
+
row.type === "skip" && /* @__PURE__ */ jsx(Skip, { ...row }),
|
|
9175
|
+
row.type === "day" && /* @__PURE__ */ jsx(Day, { ...row })
|
|
9176
|
+
]
|
|
9177
|
+
}, virtualRow.key);
|
|
9178
|
+
})
|
|
9117
9179
|
})
|
|
9118
9180
|
});
|
|
9119
9181
|
}
|
|
9120
9182
|
//#endregion
|
|
9121
9183
|
//#region src/connect/components/revision-history/revision-history.tsx
|
|
9122
|
-
|
|
9123
|
-
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
|
|
9184
|
+
/** The current, scoped props. */
|
|
9185
|
+
/**
|
|
9186
|
+
* Legacy props: the whole global and local history, toggled inside the
|
|
9187
|
+
* component.
|
|
9188
|
+
* @deprecated Pass one scope's `operations` with `scopes`/`scope`/`onScopeChange` and the loading props. Removed in the next major.
|
|
9189
|
+
*/
|
|
9190
|
+
/**
|
|
9191
|
+
* The revision history panel. Pages arrive oldest first while the timeline
|
|
9192
|
+
* renders newest first, so rendering progressively would show operations in
|
|
9193
|
+
* the wrong order until the last page landed and would repaint the whole
|
|
9194
|
+
* timeline on every page in between. Instead the component keeps asking for
|
|
9195
|
+
* the next page, showing "Loading operations…" and a running count, until
|
|
9196
|
+
* the walk completes, then renders the pagination and timeline once.
|
|
9197
|
+
*/
|
|
9198
|
+
function ScopedRevisionHistory(props) {
|
|
9199
|
+
const { documentTitle, documentId, operations, isLoading, hasNextPage, onLoadNextPage, scopes, scope, onScopeChange, onClose, itemsPerPage = 100, documentState, onCopyState, onCopyDocId, error } = props;
|
|
9200
|
+
useEffect(() => {
|
|
9201
|
+
if (!hasNextPage || isLoading || error) return;
|
|
9202
|
+
const handle = window.setTimeout(onLoadNextPage, 0);
|
|
9203
|
+
return () => window.clearTimeout(handle);
|
|
9127
9204
|
}, [
|
|
9128
|
-
|
|
9129
|
-
|
|
9130
|
-
|
|
9205
|
+
hasNextPage,
|
|
9206
|
+
isLoading,
|
|
9207
|
+
onLoadNextPage,
|
|
9208
|
+
error
|
|
9131
9209
|
]);
|
|
9210
|
+
const isWalking = !error && (hasNextPage || isLoading && operations.length === 0);
|
|
9211
|
+
const visibleOperations = useMemo(() => isWalking ? [] : garbageCollect(sortOperations([...operations])).sort((a, b) => b.index - a.index), [operations, isWalking]);
|
|
9132
9212
|
const { pageItems, pages, goToPage, goToNextPage, goToPreviousPage, goToFirstPage, goToLastPage, hiddenNextPages, isNextPageAvailable, isPreviousPageAvailable } = usePagination(visibleOperations, { itemsPerPage });
|
|
9133
|
-
function onChangeScope(
|
|
9213
|
+
function onChangeScope(nextScope) {
|
|
9134
9214
|
goToFirstPage();
|
|
9135
|
-
|
|
9215
|
+
onScopeChange(nextScope);
|
|
9136
9216
|
}
|
|
9137
9217
|
const PaginationComponent = visibleOperations.length > itemsPerPage ? /* @__PURE__ */ jsx("div", {
|
|
9138
9218
|
className: "mt-4 flex w-full justify-end",
|
|
@@ -9152,38 +9232,76 @@ function RevisionHistory(props) {
|
|
|
9152
9232
|
previousPageLabel: "Previous"
|
|
9153
9233
|
})
|
|
9154
9234
|
}) : /* @__PURE__ */ jsx("hr", { className: "h-12 border-none" });
|
|
9235
|
+
const hasOperations = visibleOperations.length > 0;
|
|
9155
9236
|
return /* @__PURE__ */ jsx(ConnectTooltipProvider, { children: /* @__PURE__ */ jsxs("div", {
|
|
9156
9237
|
className: "p-6",
|
|
9157
|
-
children: [
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
|
|
9162
|
-
|
|
9163
|
-
|
|
9164
|
-
|
|
9165
|
-
|
|
9166
|
-
|
|
9167
|
-
|
|
9238
|
+
children: [/* @__PURE__ */ jsx(Header, {
|
|
9239
|
+
docId: documentId,
|
|
9240
|
+
onChangeScope,
|
|
9241
|
+
onClose,
|
|
9242
|
+
scope,
|
|
9243
|
+
scopes,
|
|
9244
|
+
title: documentTitle,
|
|
9245
|
+
documentState,
|
|
9246
|
+
onCopyState,
|
|
9247
|
+
onCopyDocId
|
|
9248
|
+
}), isWalking ? /* @__PURE__ */ jsxs("div", {
|
|
9249
|
+
className: "mt-4 flex flex-col items-center rounded-md bg-background p-4",
|
|
9250
|
+
children: [/* @__PURE__ */ jsx("h3", {
|
|
9251
|
+
className: "my-40 text-foreground",
|
|
9252
|
+
children: "Loading operations…"
|
|
9253
|
+
}), operations.length > 0 && /* @__PURE__ */ jsxs("p", {
|
|
9254
|
+
className: "text-xs text-muted-foreground",
|
|
9255
|
+
children: [operations.length, " loaded so far"]
|
|
9256
|
+
})]
|
|
9257
|
+
}) : /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
9168
9258
|
PaginationComponent,
|
|
9169
|
-
/* @__PURE__ */
|
|
9170
|
-
className: "mt-4 flex
|
|
9171
|
-
children:
|
|
9259
|
+
/* @__PURE__ */ jsxs("div", {
|
|
9260
|
+
className: "mt-4 flex flex-col items-center rounded-md bg-background p-4",
|
|
9261
|
+
children: [error && /* @__PURE__ */ jsxs("p", {
|
|
9262
|
+
className: "mb-2 text-xs text-destructive",
|
|
9263
|
+
children: ["Could not load the rest of the history: ", error.message]
|
|
9264
|
+
}), hasOperations ? /* @__PURE__ */ jsx("div", {
|
|
9172
9265
|
className: "grid grid-cols-[minmax(min-content,1018px)]",
|
|
9173
|
-
children: /* @__PURE__ */ jsx(Timeline, {
|
|
9174
|
-
|
|
9175
|
-
localOperations: scope === "local" ? pageItems : [],
|
|
9176
|
-
scope
|
|
9177
|
-
})
|
|
9178
|
-
}) : /* @__PURE__ */ jsx("h3", {
|
|
9266
|
+
children: /* @__PURE__ */ jsx(Timeline, { operations: pageItems })
|
|
9267
|
+
}) : error ? null : /* @__PURE__ */ jsx("h3", {
|
|
9179
9268
|
className: "my-40 text-foreground",
|
|
9180
9269
|
children: "This document has no recorded operations yet."
|
|
9181
|
-
})
|
|
9270
|
+
})]
|
|
9182
9271
|
}),
|
|
9183
9272
|
PaginationComponent
|
|
9184
|
-
]
|
|
9273
|
+
] })]
|
|
9185
9274
|
}) });
|
|
9186
9275
|
}
|
|
9276
|
+
const LEGACY_SCOPES = ["global", "local"];
|
|
9277
|
+
const noop = () => {};
|
|
9278
|
+
/** Toggles between the whole global and local history loaded up front. */
|
|
9279
|
+
function LegacyRevisionHistory(props) {
|
|
9280
|
+
const { globalOperations, localOperations, ...common } = props;
|
|
9281
|
+
const [scope, setScope] = useState("global");
|
|
9282
|
+
return /* @__PURE__ */ jsx(ScopedRevisionHistory, {
|
|
9283
|
+
...common,
|
|
9284
|
+
operations: scope === "local" ? localOperations : globalOperations,
|
|
9285
|
+
isLoading: false,
|
|
9286
|
+
hasNextPage: false,
|
|
9287
|
+
onLoadNextPage: noop,
|
|
9288
|
+
scopes: LEGACY_SCOPES,
|
|
9289
|
+
scope,
|
|
9290
|
+
onScopeChange: setScope
|
|
9291
|
+
});
|
|
9292
|
+
}
|
|
9293
|
+
/**
|
|
9294
|
+
* The revision history panel. Pages arrive oldest first while the timeline
|
|
9295
|
+
* renders newest first, so it waits for the whole history to load before
|
|
9296
|
+
* rendering the timeline, showing "Loading operations…" and a running count
|
|
9297
|
+
* in the meantime.
|
|
9298
|
+
*
|
|
9299
|
+
* Also accepts the deprecated `globalOperations`/`localOperations` pair
|
|
9300
|
+
* (see `RevisionHistoryLegacyProps`), toggling between them internally.
|
|
9301
|
+
*/
|
|
9302
|
+
function RevisionHistory(props) {
|
|
9303
|
+
return "globalOperations" in props ? /* @__PURE__ */ jsx(LegacyRevisionHistory, { ...props }) : /* @__PURE__ */ jsx(ScopedRevisionHistory, { ...props });
|
|
9304
|
+
}
|
|
9187
9305
|
//#endregion
|
|
9188
9306
|
//#region src/connect/components/search-bar/filter-item.tsx
|
|
9189
9307
|
const FilterItem = (props) => {
|