@proyecto-viviana/solid-stately 0.5.1 → 0.6.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE-APACHE-2.0 +201 -0
- package/NOTICE +91 -0
- package/README.md +59 -29
- package/dist/autocomplete/createAutocompleteState.d.ts +2 -1
- package/dist/autocomplete/createAutocompleteState.d.ts.map +1 -0
- package/dist/autocomplete/index.d.ts +1 -0
- package/dist/autocomplete/index.d.ts.map +1 -0
- package/dist/calendar/IncompleteDate.d.ts +2 -1
- package/dist/calendar/IncompleteDate.d.ts.map +1 -0
- package/dist/calendar/createCalendarState.d.ts +10 -9
- package/dist/calendar/createCalendarState.d.ts.map +1 -0
- package/dist/calendar/createDateFieldState.d.ts +4 -20
- package/dist/calendar/createDateFieldState.d.ts.map +1 -0
- package/dist/calendar/createDatePickerState.d.ts +4 -7
- package/dist/calendar/createDatePickerState.d.ts.map +1 -0
- package/dist/calendar/createRangeCalendarState.d.ts +9 -7
- package/dist/calendar/createRangeCalendarState.d.ts.map +1 -0
- package/dist/calendar/createTimeFieldState.d.ts +5 -24
- package/dist/calendar/createTimeFieldState.d.ts.map +1 -0
- package/dist/calendar/index.d.ts +1 -0
- package/dist/calendar/index.d.ts.map +1 -0
- package/dist/calendar/intl/index.d.ts +1 -0
- package/dist/calendar/intl/index.d.ts.map +1 -0
- package/dist/checkbox/createCheckboxGroupState.d.ts +3 -0
- package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -0
- package/dist/checkbox/index.d.ts +1 -0
- package/dist/checkbox/index.d.ts.map +1 -0
- package/dist/collections/ListCollection.d.ts +5 -0
- package/dist/collections/ListCollection.d.ts.map +1 -0
- package/dist/collections/createListState.d.ts +2 -6
- package/dist/collections/createListState.d.ts.map +1 -0
- package/dist/collections/createMenuState.d.ts +74 -13
- package/dist/collections/createMenuState.d.ts.map +1 -0
- package/dist/collections/createSelectionState.d.ts +2 -5
- package/dist/collections/createSelectionState.d.ts.map +1 -0
- package/dist/collections/getChildNodes.d.ts +6 -3
- package/dist/collections/getChildNodes.d.ts.map +1 -0
- package/dist/collections/index.d.ts +2 -1
- package/dist/collections/index.d.ts.map +1 -0
- package/dist/collections/types.d.ts +36 -2
- package/dist/collections/types.d.ts.map +1 -0
- package/dist/color/Color.d.ts +7 -1
- package/dist/color/Color.d.ts.map +1 -0
- package/dist/color/createColorAreaState.d.ts +6 -5
- package/dist/color/createColorAreaState.d.ts.map +1 -0
- package/dist/color/createColorFieldState.d.ts +4 -5
- package/dist/color/createColorFieldState.d.ts.map +1 -0
- package/dist/color/createColorSliderState.d.ts +4 -5
- package/dist/color/createColorSliderState.d.ts.map +1 -0
- package/dist/color/createColorWheelState.d.ts +2 -5
- package/dist/color/createColorWheelState.d.ts.map +1 -0
- package/dist/color/getColorChannels.d.ts +3 -0
- package/dist/color/getColorChannels.d.ts.map +1 -0
- package/dist/color/index.d.ts +2 -1
- package/dist/color/index.d.ts.map +1 -0
- package/dist/color/intl/index.d.ts +1 -0
- package/dist/color/intl/index.d.ts.map +1 -0
- package/dist/color/types.d.ts +2 -1
- package/dist/color/types.d.ts.map +1 -0
- package/dist/combobox/createComboBoxState.d.ts +92 -29
- package/dist/combobox/createComboBoxState.d.ts.map +1 -0
- package/dist/combobox/index.d.ts +2 -1
- package/dist/combobox/index.d.ts.map +1 -0
- package/dist/data/createAsyncList.d.ts +1 -7
- package/dist/data/createAsyncList.d.ts.map +1 -0
- package/dist/data/createListData.d.ts +1 -6
- package/dist/data/createListData.d.ts.map +1 -0
- package/dist/data/createTreeData.d.ts +1 -6
- package/dist/data/createTreeData.d.ts.map +1 -0
- package/dist/data/index.d.ts +1 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/datepicker/index.d.ts +1 -0
- package/dist/datepicker/index.d.ts.map +1 -0
- package/dist/disclosure/createDisclosureState.d.ts +2 -5
- package/dist/disclosure/createDisclosureState.d.ts.map +1 -0
- package/dist/disclosure/index.d.ts +1 -0
- package/dist/disclosure/index.d.ts.map +1 -0
- package/dist/dnd/createDragState.d.ts +2 -6
- package/dist/dnd/createDragState.d.ts.map +1 -0
- package/dist/dnd/createDraggableCollectionState.d.ts +44 -11
- package/dist/dnd/createDraggableCollectionState.d.ts.map +1 -0
- package/dist/dnd/createDropState.d.ts +2 -6
- package/dist/dnd/createDropState.d.ts.map +1 -0
- package/dist/dnd/createDroppableCollectionState.d.ts +34 -11
- package/dist/dnd/createDroppableCollectionState.d.ts.map +1 -0
- package/dist/dnd/index.d.ts +3 -2
- package/dist/dnd/index.d.ts.map +1 -0
- package/dist/dnd/types.d.ts +17 -0
- package/dist/dnd/types.d.ts.map +1 -0
- package/dist/form/createFormValidationState.d.ts +2 -9
- package/{src → dist}/form/createFormValidationState.d.ts.map +1 -1
- package/dist/form/index.d.ts +1 -0
- package/dist/form/index.d.ts.map +1 -0
- package/dist/grid/createGridState.d.ts +4 -3
- package/dist/grid/createGridState.d.ts.map +1 -0
- package/dist/grid/index.d.ts +1 -0
- package/dist/grid/index.d.ts.map +1 -0
- package/dist/grid/types.d.ts +23 -1
- package/dist/grid/types.d.ts.map +1 -0
- package/dist/index.d.ts +7 -5
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2947 -969
- package/dist/index.js.map +1 -1
- package/dist/menu/index.d.ts +3 -1
- package/dist/menu/index.d.ts.map +1 -0
- package/dist/numberfield/createNumberFieldState.d.ts +37 -9
- package/dist/numberfield/createNumberFieldState.d.ts.map +1 -0
- package/dist/numberfield/index.d.ts +1 -0
- package/dist/numberfield/index.d.ts.map +1 -0
- package/dist/overlays/createOverlayTriggerState.d.ts +12 -1
- package/dist/overlays/createOverlayTriggerState.d.ts.map +1 -0
- package/dist/overlays/index.d.ts +1 -0
- package/dist/overlays/index.d.ts.map +1 -0
- package/dist/private/flags/flags.d.ts +5 -0
- package/dist/private/flags/flags.d.ts.map +1 -0
- package/dist/private/flags/flags.js +26 -0
- package/dist/private/flags/flags.js.map +1 -0
- package/dist/radio/createRadioGroupState.d.ts +1 -0
- package/dist/radio/createRadioGroupState.d.ts.map +1 -0
- package/dist/radio/index.d.ts +1 -0
- package/dist/radio/index.d.ts.map +1 -0
- package/dist/searchfield/createSearchFieldState.d.ts +2 -5
- package/dist/searchfield/createSearchFieldState.d.ts.map +1 -0
- package/dist/searchfield/index.d.ts +1 -0
- package/dist/searchfield/index.d.ts.map +1 -0
- package/dist/select/createSelectState.d.ts +100 -33
- package/dist/select/createSelectState.d.ts.map +1 -0
- package/dist/select/index.d.ts +2 -1
- package/dist/select/index.d.ts.map +1 -0
- package/dist/selection/Selection.d.ts +2 -1
- package/dist/selection/Selection.d.ts.map +1 -0
- package/dist/selection/SelectionManager.d.ts +1 -19
- package/dist/selection/SelectionManager.d.ts.map +1 -0
- package/dist/selection/createMultipleSelectionState.d.ts +2 -13
- package/dist/selection/createMultipleSelectionState.d.ts.map +1 -0
- package/dist/selection/index.d.ts +1 -0
- package/dist/selection/index.d.ts.map +1 -0
- package/dist/slider/createSliderState.d.ts +37 -14
- package/dist/slider/createSliderState.d.ts.map +1 -0
- package/dist/slider/index.d.ts +1 -0
- package/dist/slider/index.d.ts.map +1 -0
- package/dist/ssr/index.d.ts +2 -13
- package/dist/ssr/index.d.ts.map +1 -0
- package/dist/steplist/createStepListState.d.ts +10 -18
- package/dist/steplist/createStepListState.d.ts.map +1 -0
- package/dist/steplist/index.d.ts +1 -0
- package/dist/steplist/index.d.ts.map +1 -0
- package/dist/table/TableCollection.d.ts +1 -0
- package/dist/table/TableCollection.d.ts.map +1 -0
- package/dist/table/createTableColumnResizeState.d.ts +2 -9
- package/dist/table/createTableColumnResizeState.d.ts.map +1 -0
- package/dist/table/createTableState.d.ts +3 -6
- package/dist/table/createTableState.d.ts.map +1 -0
- package/dist/table/createTreeGridState.d.ts +3 -9
- package/dist/table/createTreeGridState.d.ts.map +1 -0
- package/dist/table/index.d.ts +1 -0
- package/dist/table/index.d.ts.map +1 -0
- package/dist/table/types.d.ts +37 -3
- package/dist/table/types.d.ts.map +1 -0
- package/dist/tabs/createTabListState.d.ts +2 -5
- package/dist/tabs/createTabListState.d.ts.map +1 -0
- package/dist/tabs/index.d.ts +1 -0
- package/dist/tabs/index.d.ts.map +1 -0
- package/dist/textfield/createTextFieldState.d.ts +1 -0
- package/dist/textfield/createTextFieldState.d.ts.map +1 -0
- package/dist/textfield/index.d.ts +1 -0
- package/dist/textfield/index.d.ts.map +1 -0
- package/dist/toast/createToastState.d.ts +2 -5
- package/dist/toast/createToastState.d.ts.map +1 -0
- package/dist/toast/index.d.ts +1 -0
- package/dist/toast/index.d.ts.map +1 -0
- package/dist/toggle/createToggleGroupState.d.ts +1 -0
- package/dist/toggle/createToggleGroupState.d.ts.map +1 -0
- package/dist/toggle/createToggleState.d.ts +1 -0
- package/dist/toggle/createToggleState.d.ts.map +1 -0
- package/dist/toggle/index.d.ts +1 -0
- package/dist/toggle/index.d.ts.map +1 -0
- package/dist/tokenfield/TokenFieldValue.d.ts +96 -0
- package/dist/tokenfield/TokenFieldValue.d.ts.map +1 -0
- package/dist/tokenfield/createTokenFieldState.d.ts +33 -0
- package/dist/tokenfield/createTokenFieldState.d.ts.map +1 -0
- package/dist/tokenfield/index.d.ts +3 -0
- package/dist/tokenfield/index.d.ts.map +1 -0
- package/dist/tooltip/createTooltipTriggerState.d.ts +9 -8
- package/dist/tooltip/createTooltipTriggerState.d.ts.map +1 -0
- package/dist/tooltip/index.d.ts +1 -0
- package/dist/tooltip/index.d.ts.map +1 -0
- package/dist/tree/TreeCollection.d.ts +1 -0
- package/dist/tree/TreeCollection.d.ts.map +1 -0
- package/dist/tree/createTreeState.d.ts +3 -8
- package/dist/tree/createTreeState.d.ts.map +1 -0
- package/dist/tree/index.d.ts +1 -0
- package/dist/tree/index.d.ts.map +1 -0
- package/dist/tree/types.d.ts +19 -1
- package/dist/tree/types.d.ts.map +1 -0
- package/dist/utils/index.d.ts +3 -1
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/owner.d.ts +9 -0
- package/dist/utils/owner.d.ts.map +1 -0
- package/dist/utils/reactivity.d.ts +24 -0
- package/dist/utils/reactivity.d.ts.map +1 -0
- package/package.json +21 -9
- package/src/autocomplete/createAutocompleteState.ts +18 -4
- package/src/calendar/IncompleteDate.ts +15 -1
- package/src/calendar/createCalendarState.ts +321 -125
- package/src/calendar/createDateFieldState.ts +45 -31
- package/src/calendar/createDatePickerState.ts +47 -26
- package/src/calendar/createRangeCalendarState.ts +173 -86
- package/src/calendar/createTimeFieldState.ts +26 -7
- package/src/calendar/intl/index.ts +37 -2
- package/src/checkbox/createCheckboxGroupState.ts +45 -13
- package/src/collections/ListCollection.ts +31 -0
- package/src/collections/createListState.ts +27 -10
- package/src/collections/createMenuState.ts +190 -15
- package/src/collections/createSelectionState.ts +33 -13
- package/src/collections/getChildNodes.ts +20 -3
- package/src/collections/index.ts +6 -0
- package/src/collections/types.ts +35 -2
- package/src/color/Color.ts +61 -22
- package/src/color/createColorAreaState.ts +48 -4
- package/src/color/createColorFieldState.ts +114 -38
- package/src/color/createColorSliderState.ts +61 -9
- package/src/color/createColorWheelState.ts +29 -9
- package/src/color/getColorChannels.ts +16 -0
- package/src/color/index.ts +1 -0
- package/src/color/intl/index.ts +38 -3
- package/src/color/types.ts +1 -1
- package/src/combobox/createComboBoxState.ts +530 -297
- package/src/combobox/index.ts +4 -0
- package/src/data/createAsyncList.ts +41 -6
- package/src/data/createListData.ts +27 -4
- package/src/data/createTreeData.ts +30 -6
- package/src/disclosure/createDisclosureState.ts +40 -19
- package/src/dnd/createDragState.ts +22 -4
- package/src/dnd/createDraggableCollectionState.ts +145 -11
- package/src/dnd/createDropState.ts +21 -3
- package/src/dnd/createDroppableCollectionState.ts +127 -11
- package/src/dnd/index.ts +4 -0
- package/src/dnd/types.ts +16 -0
- package/src/form/createFormValidationState.ts +69 -37
- package/src/grid/createGridState.ts +196 -111
- package/src/grid/types.ts +22 -1
- package/src/index.ts +33 -2
- package/src/menu/index.ts +7 -0
- package/src/numberfield/createNumberFieldState.ts +247 -98
- package/src/overlays/createOverlayTriggerState.ts +31 -4
- package/src/private/flags/flags.ts +25 -0
- package/src/radio/createRadioGroupState.ts +23 -6
- package/src/searchfield/createSearchFieldState.ts +18 -3
- package/src/select/createSelectState.ts +317 -130
- package/src/select/index.ts +8 -1
- package/src/selection/Selection.ts +15 -1
- package/src/selection/SelectionManager.ts +17 -1
- package/src/selection/createMultipleSelectionState.ts +45 -26
- package/src/slider/createSliderState.ts +243 -104
- package/src/ssr/index.ts +34 -4
- package/src/steplist/createStepListState.ts +184 -130
- package/src/table/TableCollection.ts +14 -0
- package/src/table/createTableColumnResizeState.ts +71 -14
- package/src/table/createTableState.ts +26 -4
- package/src/table/createTreeGridState.ts +22 -6
- package/src/table/types.ts +38 -5
- package/src/tabs/createTabListState.ts +63 -43
- package/src/textfield/createTextFieldState.ts +17 -3
- package/src/toast/createToastState.ts +28 -3
- package/src/toggle/createToggleGroupState.ts +20 -5
- package/src/toggle/createToggleState.ts +19 -4
- package/src/tokenfield/TokenFieldValue.ts +499 -0
- package/src/tokenfield/createTokenFieldState.ts +88 -0
- package/src/tokenfield/index.ts +15 -0
- package/src/tooltip/createTooltipTriggerState.ts +49 -13
- package/src/tree/TreeCollection.ts +14 -0
- package/src/tree/createTreeState.ts +70 -36
- package/src/tree/types.ts +18 -1
- package/src/utils/index.ts +10 -1
- package/src/utils/owner.ts +20 -0
- package/src/utils/reactivity.ts +53 -1
- package/src/autocomplete/createAutocompleteState.d.ts +0 -48
- package/src/autocomplete/createAutocompleteState.d.ts.map +0 -1
- package/src/autocomplete/index.d.ts +0 -6
- package/src/autocomplete/index.d.ts.map +0 -1
- package/src/calendar/createCalendarState.d.ts +0 -152
- package/src/calendar/createCalendarState.d.ts.map +0 -1
- package/src/calendar/createDateFieldState.d.ts +0 -145
- package/src/calendar/createDateFieldState.d.ts.map +0 -1
- package/src/calendar/createRangeCalendarState.d.ts +0 -171
- package/src/calendar/createRangeCalendarState.d.ts.map +0 -1
- package/src/calendar/createTimeFieldState.d.ts +0 -97
- package/src/calendar/createTimeFieldState.d.ts.map +0 -1
- package/src/calendar/index.d.ts +0 -80
- package/src/calendar/index.d.ts.map +0 -1
- package/src/checkbox/createCheckboxGroupState.d.ts +0 -73
- package/src/checkbox/createCheckboxGroupState.d.ts.map +0 -1
- package/src/checkbox/index.d.ts +0 -6
- package/src/checkbox/index.d.ts.map +0 -1
- package/src/collections/ListCollection.d.ts +0 -40
- package/src/collections/ListCollection.d.ts.map +0 -1
- package/src/collections/createListState.d.ts +0 -94
- package/src/collections/createListState.d.ts.map +0 -1
- package/src/collections/createMenuState.d.ts +0 -55
- package/src/collections/createMenuState.d.ts.map +0 -1
- package/src/collections/createSelectionState.d.ts +0 -89
- package/src/collections/createSelectionState.d.ts.map +0 -1
- package/src/collections/index.d.ts +0 -38
- package/src/collections/index.d.ts.map +0 -1
- package/src/collections/types.d.ts +0 -147
- package/src/collections/types.d.ts.map +0 -1
- package/src/color/Color.d.ts +0 -43
- package/src/color/Color.d.ts.map +0 -1
- package/src/color/createColorAreaState.d.ts +0 -78
- package/src/color/createColorAreaState.d.ts.map +0 -1
- package/src/color/createColorFieldState.d.ts +0 -57
- package/src/color/createColorFieldState.d.ts.map +0 -1
- package/src/color/createColorSliderState.d.ts +0 -69
- package/src/color/createColorSliderState.d.ts.map +0 -1
- package/src/color/createColorWheelState.d.ts +0 -53
- package/src/color/createColorWheelState.d.ts.map +0 -1
- package/src/color/index.d.ts +0 -39
- package/src/color/index.d.ts.map +0 -1
- package/src/color/types.d.ts +0 -111
- package/src/color/types.d.ts.map +0 -1
- package/src/combobox/createComboBoxState.d.ts +0 -127
- package/src/combobox/createComboBoxState.d.ts.map +0 -1
- package/src/combobox/index.d.ts +0 -13
- package/src/combobox/index.d.ts.map +0 -1
- package/src/disclosure/createDisclosureState.d.ts +0 -68
- package/src/disclosure/createDisclosureState.d.ts.map +0 -1
- package/src/disclosure/index.d.ts +0 -10
- package/src/disclosure/index.d.ts.map +0 -1
- package/src/dnd/createDragState.d.ts +0 -68
- package/src/dnd/createDragState.d.ts.map +0 -1
- package/src/dnd/createDraggableCollectionState.d.ts +0 -68
- package/src/dnd/createDraggableCollectionState.d.ts.map +0 -1
- package/src/dnd/createDropState.d.ts +0 -80
- package/src/dnd/createDropState.d.ts.map +0 -1
- package/src/dnd/createDroppableCollectionState.d.ts +0 -107
- package/src/dnd/createDroppableCollectionState.d.ts.map +0 -1
- package/src/dnd/index.d.ts +0 -60
- package/src/dnd/index.d.ts.map +0 -1
- package/src/dnd/types.d.ts +0 -277
- package/src/dnd/types.d.ts.map +0 -1
- package/src/form/createFormValidationState.d.ts +0 -102
- package/src/form/index.d.ts +0 -16
- package/src/form/index.d.ts.map +0 -1
- package/src/grid/createGridState.d.ts +0 -15
- package/src/grid/createGridState.d.ts.map +0 -1
- package/src/grid/index.d.ts +0 -7
- package/src/grid/index.d.ts.map +0 -1
- package/src/grid/types.d.ts +0 -163
- package/src/grid/types.d.ts.map +0 -1
- package/src/index.d.ts +0 -311
- package/src/index.d.ts.map +0 -1
- package/src/numberfield/createNumberFieldState.d.ts +0 -67
- package/src/numberfield/createNumberFieldState.d.ts.map +0 -1
- package/src/numberfield/index.d.ts +0 -6
- package/src/numberfield/index.d.ts.map +0 -1
- package/src/overlays/createOverlayTriggerState.d.ts +0 -34
- package/src/overlays/createOverlayTriggerState.d.ts.map +0 -1
- package/src/overlays/index.d.ts +0 -6
- package/src/overlays/index.d.ts.map +0 -1
- package/src/radio/createRadioGroupState.d.ts +0 -79
- package/src/radio/createRadioGroupState.d.ts.map +0 -1
- package/src/radio/index.d.ts +0 -7
- package/src/radio/index.d.ts.map +0 -1
- package/src/searchfield/createSearchFieldState.d.ts +0 -27
- package/src/searchfield/createSearchFieldState.d.ts.map +0 -1
- package/src/searchfield/index.d.ts +0 -3
- package/src/searchfield/index.d.ts.map +0 -1
- package/src/select/createSelectState.d.ts +0 -75
- package/src/select/createSelectState.d.ts.map +0 -1
- package/src/select/index.d.ts +0 -2
- package/src/select/index.d.ts.map +0 -1
- package/src/slider/createSliderState.d.ts +0 -72
- package/src/slider/createSliderState.d.ts.map +0 -1
- package/src/slider/index.d.ts +0 -3
- package/src/slider/index.d.ts.map +0 -1
- package/src/ssr/index.d.ts +0 -28
- package/src/ssr/index.d.ts.map +0 -1
- package/src/table/TableCollection.d.ts +0 -54
- package/src/table/TableCollection.d.ts.map +0 -1
- package/src/table/createTableState.d.ts +0 -15
- package/src/table/createTableState.d.ts.map +0 -1
- package/src/table/index.d.ts +0 -18
- package/src/table/index.d.ts.map +0 -1
- package/src/table/types.d.ts +0 -145
- package/src/table/types.d.ts.map +0 -1
- package/src/tabs/createTabListState.d.ts +0 -70
- package/src/tabs/createTabListState.d.ts.map +0 -1
- package/src/tabs/index.d.ts +0 -8
- package/src/tabs/index.d.ts.map +0 -1
- package/src/textfield/createTextFieldState.d.ts +0 -32
- package/src/textfield/createTextFieldState.d.ts.map +0 -1
- package/src/textfield/index.d.ts +0 -6
- package/src/textfield/index.d.ts.map +0 -1
- package/src/toast/createToastState.d.ts +0 -129
- package/src/toast/createToastState.d.ts.map +0 -1
- package/src/toast/index.d.ts +0 -12
- package/src/toast/index.d.ts.map +0 -1
- package/src/toggle/createToggleState.d.ts +0 -34
- package/src/toggle/createToggleState.d.ts.map +0 -1
- package/src/toggle/index.d.ts +0 -2
- package/src/toggle/index.d.ts.map +0 -1
- package/src/tooltip/createTooltipTriggerState.d.ts +0 -39
- package/src/tooltip/createTooltipTriggerState.d.ts.map +0 -1
- package/src/tooltip/index.d.ts +0 -7
- package/src/tooltip/index.d.ts.map +0 -1
- package/src/tree/TreeCollection.d.ts +0 -43
- package/src/tree/TreeCollection.d.ts.map +0 -1
- package/src/tree/createTreeState.d.ts +0 -17
- package/src/tree/createTreeState.d.ts.map +0 -1
- package/src/tree/index.d.ts +0 -13
- package/src/tree/index.d.ts.map +0 -1
- package/src/tree/types.d.ts +0 -162
- package/src/tree/types.d.ts.map +0 -1
- package/src/utils/index.d.ts +0 -2
- package/src/utils/index.d.ts.map +0 -1
- package/src/utils/reactivity.d.ts +0 -28
- package/src/utils/reactivity.d.ts.map +0 -1
|
@@ -1,17 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
// Ported to SolidJS for Proyecto Viviana; based on packages/react-stately/src/dnd/useDroppableCollectionState.ts
|
|
14
|
+
|
|
1
15
|
/**
|
|
2
16
|
* Droppable collection state management for solid-stately.
|
|
3
17
|
*
|
|
4
18
|
* Provides reactive state for accepting drops onto a collection.
|
|
19
|
+
*
|
|
20
|
+
* Ported from packages/react-stately/src/dnd/useDroppableCollectionState.ts.
|
|
5
21
|
*/
|
|
6
22
|
|
|
7
|
-
import {
|
|
23
|
+
import { createMemo } from "solid-js";
|
|
24
|
+
import type { Accessor } from "solid-js";
|
|
8
25
|
import type {
|
|
9
26
|
DropItem,
|
|
10
27
|
DropTarget,
|
|
11
28
|
DropOperation,
|
|
12
29
|
DragTypes,
|
|
13
30
|
DroppableCollectionEnterEvent,
|
|
14
|
-
DroppableCollectionMoveEvent,
|
|
15
31
|
DroppableCollectionActivateEvent,
|
|
16
32
|
DroppableCollectionExitEvent,
|
|
17
33
|
DroppableCollectionDropEvent,
|
|
@@ -21,7 +37,19 @@ import type {
|
|
|
21
37
|
DroppableCollectionReorderEvent,
|
|
22
38
|
ItemDropTarget,
|
|
23
39
|
} from "./types";
|
|
24
|
-
import type {
|
|
40
|
+
import type { Key } from "../collections/types";
|
|
41
|
+
import { createInternalSignal } from "../utils";
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* The slice of a host collection drop-target state needs: neighbor walk and
|
|
45
|
+
* parent-key identity. Grid/Table/Tree collections are not `CollectionNode`
|
|
46
|
+
* lists (cells exist), so this stays structural instead of `Collection<unknown>`.
|
|
47
|
+
*/
|
|
48
|
+
export interface DroppableCollectionLike {
|
|
49
|
+
getItem(key: Key): { type?: string; parentKey?: Key | null } | null;
|
|
50
|
+
getKeyBefore(key: Key): Key | null;
|
|
51
|
+
getKeyAfter(key: Key): Key | null;
|
|
52
|
+
}
|
|
25
53
|
|
|
26
54
|
export interface DroppableCollectionStateOptions {
|
|
27
55
|
/**
|
|
@@ -59,12 +87,13 @@ export interface DroppableCollectionStateOptions {
|
|
|
59
87
|
shouldAcceptItemDrop?: (target: ItemDropTarget, types: DragTypes) => boolean;
|
|
60
88
|
/**
|
|
61
89
|
* The host collection. Used by the default drop-operation feature detection to
|
|
62
|
-
* confirm a reorder stays within the same parent
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
* faithful for
|
|
90
|
+
* confirm a reorder stays within the same parent, to prevent dropping an item
|
|
91
|
+
* onto itself or a descendant, and to treat after(item)/before(next) as one
|
|
92
|
+
* gap. Optional: a flat collection (e.g. a plain ListBox) is always "within
|
|
93
|
+
* parent" and has no descendants, so omitting it is faithful for those hosts
|
|
94
|
+
* except opposite-gap matching.
|
|
66
95
|
*/
|
|
67
|
-
collection?:
|
|
96
|
+
collection?: DroppableCollectionLike;
|
|
68
97
|
/** Whether the droppable collection is disabled. */
|
|
69
98
|
isDisabled?: boolean;
|
|
70
99
|
}
|
|
@@ -111,6 +140,19 @@ export interface DroppableCollectionState {
|
|
|
111
140
|
): DropOperation;
|
|
112
141
|
/** Check if an item drop should be accepted. */
|
|
113
142
|
shouldAcceptItemDrop(target: ItemDropTarget, types: DragTypes): boolean;
|
|
143
|
+
/**
|
|
144
|
+
* RAC `isDropTarget(target)`: whether `target` is the current drop target,
|
|
145
|
+
* including the before/after pair that names the same gap between two items.
|
|
146
|
+
* Named `isDropTargetFor` because `isDropTarget` is already the collection-
|
|
147
|
+
* level boolean on this port.
|
|
148
|
+
*/
|
|
149
|
+
isDropTargetFor(target: DropTarget | null): boolean;
|
|
150
|
+
/**
|
|
151
|
+
* The host collection from the options. RAC always has one
|
|
152
|
+
* (`useDroppableCollectionState.ts:46-48`); this port's option is optional,
|
|
153
|
+
* so the field is undefined when the host omits it.
|
|
154
|
+
*/
|
|
155
|
+
readonly collection: DroppableCollectionLike | undefined;
|
|
114
156
|
}
|
|
115
157
|
|
|
116
158
|
/**
|
|
@@ -129,8 +171,8 @@ export function createDroppableCollectionState(
|
|
|
129
171
|
): DroppableCollectionState {
|
|
130
172
|
const getProps = createMemo(() => props());
|
|
131
173
|
|
|
132
|
-
const [isDropTarget, setIsDropTarget] =
|
|
133
|
-
const [target, setTarget] =
|
|
174
|
+
const [isDropTarget, setIsDropTarget] = createInternalSignal(false);
|
|
175
|
+
const [target, setTarget] = createInternalSignal<DropTarget | null>(null);
|
|
134
176
|
|
|
135
177
|
const isAccepted = (types: DragTypes): boolean => {
|
|
136
178
|
const p = getProps();
|
|
@@ -438,6 +480,37 @@ export function createDroppableCollectionState(
|
|
|
438
480
|
return true;
|
|
439
481
|
};
|
|
440
482
|
|
|
483
|
+
const isDropTargetFor = (dropTarget: DropTarget | null): boolean => {
|
|
484
|
+
const current = target();
|
|
485
|
+
if (!current || !dropTarget) return false;
|
|
486
|
+
if (targetsEqual(current, dropTarget)) return true;
|
|
487
|
+
|
|
488
|
+
// RAC `useDroppableCollectionState.ts:216-228`: after(item) and
|
|
489
|
+
// before(next) name the same gap. Collection only mounts one of them.
|
|
490
|
+
if (
|
|
491
|
+
dropTarget.type !== "item" ||
|
|
492
|
+
current.type !== "item" ||
|
|
493
|
+
dropTarget.key === current.key ||
|
|
494
|
+
dropTarget.dropPosition === current.dropPosition ||
|
|
495
|
+
dropTarget.dropPosition === "on" ||
|
|
496
|
+
current.dropPosition === "on"
|
|
497
|
+
) {
|
|
498
|
+
return false;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
const collection = getProps().collection;
|
|
502
|
+
if (!collection) return false;
|
|
503
|
+
return (
|
|
504
|
+
dropTargetsEqual(getOppositeTarget(collection, dropTarget), current) ||
|
|
505
|
+
dropTargetsEqual(dropTarget, getOppositeTarget(collection, current))
|
|
506
|
+
);
|
|
507
|
+
};
|
|
508
|
+
|
|
509
|
+
const assignTarget = (newTarget: DropTarget | null) => {
|
|
510
|
+
if (isDropTargetFor(newTarget)) return;
|
|
511
|
+
setTarget(newTarget);
|
|
512
|
+
};
|
|
513
|
+
|
|
441
514
|
return {
|
|
442
515
|
get isDropTarget() {
|
|
443
516
|
return isDropTarget();
|
|
@@ -448,7 +521,7 @@ export function createDroppableCollectionState(
|
|
|
448
521
|
get isDisabled() {
|
|
449
522
|
return getProps().isDisabled ?? false;
|
|
450
523
|
},
|
|
451
|
-
setTarget,
|
|
524
|
+
setTarget: assignTarget,
|
|
452
525
|
isAccepted,
|
|
453
526
|
enterTarget,
|
|
454
527
|
moveToTarget,
|
|
@@ -457,6 +530,11 @@ export function createDroppableCollectionState(
|
|
|
457
530
|
drop,
|
|
458
531
|
getDropOperation,
|
|
459
532
|
shouldAcceptItemDrop,
|
|
533
|
+
isDropTargetFor,
|
|
534
|
+
// RAC `useDroppableCollectionState.ts:175-176`.
|
|
535
|
+
get collection() {
|
|
536
|
+
return getProps().collection;
|
|
537
|
+
},
|
|
460
538
|
};
|
|
461
539
|
}
|
|
462
540
|
|
|
@@ -464,6 +542,14 @@ export function createDroppableCollectionState(
|
|
|
464
542
|
* Check if two drop targets are equal.
|
|
465
543
|
*/
|
|
466
544
|
function targetsEqual(a: DropTarget, b: DropTarget): boolean {
|
|
545
|
+
return dropTargetsEqual(a, b);
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
function dropTargetsEqual(
|
|
549
|
+
a: DropTarget | null | undefined,
|
|
550
|
+
b: DropTarget | null | undefined,
|
|
551
|
+
): boolean {
|
|
552
|
+
if (!a || !b) return false;
|
|
467
553
|
if (a.type !== b.type) return false;
|
|
468
554
|
if (a.type === "root" && b.type === "root") return true;
|
|
469
555
|
if (a.type === "item" && b.type === "item") {
|
|
@@ -471,3 +557,33 @@ function targetsEqual(a: DropTarget, b: DropTarget): boolean {
|
|
|
471
557
|
}
|
|
472
558
|
return false;
|
|
473
559
|
}
|
|
560
|
+
|
|
561
|
+
function nextItemKey(
|
|
562
|
+
collection: DroppableCollectionLike,
|
|
563
|
+
fromKey: Key,
|
|
564
|
+
direction: "before" | "after",
|
|
565
|
+
) {
|
|
566
|
+
let key =
|
|
567
|
+
direction === "before" ? collection.getKeyBefore(fromKey) : collection.getKeyAfter(fromKey);
|
|
568
|
+
while (key != null) {
|
|
569
|
+
const node = collection.getItem(key);
|
|
570
|
+
if (node?.type === "item") return key;
|
|
571
|
+
key = direction === "before" ? collection.getKeyBefore(key) : collection.getKeyAfter(key);
|
|
572
|
+
}
|
|
573
|
+
return null;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
function getOppositeTarget(
|
|
577
|
+
collection: DroppableCollectionLike,
|
|
578
|
+
target: ItemDropTarget,
|
|
579
|
+
): ItemDropTarget | null {
|
|
580
|
+
if (target.dropPosition === "before") {
|
|
581
|
+
const prevKey = nextItemKey(collection, target.key, "before");
|
|
582
|
+
return prevKey != null ? { type: "item", key: prevKey, dropPosition: "after" } : null;
|
|
583
|
+
}
|
|
584
|
+
if (target.dropPosition === "after") {
|
|
585
|
+
const nextKey = nextItemKey(collection, target.key, "after");
|
|
586
|
+
return nextKey != null ? { type: "item", key: nextKey, dropPosition: "before" } : null;
|
|
587
|
+
}
|
|
588
|
+
return null;
|
|
589
|
+
}
|
package/src/dnd/index.ts
CHANGED
|
@@ -52,8 +52,11 @@ export { createDropState, type DropStateOptions, type DropState } from "./create
|
|
|
52
52
|
|
|
53
53
|
export {
|
|
54
54
|
createDraggableCollectionState,
|
|
55
|
+
getKeysForDrag,
|
|
55
56
|
type DraggableCollectionStateOptions,
|
|
56
57
|
type DraggableCollectionState,
|
|
58
|
+
type DraggableCollectionLike,
|
|
59
|
+
type DraggableCollectionNode,
|
|
57
60
|
} from "./createDraggableCollectionState";
|
|
58
61
|
|
|
59
62
|
export {
|
|
@@ -61,4 +64,5 @@ export {
|
|
|
61
64
|
DIRECTORY_DRAG_TYPE,
|
|
62
65
|
type DroppableCollectionStateOptions,
|
|
63
66
|
type DroppableCollectionState,
|
|
67
|
+
type DroppableCollectionLike,
|
|
64
68
|
} from "./createDroppableCollectionState";
|
package/src/dnd/types.ts
CHANGED
|
@@ -1,7 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
// Ported to SolidJS for Proyecto Viviana; based on packages/@react-types/shared/src/dnd.d.ts
|
|
14
|
+
|
|
1
15
|
/**
|
|
2
16
|
* Drag and Drop types for solid-stately.
|
|
3
17
|
*
|
|
4
18
|
* Core types for drag and drop operations, matching React Aria's DnD API.
|
|
19
|
+
*
|
|
20
|
+
* Ported from packages/@react-types/shared/src/dnd.d.ts.
|
|
5
21
|
*/
|
|
6
22
|
|
|
7
23
|
/** The type of drop operation to perform. */
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2023 Adobe. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
// Ported to SolidJS for Proyecto Viviana; based on packages/react-stately/src/form/useFormValidationState.ts
|
|
14
|
+
|
|
1
15
|
/**
|
|
2
16
|
* createFormValidationState for solid-stately
|
|
3
17
|
*
|
|
@@ -7,14 +21,9 @@
|
|
|
7
21
|
* Port of react-stately's useFormValidationState.
|
|
8
22
|
*/
|
|
9
23
|
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
createEffect,
|
|
14
|
-
createMemo,
|
|
15
|
-
createSignal,
|
|
16
|
-
useContext,
|
|
17
|
-
} from "solid-js";
|
|
24
|
+
import { createContext, createEffect, createMemo } from "solid-js";
|
|
25
|
+
import type { Accessor } from "solid-js";
|
|
26
|
+
import { createInternalSignal, useContextOptional } from "../utils";
|
|
18
27
|
|
|
19
28
|
/** Standard HTML ValidityState interface. */
|
|
20
29
|
export interface ValidityState {
|
|
@@ -112,6 +121,18 @@ export const DEFAULT_VALIDATION_RESULT: ValidationResult = {
|
|
|
112
121
|
/** Context for server-side validation errors. */
|
|
113
122
|
export const FormValidationContext = createContext<ValidationErrors>({});
|
|
114
123
|
|
|
124
|
+
// Form publishes one proxy so field setup does not freeze the first map.
|
|
125
|
+
// The symbol reads the current validationErrors object. A new object resets
|
|
126
|
+
// the clear flag, matching the pin's context identity check.
|
|
127
|
+
const validationErrorsSource = Symbol.for("proyecto-viviana.validationErrorsSource");
|
|
128
|
+
|
|
129
|
+
function validationErrorsIdentity(errors: ValidationErrors): ValidationErrors {
|
|
130
|
+
const source = (errors as ValidationErrors & Record<symbol, ValidationErrors | undefined>)[
|
|
131
|
+
validationErrorsSource
|
|
132
|
+
];
|
|
133
|
+
return source ?? errors;
|
|
134
|
+
}
|
|
135
|
+
|
|
115
136
|
/** Private prop key for passing validation state to children. */
|
|
116
137
|
export const privateValidationStateProp = "__formValidationState" + Date.now();
|
|
117
138
|
|
|
@@ -197,15 +218,17 @@ export function createFormValidationState<T>(props: FormValidationProps<T>): For
|
|
|
197
218
|
: null,
|
|
198
219
|
);
|
|
199
220
|
|
|
200
|
-
// Client-side validation
|
|
201
|
-
|
|
221
|
+
// Client-side validation. Compute live so commitValidation sees a value
|
|
222
|
+
// that was written in this same turn (Solid 2 memos stay committed until flush).
|
|
223
|
+
const computeClientError = (): ValidationResult | null => {
|
|
202
224
|
const validate = props.validate;
|
|
203
225
|
if (!validate || props.value == null) {
|
|
204
226
|
return null;
|
|
205
227
|
}
|
|
206
228
|
const validateErrors = runValidate(validate, props.value);
|
|
207
229
|
return getValidationResult(validateErrors);
|
|
208
|
-
}
|
|
230
|
+
};
|
|
231
|
+
const clientError = createMemo<ValidationResult | null>(computeClientError);
|
|
209
232
|
|
|
210
233
|
// Built-in validation (skip if valid)
|
|
211
234
|
const builtinValidation = createMemo<ValidationResult | undefined>(() => {
|
|
@@ -216,8 +239,9 @@ export function createFormValidationState<T>(props: FormValidationProps<T>): For
|
|
|
216
239
|
return builtinValidationProp;
|
|
217
240
|
});
|
|
218
241
|
|
|
219
|
-
// Server errors from context
|
|
220
|
-
|
|
242
|
+
// Server errors from context. Optional: hook factories and tests call this
|
|
243
|
+
// outside a component / FormValidationContext provider.
|
|
244
|
+
const serverErrors = useContextOptional(FormValidationContext) ?? {};
|
|
221
245
|
const serverErrorMessages = createMemo(() => {
|
|
222
246
|
const name = props.name;
|
|
223
247
|
if (name) {
|
|
@@ -228,40 +252,48 @@ export function createFormValidationState<T>(props: FormValidationProps<T>): For
|
|
|
228
252
|
return [];
|
|
229
253
|
});
|
|
230
254
|
|
|
231
|
-
// Track server errors clearing
|
|
232
|
-
const [lastServerErrors, setLastServerErrors] =
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
}
|
|
240
|
-
|
|
255
|
+
// Track server errors clearing. Compare the map object, not the proxy.
|
|
256
|
+
const [lastServerErrors, setLastServerErrors] = createInternalSignal(
|
|
257
|
+
validationErrorsIdentity(serverErrors),
|
|
258
|
+
);
|
|
259
|
+
const [isServerErrorCleared, setServerErrorCleared] = createInternalSignal(false);
|
|
260
|
+
|
|
261
|
+
createEffect(
|
|
262
|
+
() => ({ errors: validationErrorsIdentity(serverErrors), last: lastServerErrors() }),
|
|
263
|
+
({ errors, last }) => {
|
|
264
|
+
if (errors !== last) {
|
|
265
|
+
setLastServerErrors(errors);
|
|
266
|
+
setServerErrorCleared(false);
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
);
|
|
241
270
|
|
|
242
271
|
const serverError = createMemo<ValidationResult | null>(() =>
|
|
243
272
|
getValidationResult(isServerErrorCleared() ? [] : serverErrorMessages()),
|
|
244
273
|
);
|
|
245
274
|
|
|
246
275
|
// Track validation state
|
|
247
|
-
const [currentValidity, setCurrentValidity] =
|
|
248
|
-
const [commitQueued, setCommitQueued] =
|
|
276
|
+
const [currentValidity, setCurrentValidity] = createInternalSignal(DEFAULT_VALIDATION_RESULT);
|
|
277
|
+
const [commitQueued, setCommitQueued] = createInternalSignal(false);
|
|
249
278
|
|
|
250
279
|
let nextValidation = DEFAULT_VALIDATION_RESULT;
|
|
251
280
|
let lastError = DEFAULT_VALIDATION_RESULT;
|
|
252
281
|
|
|
253
282
|
// Commit validation effect
|
|
254
|
-
createEffect(
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
283
|
+
createEffect(
|
|
284
|
+
() => ({
|
|
285
|
+
queued: commitQueued(),
|
|
286
|
+
error: clientError() || builtinValidation() || nextValidation,
|
|
287
|
+
}),
|
|
288
|
+
({ queued, error }) => {
|
|
289
|
+
if (!queued) return;
|
|
290
|
+
setCommitQueued(false);
|
|
291
|
+
if (!isEqualValidation(error, lastError)) {
|
|
292
|
+
lastError = error;
|
|
293
|
+
setCurrentValidity(error);
|
|
294
|
+
}
|
|
295
|
+
},
|
|
296
|
+
);
|
|
265
297
|
|
|
266
298
|
// Realtime validation (for native input state)
|
|
267
299
|
const realtimeValidation = createMemo<ValidationResult>(
|
|
@@ -314,7 +346,7 @@ export function createFormValidationState<T>(props: FormValidationProps<T>): For
|
|
|
314
346
|
commitValidation() {
|
|
315
347
|
// Commit validation state so the user sees it on blur/change/submit.
|
|
316
348
|
if (validationBehavior() === "native") {
|
|
317
|
-
const error =
|
|
349
|
+
const error = computeClientError() || builtinValidation() || nextValidation;
|
|
318
350
|
if (!isEqualValidation(error, lastError)) {
|
|
319
351
|
lastError = error;
|
|
320
352
|
setCurrentValidity(error);
|