@tecsinapse/react-core 1.21.7 → 1.22.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 (233) hide show
  1. package/dist/cjs/components/atoms/BoxContent/BoxContent.js +4 -31
  2. package/dist/cjs/components/atoms/BoxContent/BoxContent.js.map +1 -1
  3. package/dist/cjs/components/atoms/BoxContent/styled.js +1 -1
  4. package/dist/cjs/components/atoms/BoxContent/styled.js.map +1 -1
  5. package/dist/cjs/components/atoms/Button/Button.js +18 -61
  6. package/dist/cjs/components/atoms/Button/Button.js.map +1 -1
  7. package/dist/cjs/components/atoms/Button/States/Error.js +5 -23
  8. package/dist/cjs/components/atoms/Button/States/Error.js.map +1 -1
  9. package/dist/cjs/components/atoms/Button/States/Success.js +3 -21
  10. package/dist/cjs/components/atoms/Button/States/Success.js.map +1 -1
  11. package/dist/cjs/components/atoms/Card/Card.js +12 -45
  12. package/dist/cjs/components/atoms/Card/Card.js.map +1 -1
  13. package/dist/cjs/components/atoms/Checkbox/Checkbox.js +13 -51
  14. package/dist/cjs/components/atoms/Checkbox/Checkbox.js.map +1 -1
  15. package/dist/cjs/components/atoms/Divider/Divider.js +4 -31
  16. package/dist/cjs/components/atoms/Divider/Divider.js.map +1 -1
  17. package/dist/cjs/components/atoms/GroupButton/GroupButton.js +19 -57
  18. package/dist/cjs/components/atoms/GroupButton/GroupButton.js.map +1 -1
  19. package/dist/cjs/components/atoms/GroupButton/styled.js +11 -11
  20. package/dist/cjs/components/atoms/GroupButton/styled.js.map +1 -1
  21. package/dist/cjs/components/atoms/Icon/AntDesign.js +6 -37
  22. package/dist/cjs/components/atoms/Icon/AntDesign.js.map +1 -1
  23. package/dist/cjs/components/atoms/Icon/Entypo.js +6 -37
  24. package/dist/cjs/components/atoms/Icon/Entypo.js.map +1 -1
  25. package/dist/cjs/components/atoms/Icon/Evil.js +6 -37
  26. package/dist/cjs/components/atoms/Icon/Evil.js.map +1 -1
  27. package/dist/cjs/components/atoms/Icon/Feather.js +6 -37
  28. package/dist/cjs/components/atoms/Icon/Feather.js.map +1 -1
  29. package/dist/cjs/components/atoms/Icon/FontAwesome.js +6 -37
  30. package/dist/cjs/components/atoms/Icon/FontAwesome.js.map +1 -1
  31. package/dist/cjs/components/atoms/Icon/FontAwesomeFive.js +6 -37
  32. package/dist/cjs/components/atoms/Icon/FontAwesomeFive.js.map +1 -1
  33. package/dist/cjs/components/atoms/Icon/Fontisto.js +6 -37
  34. package/dist/cjs/components/atoms/Icon/Fontisto.js.map +1 -1
  35. package/dist/cjs/components/atoms/Icon/Foundation.js +6 -37
  36. package/dist/cjs/components/atoms/Icon/Foundation.js.map +1 -1
  37. package/dist/cjs/components/atoms/Icon/Icon.js +13 -54
  38. package/dist/cjs/components/atoms/Icon/Icon.js.map +1 -1
  39. package/dist/cjs/components/atoms/Icon/Ionicon.js +6 -37
  40. package/dist/cjs/components/atoms/Icon/Ionicon.js.map +1 -1
  41. package/dist/cjs/components/atoms/Icon/Material.js +6 -37
  42. package/dist/cjs/components/atoms/Icon/Material.js.map +1 -1
  43. package/dist/cjs/components/atoms/Icon/MaterialCommunity.js +11 -45
  44. package/dist/cjs/components/atoms/Icon/MaterialCommunity.js.map +1 -1
  45. package/dist/cjs/components/atoms/Icon/Octicon.js +6 -37
  46. package/dist/cjs/components/atoms/Icon/Octicon.js.map +1 -1
  47. package/dist/cjs/components/atoms/Icon/SimpleLine.js +6 -37
  48. package/dist/cjs/components/atoms/Icon/SimpleLine.js.map +1 -1
  49. package/dist/cjs/components/atoms/Icon/Zocial.js +6 -37
  50. package/dist/cjs/components/atoms/Icon/Zocial.js.map +1 -1
  51. package/dist/cjs/components/atoms/Icon/functions.d.ts +1 -2
  52. package/dist/cjs/components/atoms/Icon/functions.js +29 -28
  53. package/dist/cjs/components/atoms/Icon/functions.js.map +1 -1
  54. package/dist/cjs/components/atoms/Icon/styled.d.ts +3 -0
  55. package/dist/cjs/components/atoms/Icon/styled.js +17 -0
  56. package/dist/cjs/components/atoms/Icon/styled.js.map +1 -0
  57. package/dist/cjs/components/atoms/Input/InputContainer/InputContainer.js +21 -67
  58. package/dist/cjs/components/atoms/Input/InputContainer/InputContainer.js.map +1 -1
  59. package/dist/cjs/components/atoms/Input/InputElement/InputElement.js +11 -47
  60. package/dist/cjs/components/atoms/Input/InputElement/InputElement.js.map +1 -1
  61. package/dist/cjs/components/atoms/Input/InputMaskElement/InputMaskElement.js +15 -52
  62. package/dist/cjs/components/atoms/Input/InputMaskElement/InputMaskElement.js.map +1 -1
  63. package/dist/cjs/components/atoms/Input/PressableInputContainer/PressableInputContainer.js +11 -43
  64. package/dist/cjs/components/atoms/Input/PressableInputContainer/PressableInputContainer.js.map +1 -1
  65. package/dist/cjs/components/atoms/Input/hooks/useNumberMask.js +1 -17
  66. package/dist/cjs/components/atoms/Input/hooks/useNumberMask.js.map +1 -1
  67. package/dist/cjs/components/atoms/Input/hooks/useStringMask.js +2 -2
  68. package/dist/cjs/components/atoms/Input/hooks/useStringMask.js.map +1 -1
  69. package/dist/cjs/components/atoms/Input/styled.js +1 -1
  70. package/dist/cjs/components/atoms/Input/styled.js.map +1 -1
  71. package/dist/cjs/components/atoms/Paper/Paper.js +8 -43
  72. package/dist/cjs/components/atoms/Paper/Paper.js.map +1 -1
  73. package/dist/cjs/components/atoms/PressableSurface/PressableSurface.js +12 -49
  74. package/dist/cjs/components/atoms/PressableSurface/PressableSurface.js.map +1 -1
  75. package/dist/cjs/components/atoms/ProgressBar/ProgressBar.js +16 -52
  76. package/dist/cjs/components/atoms/ProgressBar/ProgressBar.js.map +1 -1
  77. package/dist/cjs/components/atoms/RadioButton/RadioButton.js +13 -51
  78. package/dist/cjs/components/atoms/RadioButton/RadioButton.js.map +1 -1
  79. package/dist/cjs/components/atoms/Switch/Switch.js +14 -53
  80. package/dist/cjs/components/atoms/Switch/Switch.js.map +1 -1
  81. package/dist/cjs/components/atoms/Tag/Tag.js +16 -52
  82. package/dist/cjs/components/atoms/Tag/Tag.js.map +1 -1
  83. package/dist/cjs/components/atoms/Text/Text.js +17 -59
  84. package/dist/cjs/components/atoms/Text/Text.js.map +1 -1
  85. package/dist/cjs/components/molecules/Calendar/Calendar.js +20 -60
  86. package/dist/cjs/components/molecules/Calendar/Calendar.js.map +1 -1
  87. package/dist/cjs/components/molecules/Calendar/components/MonthWeek.js +3 -3
  88. package/dist/cjs/components/molecules/Calendar/components/MonthWeek.js.map +1 -1
  89. package/dist/cjs/components/molecules/Calendar/styled.js +5 -8
  90. package/dist/cjs/components/molecules/Calendar/styled.js.map +1 -1
  91. package/dist/cjs/components/molecules/DatePicker/DatePicker.js +30 -81
  92. package/dist/cjs/components/molecules/DatePicker/DatePicker.js.map +1 -1
  93. package/dist/cjs/components/molecules/DatePicker/styled.js +3 -6
  94. package/dist/cjs/components/molecules/DatePicker/styled.js.map +1 -1
  95. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js +42 -104
  96. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  97. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js +26 -72
  98. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  99. package/dist/cjs/components/molecules/DateTimeSelector/Selector.js +15 -51
  100. package/dist/cjs/components/molecules/DateTimeSelector/Selector.js.map +1 -1
  101. package/dist/cjs/components/molecules/Grid/functions.js +1 -2
  102. package/dist/cjs/components/molecules/Grid/functions.js.map +1 -1
  103. package/dist/cjs/components/molecules/HintInputContainer/HintInputContainer.js +17 -55
  104. package/dist/cjs/components/molecules/HintInputContainer/HintInputContainer.js.map +1 -1
  105. package/dist/cjs/components/molecules/IconTextButton/IconComponent.js +5 -21
  106. package/dist/cjs/components/molecules/IconTextButton/IconComponent.js.map +1 -1
  107. package/dist/cjs/components/molecules/InputPassword/InputPasswordIcon.js +8 -41
  108. package/dist/cjs/components/molecules/InputPassword/InputPasswordIcon.js.map +1 -1
  109. package/dist/cjs/components/molecules/InputPassword/styled.js +14 -1
  110. package/dist/cjs/components/molecules/InputPassword/styled.js.map +1 -1
  111. package/dist/cjs/components/molecules/Snackbar/Snackbar.js +8 -25
  112. package/dist/cjs/components/molecules/Snackbar/Snackbar.js.map +1 -1
  113. package/dist/cjs/styles/light.js +7 -20
  114. package/dist/cjs/styles/light.js.map +1 -1
  115. package/dist/cjs/utils/masks.js +2 -2
  116. package/dist/cjs/utils/masks.js.map +1 -1
  117. package/dist/esm/components/atoms/BoxContent/BoxContent.js +4 -31
  118. package/dist/esm/components/atoms/BoxContent/BoxContent.js.map +1 -1
  119. package/dist/esm/components/atoms/BoxContent/styled.js +1 -1
  120. package/dist/esm/components/atoms/BoxContent/styled.js.map +1 -1
  121. package/dist/esm/components/atoms/Button/Button.js +18 -61
  122. package/dist/esm/components/atoms/Button/Button.js.map +1 -1
  123. package/dist/esm/components/atoms/Button/States/Error.js +5 -23
  124. package/dist/esm/components/atoms/Button/States/Error.js.map +1 -1
  125. package/dist/esm/components/atoms/Button/States/Success.js +3 -21
  126. package/dist/esm/components/atoms/Button/States/Success.js.map +1 -1
  127. package/dist/esm/components/atoms/Card/Card.js +12 -45
  128. package/dist/esm/components/atoms/Card/Card.js.map +1 -1
  129. package/dist/esm/components/atoms/Checkbox/Checkbox.js +13 -51
  130. package/dist/esm/components/atoms/Checkbox/Checkbox.js.map +1 -1
  131. package/dist/esm/components/atoms/Divider/Divider.js +4 -31
  132. package/dist/esm/components/atoms/Divider/Divider.js.map +1 -1
  133. package/dist/esm/components/atoms/GroupButton/GroupButton.js +19 -57
  134. package/dist/esm/components/atoms/GroupButton/GroupButton.js.map +1 -1
  135. package/dist/esm/components/atoms/GroupButton/styled.js +11 -11
  136. package/dist/esm/components/atoms/GroupButton/styled.js.map +1 -1
  137. package/dist/esm/components/atoms/Icon/AntDesign.js +5 -36
  138. package/dist/esm/components/atoms/Icon/AntDesign.js.map +1 -1
  139. package/dist/esm/components/atoms/Icon/Entypo.js +5 -36
  140. package/dist/esm/components/atoms/Icon/Entypo.js.map +1 -1
  141. package/dist/esm/components/atoms/Icon/Evil.js +5 -36
  142. package/dist/esm/components/atoms/Icon/Evil.js.map +1 -1
  143. package/dist/esm/components/atoms/Icon/Feather.js +5 -36
  144. package/dist/esm/components/atoms/Icon/Feather.js.map +1 -1
  145. package/dist/esm/components/atoms/Icon/FontAwesome.js +5 -36
  146. package/dist/esm/components/atoms/Icon/FontAwesome.js.map +1 -1
  147. package/dist/esm/components/atoms/Icon/FontAwesomeFive.js +5 -36
  148. package/dist/esm/components/atoms/Icon/FontAwesomeFive.js.map +1 -1
  149. package/dist/esm/components/atoms/Icon/Fontisto.js +5 -36
  150. package/dist/esm/components/atoms/Icon/Fontisto.js.map +1 -1
  151. package/dist/esm/components/atoms/Icon/Foundation.js +5 -36
  152. package/dist/esm/components/atoms/Icon/Foundation.js.map +1 -1
  153. package/dist/esm/components/atoms/Icon/Icon.js +13 -54
  154. package/dist/esm/components/atoms/Icon/Icon.js.map +1 -1
  155. package/dist/esm/components/atoms/Icon/Ionicon.js +5 -36
  156. package/dist/esm/components/atoms/Icon/Ionicon.js.map +1 -1
  157. package/dist/esm/components/atoms/Icon/Material.js +5 -36
  158. package/dist/esm/components/atoms/Icon/Material.js.map +1 -1
  159. package/dist/esm/components/atoms/Icon/MaterialCommunity.js +10 -44
  160. package/dist/esm/components/atoms/Icon/MaterialCommunity.js.map +1 -1
  161. package/dist/esm/components/atoms/Icon/Octicon.js +5 -36
  162. package/dist/esm/components/atoms/Icon/Octicon.js.map +1 -1
  163. package/dist/esm/components/atoms/Icon/SimpleLine.js +5 -36
  164. package/dist/esm/components/atoms/Icon/SimpleLine.js.map +1 -1
  165. package/dist/esm/components/atoms/Icon/Zocial.js +5 -36
  166. package/dist/esm/components/atoms/Icon/Zocial.js.map +1 -1
  167. package/dist/esm/components/atoms/Icon/functions.d.ts +1 -2
  168. package/dist/esm/components/atoms/Icon/functions.js +30 -22
  169. package/dist/esm/components/atoms/Icon/functions.js.map +1 -1
  170. package/dist/esm/components/atoms/Icon/styled.d.ts +3 -0
  171. package/dist/esm/components/atoms/Icon/styled.js +9 -0
  172. package/dist/esm/components/atoms/Icon/styled.js.map +1 -0
  173. package/dist/esm/components/atoms/Input/InputContainer/InputContainer.js +21 -67
  174. package/dist/esm/components/atoms/Input/InputContainer/InputContainer.js.map +1 -1
  175. package/dist/esm/components/atoms/Input/InputElement/InputElement.js +11 -47
  176. package/dist/esm/components/atoms/Input/InputElement/InputElement.js.map +1 -1
  177. package/dist/esm/components/atoms/Input/InputMaskElement/InputMaskElement.js +15 -52
  178. package/dist/esm/components/atoms/Input/InputMaskElement/InputMaskElement.js.map +1 -1
  179. package/dist/esm/components/atoms/Input/PressableInputContainer/PressableInputContainer.js +11 -43
  180. package/dist/esm/components/atoms/Input/PressableInputContainer/PressableInputContainer.js.map +1 -1
  181. package/dist/esm/components/atoms/Input/hooks/useNumberMask.js +1 -17
  182. package/dist/esm/components/atoms/Input/hooks/useNumberMask.js.map +1 -1
  183. package/dist/esm/components/atoms/Input/hooks/useStringMask.js +2 -2
  184. package/dist/esm/components/atoms/Input/hooks/useStringMask.js.map +1 -1
  185. package/dist/esm/components/atoms/Input/styled.js +1 -1
  186. package/dist/esm/components/atoms/Input/styled.js.map +1 -1
  187. package/dist/esm/components/atoms/Paper/Paper.js +8 -43
  188. package/dist/esm/components/atoms/Paper/Paper.js.map +1 -1
  189. package/dist/esm/components/atoms/PressableSurface/PressableSurface.js +12 -49
  190. package/dist/esm/components/atoms/PressableSurface/PressableSurface.js.map +1 -1
  191. package/dist/esm/components/atoms/ProgressBar/ProgressBar.js +16 -52
  192. package/dist/esm/components/atoms/ProgressBar/ProgressBar.js.map +1 -1
  193. package/dist/esm/components/atoms/RadioButton/RadioButton.js +13 -51
  194. package/dist/esm/components/atoms/RadioButton/RadioButton.js.map +1 -1
  195. package/dist/esm/components/atoms/Switch/Switch.js +14 -53
  196. package/dist/esm/components/atoms/Switch/Switch.js.map +1 -1
  197. package/dist/esm/components/atoms/Tag/Tag.js +16 -52
  198. package/dist/esm/components/atoms/Tag/Tag.js.map +1 -1
  199. package/dist/esm/components/atoms/Text/Text.js +17 -59
  200. package/dist/esm/components/atoms/Text/Text.js.map +1 -1
  201. package/dist/esm/components/molecules/Calendar/Calendar.js +20 -60
  202. package/dist/esm/components/molecules/Calendar/Calendar.js.map +1 -1
  203. package/dist/esm/components/molecules/Calendar/components/MonthWeek.js +3 -3
  204. package/dist/esm/components/molecules/Calendar/components/MonthWeek.js.map +1 -1
  205. package/dist/esm/components/molecules/Calendar/styled.js +5 -8
  206. package/dist/esm/components/molecules/Calendar/styled.js.map +1 -1
  207. package/dist/esm/components/molecules/DatePicker/DatePicker.js +30 -81
  208. package/dist/esm/components/molecules/DatePicker/DatePicker.js.map +1 -1
  209. package/dist/esm/components/molecules/DatePicker/styled.js +3 -6
  210. package/dist/esm/components/molecules/DatePicker/styled.js.map +1 -1
  211. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js +42 -104
  212. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  213. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js +26 -72
  214. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  215. package/dist/esm/components/molecules/DateTimeSelector/Selector.js +15 -51
  216. package/dist/esm/components/molecules/DateTimeSelector/Selector.js.map +1 -1
  217. package/dist/esm/components/molecules/Grid/functions.js +1 -2
  218. package/dist/esm/components/molecules/Grid/functions.js.map +1 -1
  219. package/dist/esm/components/molecules/HintInputContainer/HintInputContainer.js +17 -55
  220. package/dist/esm/components/molecules/HintInputContainer/HintInputContainer.js.map +1 -1
  221. package/dist/esm/components/molecules/IconTextButton/IconComponent.js +5 -21
  222. package/dist/esm/components/molecules/IconTextButton/IconComponent.js.map +1 -1
  223. package/dist/esm/components/molecules/InputPassword/InputPasswordIcon.js +8 -41
  224. package/dist/esm/components/molecules/InputPassword/InputPasswordIcon.js.map +1 -1
  225. package/dist/esm/components/molecules/InputPassword/styled.js +14 -1
  226. package/dist/esm/components/molecules/InputPassword/styled.js.map +1 -1
  227. package/dist/esm/components/molecules/Snackbar/Snackbar.js +8 -25
  228. package/dist/esm/components/molecules/Snackbar/Snackbar.js.map +1 -1
  229. package/dist/esm/styles/light.js +8 -21
  230. package/dist/esm/styles/light.js.map +1 -1
  231. package/dist/esm/utils/masks.js +2 -2
  232. package/dist/esm/utils/masks.js.map +1 -1
  233. package/package.json +2 -2
@@ -12,106 +12,43 @@ import DateTimeSelector from '../DateTimeSelector/DateTimeSelector.js';
12
12
  import HintInputContainer from '../HintInputContainer/HintInputContainer.js';
13
13
  import { getStyledDateTimeSelector } from './styled.js';
14
14
 
15
- var __defProp = Object.defineProperty;
16
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
17
- var __hasOwnProp = Object.prototype.hasOwnProperty;
18
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
19
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
20
- var __spreadValues = (a, b) => {
21
- for (var prop in b || (b = {}))
22
- if (__hasOwnProp.call(b, prop))
23
- __defNormalProp(a, prop, b[prop]);
24
- if (__getOwnPropSymbols)
25
- for (var prop of __getOwnPropSymbols(b)) {
26
- if (__propIsEnum.call(b, prop))
27
- __defNormalProp(a, prop, b[prop]);
28
- }
29
- return a;
30
- };
31
- var __objRest = (source, exclude) => {
32
- var target = {};
33
- for (var prop in source)
34
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
35
- target[prop] = source[prop];
36
- if (source != null && __getOwnPropSymbols)
37
- for (var prop of __getOwnPropSymbols(source)) {
38
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
39
- target[prop] = source[prop];
40
- }
41
- return target;
42
- };
43
- const DateTimePicker = (_a) => {
44
- var _b = _a, {
45
- onChange,
46
- value,
47
- mode = "date",
48
- format: format$1 = "yyyy-MM-dd hh:mm:ss",
49
- locale,
50
- upperDateThreshold,
51
- lowerDateThreshold,
52
- offsetThreshold,
53
- upperOffsetThreshold,
54
- lowerOffsetThreshold,
55
- dateModalTitle,
56
- timeModalTitle,
57
- dateConfirmButtonText,
58
- timeConfirmButtonText,
59
- dayLabel,
60
- monthLabel,
61
- yearLabel,
62
- hourLabel,
63
- minuteLabel,
64
- placeholder,
65
- onFocus,
66
- onBlur,
67
- disabled,
68
- controlComponent,
69
- hintComponent,
70
- hint,
71
- variant = "default",
72
- TextComponent = Text,
73
- DateTimeSelectorComponent = DateTimeSelector,
74
- rightComponent,
75
- style,
76
- renderSelector,
77
- requestShowSelector,
78
- requestCloseSelector
79
- } = _b, rest = __objRest(_b, [
80
- "onChange",
81
- "value",
82
- "mode",
83
- "format",
84
- "locale",
85
- "upperDateThreshold",
86
- "lowerDateThreshold",
87
- "offsetThreshold",
88
- "upperOffsetThreshold",
89
- "lowerOffsetThreshold",
90
- "dateModalTitle",
91
- "timeModalTitle",
92
- "dateConfirmButtonText",
93
- "timeConfirmButtonText",
94
- "dayLabel",
95
- "monthLabel",
96
- "yearLabel",
97
- "hourLabel",
98
- "minuteLabel",
99
- "placeholder",
100
- "onFocus",
101
- "onBlur",
102
- "disabled",
103
- "controlComponent",
104
- "hintComponent",
105
- "hint",
106
- "variant",
107
- "TextComponent",
108
- "DateTimeSelectorComponent",
109
- "rightComponent",
110
- "style",
111
- "renderSelector",
112
- "requestShowSelector",
113
- "requestCloseSelector"
114
- ]);
15
+ const DateTimePicker = ({
16
+ onChange,
17
+ value,
18
+ mode = "date",
19
+ format: format$1 = "yyyy-MM-dd hh:mm:ss",
20
+ locale,
21
+ upperDateThreshold,
22
+ lowerDateThreshold,
23
+ offsetThreshold,
24
+ upperOffsetThreshold,
25
+ lowerOffsetThreshold,
26
+ dateModalTitle,
27
+ timeModalTitle,
28
+ dateConfirmButtonText,
29
+ timeConfirmButtonText,
30
+ dayLabel,
31
+ monthLabel,
32
+ yearLabel,
33
+ hourLabel,
34
+ minuteLabel,
35
+ placeholder,
36
+ onFocus,
37
+ onBlur,
38
+ disabled,
39
+ controlComponent,
40
+ hintComponent,
41
+ hint,
42
+ variant = "default",
43
+ TextComponent = Text,
44
+ DateTimeSelectorComponent = DateTimeSelector,
45
+ rightComponent,
46
+ style,
47
+ renderSelector,
48
+ requestShowSelector,
49
+ requestCloseSelector,
50
+ ...rest
51
+ }) => {
115
52
  const { focused, handleBlur, handleFocus } = useInputFocus(
116
53
  onFocus,
117
54
  onBlur,
@@ -122,7 +59,7 @@ const DateTimePicker = (_a) => {
122
59
  handleFocus();
123
60
  };
124
61
  const handleChoosing = (value2) => {
125
- onChange == null ? void 0 : onChange(value2);
62
+ onChange?.(value2);
126
63
  requestCloseSelector();
127
64
  };
128
65
  const StyledText = getStyledTextComponent(TextComponent);
@@ -151,7 +88,7 @@ const DateTimePicker = (_a) => {
151
88
  minuteLabel,
152
89
  onChange: handleChoosing
153
90
  });
154
- return /* @__PURE__ */ React.createElement(React.Fragment, null, controlComponent ? controlComponent(handleShowSelector, displayValue) : /* @__PURE__ */ React.createElement(HintInputContainer, __spreadValues({
91
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, controlComponent ? controlComponent(handleShowSelector, displayValue) : /* @__PURE__ */ React.createElement(HintInputContainer, {
155
92
  focused,
156
93
  viewStyle: style,
157
94
  onPress: handleShowSelector,
@@ -164,8 +101,9 @@ const DateTimePicker = (_a) => {
164
101
  name: "calendar-sharp",
165
102
  type: "ionicon",
166
103
  size: "centi"
167
- }), rightComponent)
168
- }, rest), /* @__PURE__ */ React.createElement(StyledText, {
104
+ }), rightComponent),
105
+ ...rest
106
+ }, /* @__PURE__ */ React.createElement(StyledText, {
169
107
  fontWeight: "bold",
170
108
  disabled
171
109
  }, displayValue)), renderSelector(dateTimeSelector, handleBlur));
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimePicker.js","sources":["../../../../../src/components/molecules/DateTimePicker/DateTimePicker.tsx"],"sourcesContent":["import { format as formatDate } from 'date-fns';\nimport * as React from 'react';\nimport { InputContainerProps, useInputFocus } from '../../atoms/Input';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { CalendarIcon, getStyledTextComponent } from '../DatePicker/styled';\nimport { DateTimeSelector, DateTimeSelectorProps } from '../DateTimeSelector';\nimport { HintInputContainer } from '../HintInputContainer';\nimport { getStyledDateTimeSelector } from './styled';\n\nexport interface DateTimePickerProps\n extends InputContainerProps,\n Omit<DateTimeSelectorProps, 'style'> {\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n TextComponent?: React.FC<TextProps>;\n DateTimeSelectorComponent: React.FC<DateTimeSelectorProps>;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n renderSelector: (\n selector: React.ReactElement,\n blur?: () => void\n ) => JSX.Element | null;\n requestShowSelector: () => void;\n requestCloseSelector: () => void;\n}\n\nconst DateTimePicker: React.FC<DateTimePickerProps> = ({\n onChange,\n value,\n mode = 'date',\n format = 'yyyy-MM-dd hh:mm:ss',\n locale,\n upperDateThreshold,\n lowerDateThreshold,\n offsetThreshold,\n upperOffsetThreshold,\n lowerOffsetThreshold,\n dateModalTitle,\n timeModalTitle,\n dateConfirmButtonText,\n timeConfirmButtonText,\n dayLabel,\n monthLabel,\n yearLabel,\n hourLabel,\n minuteLabel,\n placeholder,\n onFocus,\n onBlur,\n disabled,\n controlComponent,\n hintComponent,\n hint,\n variant = 'default',\n TextComponent = Text,\n DateTimeSelectorComponent = DateTimeSelector,\n rightComponent,\n style,\n renderSelector,\n requestShowSelector,\n requestCloseSelector,\n ...rest\n}) => {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const handleShowSelector = () => {\n requestShowSelector();\n handleFocus();\n };\n\n const handleChoosing = (value: Date) => {\n onChange?.(value);\n requestCloseSelector();\n };\n\n const StyledText = getStyledTextComponent(TextComponent);\n const displayValue =\n (value ? formatDate(value, format, { locale: locale }) : placeholder) ||\n ' ';\n const StyledDateTimeSelector = getStyledDateTimeSelector(\n DateTimeSelectorComponent\n );\n\n const dateTimeSelector = (\n <StyledDateTimeSelector\n value={value}\n mode={mode}\n format={format}\n locale={locale}\n upperDateThreshold={upperDateThreshold}\n lowerDateThreshold={lowerDateThreshold}\n offsetThreshold={offsetThreshold}\n upperOffsetThreshold={upperOffsetThreshold}\n lowerOffsetThreshold={lowerOffsetThreshold}\n dateModalTitle={dateModalTitle}\n timeModalTitle={timeModalTitle}\n dateConfirmButtonText={dateConfirmButtonText}\n timeConfirmButtonText={timeConfirmButtonText}\n dayLabel={dayLabel}\n monthLabel={monthLabel}\n yearLabel={yearLabel}\n hourLabel={hourLabel}\n minuteLabel={minuteLabel}\n onChange={handleChoosing}\n />\n );\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handleShowSelector, displayValue)\n ) : (\n <HintInputContainer\n focused={focused}\n viewStyle={style}\n onPress={handleShowSelector}\n disabled={disabled}\n LabelComponent={TextComponent}\n variant={variant}\n hint={hint}\n hintComponent={hintComponent}\n rightComponent={\n <>\n <CalendarIcon name=\"calendar-sharp\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledText fontWeight=\"bold\" disabled={disabled}>\n {displayValue}\n </StyledText>\n </HintInputContainer>\n )}\n {renderSelector(dateTimeSelector, handleBlur)}\n </>\n );\n};\n\nexport default DateTimePicker;\n"],"names":["format","value","formatDate"],"mappings":"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"}
1
+ {"version":3,"file":"DateTimePicker.js","sources":["../../../../../src/components/molecules/DateTimePicker/DateTimePicker.tsx"],"sourcesContent":["import { format as formatDate } from 'date-fns';\nimport * as React from 'react';\nimport { InputContainerProps, useInputFocus } from '../../atoms/Input';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { CalendarIcon, getStyledTextComponent } from '../DatePicker/styled';\nimport { DateTimeSelector, DateTimeSelectorProps } from '../DateTimeSelector';\nimport { HintInputContainer } from '../HintInputContainer';\nimport { getStyledDateTimeSelector } from './styled';\n\nexport interface DateTimePickerProps\n extends InputContainerProps,\n Omit<DateTimeSelectorProps, 'style'> {\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n TextComponent?: React.FC<TextProps>;\n DateTimeSelectorComponent: React.FC<DateTimeSelectorProps>;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n renderSelector: (\n selector: React.ReactElement,\n blur?: () => void\n ) => JSX.Element | null;\n requestShowSelector: () => void;\n requestCloseSelector: () => void;\n}\n\nconst DateTimePicker: React.FC<DateTimePickerProps> = ({\n onChange,\n value,\n mode = 'date',\n format = 'yyyy-MM-dd hh:mm:ss',\n locale,\n upperDateThreshold,\n lowerDateThreshold,\n offsetThreshold,\n upperOffsetThreshold,\n lowerOffsetThreshold,\n dateModalTitle,\n timeModalTitle,\n dateConfirmButtonText,\n timeConfirmButtonText,\n dayLabel,\n monthLabel,\n yearLabel,\n hourLabel,\n minuteLabel,\n placeholder,\n onFocus,\n onBlur,\n disabled,\n controlComponent,\n hintComponent,\n hint,\n variant = 'default',\n TextComponent = Text,\n DateTimeSelectorComponent = DateTimeSelector,\n rightComponent,\n style,\n renderSelector,\n requestShowSelector,\n requestCloseSelector,\n ...rest\n}) => {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const handleShowSelector = () => {\n requestShowSelector();\n handleFocus();\n };\n\n const handleChoosing = (value: Date) => {\n onChange?.(value);\n requestCloseSelector();\n };\n\n const StyledText = getStyledTextComponent(TextComponent);\n const displayValue =\n (value ? formatDate(value, format, { locale: locale }) : placeholder) ||\n ' ';\n const StyledDateTimeSelector = getStyledDateTimeSelector(\n DateTimeSelectorComponent\n );\n\n const dateTimeSelector = (\n <StyledDateTimeSelector\n value={value}\n mode={mode}\n format={format}\n locale={locale}\n upperDateThreshold={upperDateThreshold}\n lowerDateThreshold={lowerDateThreshold}\n offsetThreshold={offsetThreshold}\n upperOffsetThreshold={upperOffsetThreshold}\n lowerOffsetThreshold={lowerOffsetThreshold}\n dateModalTitle={dateModalTitle}\n timeModalTitle={timeModalTitle}\n dateConfirmButtonText={dateConfirmButtonText}\n timeConfirmButtonText={timeConfirmButtonText}\n dayLabel={dayLabel}\n monthLabel={monthLabel}\n yearLabel={yearLabel}\n hourLabel={hourLabel}\n minuteLabel={minuteLabel}\n onChange={handleChoosing}\n />\n );\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handleShowSelector, displayValue)\n ) : (\n <HintInputContainer\n focused={focused}\n viewStyle={style}\n onPress={handleShowSelector}\n disabled={disabled}\n LabelComponent={TextComponent}\n variant={variant}\n hint={hint}\n hintComponent={hintComponent}\n rightComponent={\n <>\n <CalendarIcon name=\"calendar-sharp\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledText fontWeight=\"bold\" disabled={disabled}>\n {displayValue}\n </StyledText>\n </HintInputContainer>\n )}\n {renderSelector(dateTimeSelector, handleBlur)}\n </>\n );\n};\n\nexport default DateTimePicker;\n"],"names":["format","value","formatDate"],"mappings":"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"}
@@ -8,34 +8,6 @@ import '@emotion/react';
8
8
  import { Selector } from './Selector.js';
9
9
  import { Root, Header, BackButton, Content, SelectorContainer } from './styled.js';
10
10
 
11
- var __defProp = Object.defineProperty;
12
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
13
- var __hasOwnProp = Object.prototype.hasOwnProperty;
14
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
15
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
16
- var __spreadValues = (a, b) => {
17
- for (var prop in b || (b = {}))
18
- if (__hasOwnProp.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- if (__getOwnPropSymbols)
21
- for (var prop of __getOwnPropSymbols(b)) {
22
- if (__propIsEnum.call(b, prop))
23
- __defNormalProp(a, prop, b[prop]);
24
- }
25
- return a;
26
- };
27
- var __objRest = (source, exclude) => {
28
- var target = {};
29
- for (var prop in source)
30
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
31
- target[prop] = source[prop];
32
- if (source != null && __getOwnPropSymbols)
33
- for (var prop of __getOwnPropSymbols(source)) {
34
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
35
- target[prop] = source[prop];
36
- }
37
- return target;
38
- };
39
11
  function getThresholdUnit(mode, threshold) {
40
12
  if (!threshold)
41
13
  return {};
@@ -47,48 +19,28 @@ function getThresholdUnit(mode, threshold) {
47
19
  return { hours: threshold };
48
20
  }
49
21
  }
50
- const DateTimeSelector = (_a) => {
51
- var _b = _a, {
52
- TextComponent = Text,
53
- value,
54
- onChange,
55
- mode = "date",
56
- locale,
57
- upperDateThreshold: _upperDateThreshold,
58
- lowerDateThreshold: _lowerDateThreshold,
59
- offsetThreshold,
60
- upperOffsetThreshold,
61
- lowerOffsetThreshold,
62
- dateModalTitle,
63
- timeModalTitle,
64
- dateConfirmButtonText,
65
- timeConfirmButtonText,
66
- dayLabel,
67
- monthLabel,
68
- yearLabel,
69
- hourLabel,
70
- minuteLabel
71
- } = _b, rest = __objRest(_b, [
72
- "TextComponent",
73
- "value",
74
- "onChange",
75
- "mode",
76
- "locale",
77
- "upperDateThreshold",
78
- "lowerDateThreshold",
79
- "offsetThreshold",
80
- "upperOffsetThreshold",
81
- "lowerOffsetThreshold",
82
- "dateModalTitle",
83
- "timeModalTitle",
84
- "dateConfirmButtonText",
85
- "timeConfirmButtonText",
86
- "dayLabel",
87
- "monthLabel",
88
- "yearLabel",
89
- "hourLabel",
90
- "minuteLabel"
91
- ]);
22
+ const DateTimeSelector = ({
23
+ TextComponent = Text,
24
+ value,
25
+ onChange,
26
+ mode = "date",
27
+ locale,
28
+ upperDateThreshold: _upperDateThreshold,
29
+ lowerDateThreshold: _lowerDateThreshold,
30
+ offsetThreshold,
31
+ upperOffsetThreshold,
32
+ lowerOffsetThreshold,
33
+ dateModalTitle,
34
+ timeModalTitle,
35
+ dateConfirmButtonText,
36
+ timeConfirmButtonText,
37
+ dayLabel,
38
+ monthLabel,
39
+ yearLabel,
40
+ hourLabel,
41
+ minuteLabel,
42
+ ...rest
43
+ }) => {
92
44
  const lowerDateThreshold = _lowerDateThreshold || (offsetThreshold || lowerOffsetThreshold) && sub(
93
45
  new Date(),
94
46
  getThresholdUnit(mode, offsetThreshold || lowerOffsetThreshold)
@@ -132,13 +84,15 @@ const DateTimeSelector = (_a) => {
132
84
  if (mode === "datetime" && currentMode === 0) {
133
85
  setCurrentMode(1);
134
86
  } else {
135
- onChange == null ? void 0 : onChange(date);
87
+ onChange?.(date);
136
88
  }
137
89
  };
138
90
  const handlePressBack = () => {
139
91
  setCurrentMode(0);
140
92
  };
141
- return /* @__PURE__ */ React.createElement(Root, __spreadValues({}, rest), /* @__PURE__ */ React.createElement(Header, null, currentMode === 1 && /* @__PURE__ */ React.createElement(BackButton, {
93
+ return /* @__PURE__ */ React.createElement(Root, {
94
+ ...rest
95
+ }, /* @__PURE__ */ React.createElement(Header, null, currentMode === 1 && /* @__PURE__ */ React.createElement(BackButton, {
142
96
  onPress: handlePressBack
143
97
  }, /* @__PURE__ */ React.createElement(Icon, {
144
98
  type: "material-community",
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimeSelector.js","sources":["../../../../../src/components/molecules/DateTimeSelector/DateTimeSelector.tsx"],"sourcesContent":["import {\n add,\n compareAsc,\n format as formatDate,\n getDaysInMonth,\n isSameDay,\n isSameMonth,\n isSameYear,\n set,\n sub,\n} from 'date-fns';\nimport * as React from 'react';\nimport { ViewProps } from 'react-native';\nimport { Button } from '../../atoms/Button';\nimport { Icon } from '../../atoms/Icon';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { Granularity, Selector } from './Selector';\nimport { BackButton, Content, Header, Root, SelectorContainer } from './styled';\n\nexport type DateTimeSelectorMode = 'date' | 'time' | 'datetime' | 'month';\n\nexport interface DateTimeSelectorProps extends ViewProps {\n TextComponent?: React.FC<TextProps>;\n value?: Date;\n onChange?: (value: Date) => void | never;\n\n /**\n * Defines the Picker behavior\n * Must be one of ['date', 'time', 'datetime', 'month']\n */\n mode?: DateTimeSelectorMode;\n format?: string;\n locale?: Locale;\n\n /**\n * Maximum date from today\n */\n upperDateThreshold?: Date;\n\n /**\n * Minimum date from today\n */\n lowerDateThreshold?: Date;\n\n /**\n * Minimum and maximum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n offsetThreshold?: number;\n\n /**\n * Maximum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n upperOffsetThreshold?: number;\n\n /**\n * Minimum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n lowerOffsetThreshold?: number;\n\n dateModalTitle?: string;\n timeModalTitle?: string;\n dateConfirmButtonText?: string;\n timeConfirmButtonText?: string;\n dayLabel?: string;\n monthLabel?: string;\n yearLabel?: string;\n hourLabel?: string;\n minuteLabel?: string;\n}\n\nfunction getThresholdUnit(mode: DateTimeSelectorMode, threshold?: number) {\n if (!threshold) return {};\n if (mode === 'month') {\n return { months: threshold };\n } else if (['date', 'datetime'].includes(mode)) {\n return { days: threshold };\n } else {\n return { hours: threshold };\n }\n}\n\nconst DateTimeSelector: React.FC<DateTimeSelectorProps> = ({\n TextComponent = Text,\n value,\n onChange,\n mode = 'date',\n locale,\n upperDateThreshold: _upperDateThreshold,\n lowerDateThreshold: _lowerDateThreshold,\n offsetThreshold,\n upperOffsetThreshold,\n lowerOffsetThreshold,\n dateModalTitle,\n timeModalTitle,\n dateConfirmButtonText,\n timeConfirmButtonText,\n dayLabel,\n monthLabel,\n yearLabel,\n hourLabel,\n minuteLabel,\n ...rest\n}) => {\n const lowerDateThreshold =\n _lowerDateThreshold ||\n ((offsetThreshold || lowerOffsetThreshold) &&\n sub(\n new Date(),\n getThresholdUnit(mode, offsetThreshold || lowerOffsetThreshold)\n ));\n\n const upperDateThreshold =\n _upperDateThreshold ||\n ((offsetThreshold || upperOffsetThreshold) &&\n add(\n new Date(),\n getThresholdUnit(mode, offsetThreshold || upperOffsetThreshold)\n ));\n\n const [date, setDate] = React.useState<Date>(value || new Date());\n const [currentMode, setCurrentMode] = React.useState<0 | 1>(0);\n\n const isDate =\n ['date', 'month'].includes(mode) ||\n (mode === 'datetime' && currentMode === 0);\n\n const modalTitle = isDate ? dateModalTitle : timeModalTitle;\n const confirmButtonText = isDate\n ? dateConfirmButtonText\n : timeConfirmButtonText;\n\n const handleChange = (granularity: Granularity) => (newValue: number) => {\n setDate(date => {\n let newState: Date;\n // Months and years must have a different handling for being\n // the only date units that may interfere another unit.\n if (['month', 'year'].includes(granularity)) {\n let newDate = set(date, { [granularity]: newValue });\n const daysInMonth = getDaysInMonth(newDate);\n if (granularity === 'year' && date.getMonth() != newDate.getMonth()) {\n newDate = set(newDate, { month: date.getMonth() });\n newState = set(newDate, { date: getDaysInMonth(newDate) });\n }\n newState =\n daysInMonth < date.getDate()\n ? set(newDate, { date: daysInMonth })\n : newDate;\n } else {\n newState = set(date, { [granularity]: newValue });\n }\n\n if (upperDateThreshold && compareAsc(newState, upperDateThreshold) > 0) {\n return upperDateThreshold;\n } else if (\n lowerDateThreshold &&\n compareAsc(newState, lowerDateThreshold) < 0\n ) {\n return lowerDateThreshold;\n } else {\n return newState;\n }\n });\n };\n\n const getDisplayedValue = (granularity: Granularity) => (value: number) => {\n return granularity === 'month'\n ? formatDate(date, 'MMM', { locale: locale }).slice(0, 3)\n : value.toString().padStart(2, '0');\n };\n\n const handlePressConfirm = () => {\n if (mode === 'datetime' && currentMode === 0) {\n setCurrentMode(1);\n } else {\n onChange?.(date);\n }\n };\n\n const handlePressBack = () => {\n setCurrentMode(0);\n };\n\n return (\n <Root {...rest}>\n <Header>\n {currentMode === 1 && (\n <BackButton onPress={handlePressBack}>\n <Icon\n type={'material-community'}\n name={'chevron-left'}\n size={'mega'}\n colorVariant={'secondary'}\n />\n </BackButton>\n )}\n <TextComponent typography={'base'} colorVariant={'secondary'}>\n {modalTitle}\n </TextComponent>\n </Header>\n\n {isDate ? (\n <Content>\n {mode !== 'month' && (\n <SelectorContainer isFirst>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('date')}\n referenceDate={date}\n value={date.getDate()}\n label={dayLabel || 'Day'}\n granularity={'date'}\n getDisplayValue={getDisplayedValue('date')}\n preventUpper={\n upperDateThreshold\n ? isSameDay(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameDay(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n )}\n <SelectorContainer>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('month')}\n referenceDate={date}\n value={date.getMonth()}\n label={monthLabel || 'Month'}\n granularity={'month'}\n getDisplayValue={getDisplayedValue('month')}\n preventUpper={\n upperDateThreshold\n ? isSameMonth(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameMonth(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n <SelectorContainer isLast>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('year')}\n referenceDate={date}\n value={date.getFullYear()}\n label={yearLabel || 'Year'}\n granularity={'year'}\n getDisplayValue={getDisplayedValue('year')}\n preventUpper={\n upperDateThreshold\n ? isSameYear(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameYear(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n </Content>\n ) : (\n <Content>\n <SelectorContainer isFirst>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('hours')}\n referenceDate={date}\n value={date.getHours()}\n label={hourLabel || 'Hour'}\n granularity={'hours'}\n getDisplayValue={getDisplayedValue('hours')}\n />\n </SelectorContainer>\n <SelectorContainer isLast>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('minutes')}\n referenceDate={date}\n value={date.getMinutes()}\n label={minuteLabel || 'Minute'}\n granularity={'minutes'}\n getDisplayValue={getDisplayedValue('minutes')}\n />\n </SelectorContainer>\n </Content>\n )}\n <Button color={'primary'} onPress={handlePressConfirm}>\n <TextComponent fontWeight=\"bold\" fontColor=\"light\">\n {confirmButtonText || 'OK'}\n </TextComponent>\n </Button>\n </Root>\n );\n};\n\nexport default DateTimeSelector;\n"],"names":["date","value","formatDate"],"mappings":"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"}
1
+ {"version":3,"file":"DateTimeSelector.js","sources":["../../../../../src/components/molecules/DateTimeSelector/DateTimeSelector.tsx"],"sourcesContent":["import {\n add,\n compareAsc,\n format as formatDate,\n getDaysInMonth,\n isSameDay,\n isSameMonth,\n isSameYear,\n set,\n sub,\n} from 'date-fns';\nimport * as React from 'react';\nimport { ViewProps } from 'react-native';\nimport { Button } from '../../atoms/Button';\nimport { Icon } from '../../atoms/Icon';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { Granularity, Selector } from './Selector';\nimport { BackButton, Content, Header, Root, SelectorContainer } from './styled';\n\nexport type DateTimeSelectorMode = 'date' | 'time' | 'datetime' | 'month';\n\nexport interface DateTimeSelectorProps extends ViewProps {\n TextComponent?: React.FC<TextProps>;\n value?: Date;\n onChange?: (value: Date) => void | never;\n\n /**\n * Defines the Picker behavior\n * Must be one of ['date', 'time', 'datetime', 'month']\n */\n mode?: DateTimeSelectorMode;\n format?: string;\n locale?: Locale;\n\n /**\n * Maximum date from today\n */\n upperDateThreshold?: Date;\n\n /**\n * Minimum date from today\n */\n lowerDateThreshold?: Date;\n\n /**\n * Minimum and maximum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n offsetThreshold?: number;\n\n /**\n * Maximum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n upperOffsetThreshold?: number;\n\n /**\n * Minimum date in distance units from today.\n * The distance unit used depends on the picker mode\n * If mode is date, the unit is day\n * If mode is time, the unit is hour\n * If mode is datetime, the unit is day\n * If mode is month, the unit is month\n */\n lowerOffsetThreshold?: number;\n\n dateModalTitle?: string;\n timeModalTitle?: string;\n dateConfirmButtonText?: string;\n timeConfirmButtonText?: string;\n dayLabel?: string;\n monthLabel?: string;\n yearLabel?: string;\n hourLabel?: string;\n minuteLabel?: string;\n}\n\nfunction getThresholdUnit(mode: DateTimeSelectorMode, threshold?: number) {\n if (!threshold) return {};\n if (mode === 'month') {\n return { months: threshold };\n } else if (['date', 'datetime'].includes(mode)) {\n return { days: threshold };\n } else {\n return { hours: threshold };\n }\n}\n\nconst DateTimeSelector: React.FC<DateTimeSelectorProps> = ({\n TextComponent = Text,\n value,\n onChange,\n mode = 'date',\n locale,\n upperDateThreshold: _upperDateThreshold,\n lowerDateThreshold: _lowerDateThreshold,\n offsetThreshold,\n upperOffsetThreshold,\n lowerOffsetThreshold,\n dateModalTitle,\n timeModalTitle,\n dateConfirmButtonText,\n timeConfirmButtonText,\n dayLabel,\n monthLabel,\n yearLabel,\n hourLabel,\n minuteLabel,\n ...rest\n}) => {\n const lowerDateThreshold =\n _lowerDateThreshold ||\n ((offsetThreshold || lowerOffsetThreshold) &&\n sub(\n new Date(),\n getThresholdUnit(mode, offsetThreshold || lowerOffsetThreshold)\n ));\n\n const upperDateThreshold =\n _upperDateThreshold ||\n ((offsetThreshold || upperOffsetThreshold) &&\n add(\n new Date(),\n getThresholdUnit(mode, offsetThreshold || upperOffsetThreshold)\n ));\n\n const [date, setDate] = React.useState<Date>(value || new Date());\n const [currentMode, setCurrentMode] = React.useState<0 | 1>(0);\n\n const isDate =\n ['date', 'month'].includes(mode) ||\n (mode === 'datetime' && currentMode === 0);\n\n const modalTitle = isDate ? dateModalTitle : timeModalTitle;\n const confirmButtonText = isDate\n ? dateConfirmButtonText\n : timeConfirmButtonText;\n\n const handleChange = (granularity: Granularity) => (newValue: number) => {\n setDate(date => {\n let newState: Date;\n // Months and years must have a different handling for being\n // the only date units that may interfere another unit.\n if (['month', 'year'].includes(granularity)) {\n let newDate = set(date, { [granularity]: newValue });\n const daysInMonth = getDaysInMonth(newDate);\n if (granularity === 'year' && date.getMonth() != newDate.getMonth()) {\n newDate = set(newDate, { month: date.getMonth() });\n newState = set(newDate, { date: getDaysInMonth(newDate) });\n }\n newState =\n daysInMonth < date.getDate()\n ? set(newDate, { date: daysInMonth })\n : newDate;\n } else {\n newState = set(date, { [granularity]: newValue });\n }\n\n if (upperDateThreshold && compareAsc(newState, upperDateThreshold) > 0) {\n return upperDateThreshold;\n } else if (\n lowerDateThreshold &&\n compareAsc(newState, lowerDateThreshold) < 0\n ) {\n return lowerDateThreshold;\n } else {\n return newState;\n }\n });\n };\n\n const getDisplayedValue = (granularity: Granularity) => (value: number) => {\n return granularity === 'month'\n ? formatDate(date, 'MMM', { locale: locale }).slice(0, 3)\n : value.toString().padStart(2, '0');\n };\n\n const handlePressConfirm = () => {\n if (mode === 'datetime' && currentMode === 0) {\n setCurrentMode(1);\n } else {\n onChange?.(date);\n }\n };\n\n const handlePressBack = () => {\n setCurrentMode(0);\n };\n\n return (\n <Root {...rest}>\n <Header>\n {currentMode === 1 && (\n <BackButton onPress={handlePressBack}>\n <Icon\n type={'material-community'}\n name={'chevron-left'}\n size={'mega'}\n colorVariant={'secondary'}\n />\n </BackButton>\n )}\n <TextComponent typography={'base'} colorVariant={'secondary'}>\n {modalTitle}\n </TextComponent>\n </Header>\n\n {isDate ? (\n <Content>\n {mode !== 'month' && (\n <SelectorContainer isFirst>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('date')}\n referenceDate={date}\n value={date.getDate()}\n label={dayLabel || 'Day'}\n granularity={'date'}\n getDisplayValue={getDisplayedValue('date')}\n preventUpper={\n upperDateThreshold\n ? isSameDay(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameDay(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n )}\n <SelectorContainer>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('month')}\n referenceDate={date}\n value={date.getMonth()}\n label={monthLabel || 'Month'}\n granularity={'month'}\n getDisplayValue={getDisplayedValue('month')}\n preventUpper={\n upperDateThreshold\n ? isSameMonth(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameMonth(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n <SelectorContainer isLast>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('year')}\n referenceDate={date}\n value={date.getFullYear()}\n label={yearLabel || 'Year'}\n granularity={'year'}\n getDisplayValue={getDisplayedValue('year')}\n preventUpper={\n upperDateThreshold\n ? isSameYear(upperDateThreshold, date)\n : false\n }\n preventLower={\n lowerDateThreshold\n ? isSameYear(lowerDateThreshold, date)\n : false\n }\n />\n </SelectorContainer>\n </Content>\n ) : (\n <Content>\n <SelectorContainer isFirst>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('hours')}\n referenceDate={date}\n value={date.getHours()}\n label={hourLabel || 'Hour'}\n granularity={'hours'}\n getDisplayValue={getDisplayedValue('hours')}\n />\n </SelectorContainer>\n <SelectorContainer isLast>\n <Selector\n TextComponent={TextComponent}\n onChange={handleChange('minutes')}\n referenceDate={date}\n value={date.getMinutes()}\n label={minuteLabel || 'Minute'}\n granularity={'minutes'}\n getDisplayValue={getDisplayedValue('minutes')}\n />\n </SelectorContainer>\n </Content>\n )}\n <Button color={'primary'} onPress={handlePressConfirm}>\n <TextComponent fontWeight=\"bold\" fontColor=\"light\">\n {confirmButtonText || 'OK'}\n </TextComponent>\n </Button>\n </Root>\n );\n};\n\nexport default DateTimeSelector;\n"],"names":["date","value","formatDate"],"mappings":"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"}
@@ -3,34 +3,6 @@ import * as React from 'react';
3
3
  import Icon from '../../atoms/Icon/Icon.js';
4
4
  import { SelectorRoot, Control, SelectorValue } from './styled.js';
5
5
 
6
- var __defProp = Object.defineProperty;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
- var __spreadValues = (a, b) => {
12
- for (var prop in b || (b = {}))
13
- if (__hasOwnProp.call(b, prop))
14
- __defNormalProp(a, prop, b[prop]);
15
- if (__getOwnPropSymbols)
16
- for (var prop of __getOwnPropSymbols(b)) {
17
- if (__propIsEnum.call(b, prop))
18
- __defNormalProp(a, prop, b[prop]);
19
- }
20
- return a;
21
- };
22
- var __objRest = (source, exclude) => {
23
- var target = {};
24
- for (var prop in source)
25
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
26
- target[prop] = source[prop];
27
- if (source != null && __getOwnPropSymbols)
28
- for (var prop of __getOwnPropSymbols(source)) {
29
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
30
- target[prop] = source[prop];
31
- }
32
- return target;
33
- };
34
6
  function getPrevAndNext(value, granularity, daysInMonth, multiplier = 1) {
35
7
  let next = value + multiplier, prev = value - multiplier;
36
8
  if (granularity === "date") {
@@ -48,28 +20,18 @@ function getPrevAndNext(value, granularity, daysInMonth, multiplier = 1) {
48
20
  }
49
21
  return [prev, next];
50
22
  }
51
- const Selector = (_a) => {
52
- var _b = _a, {
53
- granularity,
54
- label,
55
- value,
56
- onChange,
57
- getDisplayValue,
58
- referenceDate,
59
- preventUpper,
60
- preventLower,
61
- TextComponent
62
- } = _b, rest = __objRest(_b, [
63
- "granularity",
64
- "label",
65
- "value",
66
- "onChange",
67
- "getDisplayValue",
68
- "referenceDate",
69
- "preventUpper",
70
- "preventLower",
71
- "TextComponent"
72
- ]);
23
+ const Selector = ({
24
+ granularity,
25
+ label,
26
+ value,
27
+ onChange,
28
+ getDisplayValue,
29
+ referenceDate,
30
+ preventUpper,
31
+ preventLower,
32
+ TextComponent,
33
+ ...rest
34
+ }) => {
73
35
  const pressInTimeoutRef = React.useRef();
74
36
  const handlePressInNext = (_next) => {
75
37
  const daysInMonth = getDaysInMonth(referenceDate);
@@ -92,7 +54,9 @@ const Selector = (_a) => {
92
54
  const handlePressOut = () => {
93
55
  pressInTimeoutRef.current && clearTimeout(pressInTimeoutRef.current);
94
56
  };
95
- return /* @__PURE__ */ React.createElement(SelectorRoot, __spreadValues({}, rest), /* @__PURE__ */ React.createElement(Control, {
57
+ return /* @__PURE__ */ React.createElement(SelectorRoot, {
58
+ ...rest
59
+ }, /* @__PURE__ */ React.createElement(Control, {
96
60
  onPressIn: () => requestAnimationFrame(() => handlePressInNext()),
97
61
  onPressOut: handlePressOut,
98
62
  disabled: preventUpper
@@ -1 +1 @@
1
- {"version":3,"file":"Selector.js","sources":["../../../../../src/components/molecules/DateTimeSelector/Selector.tsx"],"sourcesContent":["import { getDaysInMonth } from 'date-fns';\nimport * as React from 'react';\nimport { ViewProps } from 'react-native';\nimport { Icon } from '../../atoms/Icon';\nimport { TextProps } from '../../atoms/Text';\nimport { Control, SelectorRoot, SelectorValue } from './styled';\n\nexport type Granularity = 'date' | 'month' | 'year' | 'hours' | 'minutes';\n\ninterface SelectorProps extends ViewProps {\n TextComponent: React.FC<TextProps>;\n granularity: Granularity;\n referenceDate: Date;\n label: string;\n value: number;\n getDisplayValue: (value: number) => string;\n onChange: (value: number) => void | never;\n preventUpper?: boolean;\n preventLower?: boolean;\n}\n\nfunction getPrevAndNext(\n value: number,\n granularity: Granularity,\n daysInMonth: number,\n multiplier = 1\n): [number, number] {\n let next = value + multiplier,\n prev = value - multiplier;\n\n if (granularity === 'date') {\n next = next > daysInMonth ? 1 : next;\n prev = prev < 1 ? daysInMonth : prev;\n } else if (granularity === 'month') {\n next = next > 11 ? 0 : next;\n prev = prev < 0 ? 11 : prev;\n } else if (granularity === 'hours') {\n next = next > 23 ? 0 : next;\n prev = prev < 0 ? 23 : prev;\n } else if (granularity === 'minutes') {\n next = next > 59 ? 0 : next;\n prev = prev < 0 ? 59 : prev;\n }\n\n return [prev, next];\n}\nexport const Selector: React.FC<SelectorProps> = ({\n granularity,\n label,\n value,\n onChange,\n getDisplayValue,\n referenceDate,\n preventUpper,\n preventLower,\n TextComponent,\n ...rest\n}) => {\n const pressInTimeoutRef = React.useRef<number>();\n\n const handlePressInNext = (_next?: number) => {\n const daysInMonth = getDaysInMonth(referenceDate);\n const next = _next || getPrevAndNext(value, granularity, daysInMonth)[1];\n clearTimeout(pressInTimeoutRef.current);\n pressInTimeoutRef.current = setTimeout(() => {\n handlePressInNext(getPrevAndNext(next, granularity, daysInMonth, 3)[1]);\n }, 500);\n onChange(next);\n };\n\n const handlePressInPrev = (_prev?: number) => {\n const daysInMonth = getDaysInMonth(referenceDate);\n const prev = _prev || getPrevAndNext(value, granularity, daysInMonth)[0];\n clearTimeout(pressInTimeoutRef.current);\n pressInTimeoutRef.current = setTimeout(() => {\n handlePressInPrev(getPrevAndNext(prev, granularity, daysInMonth, 3)[0]);\n }, 500);\n onChange(prev);\n };\n\n const handlePressOut = () => {\n pressInTimeoutRef.current && clearTimeout(pressInTimeoutRef.current);\n };\n\n return (\n <SelectorRoot {...rest}>\n <Control\n onPressIn={() => requestAnimationFrame(() => handlePressInNext())}\n onPressOut={handlePressOut}\n disabled={preventUpper}\n >\n <Icon\n name={'chevron-up'}\n type={'material-community'}\n size={'mega'}\n colorVariant={'primary'}\n />\n </Control>\n <SelectorValue>\n <TextComponent colorVariant={'secondary'} typography={'sub'}>\n {label}\n </TextComponent>\n <TextComponent fontWeight={'bold'} typography={'h5'}>\n {getDisplayValue(value)}\n </TextComponent>\n </SelectorValue>\n <Control\n onPressIn={() => requestAnimationFrame(() => handlePressInPrev())}\n onPressOut={handlePressOut}\n disabled={preventLower}\n style={{ opacity: preventLower ? 0 : 1 }}\n >\n <Icon\n name={'chevron-down'}\n type={'material-community'}\n size={'mega'}\n colorVariant={'primary'}\n />\n </Control>\n </SelectorRoot>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Selector.js","sources":["../../../../../src/components/molecules/DateTimeSelector/Selector.tsx"],"sourcesContent":["import { getDaysInMonth } from 'date-fns';\nimport * as React from 'react';\nimport { ViewProps } from 'react-native';\nimport { Icon } from '../../atoms/Icon';\nimport { TextProps } from '../../atoms/Text';\nimport { Control, SelectorRoot, SelectorValue } from './styled';\n\nexport type Granularity = 'date' | 'month' | 'year' | 'hours' | 'minutes';\n\ninterface SelectorProps extends ViewProps {\n TextComponent: React.FC<TextProps>;\n granularity: Granularity;\n referenceDate: Date;\n label: string;\n value: number;\n getDisplayValue: (value: number) => string;\n onChange: (value: number) => void | never;\n preventUpper?: boolean;\n preventLower?: boolean;\n}\n\nfunction getPrevAndNext(\n value: number,\n granularity: Granularity,\n daysInMonth: number,\n multiplier = 1\n): [number, number] {\n let next = value + multiplier,\n prev = value - multiplier;\n\n if (granularity === 'date') {\n next = next > daysInMonth ? 1 : next;\n prev = prev < 1 ? daysInMonth : prev;\n } else if (granularity === 'month') {\n next = next > 11 ? 0 : next;\n prev = prev < 0 ? 11 : prev;\n } else if (granularity === 'hours') {\n next = next > 23 ? 0 : next;\n prev = prev < 0 ? 23 : prev;\n } else if (granularity === 'minutes') {\n next = next > 59 ? 0 : next;\n prev = prev < 0 ? 59 : prev;\n }\n\n return [prev, next];\n}\nexport const Selector: React.FC<SelectorProps> = ({\n granularity,\n label,\n value,\n onChange,\n getDisplayValue,\n referenceDate,\n preventUpper,\n preventLower,\n TextComponent,\n ...rest\n}) => {\n const pressInTimeoutRef = React.useRef<number>();\n\n const handlePressInNext = (_next?: number) => {\n const daysInMonth = getDaysInMonth(referenceDate);\n const next = _next || getPrevAndNext(value, granularity, daysInMonth)[1];\n clearTimeout(pressInTimeoutRef.current);\n pressInTimeoutRef.current = setTimeout(() => {\n handlePressInNext(getPrevAndNext(next, granularity, daysInMonth, 3)[1]);\n }, 500);\n onChange(next);\n };\n\n const handlePressInPrev = (_prev?: number) => {\n const daysInMonth = getDaysInMonth(referenceDate);\n const prev = _prev || getPrevAndNext(value, granularity, daysInMonth)[0];\n clearTimeout(pressInTimeoutRef.current);\n pressInTimeoutRef.current = setTimeout(() => {\n handlePressInPrev(getPrevAndNext(prev, granularity, daysInMonth, 3)[0]);\n }, 500);\n onChange(prev);\n };\n\n const handlePressOut = () => {\n pressInTimeoutRef.current && clearTimeout(pressInTimeoutRef.current);\n };\n\n return (\n <SelectorRoot {...rest}>\n <Control\n onPressIn={() => requestAnimationFrame(() => handlePressInNext())}\n onPressOut={handlePressOut}\n disabled={preventUpper}\n >\n <Icon\n name={'chevron-up'}\n type={'material-community'}\n size={'mega'}\n colorVariant={'primary'}\n />\n </Control>\n <SelectorValue>\n <TextComponent colorVariant={'secondary'} typography={'sub'}>\n {label}\n </TextComponent>\n <TextComponent fontWeight={'bold'} typography={'h5'}>\n {getDisplayValue(value)}\n </TextComponent>\n </SelectorValue>\n <Control\n onPressIn={() => requestAnimationFrame(() => handlePressInPrev())}\n onPressOut={handlePressOut}\n disabled={preventLower}\n style={{ opacity: preventLower ? 0 : 1 }}\n >\n <Icon\n name={'chevron-down'}\n type={'material-community'}\n size={'mega'}\n colorVariant={'primary'}\n />\n </Control>\n </SelectorRoot>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -9,12 +9,11 @@ import '../../atoms/Input/PressableInputContainer/styled.js';
9
9
  import 'react-native';
10
10
 
11
11
  const getGridItemPadding = (pos, _spacing, themeSpacing) => {
12
- var _a;
13
12
  if (_spacing) {
14
13
  if (typeof _spacing === "string")
15
14
  return extractNumbersFromString(themeSpacing[_spacing]);
16
15
  else if (typeof _spacing === "object" && _spacing[pos]) {
17
- return extractNumbersFromString(themeSpacing[(_a = _spacing[pos]) != null ? _a : "0"]);
16
+ return extractNumbersFromString(themeSpacing[_spacing[pos] ?? "0"]);
18
17
  } else
19
18
  return void 0;
20
19
  } else
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sources":["../../../../../src/components/molecules/Grid/functions.ts"],"sourcesContent":["import { GridSpacing, PaddingPosition, Spacing } from '@tecsinapse/react-core';\nimport { extractNumbersFromString } from '../../../utils';\n\nexport const getGridItemPadding = (\n pos: PaddingPosition,\n _spacing: GridSpacing | undefined,\n themeSpacing: Spacing\n): number | undefined => {\n if (_spacing) {\n if (typeof _spacing === 'string')\n return extractNumbersFromString(themeSpacing[_spacing]);\n else if (typeof _spacing === 'object' && _spacing[pos]) {\n return extractNumbersFromString(themeSpacing[_spacing[pos] ?? '0']);\n } else return undefined;\n } else return undefined;\n};\n\n/**\n * Calc the basis width percentage for a given item\n * @param columns - number of grid columns\n * @param span - number of columns to merge\n * @returns {number} - value in %\n */\nexport const getGridItemColumSpan = (columns: number, span: number): number =>\n 100 / (columns / span);\n"],"names":[],"mappings":";;;;;;;;;;AAGO,MAAM,kBAAqB,GAAA,CAChC,GACA,EAAA,QAAA,EACA,YACuB,KAAA;AAPzB,EAAA,IAAA,EAAA,CAAA;AAQE,EAAA,IAAI,QAAU,EAAA;AACZ,IAAA,IAAI,OAAO,QAAa,KAAA,QAAA;AACtB,MAAO,OAAA,wBAAA,CAAyB,aAAa,QAAS,CAAA,CAAA,CAAA;AAAA,SAAA,IAC/C,OAAO,QAAA,KAAa,QAAY,IAAA,QAAA,CAAS,GAAM,CAAA,EAAA;AACtD,MAAA,OAAO,wBAAyB,CAAA,YAAA,CAAA,CAAa,EAAS,GAAA,QAAA,CAAA,GAAA,CAAA,KAAT,YAAiB,GAAI,CAAA,CAAA,CAAA;AAAA,KACpE;AAAO,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,GAChB;AAAO,IAAO,OAAA,KAAA,CAAA,CAAA;AAChB,EAAA;AAQO,MAAM,oBAAuB,GAAA,CAAC,OAAiB,EAAA,IAAA,KACpD,OAAO,OAAU,GAAA,IAAA;;;;"}
1
+ {"version":3,"file":"functions.js","sources":["../../../../../src/components/molecules/Grid/functions.ts"],"sourcesContent":["import { GridSpacing, PaddingPosition, Spacing } from '@tecsinapse/react-core';\nimport { extractNumbersFromString } from '../../../utils';\n\nexport const getGridItemPadding = (\n pos: PaddingPosition,\n _spacing: GridSpacing | undefined,\n themeSpacing: Spacing\n): number | undefined => {\n if (_spacing) {\n if (typeof _spacing === 'string')\n return extractNumbersFromString(themeSpacing[_spacing]);\n else if (typeof _spacing === 'object' && _spacing[pos]) {\n return extractNumbersFromString(themeSpacing[_spacing[pos] ?? '0']);\n } else return undefined;\n } else return undefined;\n};\n\n/**\n * Calc the basis width percentage for a given item\n * @param columns - number of grid columns\n * @param span - number of columns to merge\n * @returns {number} - value in %\n */\nexport const getGridItemColumSpan = (columns: number, span: number): number =>\n 100 / (columns / span);\n"],"names":[],"mappings":";;;;;;;;;;AAGO,MAAM,kBAAqB,GAAA,CAChC,GACA,EAAA,QAAA,EACA,YACuB,KAAA;AACvB,EAAA,IAAI,QAAU,EAAA;AACZ,IAAA,IAAI,OAAO,QAAa,KAAA,QAAA;AACtB,MAAO,OAAA,wBAAA,CAAyB,aAAa,QAAS,CAAA,CAAA,CAAA;AAAA,SAAA,IAC/C,OAAO,QAAA,KAAa,QAAY,IAAA,QAAA,CAAS,GAAM,CAAA,EAAA;AACtD,MAAA,OAAO,wBAAyB,CAAA,YAAA,CAAa,QAAS,CAAA,GAAA,CAAA,IAAQ,GAAI,CAAA,CAAA,CAAA;AAAA,KACpE;AAAO,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,GAChB;AAAO,IAAO,OAAA,KAAA,CAAA,CAAA;AAChB,EAAA;AAQO,MAAM,oBAAuB,GAAA,CAAC,OAAiB,EAAA,IAAA,KACpD,OAAO,OAAU,GAAA,IAAA;;;;"}