orn-ui 0.1.1 → 0.2.0

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 (211) hide show
  1. package/README.md +9 -2
  2. package/lib/commonjs/atoms/PressableScale.js +9 -10
  3. package/lib/commonjs/atoms/PressableScale.js.map +1 -1
  4. package/lib/commonjs/atoms/Skeleton.js +96 -0
  5. package/lib/commonjs/atoms/Skeleton.js.map +1 -0
  6. package/lib/commonjs/atoms/Transition.js +171 -0
  7. package/lib/commonjs/atoms/Transition.js.map +1 -0
  8. package/lib/commonjs/atoms/index.js +20 -0
  9. package/lib/commonjs/atoms/index.js.map +1 -1
  10. package/lib/commonjs/molecules/OptionCard.js +55 -22
  11. package/lib/commonjs/molecules/OptionCard.js.map +1 -1
  12. package/lib/commonjs/molecules/{ThemeToggle.js → SegmentedControl.js} +36 -36
  13. package/lib/commonjs/molecules/SegmentedControl.js.map +1 -0
  14. package/lib/commonjs/molecules/Stepper.js +124 -47
  15. package/lib/commonjs/molecules/Stepper.js.map +1 -1
  16. package/lib/commonjs/molecules/index.js +9 -3
  17. package/lib/commonjs/molecules/index.js.map +1 -1
  18. package/lib/commonjs/organisms/AlertProvider.js +26 -0
  19. package/lib/commonjs/organisms/AlertProvider.js.map +1 -1
  20. package/lib/commonjs/organisms/BottomSheet.js +118 -39
  21. package/lib/commonjs/organisms/BottomSheet.js.map +1 -1
  22. package/lib/commonjs/organisms/List.js +66 -44
  23. package/lib/commonjs/organisms/List.js.map +1 -1
  24. package/lib/commonjs/organisms/Modal.js +42 -87
  25. package/lib/commonjs/organisms/Modal.js.map +1 -1
  26. package/lib/commonjs/organisms/NavigationBar.js +205 -0
  27. package/lib/commonjs/organisms/NavigationBar.js.map +1 -0
  28. package/lib/commonjs/organisms/Screen.js +9 -2
  29. package/lib/commonjs/organisms/Screen.js.map +1 -1
  30. package/lib/commonjs/organisms/SearchList.js +97 -28
  31. package/lib/commonjs/organisms/SearchList.js.map +1 -1
  32. package/lib/commonjs/organisms/Select.js +222 -50
  33. package/lib/commonjs/organisms/Select.js.map +1 -1
  34. package/lib/commonjs/organisms/ThemeToggle.js +52 -0
  35. package/lib/commonjs/organisms/ThemeToggle.js.map +1 -0
  36. package/lib/commonjs/organisms/Toast.js +8 -22
  37. package/lib/commonjs/organisms/Toast.js.map +1 -1
  38. package/lib/commonjs/organisms/ToastProvider.js +24 -0
  39. package/lib/commonjs/organisms/ToastProvider.js.map +1 -1
  40. package/lib/commonjs/organisms/Wizard.js +22 -2
  41. package/lib/commonjs/organisms/Wizard.js.map +1 -1
  42. package/lib/commonjs/organisms/imperativeBridge.js +28 -0
  43. package/lib/commonjs/organisms/imperativeBridge.js.map +1 -0
  44. package/lib/commonjs/organisms/index.js +50 -0
  45. package/lib/commonjs/organisms/index.js.map +1 -1
  46. package/lib/commonjs/theme/colors.js +207 -0
  47. package/lib/commonjs/theme/colors.js.map +1 -0
  48. package/lib/commonjs/theme/createTheme.js +25 -2
  49. package/lib/commonjs/theme/createTheme.js.map +1 -1
  50. package/lib/commonjs/theme/index.js +25 -0
  51. package/lib/commonjs/theme/index.js.map +1 -1
  52. package/lib/commonjs/theme/palettes.js +5 -2
  53. package/lib/commonjs/theme/palettes.js.map +1 -1
  54. package/lib/module/atoms/PressableScale.js +9 -10
  55. package/lib/module/atoms/PressableScale.js.map +1 -1
  56. package/lib/module/atoms/Skeleton.js +91 -0
  57. package/lib/module/atoms/Skeleton.js.map +1 -0
  58. package/lib/module/atoms/Transition.js +165 -0
  59. package/lib/module/atoms/Transition.js.map +1 -0
  60. package/lib/module/atoms/index.js +2 -0
  61. package/lib/module/atoms/index.js.map +1 -1
  62. package/lib/module/molecules/OptionCard.js +56 -23
  63. package/lib/module/molecules/OptionCard.js.map +1 -1
  64. package/lib/module/molecules/{ThemeToggle.js → SegmentedControl.js} +36 -36
  65. package/lib/module/molecules/SegmentedControl.js.map +1 -0
  66. package/lib/module/molecules/Stepper.js +125 -49
  67. package/lib/module/molecules/Stepper.js.map +1 -1
  68. package/lib/module/molecules/index.js +2 -2
  69. package/lib/module/molecules/index.js.map +1 -1
  70. package/lib/module/organisms/AlertProvider.js +24 -1
  71. package/lib/module/organisms/AlertProvider.js.map +1 -1
  72. package/lib/module/organisms/BottomSheet.js +120 -41
  73. package/lib/module/organisms/BottomSheet.js.map +1 -1
  74. package/lib/module/organisms/List.js +68 -46
  75. package/lib/module/organisms/List.js.map +1 -1
  76. package/lib/module/organisms/Modal.js +44 -89
  77. package/lib/module/organisms/Modal.js.map +1 -1
  78. package/lib/module/organisms/NavigationBar.js +200 -0
  79. package/lib/module/organisms/NavigationBar.js.map +1 -0
  80. package/lib/module/organisms/Screen.js +9 -2
  81. package/lib/module/organisms/Screen.js.map +1 -1
  82. package/lib/module/organisms/SearchList.js +98 -29
  83. package/lib/module/organisms/SearchList.js.map +1 -1
  84. package/lib/module/organisms/Select.js +224 -52
  85. package/lib/module/organisms/Select.js.map +1 -1
  86. package/lib/module/organisms/ThemeToggle.js +47 -0
  87. package/lib/module/organisms/ThemeToggle.js.map +1 -0
  88. package/lib/module/organisms/Toast.js +10 -24
  89. package/lib/module/organisms/Toast.js.map +1 -1
  90. package/lib/module/organisms/ToastProvider.js +21 -0
  91. package/lib/module/organisms/ToastProvider.js.map +1 -1
  92. package/lib/module/organisms/Wizard.js +23 -3
  93. package/lib/module/organisms/Wizard.js.map +1 -1
  94. package/lib/module/organisms/imperativeBridge.js +24 -0
  95. package/lib/module/organisms/imperativeBridge.js.map +1 -0
  96. package/lib/module/organisms/index.js +4 -2
  97. package/lib/module/organisms/index.js.map +1 -1
  98. package/lib/module/theme/colors.js +194 -0
  99. package/lib/module/theme/colors.js.map +1 -0
  100. package/lib/module/theme/createTheme.js +25 -2
  101. package/lib/module/theme/createTheme.js.map +1 -1
  102. package/lib/module/theme/index.js +1 -0
  103. package/lib/module/theme/index.js.map +1 -1
  104. package/lib/module/theme/palettes.js +5 -2
  105. package/lib/module/theme/palettes.js.map +1 -1
  106. package/lib/typescript/atoms/PressableScale.d.ts +3 -2
  107. package/lib/typescript/atoms/PressableScale.d.ts.map +1 -1
  108. package/lib/typescript/atoms/Skeleton.d.ts +29 -0
  109. package/lib/typescript/atoms/Skeleton.d.ts.map +1 -0
  110. package/lib/typescript/atoms/Transition.d.ts +51 -0
  111. package/lib/typescript/atoms/Transition.d.ts.map +1 -0
  112. package/lib/typescript/atoms/index.d.ts +4 -0
  113. package/lib/typescript/atoms/index.d.ts.map +1 -1
  114. package/lib/typescript/molecules/OptionCard.d.ts +11 -6
  115. package/lib/typescript/molecules/OptionCard.d.ts.map +1 -1
  116. package/lib/typescript/molecules/SegmentedControl.d.ts +24 -0
  117. package/lib/typescript/molecules/SegmentedControl.d.ts.map +1 -0
  118. package/lib/typescript/molecules/Stepper.d.ts +35 -3
  119. package/lib/typescript/molecules/Stepper.d.ts.map +1 -1
  120. package/lib/typescript/molecules/index.d.ts +4 -4
  121. package/lib/typescript/molecules/index.d.ts.map +1 -1
  122. package/lib/typescript/organisms/AlertProvider.d.ts +9 -0
  123. package/lib/typescript/organisms/AlertProvider.d.ts.map +1 -1
  124. package/lib/typescript/organisms/BottomSheet.d.ts +26 -4
  125. package/lib/typescript/organisms/BottomSheet.d.ts.map +1 -1
  126. package/lib/typescript/organisms/List.d.ts +9 -2
  127. package/lib/typescript/organisms/List.d.ts.map +1 -1
  128. package/lib/typescript/organisms/Modal.d.ts +3 -5
  129. package/lib/typescript/organisms/Modal.d.ts.map +1 -1
  130. package/lib/typescript/organisms/NavigationBar.d.ts +32 -0
  131. package/lib/typescript/organisms/NavigationBar.d.ts.map +1 -0
  132. package/lib/typescript/organisms/Screen.d.ts +2 -1
  133. package/lib/typescript/organisms/Screen.d.ts.map +1 -1
  134. package/lib/typescript/organisms/SearchList.d.ts +21 -5
  135. package/lib/typescript/organisms/SearchList.d.ts.map +1 -1
  136. package/lib/typescript/organisms/Select.d.ts +19 -4
  137. package/lib/typescript/organisms/Select.d.ts.map +1 -1
  138. package/lib/typescript/{molecules → organisms}/ThemeToggle.d.ts +4 -4
  139. package/lib/typescript/organisms/ThemeToggle.d.ts.map +1 -0
  140. package/lib/typescript/organisms/Toast.d.ts.map +1 -1
  141. package/lib/typescript/organisms/ToastProvider.d.ts +8 -0
  142. package/lib/typescript/organisms/ToastProvider.d.ts.map +1 -1
  143. package/lib/typescript/organisms/Wizard.d.ts +7 -1
  144. package/lib/typescript/organisms/Wizard.d.ts.map +1 -1
  145. package/lib/typescript/organisms/imperativeBridge.d.ts +12 -0
  146. package/lib/typescript/organisms/imperativeBridge.d.ts.map +1 -0
  147. package/lib/typescript/organisms/index.d.ts +7 -3
  148. package/lib/typescript/organisms/index.d.ts.map +1 -1
  149. package/lib/typescript/theme/colors.d.ts +44 -0
  150. package/lib/typescript/theme/colors.d.ts.map +1 -0
  151. package/lib/typescript/theme/createTheme.d.ts +3 -0
  152. package/lib/typescript/theme/createTheme.d.ts.map +1 -1
  153. package/lib/typescript/theme/index.d.ts +3 -1
  154. package/lib/typescript/theme/index.d.ts.map +1 -1
  155. package/lib/typescript/theme/palettes.d.ts.map +1 -1
  156. package/lib/typescript/theme/types.d.ts +9 -0
  157. package/lib/typescript/theme/types.d.ts.map +1 -1
  158. package/package.json +67 -6
  159. package/registry/alert-provider.json +9 -2
  160. package/registry/bottom-sheet.json +6 -2
  161. package/registry/core.json +8 -4
  162. package/registry/date-field.json +1 -0
  163. package/registry/index.json +96 -27
  164. package/registry/list.json +2 -1
  165. package/registry/manifest.json +44 -6
  166. package/registry/modal.json +3 -2
  167. package/registry/navigation-bar.json +18 -0
  168. package/registry/option-card.json +3 -2
  169. package/registry/pressable-scale.json +1 -1
  170. package/registry/screen.json +1 -1
  171. package/registry/search-list.json +2 -1
  172. package/registry/segmented-control.json +18 -0
  173. package/registry/select.json +1 -1
  174. package/registry/skeleton.json +18 -0
  175. package/registry/stepper.json +3 -2
  176. package/registry/theme-toggle.json +5 -4
  177. package/registry/toast-provider.json +11 -3
  178. package/registry/toast.json +3 -2
  179. package/registry/transition.json +19 -0
  180. package/registry/wizard.json +3 -2
  181. package/src/atoms/PressableScale.tsx +16 -6
  182. package/src/atoms/Skeleton.tsx +114 -0
  183. package/src/atoms/Transition.tsx +189 -0
  184. package/src/atoms/index.ts +4 -0
  185. package/src/molecules/OptionCard.tsx +62 -25
  186. package/src/molecules/SegmentedControl.tsx +84 -0
  187. package/src/molecules/Stepper.tsx +147 -32
  188. package/src/molecules/index.ts +4 -4
  189. package/src/organisms/AlertProvider.tsx +26 -1
  190. package/src/organisms/BottomSheet.tsx +214 -62
  191. package/src/organisms/List.tsx +73 -41
  192. package/src/organisms/Modal.tsx +49 -61
  193. package/src/organisms/NavigationBar.tsx +223 -0
  194. package/src/organisms/Screen.tsx +11 -3
  195. package/src/organisms/SearchList.tsx +132 -36
  196. package/src/organisms/Select.tsx +223 -45
  197. package/src/organisms/ThemeToggle.tsx +30 -0
  198. package/src/organisms/Toast.tsx +8 -21
  199. package/src/organisms/ToastProvider.tsx +24 -0
  200. package/src/organisms/Wizard.tsx +36 -3
  201. package/src/organisms/imperativeBridge.ts +28 -0
  202. package/src/organisms/index.ts +7 -3
  203. package/src/theme/colors.ts +175 -0
  204. package/src/theme/createTheme.ts +38 -4
  205. package/src/theme/index.ts +3 -1
  206. package/src/theme/palettes.ts +5 -2
  207. package/src/theme/types.ts +10 -0
  208. package/lib/commonjs/molecules/ThemeToggle.js.map +0 -1
  209. package/lib/module/molecules/ThemeToggle.js.map +0 -1
  210. package/lib/typescript/molecules/ThemeToggle.d.ts.map +0 -1
  211. package/src/molecules/ThemeToggle.tsx +0 -67
@@ -3,19 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.ThemeToggle = void 0;
6
+ exports.SegmentedControl = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _createStyles = require("../theme/createStyles");
10
10
  var _UIProvider = require("../theme/UIProvider");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
- const MODES = ['system', 'light', 'dark'];
14
- const DEFAULT_LABELS = {
15
- system: 'Auto',
16
- light: 'Light',
17
- dark: 'Dark'
18
- };
19
13
  const useStyles = (0, _createStyles.createStyles)(theme => ({
20
14
  track: {
21
15
  flexDirection: 'row',
@@ -33,6 +27,9 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
33
27
  backgroundColor: theme.colors.surface,
34
28
  ...theme.tokens.shadow.sm
35
29
  },
30
+ segmentDisabled: {
31
+ opacity: 0.5
32
+ },
36
33
  label: {
37
34
  fontSize: theme.tokens.fontSize.sm,
38
35
  fontWeight: theme.tokens.fontWeight.medium,
@@ -45,47 +42,50 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
45
42
  }));
46
43
 
47
44
  /**
48
- * ThemeToggle
49
- * Segmented control de 3 estados (system/light/dark) conectado a
50
- * UIProvider.setMode. Sin persistencia — el consumidor la resuelve vía
51
- * onModeChange en <UIProvider>.
45
+ * SegmentedControl
46
+ * Elige una opción entre pocas, todas visibles. No conoce ningún estado
47
+ * global: recibe `value` y avisa por `onChange`.
52
48
  */
53
- const ThemeToggle = exports.ThemeToggle = /*#__PURE__*/(0, _react.memo)(({
49
+ function SegmentedControlInner({
50
+ options,
51
+ value,
52
+ onChange,
53
+ disabled = false,
54
54
  style,
55
- labels: labelOverrides
56
- }) => {
57
- const {
58
- mode,
59
- setMode
60
- } = (0, _UIProvider.useThemeMode)();
61
- const colors = (0, _UIProvider.useColors)();
55
+ testID
56
+ }) {
62
57
  const styles = useStyles();
63
58
  const allowFontScaling = (0, _UIProvider.useAllowFontScaling)();
64
- const labels = {
65
- ...DEFAULT_LABELS,
66
- ...labelOverrides
67
- };
68
59
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
69
60
  style: [styles.track, style],
70
- accessibilityRole: "tablist",
71
- children: MODES.map(m => {
72
- const active = mode === m;
61
+ accessibilityRole: "radiogroup",
62
+ testID: testID,
63
+ children: options.map(option => {
64
+ const active = option.value === value;
65
+ const isDisabled = disabled || !!option.disabled;
73
66
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
74
- style: [styles.segment, active && styles.segmentActive],
75
- onPress: () => setMode(m),
76
- accessibilityRole: "tab",
67
+ style: [styles.segment, active && styles.segmentActive, isDisabled && styles.segmentDisabled],
68
+ onPress: () => onChange(option.value),
69
+ disabled: isDisabled,
70
+ accessibilityRole: "radio",
77
71
  accessibilityState: {
78
- selected: active
72
+ selected: active,
73
+ checked: active,
74
+ disabled: isDisabled
79
75
  },
80
- accessibilityLabel: labels[m],
76
+ accessibilityLabel: option.label,
77
+ testID: testID && `${testID}-${option.value}`,
81
78
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
82
79
  allowFontScaling: allowFontScaling,
83
80
  style: [styles.label, active && styles.labelActive],
84
- children: labels[m]
81
+ children: option.label
85
82
  })
86
- }, m);
83
+ }, option.value);
87
84
  })
88
85
  });
89
- });
90
- ThemeToggle.displayName = 'ThemeToggle';
91
- //# sourceMappingURL=ThemeToggle.js.map
86
+ }
87
+
88
+ // memo() pierde los genéricos al envolver: el cast los devuelve para que
89
+ // `value` y `onChange` sigan atados al union de `options`.
90
+ const SegmentedControl = exports.SegmentedControl = /*#__PURE__*/(0, _react.memo)(SegmentedControlInner);
91
+ //# sourceMappingURL=SegmentedControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_UIProvider","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useStyles","createStyles","theme","track","flexDirection","backgroundColor","colors","inputBackground","borderRadius","tokens","radius","md","padding","segment","flex","paddingVertical","spacing","sm","alignItems","segmentActive","surface","shadow","segmentDisabled","opacity","label","fontSize","fontWeight","medium","color","textLight","labelActive","primaryText","semibold","SegmentedControlInner","options","value","onChange","disabled","style","testID","styles","allowFontScaling","useAllowFontScaling","jsx","View","accessibilityRole","children","map","option","active","isDisabled","TouchableOpacity","onPress","accessibilityState","selected","checked","accessibilityLabel","Text","SegmentedControl","exports","memo"],"sourceRoot":"../../../src","sources":["molecules/SegmentedControl.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Stepper = void 0;
7
+ exports.sanitizeNumeric = sanitizeNumeric;
7
8
  var _react = _interopRequireWildcard(require("react"));
8
9
  var _reactNative = require("react-native");
9
10
  var _createStyles = require("../theme/createStyles");
@@ -11,93 +12,169 @@ var _UIProvider = require("../theme/UIProvider");
11
12
  var _Icon = require("../icons/Icon");
12
13
  var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ const SIZES = {
16
+ sm: {
17
+ height: 36,
18
+ icon: 18,
19
+ inputWidth: 48
20
+ },
21
+ md: {
22
+ height: 44,
23
+ icon: 20,
24
+ inputWidth: 56
25
+ },
26
+ lg: {
27
+ height: 52,
28
+ icon: 22,
29
+ inputWidth: 64
30
+ }
31
+ };
14
32
  const useStyles = (0, _createStyles.createStyles)(theme => ({
15
33
  control: {
16
34
  flexDirection: 'row',
17
35
  alignItems: 'center',
36
+ alignSelf: 'flex-start',
18
37
  borderWidth: 1,
19
38
  borderColor: theme.colors.border,
20
39
  borderRadius: theme.tokens.radius.md
21
40
  },
41
+ controlBlock: {
42
+ alignSelf: 'stretch'
43
+ },
22
44
  btn: {
23
45
  height: '100%',
24
46
  justifyContent: 'center',
25
- alignItems: 'center',
26
- backgroundColor: theme.colors.inputBackground
27
- },
28
- btnSm: {
29
- backgroundColor: 'transparent'
47
+ alignItems: 'center'
30
48
  },
31
49
  input: {
32
- flex: 1,
33
50
  textAlign: 'center',
34
- fontSize: theme.tokens.fontSize.lg,
51
+ height: '100%',
35
52
  color: theme.colors.text,
36
- height: '100%'
37
- },
38
- inputSm: {
39
- flex: 0,
40
- width: 50,
41
53
  borderLeftWidth: 1,
42
54
  borderRightWidth: 1,
43
55
  borderColor: theme.colors.border
56
+ },
57
+ // El fondo distingue el campo de un valor de sólo lectura: es la única
58
+ // señal de que ahí se puede tipear antes de tocarlo.
59
+ editable: {
60
+ backgroundColor: theme.colors.inputBackground
44
61
  }
45
62
  }));
46
63
 
47
- /** Stepper: botón "-" + input numérico editable + botón "+". */
64
+ /** Deja sólo lo que puede formar parte del número permitido por el rango. */
65
+ function sanitizeNumeric(text, {
66
+ allowDecimals = false,
67
+ allowNegative = false
68
+ } = {}) {
69
+ const normalized = allowDecimals ? text.replace(',', '.') : text;
70
+ const negative = allowNegative && normalized.trimStart().startsWith('-');
71
+ const digits = normalized.replace(allowDecimals ? /[^0-9.]/g : /[^0-9]/g, '');
72
+ const [whole = '', ...decimals] = digits.split('.');
73
+ const body = decimals.length > 0 ? `${whole}.${decimals.join('')}` : whole;
74
+ return negative ? `-${body}` : body;
75
+ }
76
+
77
+ /**
78
+ * Stepper
79
+ * Botón "-" + input numérico editable + botón "+". `size` controla sólo la
80
+ * escala y `block` sólo el ancho, así que los dos ejes se combinan libremente.
81
+ *
82
+ * El componente no hace la aritmética de los botones —eso vive en
83
+ * `onIncrement`/`onDecrement`—, pero sí limpia lo que se tipea y avisa cuándo
84
+ * el valor llegó a un extremo del rango deshabilitando el botón que lo pasaría.
85
+ */
48
86
  const Stepper = exports.Stepper = /*#__PURE__*/(0, _react.memo)(({
49
87
  value,
50
88
  onChangeText,
51
89
  onIncrement,
52
90
  onDecrement,
53
91
  size = 'md',
92
+ block = false,
93
+ editable = true,
94
+ min,
95
+ max,
96
+ allowDecimals = false,
54
97
  style,
55
98
  incrementAccessibilityLabel = 'Increment',
56
- decrementAccessibilityLabel = 'Decrement'
99
+ decrementAccessibilityLabel = 'Decrement',
100
+ testID
57
101
  }) => {
102
+ const theme = (0, _UIProvider.useTheme)();
58
103
  const colors = (0, _UIProvider.useColors)();
59
104
  const styles = useStyles();
60
105
  const allowFontScaling = (0, _UIProvider.useAllowFontScaling)();
61
- const isSmall = size === 'sm';
62
- const btnSize = isSmall ? 36 : 48;
63
- const iconSize = isSmall ? 18 : 20;
106
+ const [focused, setFocused] = (0, _react.useState)(false);
107
+ const {
108
+ height,
109
+ icon,
110
+ inputWidth
111
+ } = SIZES[size];
112
+ const fontSize = size === 'sm' ? theme.tokens.fontSize.md : size === 'md' ? theme.tokens.fontSize.lg : theme.tokens.fontSize.xl;
113
+ const allowNegative = min !== undefined && min < 0;
114
+ const numeric = Number(value);
115
+ const isNumber = value.trim() !== '' && Number.isFinite(numeric);
116
+ const atMin = isNumber && min !== undefined && numeric <= min;
117
+ const atMax = isNumber && max !== undefined && numeric >= max;
118
+ const handleChangeText = text => {
119
+ onChangeText(sanitizeNumeric(text, {
120
+ allowDecimals,
121
+ allowNegative
122
+ }));
123
+ };
124
+
125
+ // El recorte al rango espera al blur: hacerlo mientras se tipea impide
126
+ // llegar a "12" cuando el mínimo es 5, porque el "1" ya se corregiría.
127
+ const handleBlur = () => {
128
+ setFocused(false);
129
+ if (!isNumber) return;
130
+ const clamped = Math.min(max ?? numeric, Math.max(min ?? numeric, numeric));
131
+ if (clamped !== numeric) onChangeText(String(clamped));
132
+ };
133
+ const stepButton = (direction, onPress, disabled, label) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
134
+ onPress: onPress,
135
+ disabled: disabled,
136
+ style: [styles.btn, {
137
+ width: height
138
+ }],
139
+ accessibilityRole: "button",
140
+ accessibilityLabel: label,
141
+ accessibilityState: {
142
+ disabled
143
+ },
144
+ testID: testID && `${testID}-${direction}`,
145
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
146
+ name: direction === 'increment' ? 'plus' : 'minus',
147
+ size: icon,
148
+ color: disabled ? colors.textLight : colors.primary
149
+ })
150
+ });
64
151
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
152
+ testID: testID,
65
153
  style: [styles.control, {
66
- height: isSmall ? 36 : 48
154
+ height
155
+ }, block && styles.controlBlock, focused && {
156
+ borderColor: colors.primary
67
157
  }, style],
68
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
69
- onPress: onDecrement,
70
- style: [styles.btn, {
71
- width: btnSize
72
- }, isSmall && styles.btnSm],
73
- accessibilityRole: "button",
74
- accessibilityLabel: decrementAccessibilityLabel,
75
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
76
- name: "minus",
77
- size: iconSize,
78
- color: colors.primary
79
- })
80
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
158
+ children: [stepButton('decrement', onDecrement, atMin, decrementAccessibilityLabel), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
81
159
  allowFontScaling: allowFontScaling,
82
- style: [styles.input, isSmall && styles.inputSm],
160
+ style: [styles.input, {
161
+ fontSize
162
+ }, editable && styles.editable, focused && {
163
+ borderColor: colors.primary
164
+ }, block ? {
165
+ flex: 1
166
+ } : {
167
+ width: inputWidth
168
+ }],
83
169
  value: value,
84
- onChangeText: onChangeText,
85
- keyboardType: "numeric",
170
+ onChangeText: handleChangeText,
171
+ onFocus: () => setFocused(true),
172
+ onBlur: handleBlur,
173
+ editable: editable,
174
+ keyboardType: allowDecimals ? 'decimal-pad' : 'number-pad',
86
175
  selectTextOnFocus: true,
87
176
  accessibilityLabel: "Quantity"
88
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
89
- onPress: onIncrement,
90
- style: [styles.btn, {
91
- width: btnSize
92
- }, isSmall && styles.btnSm],
93
- accessibilityRole: "button",
94
- accessibilityLabel: incrementAccessibilityLabel,
95
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
96
- name: "plus",
97
- size: iconSize,
98
- color: colors.primary
99
- })
100
- })]
177
+ }), stepButton('increment', onIncrement, atMax, incrementAccessibilityLabel)]
101
178
  });
102
179
  });
103
180
  Stepper.displayName = 'Stepper';
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_UIProvider","_Icon","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useStyles","createStyles","theme","control","flexDirection","alignItems","borderWidth","borderColor","colors","border","borderRadius","tokens","radius","md","btn","height","justifyContent","backgroundColor","inputBackground","btnSm","input","flex","textAlign","fontSize","lg","color","text","inputSm","width","borderLeftWidth","borderRightWidth","Stepper","exports","memo","value","onChangeText","onIncrement","onDecrement","size","style","incrementAccessibilityLabel","decrementAccessibilityLabel","useColors","styles","allowFontScaling","useAllowFontScaling","isSmall","btnSize","iconSize","jsxs","View","children","jsx","TouchableOpacity","onPress","accessibilityRole","accessibilityLabel","Icon","name","primary","TextInput","keyboardType","selectTextOnFocus","displayName"],"sourceRoot":"../../../src","sources":["molecules/Stepper.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_UIProvider","_Icon","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZES","sm","height","icon","inputWidth","md","lg","useStyles","createStyles","theme","control","flexDirection","alignItems","alignSelf","borderWidth","borderColor","colors","border","borderRadius","tokens","radius","controlBlock","btn","justifyContent","input","textAlign","color","text","borderLeftWidth","borderRightWidth","editable","backgroundColor","inputBackground","sanitizeNumeric","allowDecimals","allowNegative","normalized","replace","negative","trimStart","startsWith","digits","whole","decimals","split","body","length","join","Stepper","exports","memo","value","onChangeText","onIncrement","onDecrement","size","block","min","max","style","incrementAccessibilityLabel","decrementAccessibilityLabel","testID","useTheme","useColors","styles","allowFontScaling","useAllowFontScaling","focused","setFocused","useState","fontSize","xl","undefined","numeric","Number","isNumber","trim","isFinite","atMin","atMax","handleChangeText","handleBlur","clamped","Math","String","stepButton","direction","onPress","disabled","label","jsx","TouchableOpacity","width","accessibilityRole","accessibilityLabel","accessibilityState","children","Icon","name","textLight","primary","jsxs","View","TextInput","flex","onFocus","onBlur","keyboardType","selectTextOnFocus","displayName"],"sourceRoot":"../../../src","sources":["molecules/Stepper.tsx"],"mappings":"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","ignoreList":[]}
@@ -27,6 +27,12 @@ Object.defineProperty(exports, "OptionCard", {
27
27
  return _OptionCard.OptionCard;
28
28
  }
29
29
  });
30
+ Object.defineProperty(exports, "SegmentedControl", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _SegmentedControl.SegmentedControl;
34
+ }
35
+ });
30
36
  Object.defineProperty(exports, "Stepper", {
31
37
  enumerable: true,
32
38
  get: function () {
@@ -39,10 +45,10 @@ Object.defineProperty(exports, "Steps", {
39
45
  return _Steps.Steps;
40
46
  }
41
47
  });
42
- Object.defineProperty(exports, "ThemeToggle", {
48
+ Object.defineProperty(exports, "sanitizeNumeric", {
43
49
  enumerable: true,
44
50
  get: function () {
45
- return _ThemeToggle.ThemeToggle;
51
+ return _Stepper.sanitizeNumeric;
46
52
  }
47
53
  });
48
54
  var _Stepper = require("./Stepper");
@@ -50,6 +56,6 @@ var _OptionCard = require("./OptionCard");
50
56
  var _InfoRow = require("./InfoRow");
51
57
  var _FormActions = require("./FormActions");
52
58
  var _AvatarHeader = require("./AvatarHeader");
53
- var _ThemeToggle = require("./ThemeToggle");
59
+ var _SegmentedControl = require("./SegmentedControl");
54
60
  var _Steps = require("./Steps");
55
61
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Stepper","require","_OptionCard","_InfoRow","_FormActions","_AvatarHeader","_ThemeToggle","_Steps"],"sourceRoot":"../../../src","sources":["molecules/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,YAAA,GAAAH,OAAA;AAEA,IAAAI,aAAA,GAAAJ,OAAA;AAEA,IAAAK,YAAA,GAAAL,OAAA;AAEA,IAAAM,MAAA,GAAAN,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["_Stepper","require","_OptionCard","_InfoRow","_FormActions","_AvatarHeader","_SegmentedControl","_Steps"],"sourceRoot":"../../../src","sources":["molecules/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,YAAA,GAAAH,OAAA;AAEA,IAAAI,aAAA,GAAAJ,OAAA;AAEA,IAAAK,iBAAA,GAAAL,OAAA;AAEA,IAAAM,MAAA,GAAAN,OAAA","ignoreList":[]}
@@ -4,12 +4,34 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.AlertProvider = AlertProvider;
7
+ exports.hideAlert = hideAlert;
8
+ exports.showAlert = showAlert;
9
+ exports.showConfirm = showConfirm;
7
10
  exports.useAlert = useAlert;
8
11
  var _react = _interopRequireWildcard(require("react"));
9
12
  var _Alert = require("./Alert");
13
+ var _imperativeBridge = require("./imperativeBridge");
10
14
  var _jsxRuntime = require("react/jsx-runtime");
11
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
16
  const AlertContext = /*#__PURE__*/(0, _react.createContext)(undefined);
17
+ const bridge = (0, _imperativeBridge.createImperativeBridge)('AlertProvider');
18
+
19
+ /**
20
+ * Abre un alert desde fuera del árbol de React —un servicio, un interceptor—
21
+ * sin pasar por el hook. Sin <AlertProvider> montado resuelve de inmediato, así
22
+ * que un `await` nunca queda colgado.
23
+ */
24
+ function showAlert(options) {
25
+ return bridge.get()?.alert(options) ?? Promise.resolve();
26
+ }
27
+
28
+ /** Igual que showAlert, pero resuelve true/false. Sin provider, false. */
29
+ function showConfirm(options) {
30
+ return bridge.get()?.confirm(options) ?? Promise.resolve(false);
31
+ }
32
+ function hideAlert() {
33
+ bridge.get()?.hide();
34
+ }
13
35
  const HIDDEN = {
14
36
  visible: false,
15
37
  title: '',
@@ -87,6 +109,10 @@ function AlertProvider({
87
109
  confirm: confirmFn,
88
110
  hide
89
111
  }), [alertFn, confirmFn, hide]);
112
+ (0, _react.useEffect)(() => {
113
+ bridge.set(value);
114
+ return () => bridge.set(null);
115
+ }, [value]);
90
116
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(AlertContext.Provider, {
91
117
  value: value,
92
118
  children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.Alert, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_Alert","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AlertContext","createContext","undefined","HIDDEN","visible","title","type","buttons","AlertProvider","children","state","setState","useState","resolverRef","useRef","hide","useCallback","current","alertFn","options","Promise","resolve","message","text","confirmText","onPress","confirmFn","cancelText","style","variant","destructive","value","useMemo","alert","confirm","jsxs","Provider","jsx","Alert","onClose","useAlert","ctx","useContext","Error"],"sourceRoot":"../../../src","sources":["organisms/AlertProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_Alert","_imperativeBridge","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AlertContext","createContext","undefined","bridge","createImperativeBridge","showAlert","options","alert","Promise","resolve","showConfirm","confirm","hideAlert","hide","HIDDEN","visible","title","type","buttons","AlertProvider","children","state","setState","useState","resolverRef","useRef","useCallback","current","alertFn","message","text","confirmText","onPress","confirmFn","cancelText","style","variant","destructive","value","useMemo","useEffect","jsxs","Provider","jsx","Alert","onClose","useAlert","ctx","useContext","Error"],"sourceRoot":"../../../src","sources":["organisms/AlertProvider.tsx"],"mappings":"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","ignoreList":[]}