@tecsinapse/react-native-kit 1.23.11 → 2.0.1

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 (227) hide show
  1. package/dist/cjs/components/atoms/Avatar/Avatar.js +1 -8
  2. package/dist/cjs/components/atoms/Avatar/Avatar.js.map +1 -1
  3. package/dist/cjs/components/atoms/Badge/Badge.js +8 -12
  4. package/dist/cjs/components/atoms/Badge/Badge.js.map +1 -1
  5. package/dist/cjs/components/atoms/BottomNavigator/BottomNavigator.js +14 -16
  6. package/dist/cjs/components/atoms/BottomNavigator/BottomNavigator.js.map +1 -1
  7. package/dist/cjs/components/atoms/BottomNavigator/Item.d.ts +3 -3
  8. package/dist/cjs/components/atoms/BottomNavigator/Item.js +4 -12
  9. package/dist/cjs/components/atoms/BottomNavigator/Item.js.map +1 -1
  10. package/dist/cjs/components/atoms/BottomNavigator/styled.js +4 -10
  11. package/dist/cjs/components/atoms/BottomNavigator/styled.js.map +1 -1
  12. package/dist/cjs/components/atoms/Button/Button.d.ts +1 -1
  13. package/dist/cjs/components/atoms/Button/Button.js +1 -10
  14. package/dist/cjs/components/atoms/Button/Button.js.map +1 -1
  15. package/dist/cjs/components/atoms/Button/States/Error.js +1 -8
  16. package/dist/cjs/components/atoms/Button/States/Error.js.map +1 -1
  17. package/dist/cjs/components/atoms/Button/States/Loading.js +1 -8
  18. package/dist/cjs/components/atoms/Button/States/Loading.js.map +1 -1
  19. package/dist/cjs/components/atoms/Button/States/Success.js +1 -8
  20. package/dist/cjs/components/atoms/Button/States/Success.js.map +1 -1
  21. package/dist/cjs/components/atoms/GroupButton/GroupButtonOption.d.ts +1 -0
  22. package/dist/cjs/components/atoms/GroupButton/GroupButtonOption.js +1 -8
  23. package/dist/cjs/components/atoms/GroupButton/GroupButtonOption.js.map +1 -1
  24. package/dist/cjs/components/atoms/Header/Header.d.ts +1 -1
  25. package/dist/cjs/components/atoms/Header/Header.js +14 -33
  26. package/dist/cjs/components/atoms/Header/Header.js.map +1 -1
  27. package/dist/cjs/components/atoms/Header/styled.js +3 -9
  28. package/dist/cjs/components/atoms/Header/styled.js.map +1 -1
  29. package/dist/cjs/components/atoms/Input/Input.js +37 -38
  30. package/dist/cjs/components/atoms/Input/Input.js.map +1 -1
  31. package/dist/cjs/components/atoms/Input/styled.js +2 -8
  32. package/dist/cjs/components/atoms/Input/styled.js.map +1 -1
  33. package/dist/cjs/components/atoms/InputMask/InputMask.js +37 -40
  34. package/dist/cjs/components/atoms/InputMask/InputMask.js.map +1 -1
  35. package/dist/cjs/components/atoms/InputMask/styled.js +3 -9
  36. package/dist/cjs/components/atoms/InputMask/styled.js.map +1 -1
  37. package/dist/cjs/components/atoms/Modal/ModalGroupManager.js +11 -13
  38. package/dist/cjs/components/atoms/Modal/ModalGroupManager.js.map +1 -1
  39. package/dist/cjs/components/atoms/Modal/ModalLifecycleHandler.js +47 -7
  40. package/dist/cjs/components/atoms/Modal/ModalLifecycleHandler.js.map +1 -1
  41. package/dist/cjs/components/atoms/Modal/ui/BaseModalView.js +20 -21
  42. package/dist/cjs/components/atoms/Modal/ui/BaseModalView.js.map +1 -1
  43. package/dist/cjs/components/atoms/Modal/ui/styled.js +3 -9
  44. package/dist/cjs/components/atoms/Modal/ui/styled.js.map +1 -1
  45. package/dist/cjs/components/atoms/Modal/ui/types.d.ts +2 -1
  46. package/dist/cjs/components/atoms/Modal/useLazyModalManager.js +0 -2
  47. package/dist/cjs/components/atoms/Modal/useLazyModalManager.js.map +1 -1
  48. package/dist/cjs/components/atoms/Modal/useModalManager.js +0 -2
  49. package/dist/cjs/components/atoms/Modal/useModalManager.js.map +1 -1
  50. package/dist/cjs/components/atoms/Modal/useModalRemoteControl.js +0 -2
  51. package/dist/cjs/components/atoms/Modal/useModalRemoteControl.js.map +1 -1
  52. package/dist/cjs/components/atoms/Skeleton/Pulse.d.ts +1 -0
  53. package/dist/cjs/components/atoms/Skeleton/Pulse.js +15 -18
  54. package/dist/cjs/components/atoms/Skeleton/Pulse.js.map +1 -1
  55. package/dist/cjs/components/atoms/Skeleton/Skeleton.js +25 -24
  56. package/dist/cjs/components/atoms/Skeleton/Skeleton.js.map +1 -1
  57. package/dist/cjs/components/atoms/Skeleton/Wave.d.ts +1 -0
  58. package/dist/cjs/components/atoms/Skeleton/Wave.js +47 -30
  59. package/dist/cjs/components/atoms/Skeleton/Wave.js.map +1 -1
  60. package/dist/cjs/components/atoms/Skeleton/animation.js +0 -2
  61. package/dist/cjs/components/atoms/Skeleton/animation.js.map +1 -1
  62. package/dist/cjs/components/atoms/Skeleton/styled.js +1 -7
  63. package/dist/cjs/components/atoms/Skeleton/styled.js.map +1 -1
  64. package/dist/cjs/components/atoms/Skeleton/types.d.ts +1 -1
  65. package/dist/cjs/components/atoms/SnappingSlider/SnappingSlider.js +30 -23
  66. package/dist/cjs/components/atoms/SnappingSlider/SnappingSlider.js.map +1 -1
  67. package/dist/cjs/components/atoms/Tag/Tag.js +17 -14
  68. package/dist/cjs/components/atoms/Tag/Tag.js.map +1 -1
  69. package/dist/cjs/components/atoms/Text/Text.d.ts +1 -1
  70. package/dist/cjs/components/atoms/Text/Text.js +1 -7
  71. package/dist/cjs/components/atoms/Text/Text.js.map +1 -1
  72. package/dist/cjs/components/atoms/Text/styled.js +1 -7
  73. package/dist/cjs/components/atoms/Text/styled.js.map +1 -1
  74. package/dist/cjs/components/atoms/TextArea/TextArea.d.ts +1 -1
  75. package/dist/cjs/components/atoms/TextArea/TextArea.js +42 -39
  76. package/dist/cjs/components/atoms/TextArea/TextArea.js.map +1 -1
  77. package/dist/cjs/components/atoms/TextArea/styled.js +1 -7
  78. package/dist/cjs/components/atoms/TextArea/styled.js.map +1 -1
  79. package/dist/cjs/components/molecules/Calendar/Calendar.d.ts +1 -0
  80. package/dist/cjs/components/molecules/Calendar/Calendar.js +8 -11
  81. package/dist/cjs/components/molecules/Calendar/Calendar.js.map +1 -1
  82. package/dist/cjs/components/molecules/DatePicker/DatePicker.d.ts +2 -1
  83. package/dist/cjs/components/molecules/DatePicker/DatePicker.js +14 -22
  84. package/dist/cjs/components/molecules/DatePicker/DatePicker.js.map +1 -1
  85. package/dist/cjs/components/molecules/DatePicker/styled.js +1 -7
  86. package/dist/cjs/components/molecules/DatePicker/styled.js.map +1 -1
  87. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.d.ts +1 -1
  88. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js +13 -20
  89. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  90. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js +8 -11
  91. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  92. package/dist/cjs/components/molecules/Grid/Grid.d.ts +2 -1
  93. package/dist/cjs/components/molecules/Grid/Grid.js +38 -30
  94. package/dist/cjs/components/molecules/Grid/Grid.js.map +1 -1
  95. package/dist/cjs/components/molecules/Grid/Item/Item.d.ts +3 -2
  96. package/dist/cjs/components/molecules/Grid/Item/Item.js +3 -10
  97. package/dist/cjs/components/molecules/Grid/Item/Item.js.map +1 -1
  98. package/dist/cjs/components/molecules/IconTextButton/IconTextButton.d.ts +1 -1
  99. package/dist/cjs/components/molecules/IconTextButton/IconTextButton.js +25 -24
  100. package/dist/cjs/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  101. package/dist/cjs/components/molecules/IconTextButton/TextComponent.js +13 -13
  102. package/dist/cjs/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  103. package/dist/cjs/components/molecules/IconTextButton/styled.js +2 -8
  104. package/dist/cjs/components/molecules/IconTextButton/styled.js.map +1 -1
  105. package/dist/cjs/components/molecules/InputPassword/InputPassword.d.ts +1 -1
  106. package/dist/cjs/components/molecules/InputPassword/InputPassword.js +17 -15
  107. package/dist/cjs/components/molecules/InputPassword/InputPassword.js.map +1 -1
  108. package/dist/cjs/components/molecules/LabeledSwitch/LabelComponent.js +11 -13
  109. package/dist/cjs/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  110. package/dist/cjs/components/molecules/LabeledSwitch/LabeledSwitch.d.ts +1 -1
  111. package/dist/cjs/components/molecules/LabeledSwitch/LabeledSwitch.js +31 -26
  112. package/dist/cjs/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  113. package/dist/cjs/components/molecules/LabeledSwitch/styled.js +2 -8
  114. package/dist/cjs/components/molecules/LabeledSwitch/styled.js.map +1 -1
  115. package/dist/cjs/components/molecules/Select/Modal.d.ts +1 -0
  116. package/dist/cjs/components/molecules/Select/Modal.js +93 -78
  117. package/dist/cjs/components/molecules/Select/Modal.js.map +1 -1
  118. package/dist/cjs/components/molecules/Select/Select.d.ts +1 -0
  119. package/dist/cjs/components/molecules/Select/Select.js +56 -49
  120. package/dist/cjs/components/molecules/Select/Select.js.map +1 -1
  121. package/dist/cjs/components/molecules/Select/styled.js +14 -20
  122. package/dist/cjs/components/molecules/Select/styled.js.map +1 -1
  123. package/dist/cjs/components/molecules/Snackbar/Snackbar.js +1 -11
  124. package/dist/cjs/components/molecules/Snackbar/Snackbar.js.map +1 -1
  125. package/dist/cjs/components/molecules/Snackbar/styled.js +1 -7
  126. package/dist/cjs/components/molecules/Snackbar/styled.js.map +1 -1
  127. package/dist/cjs/index.js +0 -2
  128. package/dist/cjs/index.js.map +1 -1
  129. package/dist/cjs/utils/date.js +3 -6
  130. package/dist/cjs/utils/date.js.map +1 -1
  131. package/dist/esm/components/atoms/Avatar/Avatar.js +1 -4
  132. package/dist/esm/components/atoms/Avatar/Avatar.js.map +1 -1
  133. package/dist/esm/components/atoms/Badge/Badge.js +8 -8
  134. package/dist/esm/components/atoms/Badge/Badge.js.map +1 -1
  135. package/dist/esm/components/atoms/BottomNavigator/BottomNavigator.js +11 -12
  136. package/dist/esm/components/atoms/BottomNavigator/BottomNavigator.js.map +1 -1
  137. package/dist/esm/components/atoms/BottomNavigator/Item.d.ts +3 -3
  138. package/dist/esm/components/atoms/BottomNavigator/Item.js +1 -8
  139. package/dist/esm/components/atoms/BottomNavigator/Item.js.map +1 -1
  140. package/dist/esm/components/atoms/BottomNavigator/styled.js.map +1 -1
  141. package/dist/esm/components/atoms/Button/Button.d.ts +1 -1
  142. package/dist/esm/components/atoms/Button/Button.js +1 -4
  143. package/dist/esm/components/atoms/Button/Button.js.map +1 -1
  144. package/dist/esm/components/atoms/Button/States/Error.js +1 -4
  145. package/dist/esm/components/atoms/Button/States/Error.js.map +1 -1
  146. package/dist/esm/components/atoms/Button/States/Loading.js +1 -4
  147. package/dist/esm/components/atoms/Button/States/Loading.js.map +1 -1
  148. package/dist/esm/components/atoms/Button/States/Success.js +1 -4
  149. package/dist/esm/components/atoms/Button/States/Success.js.map +1 -1
  150. package/dist/esm/components/atoms/GroupButton/GroupButtonOption.d.ts +1 -0
  151. package/dist/esm/components/atoms/GroupButton/GroupButtonOption.js +1 -4
  152. package/dist/esm/components/atoms/GroupButton/GroupButtonOption.js.map +1 -1
  153. package/dist/esm/components/atoms/Header/Header.d.ts +1 -1
  154. package/dist/esm/components/atoms/Header/Header.js +11 -29
  155. package/dist/esm/components/atoms/Header/Header.js.map +1 -1
  156. package/dist/esm/components/atoms/Input/Input.js +36 -33
  157. package/dist/esm/components/atoms/Input/Input.js.map +1 -1
  158. package/dist/esm/components/atoms/InputMask/InputMask.js +36 -35
  159. package/dist/esm/components/atoms/InputMask/InputMask.js.map +1 -1
  160. package/dist/esm/components/atoms/Modal/ModalGroupManager.js +11 -7
  161. package/dist/esm/components/atoms/Modal/ModalGroupManager.js.map +1 -1
  162. package/dist/esm/components/atoms/Modal/ModalLifecycleHandler.js +46 -0
  163. package/dist/esm/components/atoms/Modal/ModalLifecycleHandler.js.map +1 -1
  164. package/dist/esm/components/atoms/Modal/ui/BaseModalView.js +20 -15
  165. package/dist/esm/components/atoms/Modal/ui/BaseModalView.js.map +1 -1
  166. package/dist/esm/components/atoms/Modal/ui/types.d.ts +2 -1
  167. package/dist/esm/components/atoms/Skeleton/Pulse.d.ts +1 -0
  168. package/dist/esm/components/atoms/Skeleton/Pulse.js +15 -12
  169. package/dist/esm/components/atoms/Skeleton/Pulse.js.map +1 -1
  170. package/dist/esm/components/atoms/Skeleton/Skeleton.js +25 -20
  171. package/dist/esm/components/atoms/Skeleton/Skeleton.js.map +1 -1
  172. package/dist/esm/components/atoms/Skeleton/Wave.d.ts +1 -0
  173. package/dist/esm/components/atoms/Skeleton/Wave.js +30 -25
  174. package/dist/esm/components/atoms/Skeleton/Wave.js.map +1 -1
  175. package/dist/esm/components/atoms/Skeleton/styled.js.map +1 -1
  176. package/dist/esm/components/atoms/Skeleton/types.d.ts +1 -1
  177. package/dist/esm/components/atoms/SnappingSlider/SnappingSlider.js +27 -19
  178. package/dist/esm/components/atoms/SnappingSlider/SnappingSlider.js.map +1 -1
  179. package/dist/esm/components/atoms/Tag/Tag.js +17 -10
  180. package/dist/esm/components/atoms/Tag/Tag.js.map +1 -1
  181. package/dist/esm/components/atoms/Text/Text.d.ts +1 -1
  182. package/dist/esm/components/atoms/Text/Text.js +1 -3
  183. package/dist/esm/components/atoms/Text/Text.js.map +1 -1
  184. package/dist/esm/components/atoms/Text/styled.js.map +1 -1
  185. package/dist/esm/components/atoms/TextArea/TextArea.d.ts +1 -1
  186. package/dist/esm/components/atoms/TextArea/TextArea.js +42 -35
  187. package/dist/esm/components/atoms/TextArea/TextArea.js.map +1 -1
  188. package/dist/esm/components/molecules/Calendar/Calendar.d.ts +1 -0
  189. package/dist/esm/components/molecules/Calendar/Calendar.js +8 -5
  190. package/dist/esm/components/molecules/Calendar/Calendar.js.map +1 -1
  191. package/dist/esm/components/molecules/DatePicker/DatePicker.d.ts +2 -1
  192. package/dist/esm/components/molecules/DatePicker/DatePicker.js +14 -16
  193. package/dist/esm/components/molecules/DatePicker/DatePicker.js.map +1 -1
  194. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.d.ts +1 -1
  195. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js +13 -14
  196. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  197. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js +8 -5
  198. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  199. package/dist/esm/components/molecules/Grid/Grid.d.ts +2 -1
  200. package/dist/esm/components/molecules/Grid/Grid.js +38 -26
  201. package/dist/esm/components/molecules/Grid/Grid.js.map +1 -1
  202. package/dist/esm/components/molecules/Grid/Item/Item.d.ts +3 -2
  203. package/dist/esm/components/molecules/Grid/Item/Item.js +1 -4
  204. package/dist/esm/components/molecules/Grid/Item/Item.js.map +1 -1
  205. package/dist/esm/components/molecules/IconTextButton/IconTextButton.d.ts +1 -1
  206. package/dist/esm/components/molecules/IconTextButton/IconTextButton.js +25 -20
  207. package/dist/esm/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  208. package/dist/esm/components/molecules/IconTextButton/TextComponent.js +12 -8
  209. package/dist/esm/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  210. package/dist/esm/components/molecules/InputPassword/InputPassword.d.ts +1 -1
  211. package/dist/esm/components/molecules/InputPassword/InputPassword.js +16 -10
  212. package/dist/esm/components/molecules/InputPassword/InputPassword.js.map +1 -1
  213. package/dist/esm/components/molecules/LabeledSwitch/LabelComponent.js +10 -8
  214. package/dist/esm/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  215. package/dist/esm/components/molecules/LabeledSwitch/LabeledSwitch.d.ts +1 -1
  216. package/dist/esm/components/molecules/LabeledSwitch/LabeledSwitch.js +31 -22
  217. package/dist/esm/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  218. package/dist/esm/components/molecules/Select/Modal.d.ts +1 -0
  219. package/dist/esm/components/molecules/Select/Modal.js +90 -72
  220. package/dist/esm/components/molecules/Select/Modal.js.map +1 -1
  221. package/dist/esm/components/molecules/Select/Select.d.ts +1 -0
  222. package/dist/esm/components/molecules/Select/Select.js +53 -45
  223. package/dist/esm/components/molecules/Select/Select.js.map +1 -1
  224. package/dist/esm/components/molecules/Snackbar/Snackbar.js +1 -7
  225. package/dist/esm/components/molecules/Snackbar/Snackbar.js.map +1 -1
  226. package/dist/esm/utils/date.js.map +1 -1
  227. package/package.json +8 -8
@@ -12,6 +12,7 @@ import { Modal } from './Modal.js';
12
12
  import { SelectIcon, StyledSelectionText } from './styled.js';
13
13
 
14
14
  function Select({
15
+ /** Select props */
15
16
  value,
16
17
  options,
17
18
  keyExtractor,
@@ -134,57 +135,64 @@ function Select({
134
135
  }
135
136
  }, [_placeholder, value, selectOptions]);
136
137
  modal.sync(
137
- /* @__PURE__ */ React.createElement(Modal, {
138
- options: selectOptions || [],
139
- focused: true,
140
- keyExtractor,
141
- labelExtractor,
142
- groupKeyExtractor,
143
- searchBarPlaceholder,
144
- type,
145
- onSelect,
146
- value,
147
- hideSearchBar,
148
- onSearch: handleOnSearch,
149
- selectModalTitle,
150
- selectModalTitleComponent,
151
- confirmButtonText,
152
- loading,
153
- onClose: () => {
154
- if (typeof options === "function") {
155
- setSelectOptions([]);
156
- }
157
- handleBlur();
158
- },
159
- closeOnPick
160
- })
138
+ /* @__PURE__ */ React.createElement(
139
+ Modal,
140
+ {
141
+ options: selectOptions || [],
142
+ focused: true,
143
+ keyExtractor,
144
+ labelExtractor,
145
+ groupKeyExtractor,
146
+ searchBarPlaceholder,
147
+ type,
148
+ onSelect,
149
+ value,
150
+ hideSearchBar,
151
+ onSearch: handleOnSearch,
152
+ selectModalTitle,
153
+ selectModalTitleComponent,
154
+ confirmButtonText,
155
+ loading,
156
+ onClose: () => {
157
+ if (typeof options === "function") {
158
+ setSelectOptions([]);
159
+ }
160
+ handleBlur();
161
+ },
162
+ closeOnPick
163
+ }
164
+ )
161
165
  );
162
166
  const handlePressInput = async () => {
163
167
  modal.show();
164
168
  handleFocus();
165
169
  await handleLazyFocus();
166
170
  };
167
- return /* @__PURE__ */ React.createElement(React.Fragment, null, controlComponent ? controlComponent(handlePressInput, getDisplayValue() || "") : /* @__PURE__ */ React.createElement(HintInputContainer, {
168
- viewStyle: style,
169
- onPress: handlePressInput,
170
- focused,
171
- disabled,
172
- LabelComponent: Text,
173
- variant,
174
- hint,
175
- hintComponent,
176
- label: _label,
177
- rightComponent: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SelectIcon, {
178
- name: "chevron-down",
179
- type: "ionicon",
180
- size: "centi"
181
- }), rightComponent),
182
- ...rest
183
- }, /* @__PURE__ */ React.createElement(StyledSelectionText, {
184
- numberOfLines,
185
- fontWeight: "bold",
186
- disabled
187
- }, getDisplayValue() || " ")));
171
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, controlComponent ? controlComponent(handlePressInput, getDisplayValue() || "") : /* @__PURE__ */ React.createElement(
172
+ HintInputContainer,
173
+ {
174
+ viewStyle: style,
175
+ onPress: handlePressInput,
176
+ focused,
177
+ disabled,
178
+ LabelComponent: Text,
179
+ variant,
180
+ hint,
181
+ hintComponent,
182
+ label: _label,
183
+ rightComponent: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SelectIcon, { name: "chevron-down", type: "ionicon", size: "centi" }), rightComponent),
184
+ ...rest
185
+ },
186
+ /* @__PURE__ */ React.createElement(
187
+ StyledSelectionText,
188
+ {
189
+ numberOfLines,
190
+ fontWeight: "bold",
191
+ disabled
192
+ },
193
+ getDisplayValue() || " "
194
+ )
195
+ ));
188
196
  }
189
197
 
190
198
  export { Select as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../../../src/components/molecules/Select/Select.tsx"],"sourcesContent":["import {\n HintInputContainer,\n InputContainerProps,\n useInputFocus,\n} from '@tecsinapse/react-core';\nimport * as React from 'react';\nimport { useEffect, useState } from 'react';\nimport { useLazyModalManager } from '../../atoms/Modal';\nimport { Text } from '../../atoms/Text';\nimport { Modal } from './Modal';\nimport { SelectIcon, StyledSelectionText } from './styled';\n\nexport interface SelectNativeProps<Data, Type extends 'single' | 'multi'>\n extends Omit<InputContainerProps, 'value' | 'onChange' | 'onChangeText'> {\n options: ((searchInput?: string) => Promise<Data[]>) | Data[];\n onSelect: (\n option: Type extends 'single' ? Data | undefined : Data[]\n ) => never | void;\n value: Type extends 'single' ? Data | null | undefined : Data[];\n type: Type;\n\n keyExtractor: (t: Data, index?: number) => string;\n labelExtractor: (t: Data) => string;\n groupKeyExtractor?: (t: Data) => string;\n\n hideSearchBar?: boolean;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n onSearch?:\n | ((searchArg: string) => void)\n | ((searchInput?: string) => Promise<Data[]>)\n | never;\n searchBarPlaceholder?: string;\n confirmButtonText?: string;\n selectModalTitle?: string;\n selectModalTitleComponent?: JSX.Element;\n closeOnPick?: boolean;\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n numberOfLines?: number;\n}\n\nfunction Select<Data, Type extends 'single' | 'multi'>({\n /** Select props */\n value,\n options,\n keyExtractor,\n groupKeyExtractor,\n onSelect,\n type,\n labelExtractor,\n placeholder,\n onFocus,\n onBlur,\n disabled,\n onSearch,\n selectModalTitle,\n selectModalTitleComponent,\n searchBarPlaceholder,\n hideSearchBar,\n confirmButtonText,\n rightComponent,\n variant = 'default',\n hintComponent,\n hint,\n style,\n controlComponent,\n closeOnPick = type === 'single',\n label,\n numberOfLines,\n ...rest\n}: SelectNativeProps<Data, Type>): JSX.Element {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const [selectOptions, setSelectOptions] = useState<Data[]>([]);\n const modal = useLazyModalManager();\n\n // TODO: Add Skeleton to modal height when loading is true\n const [loading, setLoading] = useState<boolean>(false);\n\n const onlyLabel = label && !placeholder;\n const hasValue =\n type === 'single' ? !!value : ((value || []) as []).length > 0;\n const _placeholder = onlyLabel ? label : placeholder;\n const _label = hasValue ? label : undefined;\n\n useEffect(() => {\n if (typeof options !== 'function') {\n setSelectOptions(options);\n }\n }, [options]);\n\n const handleLazyFocus = React.useCallback(async () => {\n if (typeof options === 'function' && !onSearch) {\n setLoading(true);\n try {\n const result = await options();\n if (result) {\n if (\n value &&\n !result.find(v => keyExtractor(value as Data) === keyExtractor(v))\n ) {\n setSelectOptions([value as Data, ...result]);\n } else setSelectOptions(result);\n }\n } catch (e) {\n // TODO: Catch error\n } finally {\n setLoading(false);\n }\n }\n }, [options, value, setSelectOptions]);\n\n const handleOnSearch = React.useCallback(\n async (searchInput: string | undefined) => {\n if (searchInput !== undefined && onSearch) {\n setLoading(true);\n modal.requestUpdate();\n try {\n const result = await onSearch(searchInput);\n if (result) {\n if (type === 'single') {\n if (\n value &&\n !result.find(\n v => keyExtractor(value as Data) === keyExtractor(v)\n )\n ) {\n setSelectOptions([value as Data, ...result]);\n } else setSelectOptions(result);\n } else {\n if ((value as Data[])?.length) {\n const selectedValues =\n (value as Data[]).filter(\n v =>\n !result.find(\n current =>\n keyExtractor(v as Data) === keyExtractor(current)\n )\n ) || [];\n setSelectOptions([...selectedValues, ...result]);\n } else {\n setSelectOptions(result);\n }\n }\n }\n } catch (e) {\n // TODO: Catch error\n } finally {\n modal.requestUpdate();\n setLoading(false);\n }\n }\n },\n [options, value, keyExtractor]\n );\n\n const getDisplayValue = React.useCallback(() => {\n if (Array.isArray(value)) {\n if (value.length === 0) return _placeholder;\n else {\n const options =\n selectOptions.length > 0 ? selectOptions : (value as Data[]);\n return options\n ?.reduce(\n (acc, option, index) =>\n value.find(\n key => keyExtractor(option, index) == keyExtractor(key, index)\n )\n ? acc + labelExtractor(option) + ', '\n : acc,\n ''\n )\n .slice(0, -2);\n }\n } else {\n if (!value) return _placeholder;\n const selectedOption = selectOptions?.find(\n (option, index) =>\n keyExtractor(option, index) == keyExtractor(value as Data, index)\n );\n return labelExtractor(selectedOption ?? (value as Data));\n }\n }, [_placeholder, value, selectOptions]);\n\n modal.sync(\n <Modal\n options={selectOptions || []}\n focused={true}\n keyExtractor={keyExtractor}\n labelExtractor={labelExtractor}\n groupKeyExtractor={groupKeyExtractor}\n searchBarPlaceholder={searchBarPlaceholder}\n type={type}\n onSelect={onSelect}\n value={value}\n hideSearchBar={hideSearchBar}\n onSearch={handleOnSearch}\n selectModalTitle={selectModalTitle}\n selectModalTitleComponent={selectModalTitleComponent}\n confirmButtonText={confirmButtonText}\n loading={loading}\n onClose={() => {\n if (typeof options === 'function') {\n setSelectOptions([]);\n }\n handleBlur();\n }}\n closeOnPick={closeOnPick}\n />\n );\n\n const handlePressInput = async () => {\n modal.show();\n handleFocus();\n await handleLazyFocus();\n };\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handlePressInput, getDisplayValue() || '')\n ) : (\n <HintInputContainer\n viewStyle={style}\n onPress={handlePressInput}\n focused={focused}\n disabled={disabled}\n LabelComponent={Text}\n variant={variant}\n hint={hint}\n hintComponent={hintComponent}\n label={_label}\n rightComponent={\n <>\n <SelectIcon name=\"chevron-down\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledSelectionText\n numberOfLines={numberOfLines}\n fontWeight=\"bold\"\n disabled={disabled}\n >\n {getDisplayValue() || ' '}\n </StyledSelectionText>\n </HintInputContainer>\n )}\n </>\n );\n}\n\nexport default Select;\n"],"names":["options"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../../../src/components/molecules/Select/Select.tsx"],"sourcesContent":["import {\n HintInputContainer,\n InputContainerProps,\n useInputFocus,\n} from '@tecsinapse/react-core';\nimport * as React from 'react';\nimport { useEffect, useState } from 'react';\nimport { useLazyModalManager } from '../../atoms/Modal';\nimport { Text } from '../../atoms/Text';\nimport { Modal } from './Modal';\nimport { SelectIcon, StyledSelectionText } from './styled';\n\nexport interface SelectNativeProps<Data, Type extends 'single' | 'multi'>\n extends Omit<InputContainerProps, 'value' | 'onChange' | 'onChangeText'> {\n options: ((searchInput?: string) => Promise<Data[]>) | Data[];\n onSelect: (\n option: Type extends 'single' ? Data | undefined : Data[]\n ) => never | void;\n value: Type extends 'single' ? Data | null | undefined : Data[];\n type: Type;\n\n keyExtractor: (t: Data, index?: number) => string;\n labelExtractor: (t: Data) => string;\n groupKeyExtractor?: (t: Data) => string;\n\n hideSearchBar?: boolean;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n onSearch?:\n | ((searchArg: string) => void)\n | ((searchInput?: string) => Promise<Data[]>)\n | never;\n searchBarPlaceholder?: string;\n confirmButtonText?: string;\n selectModalTitle?: string;\n selectModalTitleComponent?: JSX.Element;\n closeOnPick?: boolean;\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n numberOfLines?: number;\n}\n\nfunction Select<Data, Type extends 'single' | 'multi'>({\n /** Select props */\n value,\n options,\n keyExtractor,\n groupKeyExtractor,\n onSelect,\n type,\n labelExtractor,\n placeholder,\n onFocus,\n onBlur,\n disabled,\n onSearch,\n selectModalTitle,\n selectModalTitleComponent,\n searchBarPlaceholder,\n hideSearchBar,\n confirmButtonText,\n rightComponent,\n variant = 'default',\n hintComponent,\n hint,\n style,\n controlComponent,\n closeOnPick = type === 'single',\n label,\n numberOfLines,\n ...rest\n}: SelectNativeProps<Data, Type>): JSX.Element {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const [selectOptions, setSelectOptions] = useState<Data[]>([]);\n const modal = useLazyModalManager();\n\n // TODO: Add Skeleton to modal height when loading is true\n const [loading, setLoading] = useState<boolean>(false);\n\n const onlyLabel = label && !placeholder;\n const hasValue =\n type === 'single' ? !!value : ((value || []) as []).length > 0;\n const _placeholder = onlyLabel ? label : placeholder;\n const _label = hasValue ? label : undefined;\n\n useEffect(() => {\n if (typeof options !== 'function') {\n setSelectOptions(options);\n }\n }, [options]);\n\n const handleLazyFocus = React.useCallback(async () => {\n if (typeof options === 'function' && !onSearch) {\n setLoading(true);\n try {\n const result = await options();\n if (result) {\n if (\n value &&\n !result.find(v => keyExtractor(value as Data) === keyExtractor(v))\n ) {\n setSelectOptions([value as Data, ...result]);\n } else setSelectOptions(result);\n }\n } catch (e) {\n // TODO: Catch error\n } finally {\n setLoading(false);\n }\n }\n }, [options, value, setSelectOptions]);\n\n const handleOnSearch = React.useCallback(\n async (searchInput: string | undefined) => {\n if (searchInput !== undefined && onSearch) {\n setLoading(true);\n modal.requestUpdate();\n try {\n const result = await onSearch(searchInput);\n if (result) {\n if (type === 'single') {\n if (\n value &&\n !result.find(\n v => keyExtractor(value as Data) === keyExtractor(v)\n )\n ) {\n setSelectOptions([value as Data, ...result]);\n } else setSelectOptions(result);\n } else {\n if ((value as Data[])?.length) {\n const selectedValues =\n (value as Data[]).filter(\n v =>\n !result.find(\n current =>\n keyExtractor(v as Data) === keyExtractor(current)\n )\n ) || [];\n setSelectOptions([...selectedValues, ...result]);\n } else {\n setSelectOptions(result);\n }\n }\n }\n } catch (e) {\n // TODO: Catch error\n } finally {\n modal.requestUpdate();\n setLoading(false);\n }\n }\n },\n [options, value, keyExtractor]\n );\n\n const getDisplayValue = React.useCallback(() => {\n if (Array.isArray(value)) {\n if (value.length === 0) return _placeholder;\n else {\n const options =\n selectOptions.length > 0 ? selectOptions : (value as Data[]);\n return options\n ?.reduce(\n (acc, option, index) =>\n value.find(\n key => keyExtractor(option, index) == keyExtractor(key, index)\n )\n ? acc + labelExtractor(option) + ', '\n : acc,\n ''\n )\n .slice(0, -2);\n }\n } else {\n if (!value) return _placeholder;\n const selectedOption = selectOptions?.find(\n (option, index) =>\n keyExtractor(option, index) == keyExtractor(value as Data, index)\n );\n return labelExtractor(selectedOption ?? (value as Data));\n }\n }, [_placeholder, value, selectOptions]);\n\n modal.sync(\n <Modal\n options={selectOptions || []}\n focused={true}\n keyExtractor={keyExtractor}\n labelExtractor={labelExtractor}\n groupKeyExtractor={groupKeyExtractor}\n searchBarPlaceholder={searchBarPlaceholder}\n type={type}\n onSelect={onSelect}\n value={value}\n hideSearchBar={hideSearchBar}\n onSearch={handleOnSearch}\n selectModalTitle={selectModalTitle}\n selectModalTitleComponent={selectModalTitleComponent}\n confirmButtonText={confirmButtonText}\n loading={loading}\n onClose={() => {\n if (typeof options === 'function') {\n setSelectOptions([]);\n }\n handleBlur();\n }}\n closeOnPick={closeOnPick}\n />\n );\n\n const handlePressInput = async () => {\n modal.show();\n handleFocus();\n await handleLazyFocus();\n };\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handlePressInput, getDisplayValue() || '')\n ) : (\n <HintInputContainer\n viewStyle={style}\n onPress={handlePressInput}\n focused={focused}\n disabled={disabled}\n LabelComponent={Text}\n variant={variant}\n hint={hint}\n hintComponent={hintComponent}\n label={_label}\n rightComponent={\n <>\n <SelectIcon name=\"chevron-down\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledSelectionText\n numberOfLines={numberOfLines}\n fontWeight=\"bold\"\n disabled={disabled}\n >\n {getDisplayValue() || ' '}\n </StyledSelectionText>\n </HintInputContainer>\n )}\n </>\n );\n}\n\nexport default Select;\n"],"names":["options"],"mappings":"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"}
@@ -7,13 +7,7 @@ const Snackbar = ({
7
7
  textProps = { colorVariant: "primary", colorTone: "medium" },
8
8
  ...rest
9
9
  }) => {
10
- return /* @__PURE__ */ React__default.createElement(SnackbarStyled, {
11
- ...rest
12
- }, /* @__PURE__ */ React__default.createElement(Text, {
13
- ...textProps,
14
- fontWeight: "bold",
15
- typography: "base"
16
- }, value));
10
+ return /* @__PURE__ */ React__default.createElement(SnackbarStyled, { ...rest }, /* @__PURE__ */ React__default.createElement(Text, { ...textProps, fontWeight: "bold", typography: "base" }, value));
17
11
  };
18
12
 
19
13
  export { Snackbar as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Snackbar.js","sources":["../../../../../src/components/molecules/Snackbar/Snackbar.tsx"],"sourcesContent":["import React from 'react';\nimport { SnackbarProps as SnackPropsCore } from '@tecsinapse/react-core';\nimport { Text, TextNativeProps } from '../../atoms/Text';\nimport { SnackbarStyled } from './styled';\n\nexport interface SnackbarNativeProps extends Omit<SnackPropsCore, 'children'> {\n value: string;\n textProps?: TextNativeProps;\n}\n\nconst Snackbar: React.FC<SnackbarNativeProps> = ({\n value,\n textProps = { colorVariant: 'primary', colorTone: 'medium' },\n ...rest\n}) => {\n return (\n <SnackbarStyled {...rest}>\n <Text {...textProps} fontWeight=\"bold\" typography=\"base\">\n {value}\n </Text>\n </SnackbarStyled>\n );\n};\n\nexport default Snackbar;\n"],"names":["React"],"mappings":";;;;AAUA,MAAM,WAA0C,CAAC;AAAA,EAC/C,KAAA;AAAA,EACA,SAAY,GAAA,EAAE,YAAc,EAAA,SAAA,EAAW,WAAW,QAAS,EAAA;AAAA,EACxD,GAAA,IAAA;AACL,CAAM,KAAA;AACJ,EAAA,uBACGA,cAAA,CAAA,aAAA,CAAA,cAAA,EAAA;AAAA,IAAgB,GAAG,IAAA;AAAA,GAAA,kBACjBA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IAAM,GAAG,SAAA;AAAA,IAAW,UAAW,EAAA,MAAA;AAAA,IAAO,UAAW,EAAA,MAAA;AAAA,GAAA,EAC/C,KACH,CACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Snackbar.js","sources":["../../../../../src/components/molecules/Snackbar/Snackbar.tsx"],"sourcesContent":["import React from 'react';\nimport { SnackbarProps as SnackPropsCore } from '@tecsinapse/react-core';\nimport { Text, TextNativeProps } from '../../atoms/Text';\nimport { SnackbarStyled } from './styled';\n\nexport interface SnackbarNativeProps extends Omit<SnackPropsCore, 'children'> {\n value: string;\n textProps?: TextNativeProps;\n}\n\nconst Snackbar: React.FC<SnackbarNativeProps> = ({\n value,\n textProps = { colorVariant: 'primary', colorTone: 'medium' },\n ...rest\n}) => {\n return (\n <SnackbarStyled {...rest}>\n <Text {...textProps} fontWeight=\"bold\" typography=\"base\">\n {value}\n </Text>\n </SnackbarStyled>\n );\n};\n\nexport default Snackbar;\n"],"names":["React"],"mappings":";;;;AAUA,MAAM,WAA0C,CAAC;AAAA,EAC/C,KAAA;AAAA,EACA,SAAY,GAAA,EAAE,YAAc,EAAA,SAAA,EAAW,WAAW,QAAS,EAAA;AAAA,EAC3D,GAAG,IAAA;AACL,CAAM,KAAA;AACJ,EAAA,uBACGA,cAAA,CAAA,aAAA,CAAA,cAAA,EAAA,EAAgB,GAAG,IAAA,EAAA,kBACjBA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAM,GAAG,SAAA,EAAW,UAAW,EAAA,MAAA,EAAO,UAAW,EAAA,MAAA,EAAA,EAC/C,KACH,CACF,CAAA,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"date.js","sources":["../../../src/utils/date.ts"],"sourcesContent":["import { NativeModules, Platform } from 'react-native';\nimport * as dateFnsLocales from 'date-fns/locale';\n\nexport const getLocale = (): Locale => {\n let locale: string;\n if (Platform.OS === 'ios') {\n locale =\n NativeModules.SettingsManager.settings.AppleLocale ||\n NativeModules.SettingsManager.settings.AppleLanguages[0];\n } else {\n locale = NativeModules.I18nManager.localeIdentifier;\n }\n\n const code = locale.replace('_', '');\n\n return dateFnsLocales[code];\n};\n"],"names":[],"mappings":";;;AAGO,MAAM,YAAY,MAAc;AACrC,EAAI,IAAA,MAAA,CAAA;AACJ,EAAI,IAAA,QAAA,CAAS,OAAO,KAAO,EAAA;AACzB,IAAA,MAAA,GACE,cAAc,eAAgB,CAAA,QAAA,CAAS,eACvC,aAAc,CAAA,eAAA,CAAgB,SAAS,cAAe,CAAA,CAAA,CAAA,CAAA;AAAA,GACnD,MAAA;AACL,IAAA,MAAA,GAAS,cAAc,WAAY,CAAA,gBAAA,CAAA;AAAA,GACrC;AAEA,EAAA,MAAM,IAAO,GAAA,MAAA,CAAO,OAAQ,CAAA,GAAA,EAAK,EAAE,CAAA,CAAA;AAEnC,EAAA,OAAO,cAAe,CAAA,IAAA,CAAA,CAAA;AACxB;;;;"}
1
+ {"version":3,"file":"date.js","sources":["../../../src/utils/date.ts"],"sourcesContent":["import { NativeModules, Platform } from 'react-native';\nimport * as dateFnsLocales from 'date-fns/locale';\n\nexport const getLocale = (): Locale => {\n let locale: string;\n if (Platform.OS === 'ios') {\n locale =\n NativeModules.SettingsManager.settings.AppleLocale ||\n NativeModules.SettingsManager.settings.AppleLanguages[0];\n } else {\n locale = NativeModules.I18nManager.localeIdentifier;\n }\n\n const code = locale.replace('_', '');\n\n return dateFnsLocales[code];\n};\n"],"names":[],"mappings":";;;AAGO,MAAM,YAAY,MAAc;AACrC,EAAI,IAAA,MAAA,CAAA;AACJ,EAAI,IAAA,QAAA,CAAS,OAAO,KAAO,EAAA;AACzB,IACE,MAAA,GAAA,aAAA,CAAc,gBAAgB,QAAS,CAAA,WAAA,IACvC,cAAc,eAAgB,CAAA,QAAA,CAAS,eAAe,CAAC,CAAA,CAAA;AAAA,GACpD,MAAA;AACL,IAAA,MAAA,GAAS,cAAc,WAAY,CAAA,gBAAA,CAAA;AAAA,GACrC;AAEA,EAAA,MAAM,IAAO,GAAA,MAAA,CAAO,OAAQ,CAAA,GAAA,EAAK,EAAE,CAAA,CAAA;AAEnC,EAAA,OAAO,eAAe,IAAI,CAAA,CAAA;AAC5B;;;;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tecsinapse/react-native-kit",
3
3
  "description": "TecSinapse React Native components",
4
- "version": "1.23.11",
4
+ "version": "2.0.1",
5
5
  "license": "MIT",
6
6
  "main": "dist/cjs/index.js",
7
7
  "module": "dist/esm/index.js",
@@ -22,8 +22,8 @@
22
22
  "dependencies": {
23
23
  "@emotion/native": "~11.10.0",
24
24
  "@emotion/react": "~11.10.0",
25
- "@tecsinapse/react-core": "1.22.8",
26
- "react-native-linear-gradient": "~2.5.6"
25
+ "@tecsinapse/react-core": "2.0.1",
26
+ "react-native-linear-gradient": "~2.6.2"
27
27
  },
28
28
  "repository": {
29
29
  "type": "git",
@@ -35,15 +35,15 @@
35
35
  },
36
36
  "homepage": "https://tecsinapse.github.io/design-system/",
37
37
  "peerDependencies": {
38
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
39
- "react-native": "^0.64.4",
38
+ "react": "^18.0.0",
39
+ "react-native": "^0.71.0",
40
40
  "react-native-linear-gradient": "^2.5.6",
41
- "react-native-safe-area-context": "^3.1.9",
42
- "react-native-vector-icons": "^8.1.0 || ^9.0.0",
41
+ "react-native-safe-area-context": "^4.0.0",
42
+ "react-native-vector-icons": "^9.0.0",
43
43
  "uuid": "^8.3.2"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/uuid": "^8.3.3"
47
47
  },
48
- "gitHead": "cbb91cbec2ab82d6719f001b22298e4f98e22715"
48
+ "gitHead": "2c84aa701ebd7896fb05e9be7454616d8e3c0786"
49
49
  }