@proyecto-viviana/solid-stately 0.6.0-rc.1 → 0.6.0-rc.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"createFormValidationState.d.ts","sourceRoot":"","sources":["../../src/form/createFormValidationState.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC,6CAA6C;AAC7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,4BAA4B;AAC5B,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,iBAAiB,EAAE,aAAa,CAAC;IACjC,iCAAiC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,qDAAqD;AACrD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAEjE,qEAAqE;AACrE,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;AAEjG,gCAAgC;AAChC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnD,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,kCAAkC;IAClC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACjC,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IACrC,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,2BAA2B;IAC3B,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,wEAAwE;IACxE,kBAAkB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC/C,2FAA2F;IAC3F,iBAAiB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC9C,2GAA2G;IAC3G,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACjD,oFAAoF;IACpF,eAAe,IAAI,IAAI,CAAC;IACxB,sEAAsE;IACtE,gBAAgB,IAAI,IAAI,CAAC;CAC1B;AAED,8BAA8B;AAC9B,eAAO,MAAM,oBAAoB,EAAE,aAYlC,CAAC;AASF,yCAAyC;AACzC,eAAO,MAAM,yBAAyB,EAAE,gBAIvC,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,8CAAsC,CAAC;AAczE,iEAAiE;AACjE,eAAO,MAAM,0BAA0B,QAAuC,CAAC;AA6C/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CA6J/F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,OAAO,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,CAwBhF"}
1
+ {"version":3,"file":"createFormValidationState.d.ts","sourceRoot":"","sources":["../../src/form/createFormValidationState.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC,6CAA6C;AAC7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,4BAA4B;AAC5B,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,iBAAiB,EAAE,aAAa,CAAC;IACjC,iCAAiC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,qDAAqD;AACrD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAEjE,qEAAqE;AACrE,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;AAEjG,gCAAgC;AAChC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnD,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,kCAAkC;IAClC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACjC,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IACrC,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,2BAA2B;IAC3B,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,wEAAwE;IACxE,kBAAkB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC/C,2FAA2F;IAC3F,iBAAiB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC9C,2GAA2G;IAC3G,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACjD,oFAAoF;IACpF,eAAe,IAAI,IAAI,CAAC;IACxB,sEAAsE;IACtE,gBAAgB,IAAI,IAAI,CAAC;CAC1B;AAED,8BAA8B;AAC9B,eAAO,MAAM,oBAAoB,EAAE,aAYlC,CAAC;AASF,yCAAyC;AACzC,eAAO,MAAM,yBAAyB,EAAE,gBAIvC,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,8CAAsC,CAAC;AAczE,iEAAiE;AACjE,eAAO,MAAM,0BAA0B,QAAuC,CAAC;AA6C/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAiK/F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,OAAO,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,CAwBhF"}
package/dist/index.js CHANGED
@@ -756,12 +756,19 @@ function useContextOptional(context) {
756
756
  //#endregion
757
757
  //#region src/toggle/createToggleState.ts
758
758
  /**
759
+ * Toggle state for Solid Stately
760
+ *
761
+ * Provides state management for toggle components like checkboxes and switches.
762
+ *
763
+ * This is a 1:1 port of @react-stately/toggle's useToggleState.
764
+ */
765
+ /**
759
766
  * Provides state management for toggle components like checkboxes and switches.
760
767
  */
761
768
  function createToggleState(props = {}) {
762
769
  const getProps = () => access(props);
763
- const initialProps = getProps();
764
- const initialSelected = initialProps.isSelected ?? initialProps.defaultSelected ?? false;
770
+ const initialDefaultSelected = untrack(() => getProps().defaultSelected);
771
+ const initialSelected = untrack(() => getProps().isSelected) ?? initialDefaultSelected ?? false;
765
772
  const [internalSelected, setInternalSelected] = createInternalSignal(initialSelected);
766
773
  const isControlled = () => getProps().isSelected !== void 0;
767
774
  const isSelected = () => {
@@ -781,13 +788,21 @@ function createToggleState(props = {}) {
781
788
  }
782
789
  return {
783
790
  isSelected,
784
- defaultSelected: initialProps.defaultSelected ?? initialSelected,
791
+ defaultSelected: initialDefaultSelected ?? initialSelected,
785
792
  setSelected,
786
793
  toggle
787
794
  };
788
795
  }
789
796
  //#endregion
790
797
  //#region src/toggle/createToggleGroupState.ts
798
+ /**
799
+ * Toggle group state for Solid Stately
800
+ *
801
+ * Provides state management for groups of toggle buttons with
802
+ * single or multiple selection.
803
+ *
804
+ * This is a port of @react-stately/toggle's useToggleGroupState.
805
+ */
791
806
  function toKeySet(keys) {
792
807
  return new Set(keys ? Array.from(keys) : []);
793
808
  }
@@ -796,7 +811,7 @@ function toKeySet(keys) {
796
811
  */
797
812
  function createToggleGroupState(props = {}) {
798
813
  const getProps = () => access(props);
799
- const [internalSelectedKeys, setInternalSelectedKeys] = createInternalSignal(toKeySet(getProps().defaultSelectedKeys));
814
+ const [internalSelectedKeys, setInternalSelectedKeys] = createInternalSignal(toKeySet(untrack(() => getProps().defaultSelectedKeys)));
800
815
  const isControlled = () => getProps().selectedKeys !== void 0;
801
816
  const selectedKeys = () => isControlled() ? toKeySet(getProps().selectedKeys) : internalSelectedKeys();
802
817
  function setSelectedKeys(keys) {
@@ -881,13 +896,23 @@ function createAutocompleteState(props = {}) {
881
896
  //#endregion
882
897
  //#region src/textfield/createTextFieldState.ts
883
898
  /**
899
+ * TextField state for Solid Stately
900
+ *
901
+ * Provides state management for text input components.
902
+ *
903
+ * This is a port of @react-stately/utils's useControlledState pattern
904
+ * as used by @react-aria/textfield.
905
+ */
906
+ /**
884
907
  * Provides state management for text input components.
885
908
  * Supports both controlled and uncontrolled modes.
886
909
  */
887
910
  function createTextFieldState(props = {}) {
888
911
  const getProps = () => access(props);
889
- const initialProps = getProps();
890
- const [internalValue, setInternalValue] = createInternalSignal(initialProps.value ?? initialProps.defaultValue ?? "");
912
+ const [internalValue, setInternalValue] = createInternalSignal(untrack(() => {
913
+ const initialProps = getProps();
914
+ return initialProps.value ?? initialProps.defaultValue ?? "";
915
+ }));
891
916
  const isControlled = () => getProps().value !== void 0;
892
917
  const value = () => {
893
918
  const p = getProps();
@@ -1379,7 +1404,7 @@ function createFormValidationState(props) {
1379
1404
  return controlledError() || serverError() || clientError() || builtinValidation() || currentValidity();
1380
1405
  }),
1381
1406
  updateValidation(value) {
1382
- if (validationBehavior() === "aria" && !isEqualValidation(currentValidity(), value)) setCurrentValidity(value);
1407
+ if (untrack(validationBehavior) === "aria" && !isEqualValidation(untrack(currentValidity), value)) setCurrentValidity(value);
1383
1408
  else nextValidation = value;
1384
1409
  },
1385
1410
  resetValidation() {