@codeleap/mobile 2.3.7 → 2.3.8

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 (229) hide show
  1. package/CodeLeap-Mobile-Packages.code-workspace +7 -7
  2. package/dist/components/ActionIcon/index.d.ts +13 -13
  3. package/dist/components/ActionIcon/index.js +54 -54
  4. package/dist/components/ActionIcon/styles.d.ts +65 -65
  5. package/dist/components/ActionIcon/styles.js +60 -60
  6. package/dist/components/ActivityIndicator/index.d.ts +15 -15
  7. package/dist/components/ActivityIndicator/index.js +58 -58
  8. package/dist/components/ActivityIndicator/styles.d.ts +59 -59
  9. package/dist/components/ActivityIndicator/styles.js +51 -51
  10. package/dist/components/Animated.d.ts +124 -124
  11. package/dist/components/Animated.js +58 -58
  12. package/dist/components/AutoComplete/index.d.ts +33 -33
  13. package/dist/components/AutoComplete/index.js +128 -128
  14. package/dist/components/AutoComplete/styles.d.ts +57 -57
  15. package/dist/components/AutoComplete/styles.js +24 -24
  16. package/dist/components/Backdrop/index.d.ts +14 -14
  17. package/dist/components/Backdrop/index.js +62 -62
  18. package/dist/components/Backdrop/styles.d.ts +53 -53
  19. package/dist/components/Backdrop/styles.js +27 -27
  20. package/dist/components/Button/index.d.ts +246 -246
  21. package/dist/components/Button/index.js +118 -118
  22. package/dist/components/Button/styles.d.ts +65 -65
  23. package/dist/components/Button/styles.js +60 -60
  24. package/dist/components/Calendar/index.d.ts +15 -15
  25. package/dist/components/Calendar/index.js +79 -79
  26. package/dist/components/Calendar/style.d.ts +4 -4
  27. package/dist/components/Calendar/style.js +35 -35
  28. package/dist/components/Calendar/types.d.ts +95 -95
  29. package/dist/components/Calendar/types.js +2 -2
  30. package/dist/components/Checkbox/index.d.ts +15 -15
  31. package/dist/components/Checkbox/index.js +84 -84
  32. package/dist/components/Checkbox/styles.d.ts +56 -56
  33. package/dist/components/Checkbox/styles.js +52 -52
  34. package/dist/components/ContentView/index.d.ts +12 -12
  35. package/dist/components/ContentView/index.js +65 -65
  36. package/dist/components/ContentView/styles.d.ts +53 -53
  37. package/dist/components/ContentView/styles.js +25 -25
  38. package/dist/components/Drawer/index.d.ts +7 -7
  39. package/dist/components/Drawer/index.js +69 -69
  40. package/dist/components/Drawer/styles.d.ts +56 -56
  41. package/dist/components/Drawer/styles.js +38 -38
  42. package/dist/components/EmptyPlaceholder/index.d.ts +22 -22
  43. package/dist/components/EmptyPlaceholder/index.js +77 -77
  44. package/dist/components/EmptyPlaceholder/styles.d.ts +55 -55
  45. package/dist/components/EmptyPlaceholder/styles.js +31 -31
  46. package/dist/components/FileInput/index.d.ts +24 -24
  47. package/dist/components/FileInput/index.js +182 -182
  48. package/dist/components/FileInput/styles.d.ts +53 -53
  49. package/dist/components/FileInput/styles.js +18 -18
  50. package/dist/components/Grid/index.d.ts +32 -32
  51. package/dist/components/Grid/index.js +83 -83
  52. package/dist/components/Grid/styles.d.ts +5 -5
  53. package/dist/components/Grid/styles.js +18 -18
  54. package/dist/components/Icon/index.d.ts +14 -14
  55. package/dist/components/Icon/index.js +78 -78
  56. package/dist/components/Icon/styles.d.ts +61 -61
  57. package/dist/components/Icon/styles.js +48 -48
  58. package/dist/components/Image/index.d.ts +20 -20
  59. package/dist/components/Image/index.js +90 -90
  60. package/dist/components/Image/styles.d.ts +54 -54
  61. package/dist/components/Image/styles.js +24 -24
  62. package/dist/components/ImageView/Spotlight.d.ts +25 -25
  63. package/dist/components/ImageView/Spotlight.js +153 -153
  64. package/dist/components/ImageView/component.d.ts +5 -5
  65. package/dist/components/ImageView/component.js +53 -53
  66. package/dist/components/ImageView/index.d.ts +2 -2
  67. package/dist/components/ImageView/index.js +18 -18
  68. package/dist/components/InputLabel/index.d.ts +12 -12
  69. package/dist/components/InputLabel/index.js +61 -61
  70. package/dist/components/InputLabel/styles.d.ts +4 -4
  71. package/dist/components/InputLabel/styles.js +25 -25
  72. package/dist/components/List/PaginationIndicator.d.ts +67 -67
  73. package/dist/components/List/PaginationIndicator.js +50 -50
  74. package/dist/components/List/index.d.ts +31 -31
  75. package/dist/components/List/index.js +80 -80
  76. package/dist/components/List/styles.d.ts +5 -5
  77. package/dist/components/List/styles.js +26 -26
  78. package/dist/components/Modal/index.d.ts +41 -41
  79. package/dist/components/Modal/index.js +143 -143
  80. package/dist/components/Modal/styles.d.ts +58 -58
  81. package/dist/components/Modal/styles.js +74 -74
  82. package/dist/components/MultiSelect/index.d.ts +6 -6
  83. package/dist/components/MultiSelect/index.js +117 -117
  84. package/dist/components/MultiSelect/styles.d.ts +58 -58
  85. package/dist/components/MultiSelect/styles.js +21 -21
  86. package/dist/components/MultiSelect/types.d.ts +35 -35
  87. package/dist/components/MultiSelect/types.js +2 -2
  88. package/dist/components/Navigation/Navigation.d.ts +3 -3
  89. package/dist/components/Navigation/Navigation.js +83 -83
  90. package/dist/components/Navigation/constants.d.ts +5 -5
  91. package/dist/components/Navigation/constants.js +10 -10
  92. package/dist/components/Navigation/index.d.ts +3 -3
  93. package/dist/components/Navigation/index.js +19 -19
  94. package/dist/components/Navigation/types.d.ts +26 -26
  95. package/dist/components/Navigation/types.js +7 -7
  96. package/dist/components/Navigation/utils.d.ts +3 -3
  97. package/dist/components/Navigation/utils.js +68 -68
  98. package/dist/components/Pager/index.d.ts +26 -26
  99. package/dist/components/Pager/index.js +87 -87
  100. package/dist/components/Pager/styles.d.ts +87 -87
  101. package/dist/components/Pager/styles.js +71 -71
  102. package/dist/components/RadioInput/index.d.ts +27 -27
  103. package/dist/components/RadioInput/index.js +75 -75
  104. package/dist/components/RadioInput/styles.d.ts +58 -58
  105. package/dist/components/RadioInput/styles.js +49 -49
  106. package/dist/components/Scroll/index.d.ts +20 -20
  107. package/dist/components/Scroll/index.js +100 -100
  108. package/dist/components/Scroll/styles.d.ts +4 -4
  109. package/dist/components/Scroll/styles.js +26 -26
  110. package/dist/components/Sections/index.d.ts +11 -11
  111. package/dist/components/Sections/index.js +79 -79
  112. package/dist/components/SegmentedControl/index.d.ts +52 -52
  113. package/dist/components/SegmentedControl/index.js +132 -132
  114. package/dist/components/SegmentedControl/styles.d.ts +60 -60
  115. package/dist/components/SegmentedControl/styles.js +42 -42
  116. package/dist/components/Select/index.d.ts +13 -13
  117. package/dist/components/Select/index.js +130 -130
  118. package/dist/components/Select/styles.d.ts +59 -59
  119. package/dist/components/Select/styles.js +31 -31
  120. package/dist/components/Select/types.d.ts +36 -36
  121. package/dist/components/Select/types.js +2 -2
  122. package/dist/components/Slider/Mark.d.ts +3 -3
  123. package/dist/components/Slider/Mark.js +31 -31
  124. package/dist/components/Slider/Thumb.d.ts +7 -7
  125. package/dist/components/Slider/Thumb.js +29 -29
  126. package/dist/components/Slider/index.d.ts +4 -4
  127. package/dist/components/Slider/index.js +102 -102
  128. package/dist/components/Slider/styles.d.ts +54 -54
  129. package/dist/components/Slider/styles.js +60 -60
  130. package/dist/components/Slider/types.d.ts +26 -26
  131. package/dist/components/Slider/types.js +2 -2
  132. package/dist/components/Switch/index.d.ts +14 -14
  133. package/dist/components/Switch/index.js +84 -84
  134. package/dist/components/Switch/styles.d.ts +55 -55
  135. package/dist/components/Switch/styles.js +33 -33
  136. package/dist/components/Text/index.d.ts +23 -23
  137. package/dist/components/Text/index.js +124 -124
  138. package/dist/components/Text/styles.d.ts +70 -70
  139. package/dist/components/Text/styles.js +30 -30
  140. package/dist/components/TextInput/index.d.ts +181 -181
  141. package/dist/components/TextInput/index.js +213 -213
  142. package/dist/components/TextInput/styles.d.ts +63 -63
  143. package/dist/components/TextInput/styles.js +64 -64
  144. package/dist/components/Touchable/index.d.ts +21 -21
  145. package/dist/components/Touchable/index.js +157 -157
  146. package/dist/components/Touchable/styles.d.ts +58 -58
  147. package/dist/components/Touchable/styles.js +23 -23
  148. package/dist/components/View/index.d.ts +132 -132
  149. package/dist/components/View/index.js +101 -101
  150. package/dist/components/View/styles.d.ts +54 -54
  151. package/dist/components/View/styles.js +28 -28
  152. package/dist/components/components.d.ts +38 -38
  153. package/dist/components/components.js +67 -67
  154. package/dist/components/defaultStyles.d.ts +1369 -1369
  155. package/dist/components/defaultStyles.js +64 -64
  156. package/dist/components/legacy/Modal/index.d.ts +28 -28
  157. package/dist/components/legacy/Modal/index.js +113 -113
  158. package/dist/components/legacy/Modal/styles.d.ts +64 -64
  159. package/dist/components/legacy/Modal/styles.js +59 -59
  160. package/dist/components/legacy/Pager/index.d.ts +20 -20
  161. package/dist/components/legacy/Pager/index.js +167 -167
  162. package/dist/components/legacy/Pager/styles.d.ts +54 -54
  163. package/dist/components/legacy/Pager/styles.js +43 -43
  164. package/dist/components/legacy/index.d.ts +2 -2
  165. package/dist/components/legacy/index.js +18 -18
  166. package/dist/index.d.ts +7 -7
  167. package/dist/index.js +42 -42
  168. package/dist/modules/documentPicker.d.ts +3 -3
  169. package/dist/modules/documentPicker.js +11 -11
  170. package/dist/modules/fastImage.d.ts +1 -1
  171. package/dist/modules/fastImage.js +9 -9
  172. package/dist/modules/reactNavigation.d.ts +5 -5
  173. package/dist/modules/reactNavigation.js +25 -25
  174. package/dist/modules/textInputMask.d.ts +10 -10
  175. package/dist/modules/textInputMask.js +22 -22
  176. package/dist/modules/types/fileTypes.d.ts +138 -138
  177. package/dist/modules/types/fileTypes.js +2 -2
  178. package/dist/modules/types/textInputMask.d.ts +7 -7
  179. package/dist/modules/types/textInputMask.js +2 -2
  180. package/dist/types/index.d.ts +1 -1
  181. package/dist/types/index.js +17 -17
  182. package/dist/types/utility.d.ts +8 -8
  183. package/dist/types/utility.js +2 -2
  184. package/dist/utils/KeyboardAware/context.d.ts +13 -13
  185. package/dist/utils/KeyboardAware/context.js +67 -67
  186. package/dist/utils/KeyboardAware/index.d.ts +8 -8
  187. package/dist/utils/KeyboardAware/index.js +32 -32
  188. package/dist/utils/KeyboardAware/keyboardHooks.d.ts +26 -26
  189. package/dist/utils/KeyboardAware/keyboardHooks.js +89 -89
  190. package/dist/utils/KeyboardAware/lib/KeyboardAwareFlatList.d.ts +3 -3
  191. package/dist/utils/KeyboardAware/lib/KeyboardAwareFlatList.js +8 -8
  192. package/dist/utils/KeyboardAware/lib/KeyboardAwareHOC.d.ts +67 -67
  193. package/dist/utils/KeyboardAware/lib/KeyboardAwareHOC.js +450 -450
  194. package/dist/utils/KeyboardAware/lib/KeyboardAwareInterface.d.ts +7 -7
  195. package/dist/utils/KeyboardAware/lib/KeyboardAwareInterface.js +3 -3
  196. package/dist/utils/KeyboardAware/lib/KeyboardAwareScrollView.d.ts +3 -3
  197. package/dist/utils/KeyboardAware/lib/KeyboardAwareScrollView.js +9 -9
  198. package/dist/utils/KeyboardAware/lib/KeyboardAwareSectionList.d.ts +3 -3
  199. package/dist/utils/KeyboardAware/lib/KeyboardAwareSectionList.js +9 -9
  200. package/dist/utils/KeyboardAware/types.d.ts +1 -1
  201. package/dist/utils/KeyboardAware/types.js +6 -6
  202. package/dist/utils/ModalManager/components.d.ts +20 -20
  203. package/dist/utils/ModalManager/components.js +117 -117
  204. package/dist/utils/ModalManager/context.d.ts +48 -48
  205. package/dist/utils/ModalManager/context.js +204 -204
  206. package/dist/utils/ModalManager/index.d.ts +11 -11
  207. package/dist/utils/ModalManager/index.js +12 -12
  208. package/dist/utils/OSAlert.d.ts +32 -32
  209. package/dist/utils/OSAlert.js +142 -142
  210. package/dist/utils/PermissionManager/context.d.ts +52 -52
  211. package/dist/utils/PermissionManager/context.js +315 -315
  212. package/dist/utils/PermissionManager/index.d.ts +4 -4
  213. package/dist/utils/PermissionManager/index.js +8 -8
  214. package/dist/utils/PermissionManager/types.d.ts +13 -13
  215. package/dist/utils/PermissionManager/types.js +2 -2
  216. package/dist/utils/hooks.d.ts +40 -40
  217. package/dist/utils/hooks.js +130 -130
  218. package/dist/utils/index.d.ts +10 -10
  219. package/dist/utils/index.js +39 -39
  220. package/dist/utils/input.d.ts +35 -35
  221. package/dist/utils/input.js +48 -48
  222. package/dist/utils/misc.d.ts +6 -6
  223. package/dist/utils/misc.js +86 -86
  224. package/dist/utils/notifications.d.ts +34 -34
  225. package/dist/utils/notifications.js +267 -267
  226. package/dist/utils/theme.d.ts +42 -42
  227. package/dist/utils/theme.js +52 -52
  228. package/package.json +54 -54
  229. package/src/index.ts +7 -7
@@ -1,205 +1,205 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || function (mod) {
30
- if (mod && mod.__esModule) return mod;
31
- var result = {};
32
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
- __setModuleDefault(result, mod);
34
- return result;
35
- };
36
- Object.defineProperty(exports, "__esModule", { value: true });
37
- exports.useModalSequence = exports.useModalContext = exports.Provider = void 0;
38
- var React = __importStar(require("react"));
39
- var common_1 = require("@codeleap/common");
40
- var portal_1 = require("@gorhom/portal");
41
- var KeyboardAware_1 = require("../KeyboardAware");
42
- var ModalContext = React.createContext({});
43
- function Provider(_a) {
44
- var _b, _c, _d, _e;
45
- var children = _a.children;
46
- var _f = (0, common_1.useState)({}), modals = _f[0], setModals = _f[1];
47
- var currentModal = Object.keys(modals).find(function (name) { return modals[name].visible; });
48
- function isVisible(name) {
49
- var _a;
50
- return !!((_a = modals[name]) === null || _a === void 0 ? void 0 : _a.visible);
51
- }
52
- var toggleModal = function (name, set, props) {
53
- var visible = isVisible(name);
54
- var newVisible = typeof set === 'boolean' ? set : !visible;
55
- setModals(function (current) {
56
- var _a;
57
- var attached = newVisible ? [] : current[name].attachments.map(function (m) { return [m, __assign(__assign({}, current[m]), { visible: false })]; });
58
- return __assign(__assign(__assign({}, current), (_a = {}, _a[name] = __assign(__assign({}, current[name]), { visible: newVisible, props: props }), _a)), Object.fromEntries(attached));
59
- });
60
- };
61
- var setModal = function (name, to) {
62
- setModals(function (current) {
63
- var _a;
64
- return (__assign(__assign({}, current), (_a = {}, _a[name] = __assign(__assign({}, current[name]), to), _a)));
65
- });
66
- };
67
- var codeleapCtx = (0, common_1.useCodeleapContext)();
68
- var defaultDuration = ((_e = (_d = (_c = (_b = codeleapCtx === null || codeleapCtx === void 0 ? void 0 : codeleapCtx.Theme) === null || _b === void 0 ? void 0 : _b.values) === null || _c === void 0 ? void 0 : _c.transitions) === null || _d === void 0 ? void 0 : _d.modal) === null || _e === void 0 ? void 0 : _e.duration) || 300;
69
- var transition = function (from, to, options) {
70
- return new Promise(function (resolve) {
71
- setTimeout(function () {
72
- if (!from) {
73
- toggleModal(to, true, options === null || options === void 0 ? void 0 : options.props);
74
- return;
75
- }
76
- var _options = __assign({ duration: defaultDuration }, options);
77
- var toVisible = isVisible(to);
78
- var fromVisible = isVisible(from);
79
- // if (!fromVisible && !toVisible) {
80
- // toggleModal(to, true, options?.props)
81
- // return
82
- // }
83
- toggleModal(from, false);
84
- setTimeout(function () {
85
- toggleModal(to, true, options === null || options === void 0 ? void 0 : options.props);
86
- resolve();
87
- }, _options.duration);
88
- });
89
- });
90
- };
91
- function attach(modal, to) {
92
- setModals(function (modals) {
93
- var toModal = modals[to];
94
- var _modal = modals[modal];
95
- if (!toModal || !_modal)
96
- return modals;
97
- var isAttached = toModal.attachments.includes(modal) || _modal.attachedTo.includes(to);
98
- var newVal = __assign({}, modals);
99
- if (isAttached) {
100
- newVal[to].attachments = newVal[to].attachments.filter(function (x) { return x !== modal; });
101
- newVal[modal].attachedTo = newVal[modal].attachedTo.filter(function (x) { return x !== to; });
102
- }
103
- else {
104
- newVal[to].attachments.push(modal);
105
- newVal[modal].attachedTo.push(to);
106
- }
107
- return newVal;
108
- });
109
- }
110
- function remove(id) {
111
- var newModals = __assign({}, modals);
112
- delete newModals[id];
113
- setModals(newModals);
114
- }
115
- return <KeyboardAware_1.KeyboardProvider>
116
- <ModalContext.Provider value={{
117
- state: modals,
118
- toggleModal: toggleModal,
119
- setModal: setModal,
120
- currentModal: currentModal,
121
- attach: attach,
122
- isVisible: isVisible,
123
- remove: remove,
124
- transition: transition,
125
- transitionDuration: defaultDuration,
126
- }}>
127
- <portal_1.PortalProvider>
128
-
129
- {children}
130
- </portal_1.PortalProvider>
131
- </ModalContext.Provider>
132
- </KeyboardAware_1.KeyboardProvider>;
133
- }
134
- exports.Provider = Provider;
135
- function useModalContext() {
136
- var context = React.useContext(ModalContext);
137
- return context;
138
- }
139
- exports.useModalContext = useModalContext;
140
- function useModalSequence(ids, options) {
141
- var _options = __assign({ closeLastOnFinish: true, onFinish: function () { }, resetOnFinish: false, waitForLastToCloseBeforeCallingFinish: true }, options);
142
- var modals = useModalContext();
143
- var _a = (0, common_1.useState)(0), idx = _a[0], setIdx = _a[1];
144
- var state = {
145
- currentId: ids[idx],
146
- nextId: ids[idx + 1],
147
- previousId: ids[idx - 1],
148
- };
149
- (0, common_1.onUpdate)(function () {
150
- if (_options.autoOpen && typeof (ids === null || ids === void 0 ? void 0 : ids[0]) === 'number') {
151
- if (!modals.isVisible(ids[0])) {
152
- modals.toggleModal(ids[0]);
153
- }
154
- }
155
- }, [_options.autoOpen, ids === null || ids === void 0 ? void 0 : ids[0]]);
156
- function next(props) {
157
- if (idx === ids.length - 1) {
158
- if (_options.closeLastOnFinish) {
159
- modals.transition(ids[idx], null).then(function () {
160
- if (_options.waitForLastToCloseBeforeCallingFinish) {
161
- _options.onFinish();
162
- }
163
- });
164
- }
165
- if (_options.resetOnFinish) {
166
- reset();
167
- }
168
- if (!(_options.waitForLastToCloseBeforeCallingFinish && _options.closeLastOnFinish)) {
169
- _options.onFinish();
170
- }
171
- return;
172
- }
173
- else {
174
- if (!state.nextId)
175
- return;
176
- modals.transition(ids[idx], state.nextId, props);
177
- setIdx(function (i) { return i + 1; });
178
- }
179
- }
180
- function previous(props) {
181
- if (!state.previousId)
182
- return;
183
- modals.transition(ids[idx], state.previousId, props);
184
- setIdx(function (i) { return i - 1; });
185
- }
186
- function goto(idxOrId, props) {
187
- var newId = null;
188
- if (common_1.TypeGuards.isString(idxOrId)) {
189
- newId = idxOrId;
190
- }
191
- else {
192
- newId = ids[idxOrId];
193
- }
194
- modals.transition(ids[idx], newId, {
195
- props: props,
196
- });
197
- setIdx(ids.indexOf(newId));
198
- }
199
- function reset() {
200
- setIdx(0);
201
- }
202
- return __assign({ reset: reset, next: next, previous: previous, setModal: setIdx, goto: goto, currentIdx: idx }, state);
203
- }
204
- exports.useModalSequence = useModalSequence;
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.useModalSequence = exports.useModalContext = exports.Provider = void 0;
38
+ var React = __importStar(require("react"));
39
+ var common_1 = require("@codeleap/common");
40
+ var portal_1 = require("@gorhom/portal");
41
+ var KeyboardAware_1 = require("../KeyboardAware");
42
+ var ModalContext = React.createContext({});
43
+ function Provider(_a) {
44
+ var _b, _c, _d, _e;
45
+ var children = _a.children;
46
+ var _f = (0, common_1.useState)({}), modals = _f[0], setModals = _f[1];
47
+ var currentModal = Object.keys(modals).find(function (name) { return modals[name].visible; });
48
+ function isVisible(name) {
49
+ var _a;
50
+ return !!((_a = modals[name]) === null || _a === void 0 ? void 0 : _a.visible);
51
+ }
52
+ var toggleModal = function (name, set, props) {
53
+ var visible = isVisible(name);
54
+ var newVisible = typeof set === 'boolean' ? set : !visible;
55
+ setModals(function (current) {
56
+ var _a;
57
+ var attached = newVisible ? [] : current[name].attachments.map(function (m) { return [m, __assign(__assign({}, current[m]), { visible: false })]; });
58
+ return __assign(__assign(__assign({}, current), (_a = {}, _a[name] = __assign(__assign({}, current[name]), { visible: newVisible, props: props }), _a)), Object.fromEntries(attached));
59
+ });
60
+ };
61
+ var setModal = function (name, to) {
62
+ setModals(function (current) {
63
+ var _a;
64
+ return (__assign(__assign({}, current), (_a = {}, _a[name] = __assign(__assign({}, current[name]), to), _a)));
65
+ });
66
+ };
67
+ var codeleapCtx = (0, common_1.useCodeleapContext)();
68
+ var defaultDuration = ((_e = (_d = (_c = (_b = codeleapCtx === null || codeleapCtx === void 0 ? void 0 : codeleapCtx.Theme) === null || _b === void 0 ? void 0 : _b.values) === null || _c === void 0 ? void 0 : _c.transitions) === null || _d === void 0 ? void 0 : _d.modal) === null || _e === void 0 ? void 0 : _e.duration) || 300;
69
+ var transition = function (from, to, options) {
70
+ return new Promise(function (resolve) {
71
+ setTimeout(function () {
72
+ if (!from) {
73
+ toggleModal(to, true, options === null || options === void 0 ? void 0 : options.props);
74
+ return;
75
+ }
76
+ var _options = __assign({ duration: defaultDuration }, options);
77
+ var toVisible = isVisible(to);
78
+ var fromVisible = isVisible(from);
79
+ // if (!fromVisible && !toVisible) {
80
+ // toggleModal(to, true, options?.props)
81
+ // return
82
+ // }
83
+ toggleModal(from, false);
84
+ setTimeout(function () {
85
+ toggleModal(to, true, options === null || options === void 0 ? void 0 : options.props);
86
+ resolve();
87
+ }, _options.duration);
88
+ });
89
+ });
90
+ };
91
+ function attach(modal, to) {
92
+ setModals(function (modals) {
93
+ var toModal = modals[to];
94
+ var _modal = modals[modal];
95
+ if (!toModal || !_modal)
96
+ return modals;
97
+ var isAttached = toModal.attachments.includes(modal) || _modal.attachedTo.includes(to);
98
+ var newVal = __assign({}, modals);
99
+ if (isAttached) {
100
+ newVal[to].attachments = newVal[to].attachments.filter(function (x) { return x !== modal; });
101
+ newVal[modal].attachedTo = newVal[modal].attachedTo.filter(function (x) { return x !== to; });
102
+ }
103
+ else {
104
+ newVal[to].attachments.push(modal);
105
+ newVal[modal].attachedTo.push(to);
106
+ }
107
+ return newVal;
108
+ });
109
+ }
110
+ function remove(id) {
111
+ var newModals = __assign({}, modals);
112
+ delete newModals[id];
113
+ setModals(newModals);
114
+ }
115
+ return <KeyboardAware_1.KeyboardProvider>
116
+ <ModalContext.Provider value={{
117
+ state: modals,
118
+ toggleModal: toggleModal,
119
+ setModal: setModal,
120
+ currentModal: currentModal,
121
+ attach: attach,
122
+ isVisible: isVisible,
123
+ remove: remove,
124
+ transition: transition,
125
+ transitionDuration: defaultDuration,
126
+ }}>
127
+ <portal_1.PortalProvider>
128
+
129
+ {children}
130
+ </portal_1.PortalProvider>
131
+ </ModalContext.Provider>
132
+ </KeyboardAware_1.KeyboardProvider>;
133
+ }
134
+ exports.Provider = Provider;
135
+ function useModalContext() {
136
+ var context = React.useContext(ModalContext);
137
+ return context;
138
+ }
139
+ exports.useModalContext = useModalContext;
140
+ function useModalSequence(ids, options) {
141
+ var _options = __assign({ closeLastOnFinish: true, onFinish: function () { }, resetOnFinish: false, waitForLastToCloseBeforeCallingFinish: true }, options);
142
+ var modals = useModalContext();
143
+ var _a = (0, common_1.useState)(0), idx = _a[0], setIdx = _a[1];
144
+ var state = {
145
+ currentId: ids[idx],
146
+ nextId: ids[idx + 1],
147
+ previousId: ids[idx - 1],
148
+ };
149
+ (0, common_1.onUpdate)(function () {
150
+ if (_options.autoOpen && typeof (ids === null || ids === void 0 ? void 0 : ids[0]) === 'number') {
151
+ if (!modals.isVisible(ids[0])) {
152
+ modals.toggleModal(ids[0]);
153
+ }
154
+ }
155
+ }, [_options.autoOpen, ids === null || ids === void 0 ? void 0 : ids[0]]);
156
+ function next(props) {
157
+ if (idx === ids.length - 1) {
158
+ if (_options.closeLastOnFinish) {
159
+ modals.transition(ids[idx], null).then(function () {
160
+ if (_options.waitForLastToCloseBeforeCallingFinish) {
161
+ _options.onFinish();
162
+ }
163
+ });
164
+ }
165
+ if (_options.resetOnFinish) {
166
+ reset();
167
+ }
168
+ if (!(_options.waitForLastToCloseBeforeCallingFinish && _options.closeLastOnFinish)) {
169
+ _options.onFinish();
170
+ }
171
+ return;
172
+ }
173
+ else {
174
+ if (!state.nextId)
175
+ return;
176
+ modals.transition(ids[idx], state.nextId, props);
177
+ setIdx(function (i) { return i + 1; });
178
+ }
179
+ }
180
+ function previous(props) {
181
+ if (!state.previousId)
182
+ return;
183
+ modals.transition(ids[idx], state.previousId, props);
184
+ setIdx(function (i) { return i - 1; });
185
+ }
186
+ function goto(idxOrId, props) {
187
+ var newId = null;
188
+ if (common_1.TypeGuards.isString(idxOrId)) {
189
+ newId = idxOrId;
190
+ }
191
+ else {
192
+ newId = ids[idxOrId];
193
+ }
194
+ modals.transition(ids[idx], newId, {
195
+ props: props,
196
+ });
197
+ setIdx(ids.indexOf(newId));
198
+ }
199
+ function reset() {
200
+ setIdx(0);
201
+ }
202
+ return __assign({ reset: reset, next: next, previous: previous, setModal: setIdx, goto: goto, currentIdx: idx }, state);
203
+ }
204
+ exports.useModalSequence = useModalSequence;
205
205
  //# sourceMappingURL=context.js.map
@@ -1,11 +1,11 @@
1
- /// <reference types="react" />
2
- import { useModalContext, useModalSequence, Provider } from './context';
3
- import { ManagedModalProps, ManagedDrawerProps } from './components';
4
- export declare const ModalManager: {
5
- useModalContext: typeof useModalContext;
6
- Modal: import("react").FC<ManagedModalProps<import("../..").ModalProps>>;
7
- Drawer: import("react").FC<ManagedDrawerProps<import("../..").DrawerProps>>;
8
- Provider: typeof Provider;
9
- useModalSequence: typeof useModalSequence;
10
- };
11
- export type { ManagedModalProps, ManagedDrawerProps, };
1
+ /// <reference types="react" />
2
+ import { useModalContext, useModalSequence, Provider } from './context';
3
+ import { ManagedModalProps, ManagedDrawerProps } from './components';
4
+ export declare const ModalManager: {
5
+ useModalContext: typeof useModalContext;
6
+ Modal: import("react").FC<ManagedModalProps<import("../..").ModalProps>>;
7
+ Drawer: import("react").FC<ManagedDrawerProps<import("../..").DrawerProps>>;
8
+ Provider: typeof Provider;
9
+ useModalSequence: typeof useModalSequence;
10
+ };
11
+ export type { ManagedModalProps, ManagedDrawerProps, };
@@ -1,13 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ModalManager = void 0;
4
- var context_1 = require("./context");
5
- var components_1 = require("./components");
6
- exports.ModalManager = {
7
- useModalContext: context_1.useModalContext,
8
- Modal: components_1.Modal,
9
- Drawer: components_1.Drawer,
10
- Provider: context_1.Provider,
11
- useModalSequence: context_1.useModalSequence,
12
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModalManager = void 0;
4
+ var context_1 = require("./context");
5
+ var components_1 = require("./components");
6
+ exports.ModalManager = {
7
+ useModalContext: context_1.useModalContext,
8
+ Modal: components_1.Modal,
9
+ Drawer: components_1.Drawer,
10
+ Provider: context_1.Provider,
11
+ useModalSequence: context_1.useModalSequence,
12
+ };
13
13
  //# sourceMappingURL=index.js.map
@@ -1,32 +1,32 @@
1
- import { Alert, AlertButton } from 'react-native';
2
- /**
3
- * Alert.{function} receives three parameters, the last one being an object:
4
- *
5
- * @param {string} title text to appear in title
6
- * @param {string} body text to appear in body
7
- * @param {object} options array of buttons and callbacks
8
- *
9
- * options properties
10
- * @property {string} name object description
11
- * @property {function} run callback function to run on press
12
- */
13
- declare type NativeAlertArgs = Parameters<typeof Alert.alert>;
14
- export declare type OSAlertArgs = {
15
- title: NativeAlertArgs['0'];
16
- body?: NativeAlertArgs['1'];
17
- options?: NativeAlertArgs['2'];
18
- };
19
- export declare type AlertEvent = AlertButton['onPress'];
20
- export declare type OSAlertType = 'info' | 'error' | 'warn' | 'ask';
21
- export declare type NamedEvents<E extends string> = Partial<Record<E, AlertEvent>>;
22
- declare function ask({ title, body, options }: OSAlertArgs): void;
23
- declare function warn(args: OSAlertArgs & NamedEvents<'onReject' | 'onAccept'>): void;
24
- declare function info(args: OSAlertArgs & NamedEvents<'onDismiss'>): void;
25
- declare function OSError(args: OSAlertArgs & NamedEvents<'onDismiss'>): void;
26
- export declare const OSAlert: {
27
- ask: typeof ask;
28
- warn: typeof warn;
29
- info: typeof info;
30
- error: typeof OSError;
31
- };
32
- export {};
1
+ import { Alert, AlertButton } from 'react-native';
2
+ /**
3
+ * Alert.{function} receives three parameters, the last one being an object:
4
+ *
5
+ * @param {string} title text to appear in title
6
+ * @param {string} body text to appear in body
7
+ * @param {object} options array of buttons and callbacks
8
+ *
9
+ * options properties
10
+ * @property {string} name object description
11
+ * @property {function} run callback function to run on press
12
+ */
13
+ declare type NativeAlertArgs = Parameters<typeof Alert.alert>;
14
+ export declare type OSAlertArgs = {
15
+ title: NativeAlertArgs['0'];
16
+ body?: NativeAlertArgs['1'];
17
+ options?: NativeAlertArgs['2'];
18
+ };
19
+ export declare type AlertEvent = AlertButton['onPress'];
20
+ export declare type OSAlertType = 'info' | 'error' | 'warn' | 'ask';
21
+ export declare type NamedEvents<E extends string> = Partial<Record<E, AlertEvent>>;
22
+ declare function ask({ title, body, options }: OSAlertArgs): void;
23
+ declare function warn(args: OSAlertArgs & NamedEvents<'onReject' | 'onAccept'>): void;
24
+ declare function info(args: OSAlertArgs & NamedEvents<'onDismiss'>): void;
25
+ declare function OSError(args: OSAlertArgs & NamedEvents<'onDismiss'>): void;
26
+ export declare const OSAlert: {
27
+ ask: typeof ask;
28
+ warn: typeof warn;
29
+ info: typeof info;
30
+ error: typeof OSError;
31
+ };
32
+ export {};