@soyfri/shared-library 2.0.0-beta.8 → 2.0.0-beta8

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 (167) hide show
  1. package/Autocomplete-BA-cGASd.js +316 -0
  2. package/Autocomplete-BA-cGASd.js.map +1 -0
  3. package/Autocomplete-C2x-lBvZ.cjs +315 -0
  4. package/Autocomplete-C2x-lBvZ.cjs.map +1 -0
  5. package/Avatar-9L7YMxya.cjs +162 -0
  6. package/Avatar-9L7YMxya.cjs.map +1 -0
  7. package/Avatar-BJTr-PBd.js +163 -0
  8. package/Avatar-BJTr-PBd.js.map +1 -0
  9. package/Card-DG_crfkK.cjs +185 -0
  10. package/Card-DG_crfkK.cjs.map +1 -0
  11. package/Card-Ug-ttVSh.js +186 -0
  12. package/Card-Ug-ttVSh.js.map +1 -0
  13. package/Chip-OPYQ1uQ_.js +74 -0
  14. package/Chip-OPYQ1uQ_.js.map +1 -0
  15. package/Chip-qoJLDiva.cjs +73 -0
  16. package/Chip-qoJLDiva.cjs.map +1 -0
  17. package/DatePicker-8f_9bwhS.js +202 -0
  18. package/DatePicker-8f_9bwhS.js.map +1 -0
  19. package/DatePicker-DLSfkgGA.cjs +201 -0
  20. package/DatePicker-DLSfkgGA.cjs.map +1 -0
  21. package/DateRangePicker-BVpeJCHI.js +76 -0
  22. package/DateRangePicker-BVpeJCHI.js.map +1 -0
  23. package/DateRangePicker-B_hKQhbj.cjs +75 -0
  24. package/DateRangePicker-B_hKQhbj.cjs.map +1 -0
  25. package/DateTimePicker-CWNW09-O.cjs +220 -0
  26. package/DateTimePicker-CWNW09-O.cjs.map +1 -0
  27. package/DateTimePicker-D4L9GAod.js +221 -0
  28. package/DateTimePicker-D4L9GAod.js.map +1 -0
  29. package/Input-Cp911l23.js +174 -0
  30. package/Input-Cp911l23.js.map +1 -0
  31. package/Input-DI0jfq5X.cjs +173 -0
  32. package/Input-DI0jfq5X.cjs.map +1 -0
  33. package/Modal-Bm_HH9cv.cjs +319 -0
  34. package/Modal-Bm_HH9cv.cjs.map +1 -0
  35. package/Modal-Bnz6d9m9.js +320 -0
  36. package/Modal-Bnz6d9m9.js.map +1 -0
  37. package/RadioGroup-CxqDHap1.cjs +200 -0
  38. package/RadioGroup-CxqDHap1.cjs.map +1 -0
  39. package/RadioGroup-DMi9FvMP.js +201 -0
  40. package/RadioGroup-DMi9FvMP.js.map +1 -0
  41. package/Select-3CBOfM2H.js +447 -0
  42. package/Select-3CBOfM2H.js.map +1 -0
  43. package/Select-Bku4f4f8.cjs +446 -0
  44. package/Select-Bku4f4f8.cjs.map +1 -0
  45. package/Stat-BUcFCGrz.cjs +83 -0
  46. package/Stat-BUcFCGrz.cjs.map +1 -0
  47. package/Stat-C06A_izS.js +84 -0
  48. package/Stat-C06A_izS.js.map +1 -0
  49. package/StatusMessage-C5B6oGZ_.cjs +78 -0
  50. package/StatusMessage-C5B6oGZ_.cjs.map +1 -0
  51. package/StatusMessage-D1GlfQdz.js +79 -0
  52. package/StatusMessage-D1GlfQdz.js.map +1 -0
  53. package/Step-Dq0N72YB.js +49 -0
  54. package/Step-Dq0N72YB.js.map +1 -0
  55. package/Step-a8U8O-91.cjs +48 -0
  56. package/Step-a8U8O-91.cjs.map +1 -0
  57. package/Switch-BIeobv6i.cjs +179 -0
  58. package/Switch-BIeobv6i.cjs.map +1 -0
  59. package/Switch-DQEOxM2R.js +180 -0
  60. package/Switch-DQEOxM2R.js.map +1 -0
  61. package/Tab-Co31KY2k.cjs +95 -0
  62. package/Tab-Co31KY2k.cjs.map +1 -0
  63. package/Tab-DiK62gRz.js +96 -0
  64. package/Tab-DiK62gRz.js.map +1 -0
  65. package/Table-C2LbW0B1.js +531 -0
  66. package/Table-C2LbW0B1.js.map +1 -0
  67. package/Table-C4OM6rrC.cjs +530 -0
  68. package/Table-C4OM6rrC.cjs.map +1 -0
  69. package/components/AppBar/AppBar.cjs +1 -1
  70. package/components/AppBar/AppBar.js +1 -1
  71. package/components/Autocomplete/Autocomplete.cjs +4 -311
  72. package/components/Autocomplete/Autocomplete.cjs.map +1 -1
  73. package/components/Autocomplete/Autocomplete.js +4 -311
  74. package/components/Autocomplete/Autocomplete.js.map +1 -1
  75. package/components/Avatar/Avatar.cjs +2 -160
  76. package/components/Avatar/Avatar.cjs.map +1 -1
  77. package/components/Avatar/Avatar.js +2 -160
  78. package/components/Avatar/Avatar.js.map +1 -1
  79. package/components/Card/Card.cjs +7 -184
  80. package/components/Card/Card.cjs.map +1 -1
  81. package/components/Card/Card.js +7 -184
  82. package/components/Card/Card.js.map +1 -1
  83. package/components/Chip/Chip.cjs +2 -71
  84. package/components/Chip/Chip.cjs.map +1 -1
  85. package/components/Chip/Chip.js +2 -71
  86. package/components/Chip/Chip.js.map +1 -1
  87. package/components/Column/Column.cjs +1 -1
  88. package/components/Column/Column.cjs.map +1 -1
  89. package/components/Column/Column.d.ts +1 -1
  90. package/components/Column/Column.js +1 -1
  91. package/components/Column/Column.js.map +1 -1
  92. package/components/Column/index.d.ts +1 -0
  93. package/components/DatePicker/DatePicker.cjs +3 -200
  94. package/components/DatePicker/DatePicker.cjs.map +1 -1
  95. package/components/DatePicker/DatePicker.js +3 -200
  96. package/components/DatePicker/DatePicker.js.map +1 -1
  97. package/components/DateRangePicker/DateRangePicker.cjs +2 -73
  98. package/components/DateRangePicker/DateRangePicker.cjs.map +1 -1
  99. package/components/DateRangePicker/DateRangePicker.js +2 -73
  100. package/components/DateRangePicker/DateRangePicker.js.map +1 -1
  101. package/components/DateTimePicker/DateTimePicker.cjs +3 -219
  102. package/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  103. package/components/DateTimePicker/DateTimePicker.js +3 -219
  104. package/components/DateTimePicker/DateTimePicker.js.map +1 -1
  105. package/components/Drawer/Drawer.cjs +1 -1
  106. package/components/Drawer/Drawer.js +1 -1
  107. package/components/Input/Input.cjs +3 -172
  108. package/components/Input/Input.cjs.map +1 -1
  109. package/components/Input/Input.js +3 -172
  110. package/components/Input/Input.js.map +1 -1
  111. package/components/Modal/Modal.cjs +7 -317
  112. package/components/Modal/Modal.cjs.map +1 -1
  113. package/components/Modal/Modal.js +6 -316
  114. package/components/Modal/Modal.js.map +1 -1
  115. package/components/Modal/index.d.ts +2 -1
  116. package/components/Modal.d.ts +4 -0
  117. package/components/RadioGroup/RadioGroup.cjs +3 -199
  118. package/components/RadioGroup/RadioGroup.cjs.map +1 -1
  119. package/components/RadioGroup/RadioGroup.js +3 -199
  120. package/components/RadioGroup/RadioGroup.js.map +1 -1
  121. package/components/ScrollTopButton/ScrollTopButton.cjs +1 -1
  122. package/components/ScrollTopButton/ScrollTopButton.js +1 -1
  123. package/components/Select/Select.cjs +4 -445
  124. package/components/Select/Select.cjs.map +1 -1
  125. package/components/Select/Select.js +4 -445
  126. package/components/Select/Select.js.map +1 -1
  127. package/components/Stat/Stat.cjs +2 -81
  128. package/components/Stat/Stat.cjs.map +1 -1
  129. package/components/Stat/Stat.js +2 -81
  130. package/components/Stat/Stat.js.map +1 -1
  131. package/components/StatusMessage/StatusMessage.cjs +4 -77
  132. package/components/StatusMessage/StatusMessage.cjs.map +1 -1
  133. package/components/StatusMessage/StatusMessage.d.ts +1 -1
  134. package/components/StatusMessage/StatusMessage.js +3 -76
  135. package/components/StatusMessage/StatusMessage.js.map +1 -1
  136. package/components/StatusMessage/index.d.ts +2 -1
  137. package/components/StatusMessage.d.ts +4 -0
  138. package/components/Stepper/Stepper.cjs +3 -46
  139. package/components/Stepper/Stepper.cjs.map +1 -1
  140. package/components/Stepper/Stepper.js +3 -46
  141. package/components/Stepper/Stepper.js.map +1 -1
  142. package/components/Switch/Switch.cjs +3 -178
  143. package/components/Switch/Switch.cjs.map +1 -1
  144. package/components/Switch/Switch.js +3 -178
  145. package/components/Switch/Switch.js.map +1 -1
  146. package/components/Table/Table.cjs +2 -528
  147. package/components/Table/Table.cjs.map +1 -1
  148. package/components/Table/Table.d.ts +1 -1
  149. package/components/Table/Table.js +2 -528
  150. package/components/Table/Table.js.map +1 -1
  151. package/components/Tabs/Tabs.cjs +3 -93
  152. package/components/Tabs/Tabs.cjs.map +1 -1
  153. package/components/Tabs/Tabs.js +3 -93
  154. package/components/Tabs/Tabs.js.map +1 -1
  155. package/hooks/Wizard/WizardContext.d.ts +2 -2
  156. package/index.cjs +46 -1
  157. package/index.cjs.map +1 -1
  158. package/index.d.ts +30 -0
  159. package/index.js +46 -1
  160. package/index.js.map +1 -1
  161. package/package.json +5 -3
  162. package/{resolvePreset-CT3kU-K2.cjs → resolvePreset-CxTI6_Ln.cjs} +3 -3
  163. package/{resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +1 -1
  164. package/{resolvePreset-B-IB0ehH.js → resolvePreset-K6_BfWHD.js} +3 -3
  165. package/{resolvePreset-B-IB0ehH.js.map → resolvePreset-K6_BfWHD.js.map} +1 -1
  166. package/useWizard-CWdIxZzX.cjs.map +1 -1
  167. package/useWizard-CWq--C3o.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useWizard-CWdIxZzX.cjs","sources":["../src/hooks/Wizard/WizardContext.tsx","../src/hooks/Wizard/useWizard.ts"],"sourcesContent":["import React, {\n createContext,\n useCallback,\n useMemo,\n useState,\n type FC,\n type ReactNode,\n} from 'react';\n\n/**\n * API expuesta por `useWizard()`.\n *\n * Nota de retro-compatibilidad: los nombres `submitStep`, `nextStep`,\n * `prevStep`, `goToStep` se mantienen idénticos al `WizardContext` de\n * `@soyfri/fri-web-components` para que consumers migrando no tengan que\n * cambiar sus llamadas. Se agregan campos extra opcionales que antes no\n * existían (`currentStep`, `totalSteps`, `isFirst`, `isLast`, `completed`).\n */\nexport interface WizardContextValue {\n /** Índice del paso actual (0-based). */\n currentStep: number;\n /** Total de pasos del wizard. */\n totalSteps: number;\n /** True si `currentStep === 0`. */\n isFirst: boolean;\n /** True si `currentStep === totalSteps - 1`. */\n isLast: boolean;\n /** True tras ejecutar `submitStep()` desde el último paso. */\n completed: boolean;\n /** Avanza al siguiente paso (no pasa de `totalSteps - 1`). */\n nextStep: () => void;\n /** Retrocede al paso anterior (no baja de 0). */\n prevStep: () => void;\n /** Salta a un paso específico (0-based). No-op si fuera de rango. */\n goToStep: (stepNumber: number) => void;\n /**\n * Envía el wizard. Marca `completed = true` y dispara el callback\n * `onSubmit` del provider. En el último paso suele reemplazar a `nextStep`.\n */\n submitStep: () => void;\n /** Resetea el wizard al paso inicial y limpia `completed`. */\n reset: () => void;\n}\n\nconst defaultValue: WizardContextValue = {\n currentStep: 0,\n totalSteps: 0,\n isFirst: true,\n isLast: true,\n completed: false,\n nextStep: () => {},\n prevStep: () => {},\n goToStep: () => {},\n submitStep: () => {},\n reset: () => {},\n};\n\nexport const WizardContext = createContext<WizardContextValue>(defaultValue);\n\nexport interface WizardProviderProps {\n /** Número total de pasos del wizard. Requerido. */\n totalSteps: number;\n /** Paso inicial (0-based). Default: 0. */\n initialStep?: number;\n /**\n * Callback disparado cuando se llama `submitStep()`. Recibe el paso actual.\n * El paquete NO ejecuta ninguna petición; queda a cargo del consumer.\n */\n onSubmit?: (currentStep: number) => void;\n /**\n * Callback disparado en cada cambio de paso (next/prev/goTo).\n * Útil para tracking o validaciones externas.\n */\n onStepChange?: (newStep: number, prevStep: number) => void;\n children?: ReactNode;\n}\n\n/**\n * Provider del wizard. Administra el `currentStep` internamente. El consumer\n * no necesita gestionar estado — sólo consumirlo con `useWizard()` desde\n * cualquier descendiente.\n *\n * ```tsx\n * <WizardProvider totalSteps={3} onSubmit={handleFinalSubmit}>\n * <Stepper ... />\n * <StepContent />\n * <WizardControls />\n * </WizardProvider>\n * ```\n */\nexport const WizardProvider: FC<WizardProviderProps> = ({\n totalSteps,\n initialStep = 0,\n onSubmit,\n onStepChange,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState(initialStep);\n const [completed, setCompleted] = useState(false);\n\n const changeStep = useCallback(\n (newStep: number) => {\n setCurrentStep((prev) => {\n if (newStep === prev) return prev;\n if (newStep < 0 || newStep >= totalSteps) return prev;\n onStepChange?.(newStep, prev);\n return newStep;\n });\n },\n [totalSteps, onStepChange],\n );\n\n const nextStep = useCallback(() => {\n changeStep(currentStep + 1);\n }, [changeStep, currentStep]);\n\n const prevStep = useCallback(() => {\n changeStep(currentStep - 1);\n }, [changeStep, currentStep]);\n\n const goToStep = useCallback(\n (stepNumber: number) => {\n changeStep(stepNumber);\n },\n [changeStep],\n );\n\n const submitStep = useCallback(() => {\n setCompleted(true);\n onSubmit?.(currentStep);\n }, [currentStep, onSubmit]);\n\n const reset = useCallback(() => {\n setCurrentStep(initialStep);\n setCompleted(false);\n }, [initialStep]);\n\n const value = useMemo<WizardContextValue>(\n () => ({\n currentStep,\n totalSteps,\n isFirst: currentStep === 0,\n isLast: currentStep === totalSteps - 1,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n }),\n [\n currentStep,\n totalSteps,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n ],\n );\n\n return (\n <WizardContext.Provider value={value}>{children}</WizardContext.Provider>\n );\n};\n","import { useContext } from 'react';\nimport { WizardContext, type WizardContextValue } from './WizardContext';\n\n/**\n * Hook para consumir el `WizardContext` desde cualquier descendiente de\n * `<WizardProvider>`.\n *\n * Si se llama fuera de un provider, devuelve los valores por defecto (no-op)\n * para mantener compatibilidad con el hook original de fri-web-components.\n */\nexport function useWizard(): WizardContextValue {\n return useContext(WizardContext);\n}\n"],"names":["createContext","useState","useCallback","useMemo","jsx","useContext"],"mappings":";;;AA4CA,MAAM,eAAmC;AAAA,EACvC,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,YAAY,MAAM;AAAA,EAAC;AAAA,EACnB,OAAO,MAAM;AAAA,EAAC;AAChB;AAEO,MAAM,gBAAgBA,MAAAA,cAAkC,YAAY;AAiCpE,MAAM,iBAA0C,CAAC;AAAA,EACtD;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,IAAIC,MAAAA,SAAS,WAAW;AAC1D,QAAM,CAAC,WAAW,YAAY,IAAIA,MAAAA,SAAS,KAAK;AAEhD,QAAM,aAAaC,MAAAA;AAAAA,IACjB,CAAC,YAAoB;AACnB,qBAAe,CAAC,SAAS;AACvB,YAAI,YAAY,KAAM,QAAO;AAC7B,YAAI,UAAU,KAAK,WAAW,WAAY,QAAO;AACjD,qDAAe,SAAS;AACxB,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,IACA,CAAC,YAAY,YAAY;AAAA,EAAA;AAG3B,QAAM,WAAWA,MAAAA,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAWA,MAAAA,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAWA,MAAAA;AAAAA,IACf,CAAC,eAAuB;AACtB,iBAAW,UAAU;AAAA,IACvB;AAAA,IACA,CAAC,UAAU;AAAA,EAAA;AAGb,QAAM,aAAaA,MAAAA,YAAY,MAAM;AACnC,iBAAa,IAAI;AACjB,yCAAW;AAAA,EACb,GAAG,CAAC,aAAa,QAAQ,CAAC;AAE1B,QAAM,QAAQA,MAAAA,YAAY,MAAM;AAC9B,mBAAe,WAAW;AAC1B,iBAAa,KAAK;AAAA,EACpB,GAAG,CAAC,WAAW,CAAC;AAEhB,QAAM,QAAQC,MAAAA;AAAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,gBAAgB;AAAA,MACzB,QAAQ,gBAAgB,aAAa;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAGF,SACEC,2BAAAA,IAAC,cAAc,UAAd,EAAuB,OAAe,SAAA,CAAS;AAEpD;AC3JO,SAAS,YAAgC;AAC9C,SAAOC,MAAAA,WAAW,aAAa;AACjC;;;;"}
1
+ {"version":3,"file":"useWizard-CWdIxZzX.cjs","sources":["../src/hooks/Wizard/WizardContext.tsx","../src/hooks/Wizard/useWizard.ts"],"sourcesContent":["import {\n createContext,\n useCallback,\n useMemo,\n useState,\n type FC,\n type ReactNode,\n} from 'react';\n\n/**\n * API expuesta por `useWizard()`.\n *\n * Nota de retro-compatibilidad: los nombres `submitStep`, `nextStep`,\n * `prevStep`, `goToStep` se mantienen idénticos al `WizardContext` de\n * `@soyfri/fri-web-components` para que consumers migrando no tengan que\n * cambiar sus llamadas. Se agregan campos extra opcionales que antes no\n * existían (`currentStep`, `totalSteps`, `isFirst`, `isLast`, `completed`).\n */\nexport interface WizardContextValue {\n /** Índice del paso actual (0-based). */\n currentStep: number;\n /** Total de pasos del wizard. */\n totalSteps: number;\n /** True si `currentStep === 0`. */\n isFirst: boolean;\n /** True si `currentStep === totalSteps - 1`. */\n isLast: boolean;\n /** True tras ejecutar `submitStep()` desde el último paso. */\n completed: boolean;\n /** Avanza al siguiente paso (no pasa de `totalSteps - 1`). */\n nextStep: () => void;\n /** Retrocede al paso anterior (no baja de 0). */\n prevStep: () => void;\n /** Salta a un paso específico (0-based). No-op si fuera de rango. */\n goToStep: (stepNumber: number) => void;\n /**\n * Envía el wizard. Marca `completed = true` y dispara el callback\n * `onSubmit` del provider. En el último paso suele reemplazar a `nextStep`.\n */\n submitStep: () => void;\n /** Resetea el wizard al paso inicial y limpia `completed`. */\n reset: () => void;\n}\n\nconst defaultValue: WizardContextValue = {\n currentStep: 0,\n totalSteps: 0,\n isFirst: true,\n isLast: true,\n completed: false,\n nextStep: () => {},\n prevStep: () => {},\n goToStep: () => {},\n submitStep: () => {},\n reset: () => {},\n};\n\nexport const WizardContext = createContext<WizardContextValue>(defaultValue);\n\nexport interface WizardProviderProps {\n /** Número total de pasos del wizard. Requerido. */\n totalSteps: number;\n /** Paso inicial (0-based). Default: 0. */\n initialStep?: number;\n /**\n * Callback disparado cuando se llama `submitStep()`. Recibe el paso actual.\n * El paquete NO ejecuta ninguna petición; queda a cargo del consumer.\n */\n onSubmit?: (currentStep: number) => void;\n /**\n * Callback disparado en cada cambio de paso (next/prev/goTo).\n * Útil para tracking o validaciones externas.\n */\n onStepChange?: (newStep: number, prevStep: number) => void;\n children?: ReactNode;\n}\n\n/**\n * Provider del wizard. Administra el `currentStep` internamente. El consumer\n * no necesita gestionar estado — sólo consumirlo con `useWizard()` desde\n * cualquier descendiente.\n *\n * ```tsx\n * <WizardProvider totalSteps={3} onSubmit={handleFinalSubmit}>\n * <Stepper ... />\n * <StepContent />\n * <WizardControls />\n * </WizardProvider>\n * ```\n */\nexport const WizardProvider: FC<WizardProviderProps> = ({\n totalSteps,\n initialStep = 0,\n onSubmit,\n onStepChange,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState(initialStep);\n const [completed, setCompleted] = useState(false);\n\n const changeStep = useCallback(\n (newStep: number) => {\n setCurrentStep((prev) => {\n if (newStep === prev) return prev;\n if (newStep < 0 || newStep >= totalSteps) return prev;\n onStepChange?.(newStep, prev);\n return newStep;\n });\n },\n [totalSteps, onStepChange],\n );\n\n const nextStep = useCallback(() => {\n changeStep(currentStep + 1);\n }, [changeStep, currentStep]);\n\n const prevStep = useCallback(() => {\n changeStep(currentStep - 1);\n }, [changeStep, currentStep]);\n\n const goToStep = useCallback(\n (stepNumber: number) => {\n changeStep(stepNumber);\n },\n [changeStep],\n );\n\n const submitStep = useCallback(() => {\n setCompleted(true);\n onSubmit?.(currentStep);\n }, [currentStep, onSubmit]);\n\n const reset = useCallback(() => {\n setCurrentStep(initialStep);\n setCompleted(false);\n }, [initialStep]);\n\n const value = useMemo<WizardContextValue>(\n () => ({\n currentStep,\n totalSteps,\n isFirst: currentStep === 0,\n isLast: currentStep === totalSteps - 1,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n }),\n [\n currentStep,\n totalSteps,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n ],\n );\n\n return (\n <WizardContext.Provider value={value}>{children}</WizardContext.Provider>\n );\n};\n","import { useContext } from 'react';\nimport { WizardContext, type WizardContextValue } from './WizardContext';\n\n/**\n * Hook para consumir el `WizardContext` desde cualquier descendiente de\n * `<WizardProvider>`.\n *\n * Si se llama fuera de un provider, devuelve los valores por defecto (no-op)\n * para mantener compatibilidad con el hook original de fri-web-components.\n */\nexport function useWizard(): WizardContextValue {\n return useContext(WizardContext);\n}\n"],"names":["createContext","useState","useCallback","useMemo","jsx","useContext"],"mappings":";;;AA4CA,MAAM,eAAmC;AAAA,EACvC,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,YAAY,MAAM;AAAA,EAAC;AAAA,EACnB,OAAO,MAAM;AAAA,EAAC;AAChB;AAEO,MAAM,gBAAgBA,MAAAA,cAAkC,YAAY;AAiCpE,MAAM,iBAA0C,CAAC;AAAA,EACtD;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,IAAIC,MAAAA,SAAS,WAAW;AAC1D,QAAM,CAAC,WAAW,YAAY,IAAIA,MAAAA,SAAS,KAAK;AAEhD,QAAM,aAAaC,MAAAA;AAAAA,IACjB,CAAC,YAAoB;AACnB,qBAAe,CAAC,SAAS;AACvB,YAAI,YAAY,KAAM,QAAO;AAC7B,YAAI,UAAU,KAAK,WAAW,WAAY,QAAO;AACjD,qDAAe,SAAS;AACxB,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,IACA,CAAC,YAAY,YAAY;AAAA,EAAA;AAG3B,QAAM,WAAWA,MAAAA,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAWA,MAAAA,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAWA,MAAAA;AAAAA,IACf,CAAC,eAAuB;AACtB,iBAAW,UAAU;AAAA,IACvB;AAAA,IACA,CAAC,UAAU;AAAA,EAAA;AAGb,QAAM,aAAaA,MAAAA,YAAY,MAAM;AACnC,iBAAa,IAAI;AACjB,yCAAW;AAAA,EACb,GAAG,CAAC,aAAa,QAAQ,CAAC;AAE1B,QAAM,QAAQA,MAAAA,YAAY,MAAM;AAC9B,mBAAe,WAAW;AAC1B,iBAAa,KAAK;AAAA,EACpB,GAAG,CAAC,WAAW,CAAC;AAEhB,QAAM,QAAQC,MAAAA;AAAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,gBAAgB;AAAA,MACzB,QAAQ,gBAAgB,aAAa;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAGF,SACEC,2BAAAA,IAAC,cAAc,UAAd,EAAuB,OAAe,SAAA,CAAS;AAEpD;AC3JO,SAAS,YAAgC;AAC9C,SAAOC,MAAAA,WAAW,aAAa;AACjC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWizard-CWq--C3o.js","sources":["../src/hooks/Wizard/WizardContext.tsx","../src/hooks/Wizard/useWizard.ts"],"sourcesContent":["import React, {\n createContext,\n useCallback,\n useMemo,\n useState,\n type FC,\n type ReactNode,\n} from 'react';\n\n/**\n * API expuesta por `useWizard()`.\n *\n * Nota de retro-compatibilidad: los nombres `submitStep`, `nextStep`,\n * `prevStep`, `goToStep` se mantienen idénticos al `WizardContext` de\n * `@soyfri/fri-web-components` para que consumers migrando no tengan que\n * cambiar sus llamadas. Se agregan campos extra opcionales que antes no\n * existían (`currentStep`, `totalSteps`, `isFirst`, `isLast`, `completed`).\n */\nexport interface WizardContextValue {\n /** Índice del paso actual (0-based). */\n currentStep: number;\n /** Total de pasos del wizard. */\n totalSteps: number;\n /** True si `currentStep === 0`. */\n isFirst: boolean;\n /** True si `currentStep === totalSteps - 1`. */\n isLast: boolean;\n /** True tras ejecutar `submitStep()` desde el último paso. */\n completed: boolean;\n /** Avanza al siguiente paso (no pasa de `totalSteps - 1`). */\n nextStep: () => void;\n /** Retrocede al paso anterior (no baja de 0). */\n prevStep: () => void;\n /** Salta a un paso específico (0-based). No-op si fuera de rango. */\n goToStep: (stepNumber: number) => void;\n /**\n * Envía el wizard. Marca `completed = true` y dispara el callback\n * `onSubmit` del provider. En el último paso suele reemplazar a `nextStep`.\n */\n submitStep: () => void;\n /** Resetea el wizard al paso inicial y limpia `completed`. */\n reset: () => void;\n}\n\nconst defaultValue: WizardContextValue = {\n currentStep: 0,\n totalSteps: 0,\n isFirst: true,\n isLast: true,\n completed: false,\n nextStep: () => {},\n prevStep: () => {},\n goToStep: () => {},\n submitStep: () => {},\n reset: () => {},\n};\n\nexport const WizardContext = createContext<WizardContextValue>(defaultValue);\n\nexport interface WizardProviderProps {\n /** Número total de pasos del wizard. Requerido. */\n totalSteps: number;\n /** Paso inicial (0-based). Default: 0. */\n initialStep?: number;\n /**\n * Callback disparado cuando se llama `submitStep()`. Recibe el paso actual.\n * El paquete NO ejecuta ninguna petición; queda a cargo del consumer.\n */\n onSubmit?: (currentStep: number) => void;\n /**\n * Callback disparado en cada cambio de paso (next/prev/goTo).\n * Útil para tracking o validaciones externas.\n */\n onStepChange?: (newStep: number, prevStep: number) => void;\n children?: ReactNode;\n}\n\n/**\n * Provider del wizard. Administra el `currentStep` internamente. El consumer\n * no necesita gestionar estado — sólo consumirlo con `useWizard()` desde\n * cualquier descendiente.\n *\n * ```tsx\n * <WizardProvider totalSteps={3} onSubmit={handleFinalSubmit}>\n * <Stepper ... />\n * <StepContent />\n * <WizardControls />\n * </WizardProvider>\n * ```\n */\nexport const WizardProvider: FC<WizardProviderProps> = ({\n totalSteps,\n initialStep = 0,\n onSubmit,\n onStepChange,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState(initialStep);\n const [completed, setCompleted] = useState(false);\n\n const changeStep = useCallback(\n (newStep: number) => {\n setCurrentStep((prev) => {\n if (newStep === prev) return prev;\n if (newStep < 0 || newStep >= totalSteps) return prev;\n onStepChange?.(newStep, prev);\n return newStep;\n });\n },\n [totalSteps, onStepChange],\n );\n\n const nextStep = useCallback(() => {\n changeStep(currentStep + 1);\n }, [changeStep, currentStep]);\n\n const prevStep = useCallback(() => {\n changeStep(currentStep - 1);\n }, [changeStep, currentStep]);\n\n const goToStep = useCallback(\n (stepNumber: number) => {\n changeStep(stepNumber);\n },\n [changeStep],\n );\n\n const submitStep = useCallback(() => {\n setCompleted(true);\n onSubmit?.(currentStep);\n }, [currentStep, onSubmit]);\n\n const reset = useCallback(() => {\n setCurrentStep(initialStep);\n setCompleted(false);\n }, [initialStep]);\n\n const value = useMemo<WizardContextValue>(\n () => ({\n currentStep,\n totalSteps,\n isFirst: currentStep === 0,\n isLast: currentStep === totalSteps - 1,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n }),\n [\n currentStep,\n totalSteps,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n ],\n );\n\n return (\n <WizardContext.Provider value={value}>{children}</WizardContext.Provider>\n );\n};\n","import { useContext } from 'react';\nimport { WizardContext, type WizardContextValue } from './WizardContext';\n\n/**\n * Hook para consumir el `WizardContext` desde cualquier descendiente de\n * `<WizardProvider>`.\n *\n * Si se llama fuera de un provider, devuelve los valores por defecto (no-op)\n * para mantener compatibilidad con el hook original de fri-web-components.\n */\nexport function useWizard(): WizardContextValue {\n return useContext(WizardContext);\n}\n"],"names":[],"mappings":";;AA4CA,MAAM,eAAmC;AAAA,EACvC,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,YAAY,MAAM;AAAA,EAAC;AAAA,EACnB,OAAO,MAAM;AAAA,EAAC;AAChB;AAEO,MAAM,gBAAgB,cAAkC,YAAY;AAiCpE,MAAM,iBAA0C,CAAC;AAAA,EACtD;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,WAAW;AAC1D,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,QAAM,aAAa;AAAA,IACjB,CAAC,YAAoB;AACnB,qBAAe,CAAC,SAAS;AACvB,YAAI,YAAY,KAAM,QAAO;AAC7B,YAAI,UAAU,KAAK,WAAW,WAAY,QAAO;AACjD,qDAAe,SAAS;AACxB,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,IACA,CAAC,YAAY,YAAY;AAAA,EAAA;AAG3B,QAAM,WAAW,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAW,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAW;AAAA,IACf,CAAC,eAAuB;AACtB,iBAAW,UAAU;AAAA,IACvB;AAAA,IACA,CAAC,UAAU;AAAA,EAAA;AAGb,QAAM,aAAa,YAAY,MAAM;AACnC,iBAAa,IAAI;AACjB,yCAAW;AAAA,EACb,GAAG,CAAC,aAAa,QAAQ,CAAC;AAE1B,QAAM,QAAQ,YAAY,MAAM;AAC9B,mBAAe,WAAW;AAC1B,iBAAa,KAAK;AAAA,EACpB,GAAG,CAAC,WAAW,CAAC;AAEhB,QAAM,QAAQ;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,gBAAgB;AAAA,MACzB,QAAQ,gBAAgB,aAAa;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAGF,SACE,oBAAC,cAAc,UAAd,EAAuB,OAAe,SAAA,CAAS;AAEpD;AC3JO,SAAS,YAAgC;AAC9C,SAAO,WAAW,aAAa;AACjC;"}
1
+ {"version":3,"file":"useWizard-CWq--C3o.js","sources":["../src/hooks/Wizard/WizardContext.tsx","../src/hooks/Wizard/useWizard.ts"],"sourcesContent":["import {\n createContext,\n useCallback,\n useMemo,\n useState,\n type FC,\n type ReactNode,\n} from 'react';\n\n/**\n * API expuesta por `useWizard()`.\n *\n * Nota de retro-compatibilidad: los nombres `submitStep`, `nextStep`,\n * `prevStep`, `goToStep` se mantienen idénticos al `WizardContext` de\n * `@soyfri/fri-web-components` para que consumers migrando no tengan que\n * cambiar sus llamadas. Se agregan campos extra opcionales que antes no\n * existían (`currentStep`, `totalSteps`, `isFirst`, `isLast`, `completed`).\n */\nexport interface WizardContextValue {\n /** Índice del paso actual (0-based). */\n currentStep: number;\n /** Total de pasos del wizard. */\n totalSteps: number;\n /** True si `currentStep === 0`. */\n isFirst: boolean;\n /** True si `currentStep === totalSteps - 1`. */\n isLast: boolean;\n /** True tras ejecutar `submitStep()` desde el último paso. */\n completed: boolean;\n /** Avanza al siguiente paso (no pasa de `totalSteps - 1`). */\n nextStep: () => void;\n /** Retrocede al paso anterior (no baja de 0). */\n prevStep: () => void;\n /** Salta a un paso específico (0-based). No-op si fuera de rango. */\n goToStep: (stepNumber: number) => void;\n /**\n * Envía el wizard. Marca `completed = true` y dispara el callback\n * `onSubmit` del provider. En el último paso suele reemplazar a `nextStep`.\n */\n submitStep: () => void;\n /** Resetea el wizard al paso inicial y limpia `completed`. */\n reset: () => void;\n}\n\nconst defaultValue: WizardContextValue = {\n currentStep: 0,\n totalSteps: 0,\n isFirst: true,\n isLast: true,\n completed: false,\n nextStep: () => {},\n prevStep: () => {},\n goToStep: () => {},\n submitStep: () => {},\n reset: () => {},\n};\n\nexport const WizardContext = createContext<WizardContextValue>(defaultValue);\n\nexport interface WizardProviderProps {\n /** Número total de pasos del wizard. Requerido. */\n totalSteps: number;\n /** Paso inicial (0-based). Default: 0. */\n initialStep?: number;\n /**\n * Callback disparado cuando se llama `submitStep()`. Recibe el paso actual.\n * El paquete NO ejecuta ninguna petición; queda a cargo del consumer.\n */\n onSubmit?: (currentStep: number) => void;\n /**\n * Callback disparado en cada cambio de paso (next/prev/goTo).\n * Útil para tracking o validaciones externas.\n */\n onStepChange?: (newStep: number, prevStep: number) => void;\n children?: ReactNode;\n}\n\n/**\n * Provider del wizard. Administra el `currentStep` internamente. El consumer\n * no necesita gestionar estado — sólo consumirlo con `useWizard()` desde\n * cualquier descendiente.\n *\n * ```tsx\n * <WizardProvider totalSteps={3} onSubmit={handleFinalSubmit}>\n * <Stepper ... />\n * <StepContent />\n * <WizardControls />\n * </WizardProvider>\n * ```\n */\nexport const WizardProvider: FC<WizardProviderProps> = ({\n totalSteps,\n initialStep = 0,\n onSubmit,\n onStepChange,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState(initialStep);\n const [completed, setCompleted] = useState(false);\n\n const changeStep = useCallback(\n (newStep: number) => {\n setCurrentStep((prev) => {\n if (newStep === prev) return prev;\n if (newStep < 0 || newStep >= totalSteps) return prev;\n onStepChange?.(newStep, prev);\n return newStep;\n });\n },\n [totalSteps, onStepChange],\n );\n\n const nextStep = useCallback(() => {\n changeStep(currentStep + 1);\n }, [changeStep, currentStep]);\n\n const prevStep = useCallback(() => {\n changeStep(currentStep - 1);\n }, [changeStep, currentStep]);\n\n const goToStep = useCallback(\n (stepNumber: number) => {\n changeStep(stepNumber);\n },\n [changeStep],\n );\n\n const submitStep = useCallback(() => {\n setCompleted(true);\n onSubmit?.(currentStep);\n }, [currentStep, onSubmit]);\n\n const reset = useCallback(() => {\n setCurrentStep(initialStep);\n setCompleted(false);\n }, [initialStep]);\n\n const value = useMemo<WizardContextValue>(\n () => ({\n currentStep,\n totalSteps,\n isFirst: currentStep === 0,\n isLast: currentStep === totalSteps - 1,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n }),\n [\n currentStep,\n totalSteps,\n completed,\n nextStep,\n prevStep,\n goToStep,\n submitStep,\n reset,\n ],\n );\n\n return (\n <WizardContext.Provider value={value}>{children}</WizardContext.Provider>\n );\n};\n","import { useContext } from 'react';\nimport { WizardContext, type WizardContextValue } from './WizardContext';\n\n/**\n * Hook para consumir el `WizardContext` desde cualquier descendiente de\n * `<WizardProvider>`.\n *\n * Si se llama fuera de un provider, devuelve los valores por defecto (no-op)\n * para mantener compatibilidad con el hook original de fri-web-components.\n */\nexport function useWizard(): WizardContextValue {\n return useContext(WizardContext);\n}\n"],"names":[],"mappings":";;AA4CA,MAAM,eAAmC;AAAA,EACvC,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,YAAY,MAAM;AAAA,EAAC;AAAA,EACnB,OAAO,MAAM;AAAA,EAAC;AAChB;AAEO,MAAM,gBAAgB,cAAkC,YAAY;AAiCpE,MAAM,iBAA0C,CAAC;AAAA,EACtD;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,WAAW;AAC1D,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,QAAM,aAAa;AAAA,IACjB,CAAC,YAAoB;AACnB,qBAAe,CAAC,SAAS;AACvB,YAAI,YAAY,KAAM,QAAO;AAC7B,YAAI,UAAU,KAAK,WAAW,WAAY,QAAO;AACjD,qDAAe,SAAS;AACxB,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,IACA,CAAC,YAAY,YAAY;AAAA,EAAA;AAG3B,QAAM,WAAW,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAW,YAAY,MAAM;AACjC,eAAW,cAAc,CAAC;AAAA,EAC5B,GAAG,CAAC,YAAY,WAAW,CAAC;AAE5B,QAAM,WAAW;AAAA,IACf,CAAC,eAAuB;AACtB,iBAAW,UAAU;AAAA,IACvB;AAAA,IACA,CAAC,UAAU;AAAA,EAAA;AAGb,QAAM,aAAa,YAAY,MAAM;AACnC,iBAAa,IAAI;AACjB,yCAAW;AAAA,EACb,GAAG,CAAC,aAAa,QAAQ,CAAC;AAE1B,QAAM,QAAQ,YAAY,MAAM;AAC9B,mBAAe,WAAW;AAC1B,iBAAa,KAAK;AAAA,EACpB,GAAG,CAAC,WAAW,CAAC;AAEhB,QAAM,QAAQ;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,gBAAgB;AAAA,MACzB,QAAQ,gBAAgB,aAAa;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAGF,SACE,oBAAC,cAAc,UAAd,EAAuB,OAAe,SAAA,CAAS;AAEpD;AC3JO,SAAS,YAAgC;AAC9C,SAAO,WAAW,aAAa;AACjC;"}