attaform 0.27.0 → 0.27.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.
Files changed (90) hide show
  1. package/bin/attaform.mjs +55 -8
  2. package/dist/abstract.cjs +3 -2
  3. package/dist/abstract.cjs.map +1 -1
  4. package/dist/abstract.d.cts +4 -4
  5. package/dist/abstract.d.mts +4 -4
  6. package/dist/abstract.d.ts +4 -4
  7. package/dist/abstract.mjs +2 -2
  8. package/dist/chunks/devtools.cjs +1 -1
  9. package/dist/chunks/devtools.mjs +1 -1
  10. package/dist/chunks/fingerprint2.cjs +1 -1
  11. package/dist/chunks/fingerprint2.mjs +1 -1
  12. package/dist/index.cjs +4 -3
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.d.cts +5 -5
  15. package/dist/index.d.mts +5 -5
  16. package/dist/index.d.ts +5 -5
  17. package/dist/index.mjs +3 -3
  18. package/dist/nuxt.d.cts +1 -1
  19. package/dist/nuxt.d.mts +1 -1
  20. package/dist/nuxt.d.ts +1 -1
  21. package/dist/runtime/plugins/attaform.cjs +1 -1
  22. package/dist/runtime/plugins/attaform.mjs +1 -1
  23. package/dist/shared/{attaform.DkD0DR7R.mjs → attaform.6IZBjA1Q.mjs} +5 -5
  24. package/dist/shared/{attaform.DkD0DR7R.mjs.map → attaform.6IZBjA1Q.mjs.map} +1 -1
  25. package/dist/shared/{attaform.D99pd7JG.d.cts → attaform.B2d0FszH.d.ts} +169 -24
  26. package/dist/shared/{attaform.DDAmSFnl.mjs → attaform.BAlfXoAx.mjs} +3 -3
  27. package/dist/shared/{attaform.DDAmSFnl.mjs.map → attaform.BAlfXoAx.mjs.map} +1 -1
  28. package/dist/shared/{attaform.Co5LNRnv.cjs → attaform.BBaMFa-k.cjs} +31 -5
  29. package/dist/shared/attaform.BBaMFa-k.cjs.map +1 -0
  30. package/dist/shared/{attaform.DhVgG2jh.cjs → attaform.BF1mYHru.cjs} +4 -4
  31. package/dist/shared/{attaform.DhVgG2jh.cjs.map → attaform.BF1mYHru.cjs.map} +1 -1
  32. package/dist/shared/{attaform.C3WnCDXz.d.cts → attaform.BIPSHY5U.d.cts} +55 -1
  33. package/dist/shared/{attaform.C3WnCDXz.d.mts → attaform.BIPSHY5U.d.mts} +55 -1
  34. package/dist/shared/{attaform.C3WnCDXz.d.ts → attaform.BIPSHY5U.d.ts} +55 -1
  35. package/dist/shared/{attaform.8tFZu1Ub.cjs → attaform.Bn0IzhD_.cjs} +50 -2
  36. package/dist/shared/attaform.Bn0IzhD_.cjs.map +1 -0
  37. package/dist/shared/{attaform.K6Thc6By.cjs → attaform.C1SJy524.cjs} +5 -5
  38. package/dist/shared/{attaform.K6Thc6By.cjs.map → attaform.C1SJy524.cjs.map} +1 -1
  39. package/dist/shared/{attaform.CC_y1_Ej.d.ts → attaform.C8zVmank.d.ts} +1 -1
  40. package/dist/shared/{attaform.CpXHK60W.d.cts → attaform.C925L0WA.d.mts} +1 -1
  41. package/dist/shared/{attaform.Drsi43GG.cjs → attaform.CIPwCQe8.cjs} +3 -3
  42. package/dist/shared/{attaform.Drsi43GG.cjs.map → attaform.CIPwCQe8.cjs.map} +1 -1
  43. package/dist/shared/{attaform.DQT7_-FO.cjs → attaform.CXHebpij.cjs} +324 -82
  44. package/dist/shared/attaform.CXHebpij.cjs.map +1 -0
  45. package/dist/shared/{attaform.Da8EdI2t.mjs → attaform.CgsQZdy1.mjs} +31 -5
  46. package/dist/shared/attaform.CgsQZdy1.mjs.map +1 -0
  47. package/dist/shared/{attaform.CvVYOvZF.d.mts → attaform.CnvbLiIO.d.cts} +1 -1
  48. package/dist/shared/{attaform.BERt5YMU.mjs → attaform.Cs2Rbdlo.mjs} +50 -2
  49. package/dist/shared/attaform.Cs2Rbdlo.mjs.map +1 -0
  50. package/dist/shared/{attaform.C__F01CE.cjs → attaform.CvaPYOZu.cjs} +4 -4
  51. package/dist/shared/{attaform.C__F01CE.cjs.map → attaform.CvaPYOZu.cjs.map} +1 -1
  52. package/dist/shared/{attaform.CyQxTOdX.mjs → attaform.DGCijpZT.mjs} +325 -84
  53. package/dist/shared/attaform.DGCijpZT.mjs.map +1 -0
  54. package/dist/shared/{attaform.kBkYlKP_.d.mts → attaform.DIJTp_Kv.d.cts} +169 -24
  55. package/dist/shared/{attaform.CEXUlUkc.d.ts → attaform.Dcj-OS43.d.mts} +169 -24
  56. package/dist/shared/{attaform.DlSu08F5.mjs → attaform.gyed1fGh.mjs} +4 -4
  57. package/dist/shared/{attaform.DlSu08F5.mjs.map → attaform.gyed1fGh.mjs.map} +1 -1
  58. package/dist/shared/{attaform.BceJrhQ7.mjs → attaform.yOE3udL1.mjs} +4 -4
  59. package/dist/shared/{attaform.BceJrhQ7.mjs.map → attaform.yOE3udL1.mjs.map} +1 -1
  60. package/dist/transforms.cjs +1 -1
  61. package/dist/transforms.mjs +1 -1
  62. package/dist/vite.cjs +3 -2
  63. package/dist/vite.cjs.map +1 -1
  64. package/dist/vite.mjs +3 -2
  65. package/dist/vite.mjs.map +1 -1
  66. package/dist/zod-v3.cjs +4 -3
  67. package/dist/zod-v3.cjs.map +1 -1
  68. package/dist/zod-v3.d.cts +3 -3
  69. package/dist/zod-v3.d.mts +3 -3
  70. package/dist/zod-v3.d.ts +3 -3
  71. package/dist/zod-v3.mjs +3 -3
  72. package/dist/zod-v4.cjs +4 -3
  73. package/dist/zod-v4.cjs.map +1 -1
  74. package/dist/zod-v4.d.cts +6 -6
  75. package/dist/zod-v4.d.mts +6 -6
  76. package/dist/zod-v4.d.ts +6 -6
  77. package/dist/zod-v4.mjs +3 -3
  78. package/dist/zod.cjs +4 -3
  79. package/dist/zod.cjs.map +1 -1
  80. package/dist/zod.d.cts +3 -3
  81. package/dist/zod.d.mts +3 -3
  82. package/dist/zod.d.ts +3 -3
  83. package/dist/zod.mjs +3 -3
  84. package/package.json +3 -2
  85. package/dist/shared/attaform.8tFZu1Ub.cjs.map +0 -1
  86. package/dist/shared/attaform.BERt5YMU.mjs.map +0 -1
  87. package/dist/shared/attaform.Co5LNRnv.cjs.map +0 -1
  88. package/dist/shared/attaform.CyQxTOdX.mjs.map +0 -1
  89. package/dist/shared/attaform.DQT7_-FO.cjs.map +0 -1
  90. package/dist/shared/attaform.Da8EdI2t.mjs.map +0 -1
@@ -861,6 +861,27 @@ function teardownValueSync(el) {
861
861
  stop();
862
862
  delete carrier[valueSyncScopeKey];
863
863
  }
864
+ const disabledSyncScopeKey = /* @__PURE__ */ Symbol.for("attaform:disabled-sync-scope");
865
+ function setupDisabledSync(el, source) {
866
+ const control = el;
867
+ const apply = () => {
868
+ const next = source.value === true;
869
+ if (control.disabled !== next) control.disabled = next;
870
+ };
871
+ apply();
872
+ const scope = vue.effectScope(true);
873
+ scope.run(() => {
874
+ vue.watch(source, apply, { flush: "post" });
875
+ });
876
+ el[disabledSyncScopeKey] = () => scope.stop();
877
+ }
878
+ function teardownDisabledSync(el) {
879
+ const carrier = el;
880
+ const stop = carrier[disabledSyncScopeKey];
881
+ if (stop === void 0) return;
882
+ stop();
883
+ delete carrier[disabledSyncScopeKey];
884
+ }
864
885
 
865
886
  function writeLastTypedForm(rv, next) {
866
887
  rv.lastTypedForm.value = next;
@@ -1431,6 +1452,9 @@ const vRegisterDynamic = {
1431
1452
  },
1432
1453
  mounted(el, binding, vnode) {
1433
1454
  callModelHook(el, binding, vnode, null, "mounted");
1455
+ if (registerProtocol.isRegisterValue(binding.value) && INTERACTIVE_TAG_NAMES.has(el.tagName) && binding.modifiers[registerProtocol.SSR_COMPONENT_HOST_MODIFIER] !== true && vnode.props?.["disabled"] === void 0) {
1456
+ setupDisabledSync(el, binding.value.disabled);
1457
+ }
1434
1458
  if (binding.modifiers[registerProtocol.SSR_COMPONENT_HOST_MODIFIER] === true && registerProtocol.isRegisterValue(binding.value)) {
1435
1459
  activateComponentHost(el, binding.value);
1436
1460
  }
@@ -1475,6 +1499,7 @@ const vRegisterDynamic = {
1475
1499
  removeTrackedListeners(el);
1476
1500
  teardownAria(el);
1477
1501
  teardownValueSync(el);
1502
+ teardownDisabledSync(el);
1478
1503
  if (!registerProtocol.isRegisterValue(value)) return;
1479
1504
  value.deregisterElement(el);
1480
1505
  if (componentHostLatch.has(el)) {
@@ -1564,14 +1589,15 @@ function getSSRFormStateProps(rv, vnode) {
1564
1589
  if (typeof vnode.type !== "string") return void 0;
1565
1590
  const props = vnode.props ?? null;
1566
1591
  const variant = resolveDynamicModel(vnode.type.toUpperCase(), props?.["type"]);
1567
- if (variant === vRegisterFile || variant === vRegisterSelect) return void 0;
1568
- if (variant === vRegisterCheckbox) return ssrCheckboxProps(rv, props);
1592
+ const withDisabled = (base) => rv.disabled.value === true ? { ...base ?? {}, disabled: "" } : base;
1593
+ if (variant === vRegisterFile || variant === vRegisterSelect) return withDisabled(void 0);
1594
+ if (variant === vRegisterCheckbox) return withDisabled(ssrCheckboxProps(rv, props));
1569
1595
  if (variant === vRegisterRadio) {
1570
1596
  const matches = looseEqual(rv.innerRef.value, applyCoerce(props?.["value"], rv));
1571
- return matches ? { checked: "" } : void 0;
1597
+ return withDisabled(matches ? { checked: "" } : void 0);
1572
1598
  }
1573
1599
  const value = rv.displayValue.value;
1574
- return value === "" ? void 0 : { value };
1600
+ return withDisabled(value === "" ? void 0 : { value });
1575
1601
  }
1576
1602
  function callModelHook(el, binding, vnode, prevVNode, hook) {
1577
1603
  const modelToUse = resolveDynamicModel(el.tagName, vnode.props?.["type"]);
@@ -1683,4 +1709,4 @@ exports.segmentsForPathKey = segmentsForPathKey;
1683
1709
  exports.toError = toError;
1684
1710
  exports.useRegistry = useRegistry;
1685
1711
  exports.vRegister = vRegister;
1686
- //# sourceMappingURL=attaform.Co5LNRnv.cjs.map
1712
+ //# sourceMappingURL=attaform.BBaMFa-k.cjs.map