@tecsinapse/react-native-kit 1.22.6 → 1.22.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 (171) hide show
  1. package/dist/cjs/components/atoms/Avatar/Avatar.js +3 -21
  2. package/dist/cjs/components/atoms/Avatar/Avatar.js.map +1 -1
  3. package/dist/cjs/components/atoms/Badge/Badge.js +9 -43
  4. package/dist/cjs/components/atoms/Badge/Badge.js.map +1 -1
  5. package/dist/cjs/components/atoms/BottomNavigator/BottomNavigator.js +14 -43
  6. package/dist/cjs/components/atoms/BottomNavigator/BottomNavigator.js.map +1 -1
  7. package/dist/cjs/components/atoms/BottomNavigator/Item.js +13 -43
  8. package/dist/cjs/components/atoms/BottomNavigator/Item.js.map +1 -1
  9. package/dist/cjs/components/atoms/Button/Button.js +9 -42
  10. package/dist/cjs/components/atoms/Button/Button.js.map +1 -1
  11. package/dist/cjs/components/atoms/Button/States/Error.js +5 -23
  12. package/dist/cjs/components/atoms/Button/States/Error.js.map +1 -1
  13. package/dist/cjs/components/atoms/Button/States/Loading.js +3 -21
  14. package/dist/cjs/components/atoms/Button/States/Loading.js.map +1 -1
  15. package/dist/cjs/components/atoms/Button/States/Success.js +3 -21
  16. package/dist/cjs/components/atoms/Button/States/Success.js.map +1 -1
  17. package/dist/cjs/components/atoms/GroupButton/GroupButtonOption.js +3 -21
  18. package/dist/cjs/components/atoms/GroupButton/GroupButtonOption.js.map +1 -1
  19. package/dist/cjs/components/atoms/Header/Header.d.ts +1 -0
  20. package/dist/cjs/components/atoms/Header/Header.js +25 -51
  21. package/dist/cjs/components/atoms/Header/Header.js.map +1 -1
  22. package/dist/cjs/components/atoms/Header/styled.js +1 -0
  23. package/dist/cjs/components/atoms/Header/styled.js.map +1 -1
  24. package/dist/cjs/components/atoms/Input/Input.js +32 -84
  25. package/dist/cjs/components/atoms/Input/Input.js.map +1 -1
  26. package/dist/cjs/components/atoms/InputMask/InputMask.js +29 -83
  27. package/dist/cjs/components/atoms/InputMask/InputMask.js.map +1 -1
  28. package/dist/cjs/components/atoms/Modal/ModalGroupManager.js +5 -33
  29. package/dist/cjs/components/atoms/Modal/ModalGroupManager.js.map +1 -1
  30. package/dist/cjs/components/atoms/Modal/ModalLifecycleHandler.js +67 -86
  31. package/dist/cjs/components/atoms/Modal/ModalLifecycleHandler.js.map +1 -1
  32. package/dist/cjs/components/atoms/Modal/useLazyModalManager.js +1 -1
  33. package/dist/cjs/components/atoms/Modal/useLazyModalManager.js.map +1 -1
  34. package/dist/cjs/components/atoms/Modal/useModalManager.js +1 -1
  35. package/dist/cjs/components/atoms/Modal/useModalManager.js.map +1 -1
  36. package/dist/cjs/components/atoms/Skeleton/Pulse.js +4 -5
  37. package/dist/cjs/components/atoms/Skeleton/Pulse.js.map +1 -1
  38. package/dist/cjs/components/atoms/Skeleton/Skeleton.js +13 -47
  39. package/dist/cjs/components/atoms/Skeleton/Skeleton.js.map +1 -1
  40. package/dist/cjs/components/atoms/Skeleton/Wave.js +5 -6
  41. package/dist/cjs/components/atoms/Skeleton/Wave.js.map +1 -1
  42. package/dist/cjs/components/atoms/SnappingSlider/SnappingSlider.js +11 -43
  43. package/dist/cjs/components/atoms/SnappingSlider/SnappingSlider.js.map +1 -1
  44. package/dist/cjs/components/atoms/Tag/Tag.js +5 -33
  45. package/dist/cjs/components/atoms/Tag/Tag.js.map +1 -1
  46. package/dist/cjs/components/atoms/Text/Text.js +4 -31
  47. package/dist/cjs/components/atoms/Text/Text.js.map +1 -1
  48. package/dist/cjs/components/atoms/Text/styled.js +3 -3
  49. package/dist/cjs/components/atoms/Text/styled.js.map +1 -1
  50. package/dist/cjs/components/atoms/TextArea/TextArea.js +29 -83
  51. package/dist/cjs/components/atoms/TextArea/TextArea.js.map +1 -1
  52. package/dist/cjs/components/molecules/Calendar/Calendar.js +8 -40
  53. package/dist/cjs/components/molecules/Calendar/Calendar.js.map +1 -1
  54. package/dist/cjs/components/molecules/DatePicker/DatePicker.js +15 -48
  55. package/dist/cjs/components/molecules/DatePicker/DatePicker.js.map +1 -1
  56. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js +12 -43
  57. package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  58. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js +8 -40
  59. package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  60. package/dist/cjs/components/molecules/Grid/Grid.js +20 -55
  61. package/dist/cjs/components/molecules/Grid/Grid.js.map +1 -1
  62. package/dist/cjs/components/molecules/Grid/Item/Item.js +28 -75
  63. package/dist/cjs/components/molecules/Grid/Item/Item.js.map +1 -1
  64. package/dist/cjs/components/molecules/IconTextButton/IconTextButton.js +13 -47
  65. package/dist/cjs/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  66. package/dist/cjs/components/molecules/IconTextButton/TextComponent.js +7 -23
  67. package/dist/cjs/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  68. package/dist/cjs/components/molecules/IconTextButton/styled.js +3 -3
  69. package/dist/cjs/components/molecules/IconTextButton/styled.js.map +1 -1
  70. package/dist/cjs/components/molecules/InputPassword/InputPassword.js +4 -35
  71. package/dist/cjs/components/molecules/InputPassword/InputPassword.js.map +1 -1
  72. package/dist/cjs/components/molecules/LabeledSwitch/LabelComponent.js +15 -47
  73. package/dist/cjs/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  74. package/dist/cjs/components/molecules/LabeledSwitch/LabeledSwitch.js +14 -49
  75. package/dist/cjs/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  76. package/dist/cjs/components/molecules/LabeledSwitch/styled.js +2 -2
  77. package/dist/cjs/components/molecules/LabeledSwitch/styled.js.map +1 -1
  78. package/dist/cjs/components/molecules/Select/Modal.js +25 -71
  79. package/dist/cjs/components/molecules/Select/Modal.js.map +1 -1
  80. package/dist/cjs/components/molecules/Select/Select.js +37 -91
  81. package/dist/cjs/components/molecules/Select/Select.js.map +1 -1
  82. package/dist/cjs/components/molecules/Select/styled.js +3 -6
  83. package/dist/cjs/components/molecules/Select/styled.js.map +1 -1
  84. package/dist/cjs/components/molecules/Snackbar/Snackbar.js +10 -41
  85. package/dist/cjs/components/molecules/Snackbar/Snackbar.js.map +1 -1
  86. package/dist/esm/components/atoms/Avatar/Avatar.js +3 -21
  87. package/dist/esm/components/atoms/Avatar/Avatar.js.map +1 -1
  88. package/dist/esm/components/atoms/Badge/Badge.js +9 -43
  89. package/dist/esm/components/atoms/Badge/Badge.js.map +1 -1
  90. package/dist/esm/components/atoms/BottomNavigator/BottomNavigator.js +14 -43
  91. package/dist/esm/components/atoms/BottomNavigator/BottomNavigator.js.map +1 -1
  92. package/dist/esm/components/atoms/BottomNavigator/Item.js +13 -43
  93. package/dist/esm/components/atoms/BottomNavigator/Item.js.map +1 -1
  94. package/dist/esm/components/atoms/Button/Button.js +9 -42
  95. package/dist/esm/components/atoms/Button/Button.js.map +1 -1
  96. package/dist/esm/components/atoms/Button/States/Error.js +6 -24
  97. package/dist/esm/components/atoms/Button/States/Error.js.map +1 -1
  98. package/dist/esm/components/atoms/Button/States/Loading.js +3 -21
  99. package/dist/esm/components/atoms/Button/States/Loading.js.map +1 -1
  100. package/dist/esm/components/atoms/Button/States/Success.js +3 -21
  101. package/dist/esm/components/atoms/Button/States/Success.js.map +1 -1
  102. package/dist/esm/components/atoms/GroupButton/GroupButtonOption.js +3 -21
  103. package/dist/esm/components/atoms/GroupButton/GroupButtonOption.js.map +1 -1
  104. package/dist/esm/components/atoms/Header/Header.d.ts +1 -0
  105. package/dist/esm/components/atoms/Header/Header.js +26 -52
  106. package/dist/esm/components/atoms/Header/Header.js.map +1 -1
  107. package/dist/esm/components/atoms/Header/styled.js +2 -1
  108. package/dist/esm/components/atoms/Header/styled.js.map +1 -1
  109. package/dist/esm/components/atoms/Input/Input.js +32 -84
  110. package/dist/esm/components/atoms/Input/Input.js.map +1 -1
  111. package/dist/esm/components/atoms/InputMask/InputMask.js +29 -83
  112. package/dist/esm/components/atoms/InputMask/InputMask.js.map +1 -1
  113. package/dist/esm/components/atoms/Modal/ModalGroupManager.js +5 -33
  114. package/dist/esm/components/atoms/Modal/ModalGroupManager.js.map +1 -1
  115. package/dist/esm/components/atoms/Modal/ModalLifecycleHandler.js +67 -86
  116. package/dist/esm/components/atoms/Modal/ModalLifecycleHandler.js.map +1 -1
  117. package/dist/esm/components/atoms/Modal/useLazyModalManager.js +1 -1
  118. package/dist/esm/components/atoms/Modal/useLazyModalManager.js.map +1 -1
  119. package/dist/esm/components/atoms/Modal/useModalManager.js +1 -1
  120. package/dist/esm/components/atoms/Modal/useModalManager.js.map +1 -1
  121. package/dist/esm/components/atoms/Skeleton/Pulse.js +4 -5
  122. package/dist/esm/components/atoms/Skeleton/Pulse.js.map +1 -1
  123. package/dist/esm/components/atoms/Skeleton/Skeleton.js +13 -47
  124. package/dist/esm/components/atoms/Skeleton/Skeleton.js.map +1 -1
  125. package/dist/esm/components/atoms/Skeleton/Wave.js +5 -6
  126. package/dist/esm/components/atoms/Skeleton/Wave.js.map +1 -1
  127. package/dist/esm/components/atoms/SnappingSlider/SnappingSlider.js +11 -43
  128. package/dist/esm/components/atoms/SnappingSlider/SnappingSlider.js.map +1 -1
  129. package/dist/esm/components/atoms/Tag/Tag.js +5 -33
  130. package/dist/esm/components/atoms/Tag/Tag.js.map +1 -1
  131. package/dist/esm/components/atoms/Text/Text.js +4 -31
  132. package/dist/esm/components/atoms/Text/Text.js.map +1 -1
  133. package/dist/esm/components/atoms/Text/styled.js +3 -3
  134. package/dist/esm/components/atoms/Text/styled.js.map +1 -1
  135. package/dist/esm/components/atoms/TextArea/TextArea.js +29 -83
  136. package/dist/esm/components/atoms/TextArea/TextArea.js.map +1 -1
  137. package/dist/esm/components/molecules/Calendar/Calendar.js +8 -40
  138. package/dist/esm/components/molecules/Calendar/Calendar.js.map +1 -1
  139. package/dist/esm/components/molecules/DatePicker/DatePicker.js +15 -48
  140. package/dist/esm/components/molecules/DatePicker/DatePicker.js.map +1 -1
  141. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js +12 -43
  142. package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  143. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js +8 -40
  144. package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
  145. package/dist/esm/components/molecules/Grid/Grid.js +20 -55
  146. package/dist/esm/components/molecules/Grid/Grid.js.map +1 -1
  147. package/dist/esm/components/molecules/Grid/Item/Item.js +28 -75
  148. package/dist/esm/components/molecules/Grid/Item/Item.js.map +1 -1
  149. package/dist/esm/components/molecules/IconTextButton/IconTextButton.js +13 -47
  150. package/dist/esm/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  151. package/dist/esm/components/molecules/IconTextButton/TextComponent.js +7 -23
  152. package/dist/esm/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  153. package/dist/esm/components/molecules/IconTextButton/styled.js +3 -3
  154. package/dist/esm/components/molecules/IconTextButton/styled.js.map +1 -1
  155. package/dist/esm/components/molecules/InputPassword/InputPassword.js +4 -35
  156. package/dist/esm/components/molecules/InputPassword/InputPassword.js.map +1 -1
  157. package/dist/esm/components/molecules/LabeledSwitch/LabelComponent.js +15 -47
  158. package/dist/esm/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  159. package/dist/esm/components/molecules/LabeledSwitch/LabeledSwitch.js +14 -49
  160. package/dist/esm/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  161. package/dist/esm/components/molecules/LabeledSwitch/styled.js +2 -2
  162. package/dist/esm/components/molecules/LabeledSwitch/styled.js.map +1 -1
  163. package/dist/esm/components/molecules/Select/Modal.js +25 -71
  164. package/dist/esm/components/molecules/Select/Modal.js.map +1 -1
  165. package/dist/esm/components/molecules/Select/Select.js +38 -92
  166. package/dist/esm/components/molecules/Select/Select.js.map +1 -1
  167. package/dist/esm/components/molecules/Select/styled.js +3 -6
  168. package/dist/esm/components/molecules/Select/styled.js.map +1 -1
  169. package/dist/esm/components/molecules/Snackbar/Snackbar.js +10 -41
  170. package/dist/esm/components/molecules/Snackbar/Snackbar.js.map +1 -1
  171. package/package.json +3 -3
@@ -8,98 +8,79 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
8
8
 
9
9
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
10
10
 
11
- var __defProp = Object.defineProperty;
12
- var __defProps = Object.defineProperties;
13
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
14
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
15
- var __hasOwnProp = Object.prototype.hasOwnProperty;
16
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
17
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
18
- var __spreadValues = (a, b) => {
19
- for (var prop in b || (b = {}))
20
- if (__hasOwnProp.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- if (__getOwnPropSymbols)
23
- for (var prop of __getOwnPropSymbols(b)) {
24
- if (__propIsEnum.call(b, prop))
25
- __defNormalProp(a, prop, b[prop]);
26
- }
27
- return a;
28
- };
29
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
30
11
  class ModalLifecycleHandler {
12
+ nodeGroup;
13
+ state;
31
14
  constructor() {
32
- this.attach = (state) => {
33
- this.state = state;
34
- };
35
- this.update = () => {
36
- requestAnimationFrame(() => {
37
- const nodes = Array.from(this.nodeGroup.values()).filter((node) => node.visible || !!node.lastVisualization).sort(
38
- (nodeA, nodeB) => {
39
- var _a, _b;
40
- return (((_a = nodeA.lastVisualization) == null ? void 0 : _a.getTime()) || 0) - (((_b = nodeB.lastVisualization) == null ? void 0 : _b.getTime()) || 0);
15
+ this.nodeGroup = /* @__PURE__ */ new Map();
16
+ this.state = void 0;
17
+ }
18
+ attach = (state) => {
19
+ this.state = state;
20
+ };
21
+ update = () => {
22
+ requestAnimationFrame(() => {
23
+ const nodes = Array.from(this.nodeGroup.values()).filter((node) => node.visible || !!node.lastVisualization).sort(
24
+ (nodeA, nodeB) => (nodeA.lastVisualization?.getTime() || 0) - (nodeB.lastVisualization?.getTime() || 0)
25
+ ).map((node, index, filteredNodes) => {
26
+ const modalElement = node.modal();
27
+ const { props } = modalElement;
28
+ return React__default["default"].cloneElement(modalElement, {
29
+ ...props,
30
+ key: node.id,
31
+ visible: node.visible,
32
+ isLastShown: filteredNodes.length - 1 === index,
33
+ close: () => this.close(node.id),
34
+ onClose: () => {
35
+ this.remove(node.id);
36
+ props.onClose?.();
41
37
  }
42
- ).map((node, index, filteredNodes) => {
43
- const modalElement = node.modal();
44
- const { props } = modalElement;
45
- return React__default["default"].cloneElement(modalElement, __spreadProps(__spreadValues({}, props), {
46
- key: node.id,
47
- visible: node.visible,
48
- isLastShown: filteredNodes.length - 1 === index,
49
- close: () => this.close(node.id),
50
- onClose: () => {
51
- var _a;
52
- this.remove(node.id);
53
- (_a = props.onClose) == null ? void 0 : _a.call(props);
54
- }
55
- }));
56
38
  });
57
- const [, updateState] = this.state || [];
58
- updateState == null ? void 0 : updateState(nodes);
59
39
  });
60
- };
61
- this.render = () => {
62
- const [modals] = this.state || [];
63
- return modals || [];
64
- };
65
- this.sync = (id, modal) => {
66
- if (this.nodeGroup.has(id)) {
67
- const savedNode = this.findNode(id);
68
- savedNode && this.nodeGroup.set(id, __spreadProps(__spreadValues({}, savedNode), { modal }));
69
- return;
70
- }
71
- this.nodeGroup.set(id, { id, modal });
72
- };
73
- this.destroy = (id) => {
74
- this.nodeGroup.delete(id);
75
- this.update();
76
- };
77
- this.remove = (id) => {
78
- const savedNode = this.findNode(id);
79
- savedNode && this.nodeGroup.set(id, __spreadProps(__spreadValues({}, savedNode), { lastVisualization: void 0 }));
80
- this.update();
81
- };
82
- this.findNode = (id) => {
83
- const node = this.nodeGroup.get(id);
84
- !node && console.warn(`No modal was found with the id "${id}"`);
85
- return node;
86
- };
87
- this.show = (id) => {
40
+ const [, updateState] = this.state || [];
41
+ updateState?.(nodes);
42
+ });
43
+ };
44
+ render = () => {
45
+ const [modals] = this.state || [];
46
+ return modals || [];
47
+ };
48
+ sync = (id, modal) => {
49
+ if (this.nodeGroup.has(id)) {
88
50
  const savedNode = this.findNode(id);
89
- savedNode && this.nodeGroup.set(id, __spreadProps(__spreadValues({}, savedNode), {
90
- visible: true,
91
- lastVisualization: new Date()
92
- }));
93
- this.update();
94
- };
95
- this.close = (id) => {
96
- const savedNode = this.findNode(id);
97
- savedNode && this.nodeGroup.set(id, __spreadProps(__spreadValues({}, savedNode), { visible: false }));
98
- this.update();
99
- };
100
- this.nodeGroup = /* @__PURE__ */ new Map();
101
- this.state = void 0;
102
- }
51
+ savedNode && this.nodeGroup.set(id, { ...savedNode, modal });
52
+ return;
53
+ }
54
+ this.nodeGroup.set(id, { id, modal });
55
+ };
56
+ destroy = (id) => {
57
+ this.nodeGroup.delete(id);
58
+ this.update();
59
+ };
60
+ remove = (id) => {
61
+ const savedNode = this.findNode(id);
62
+ savedNode && this.nodeGroup.set(id, { ...savedNode, lastVisualization: void 0 });
63
+ this.update();
64
+ };
65
+ findNode = (id) => {
66
+ const node = this.nodeGroup.get(id);
67
+ !node && console.warn(`No modal was found with the id "${id}"`);
68
+ return node;
69
+ };
70
+ show = (id) => {
71
+ const savedNode = this.findNode(id);
72
+ savedNode && this.nodeGroup.set(id, {
73
+ ...savedNode,
74
+ visible: true,
75
+ lastVisualization: new Date()
76
+ });
77
+ this.update();
78
+ };
79
+ close = (id) => {
80
+ const savedNode = this.findNode(id);
81
+ savedNode && this.nodeGroup.set(id, { ...savedNode, visible: false });
82
+ this.update();
83
+ };
103
84
  }
104
85
  const createModalLifecycleHandler = () => {
105
86
  return new ModalLifecycleHandler();
@@ -1 +1 @@
1
- {"version":3,"file":"ModalLifecycleHandler.js","sources":["../../../../../src/components/atoms/Modal/ModalLifecycleHandler.ts"],"sourcesContent":["import React, { Dispatch, ReactElement } from 'react';\nimport { IBaseModal } from './ui/types';\n\n/**\n * It Represents a node (usually a modal component) in the modal's lifecycle handler.\n */\ninterface ModalNode {\n id: string;\n visible?: boolean;\n lastVisualization?: Date;\n modal: () => ReactElement<IBaseModal>;\n}\n\n/**\n * Manage all modal's lifecycle.\n */\nexport class ModalLifecycleHandler {\n nodeGroup: Map<string, ModalNode>;\n state:\n | [ReactElement<IBaseModal>[], Dispatch<ReactElement<IBaseModal>[]>]\n | undefined;\n\n constructor() {\n this.nodeGroup = new Map();\n this.state = undefined;\n }\n\n /**\n * Holds the ModalGroupManager state.\n *\n * @param state\n */\n public attach = (\n state: [ReactElement<IBaseModal>[], Dispatch<ReactElement<IBaseModal>[]>]\n ) => {\n this.state = state;\n };\n\n /**\n * Updates all the modal components.\n */\n public update = () => {\n requestAnimationFrame(() => {\n const nodes = Array.from(this.nodeGroup.values())\n .filter(node => node.visible || !!node.lastVisualization)\n .sort(\n (nodeA, nodeB) =>\n (nodeA.lastVisualization?.getTime() || 0) -\n (nodeB.lastVisualization?.getTime() || 0)\n )\n .map((node, index, filteredNodes) => {\n const modalElement = node.modal();\n const { props } = modalElement;\n return React.cloneElement(modalElement, {\n ...props,\n key: node.id,\n visible: node.visible,\n isLastShown: filteredNodes.length - 1 === index,\n close: () => this.close(node.id),\n onClose: () => {\n this.remove(node.id);\n props.onClose?.();\n },\n });\n });\n\n const [, updateState] = this.state || [];\n updateState?.(nodes);\n });\n };\n\n /**\n * Renders all selected modals.\n *\n * @returns\n */\n public render = (): ReactElement<IBaseModal>[] => {\n const [modals] = this.state || [];\n return modals || [];\n };\n\n /**\n * Tells to the lifecycle handler that a modal component needs to be handled.\n *\n * @param id\n * @param modal\n * @returns\n */\n public sync = (id: string, modal: () => ReactElement<IBaseModal>) => {\n if (this.nodeGroup.has(id)) {\n const savedNode = this.findNode(id);\n savedNode && this.nodeGroup.set(id, { ...savedNode, modal });\n return;\n }\n this.nodeGroup.set(id, { id, modal });\n };\n\n /**\n * Destroy a modal from the lifecycle handler.\n *\n * @param id\n */\n public destroy = (id: string) => {\n this.nodeGroup.delete(id);\n this.update();\n };\n\n /**\n * Removes a modal from the rendering stack. It tells to the lifecycle handler that a modal\n * component is no longer used by the application.\n *\n * @param id\n */\n private remove = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode &&\n this.nodeGroup.set(id, { ...savedNode, lastVisualization: undefined });\n this.update();\n };\n\n /**\n * Find a modal node by id.\n *\n * @param id\n */\n private findNode = (id: string) => {\n const node = this.nodeGroup.get(id);\n !node && console.warn(`No modal was found with the id \"${id}\"`);\n return node;\n };\n\n /**\n * Makes a modal appears.\n *\n * @param id\n */\n public show = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode &&\n this.nodeGroup.set(id, {\n ...savedNode,\n visible: true,\n lastVisualization: new Date(),\n });\n this.update();\n };\n\n /**\n * Makes a modal disappears.\n *\n * @param id\n */\n public close = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode && this.nodeGroup.set(id, { ...savedNode, visible: false });\n this.update();\n };\n}\n\n/**\n * Creates a new ModalLifecycleHandlere instance.\n *\n * @returns\n */\nexport const createModalLifecycleHandler = () => {\n return new ModalLifecycleHandler();\n};\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"ModalLifecycleHandler.js","sources":["../../../../../src/components/atoms/Modal/ModalLifecycleHandler.ts"],"sourcesContent":["import React, { Dispatch, ReactElement } from 'react';\nimport { IBaseModal } from './ui/types';\n\n/**\n * It Represents a node (usually a modal component) in the modal's lifecycle handler.\n */\ninterface ModalNode {\n id: string;\n visible?: boolean;\n lastVisualization?: Date;\n modal: () => ReactElement<IBaseModal>;\n}\n\n/**\n * Manage all modal's lifecycle.\n */\nexport class ModalLifecycleHandler {\n nodeGroup: Map<string, ModalNode>;\n state:\n | [ReactElement<IBaseModal>[], Dispatch<ReactElement<IBaseModal>[]>]\n | undefined;\n\n constructor() {\n this.nodeGroup = new Map();\n this.state = undefined;\n }\n\n /**\n * Holds the ModalGroupManager state.\n *\n * @param state\n */\n public attach = (\n state: [ReactElement<IBaseModal>[], Dispatch<ReactElement<IBaseModal>[]>]\n ) => {\n this.state = state;\n };\n\n /**\n * Updates all the modal components.\n */\n public update = () => {\n requestAnimationFrame(() => {\n const nodes = Array.from(this.nodeGroup.values())\n .filter(node => node.visible || !!node.lastVisualization)\n .sort(\n (nodeA, nodeB) =>\n (nodeA.lastVisualization?.getTime() || 0) -\n (nodeB.lastVisualization?.getTime() || 0)\n )\n .map((node, index, filteredNodes) => {\n const modalElement = node.modal();\n const { props } = modalElement;\n return React.cloneElement(modalElement, {\n ...props,\n key: node.id,\n visible: node.visible,\n isLastShown: filteredNodes.length - 1 === index,\n close: () => this.close(node.id),\n onClose: () => {\n this.remove(node.id);\n props.onClose?.();\n },\n });\n });\n\n const [, updateState] = this.state || [];\n updateState?.(nodes);\n });\n };\n\n /**\n * Renders all selected modals.\n *\n * @returns\n */\n public render = (): ReactElement<IBaseModal>[] => {\n const [modals] = this.state || [];\n return modals || [];\n };\n\n /**\n * Tells to the lifecycle handler that a modal component needs to be handled.\n *\n * @param id\n * @param modal\n * @returns\n */\n public sync = (id: string, modal: () => ReactElement<IBaseModal>) => {\n if (this.nodeGroup.has(id)) {\n const savedNode = this.findNode(id);\n savedNode && this.nodeGroup.set(id, { ...savedNode, modal });\n return;\n }\n this.nodeGroup.set(id, { id, modal });\n };\n\n /**\n * Destroy a modal from the lifecycle handler.\n *\n * @param id\n */\n public destroy = (id: string) => {\n this.nodeGroup.delete(id);\n this.update();\n };\n\n /**\n * Removes a modal from the rendering stack. It tells to the lifecycle handler that a modal\n * component is no longer used by the application.\n *\n * @param id\n */\n private remove = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode &&\n this.nodeGroup.set(id, { ...savedNode, lastVisualization: undefined });\n this.update();\n };\n\n /**\n * Find a modal node by id.\n *\n * @param id\n */\n private findNode = (id: string) => {\n const node = this.nodeGroup.get(id);\n !node && console.warn(`No modal was found with the id \"${id}\"`);\n return node;\n };\n\n /**\n * Makes a modal appears.\n *\n * @param id\n */\n public show = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode &&\n this.nodeGroup.set(id, {\n ...savedNode,\n visible: true,\n lastVisualization: new Date(),\n });\n this.update();\n };\n\n /**\n * Makes a modal disappears.\n *\n * @param id\n */\n public close = (id: string) => {\n const savedNode = this.findNode(id);\n savedNode && this.nodeGroup.set(id, { ...savedNode, visible: false });\n this.update();\n };\n}\n\n/**\n * Creates a new ModalLifecycleHandlere instance.\n *\n * @returns\n */\nexport const createModalLifecycleHandler = () => {\n return new ModalLifecycleHandler();\n};\n"],"names":["React"],"mappings":"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"}
@@ -7,7 +7,7 @@ var uuid = require('uuid');
7
7
  var ModalGroupManager = require('./ModalGroupManager.js');
8
8
 
9
9
  const useLazyModalManager = (modalId) => {
10
- const [id] = React.useState(modalId != null ? modalId : uuid.v4());
10
+ const [id] = React.useState(modalId ?? uuid.v4());
11
11
  const requestUpdate = React.useCallback(() => ModalGroupManager.modalLifecycle.update(), []);
12
12
  const sync = React.useCallback(
13
13
  (modal) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useLazyModalManager.js","sources":["../../../../../src/components/atoms/Modal/useLazyModalManager.ts"],"sourcesContent":["import { ReactElement, useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { modalLifecycle } from './ModalGroupManager';\nimport { IBaseModal } from './ui/types';\n\n/**\n * Use this hook to tell the modal lifecycle handler that you want to add\n * a new modal component.\n *\n * @returns\n * @param modalId\n */\nexport const useLazyModalManager = (modalId?: string) => {\n const [id] = useState(modalId ?? uuidv4());\n\n const requestUpdate = useCallback(() => modalLifecycle.update(), []);\n\n const sync = useCallback(\n (modal: ReactElement<IBaseModal>) => {\n modalLifecycle.sync(id, () => modal);\n return null;\n },\n [id]\n );\n\n const show = useCallback(() => {\n modalLifecycle.show(id);\n }, [id]);\n\n const close = useCallback(() => {\n modalLifecycle.close(id);\n }, [id]);\n\n useEffect(() => {\n return () => modalLifecycle.destroy(id);\n }, []);\n\n return {\n requestUpdate,\n sync,\n show,\n close,\n };\n};\n"],"names":["useState","uuidv4","useCallback","modalLifecycle","useEffect"],"mappings":";;;;;;;;AAYa,MAAA,mBAAA,GAAsB,CAAC,OAAqB,KAAA;AACvD,EAAA,MAAM,CAAC,EAAE,CAAA,GAAIA,cAAS,CAAA,OAAA,IAAA,IAAA,GAAA,OAAA,GAAWC,SAAQ,CAAA,CAAA;AAEzC,EAAA,MAAM,gBAAgBC,iBAAY,CAAA,MAAMC,iCAAe,MAAO,EAAA,EAAG,EAAE,CAAA,CAAA;AAEnE,EAAA,MAAM,IAAO,GAAAD,iBAAA;AAAA,IACX,CAAC,KAAoC,KAAA;AACnC,MAAeC,gCAAA,CAAA,IAAA,CAAK,EAAI,EAAA,MAAM,KAAK,CAAA,CAAA;AACnC,MAAO,OAAA,IAAA,CAAA;AAAA,KACT;AAAA,IACA,CAAC,EAAE,CAAA;AAAA,GACL,CAAA;AAEA,EAAM,MAAA,IAAA,GAAOD,kBAAY,MAAM;AAC7B,IAAAC,gCAAA,CAAe,KAAK,EAAE,CAAA,CAAA;AAAA,GACxB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAM,MAAA,KAAA,GAAQD,kBAAY,MAAM;AAC9B,IAAAC,gCAAA,CAAe,MAAM,EAAE,CAAA,CAAA;AAAA,GACzB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAAC,eAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAMD,gCAAe,CAAA,OAAA,CAAQ,EAAE,CAAA,CAAA;AAAA,GACxC,EAAG,EAAE,CAAA,CAAA;AAEL,EAAO,OAAA;AAAA,IACL,aAAA;AAAA,IACA,IAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useLazyModalManager.js","sources":["../../../../../src/components/atoms/Modal/useLazyModalManager.ts"],"sourcesContent":["import { ReactElement, useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { modalLifecycle } from './ModalGroupManager';\nimport { IBaseModal } from './ui/types';\n\n/**\n * Use this hook to tell the modal lifecycle handler that you want to add\n * a new modal component.\n *\n * @returns\n * @param modalId\n */\nexport const useLazyModalManager = (modalId?: string) => {\n const [id] = useState(modalId ?? uuidv4());\n\n const requestUpdate = useCallback(() => modalLifecycle.update(), []);\n\n const sync = useCallback(\n (modal: ReactElement<IBaseModal>) => {\n modalLifecycle.sync(id, () => modal);\n return null;\n },\n [id]\n );\n\n const show = useCallback(() => {\n modalLifecycle.show(id);\n }, [id]);\n\n const close = useCallback(() => {\n modalLifecycle.close(id);\n }, [id]);\n\n useEffect(() => {\n return () => modalLifecycle.destroy(id);\n }, []);\n\n return {\n requestUpdate,\n sync,\n show,\n close,\n };\n};\n"],"names":["useState","uuidv4","useCallback","modalLifecycle","useEffect"],"mappings":";;;;;;;;AAYa,MAAA,mBAAA,GAAsB,CAAC,OAAqB,KAAA;AACvD,EAAA,MAAM,CAAC,EAAE,CAAA,GAAIA,cAAS,CAAA,OAAA,IAAWC,SAAQ,CAAA,CAAA;AAEzC,EAAA,MAAM,gBAAgBC,iBAAY,CAAA,MAAMC,iCAAe,MAAO,EAAA,EAAG,EAAE,CAAA,CAAA;AAEnE,EAAA,MAAM,IAAO,GAAAD,iBAAA;AAAA,IACX,CAAC,KAAoC,KAAA;AACnC,MAAeC,gCAAA,CAAA,IAAA,CAAK,EAAI,EAAA,MAAM,KAAK,CAAA,CAAA;AACnC,MAAO,OAAA,IAAA,CAAA;AAAA,KACT;AAAA,IACA,CAAC,EAAE,CAAA;AAAA,GACL,CAAA;AAEA,EAAM,MAAA,IAAA,GAAOD,kBAAY,MAAM;AAC7B,IAAAC,gCAAA,CAAe,KAAK,EAAE,CAAA,CAAA;AAAA,GACxB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAM,MAAA,KAAA,GAAQD,kBAAY,MAAM;AAC9B,IAAAC,gCAAA,CAAe,MAAM,EAAE,CAAA,CAAA;AAAA,GACzB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAAC,eAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAMD,gCAAe,CAAA,OAAA,CAAQ,EAAE,CAAA,CAAA;AAAA,GACxC,EAAG,EAAE,CAAA,CAAA;AAEL,EAAO,OAAA;AAAA,IACL,aAAA;AAAA,IACA,IAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,GACF,CAAA;AACF;;;;"}
@@ -7,7 +7,7 @@ var uuid = require('uuid');
7
7
  var ModalGroupManager = require('./ModalGroupManager.js');
8
8
 
9
9
  const useModalManager = (modal, modalId) => {
10
- const [id] = React.useState(modalId != null ? modalId : uuid.v4());
10
+ const [id] = React.useState(modalId ?? uuid.v4());
11
11
  ModalGroupManager.modalLifecycle.sync(id, modal);
12
12
  const show = React.useCallback(() => {
13
13
  ModalGroupManager.modalLifecycle.show(id);
@@ -1 +1 @@
1
- {"version":3,"file":"useModalManager.js","sources":["../../../../../src/components/atoms/Modal/useModalManager.ts"],"sourcesContent":["import { ReactElement, useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { modalLifecycle } from './ModalGroupManager';\nimport { IBaseModal } from './ui/types';\n\n/**\n * Use this hook to tell the modal lifecycle handler that you want to add\n * a new modal component.\n *\n * @param id\n * @param modal\n * @returns\n */\nexport const useModalManager = (\n modal: () => ReactElement<IBaseModal>,\n modalId?: string\n) => {\n const [id] = useState(modalId ?? uuidv4());\n modalLifecycle.sync(id, modal);\n\n const show = useCallback(() => {\n modalLifecycle.show(id);\n }, [id]);\n\n const close = useCallback(() => {\n modalLifecycle.close(id);\n }, [id]);\n\n useEffect(() => {\n return () => modalLifecycle.destroy(id);\n }, []);\n\n return {\n show,\n close,\n };\n};\n"],"names":["useState","uuidv4","modalLifecycle","useCallback","useEffect"],"mappings":";;;;;;;;AAaa,MAAA,eAAA,GAAkB,CAC7B,KAAA,EACA,OACG,KAAA;AACH,EAAA,MAAM,CAAC,EAAE,CAAA,GAAIA,cAAS,CAAA,OAAA,IAAA,IAAA,GAAA,OAAA,GAAWC,SAAQ,CAAA,CAAA;AACzC,EAAeC,gCAAA,CAAA,IAAA,CAAK,IAAI,KAAK,CAAA,CAAA;AAE7B,EAAM,MAAA,IAAA,GAAOC,kBAAY,MAAM;AAC7B,IAAAD,gCAAA,CAAe,KAAK,EAAE,CAAA,CAAA;AAAA,GACxB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAM,MAAA,KAAA,GAAQC,kBAAY,MAAM;AAC9B,IAAAD,gCAAA,CAAe,MAAM,EAAE,CAAA,CAAA;AAAA,GACzB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAAE,eAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAMF,gCAAe,CAAA,OAAA,CAAQ,EAAE,CAAA,CAAA;AAAA,GACxC,EAAG,EAAE,CAAA,CAAA;AAEL,EAAO,OAAA;AAAA,IACL,IAAA;AAAA,IACA,KAAA;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useModalManager.js","sources":["../../../../../src/components/atoms/Modal/useModalManager.ts"],"sourcesContent":["import { ReactElement, useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { modalLifecycle } from './ModalGroupManager';\nimport { IBaseModal } from './ui/types';\n\n/**\n * Use this hook to tell the modal lifecycle handler that you want to add\n * a new modal component.\n *\n * @param id\n * @param modal\n * @returns\n */\nexport const useModalManager = (\n modal: () => ReactElement<IBaseModal>,\n modalId?: string\n) => {\n const [id] = useState(modalId ?? uuidv4());\n modalLifecycle.sync(id, modal);\n\n const show = useCallback(() => {\n modalLifecycle.show(id);\n }, [id]);\n\n const close = useCallback(() => {\n modalLifecycle.close(id);\n }, [id]);\n\n useEffect(() => {\n return () => modalLifecycle.destroy(id);\n }, []);\n\n return {\n show,\n close,\n };\n};\n"],"names":["useState","uuidv4","modalLifecycle","useCallback","useEffect"],"mappings":";;;;;;;;AAaa,MAAA,eAAA,GAAkB,CAC7B,KAAA,EACA,OACG,KAAA;AACH,EAAA,MAAM,CAAC,EAAE,CAAA,GAAIA,cAAS,CAAA,OAAA,IAAWC,SAAQ,CAAA,CAAA;AACzC,EAAeC,gCAAA,CAAA,IAAA,CAAK,IAAI,KAAK,CAAA,CAAA;AAE7B,EAAM,MAAA,IAAA,GAAOC,kBAAY,MAAM;AAC7B,IAAAD,gCAAA,CAAe,KAAK,EAAE,CAAA,CAAA;AAAA,GACxB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAM,MAAA,KAAA,GAAQC,kBAAY,MAAM;AAC9B,IAAAD,gCAAA,CAAe,MAAM,EAAE,CAAA,CAAA;AAAA,GACzB,EAAG,CAAC,EAAE,CAAC,CAAA,CAAA;AAEP,EAAAE,eAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAMF,gCAAe,CAAA,OAAA,CAAQ,EAAE,CAAA,CAAA;AAAA,GACxC,EAAG,EAAE,CAAA,CAAA;AAEL,EAAO,OAAA;AAAA,IACL,IAAA;AAAA,IACA,KAAA;AAAA,GACF,CAAA;AACF;;;;"}
@@ -16,19 +16,18 @@ const Pulse = ({
16
16
  height,
17
17
  childrenLayout
18
18
  }) => {
19
- var _a, _b;
20
19
  const animatedValue = React.useRef(new reactNative.Animated.Value(0)).current;
21
20
  React.useEffect(() => {
22
21
  animation.pulseAnimation(active, animatedValue);
23
22
  }, [active]);
24
23
  return /* @__PURE__ */ React__default["default"].createElement(reactNative.Animated.View, {
25
24
  style: {
26
- width: width != null ? width : childrenLayout.width,
27
- height: height != null ? height : childrenLayout.height,
25
+ width: width ?? childrenLayout.width,
26
+ height: height ?? childrenLayout.height,
28
27
  backgroundColor: "rgba(0,0,0,0.05)",
29
28
  position: "absolute",
30
- top: (_a = childrenLayout.x) != null ? _a : 0,
31
- left: (_b = childrenLayout.y) != null ? _b : 0,
29
+ top: childrenLayout.x ?? 0,
30
+ left: childrenLayout.y ?? 0,
32
31
  zIndex: 2,
33
32
  overflow: "hidden",
34
33
  opacity: animatedValue
@@ -1 +1 @@
1
- {"version":3,"file":"Pulse.js","sources":["../../../../../src/components/atoms/Skeleton/Pulse.tsx"],"sourcesContent":["import { Animated } from 'react-native';\nimport React, { useEffect, useRef } from 'react';\nimport { pulseAnimation } from './animation';\nimport { IAnimationComponent } from './types';\n\nexport const Pulse = ({\n active = true,\n width,\n height,\n childrenLayout,\n}: IAnimationComponent) => {\n const animatedValue = useRef(new Animated.Value(0)).current;\n\n useEffect(() => {\n pulseAnimation(active, animatedValue);\n }, [active]);\n\n return (\n <Animated.View\n style={{\n width: width ?? childrenLayout.width,\n height: height ?? childrenLayout.height,\n backgroundColor: 'rgba(0,0,0,0.05)',\n position: 'absolute',\n top: childrenLayout.x ?? 0,\n left: childrenLayout.y ?? 0,\n zIndex: 2,\n overflow: 'hidden',\n opacity: animatedValue,\n }}\n />\n );\n};\n"],"names":["useRef","Animated","useEffect","pulseAnimation","React"],"mappings":";;;;;;;;;;;;AAKO,MAAM,QAAQ,CAAC;AAAA,EACpB,MAAS,GAAA,IAAA;AAAA,EACT,KAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AACF,CAA2B,KAAA;AAV3B,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AAWE,EAAA,MAAM,gBAAgBA,YAAO,CAAA,IAAIC,qBAAS,KAAM,CAAA,CAAC,CAAC,CAAE,CAAA,OAAA,CAAA;AAEpD,EAAAC,eAAA,CAAU,MAAM;AACd,IAAAC,wBAAA,CAAe,QAAQ,aAAa,CAAA,CAAA;AAAA,GACtC,EAAG,CAAC,MAAM,CAAC,CAAA,CAAA;AAEX,EACE,uBAAAC,yBAAA,CAAA,aAAA,CAACH,qBAAS,IAAT,EAAA;AAAA,IACC,KAAO,EAAA;AAAA,MACL,KAAA,EAAO,wBAAS,cAAe,CAAA,KAAA;AAAA,MAC/B,MAAA,EAAQ,0BAAU,cAAe,CAAA,MAAA;AAAA,MACjC,eAAiB,EAAA,kBAAA;AAAA,MACjB,QAAU,EAAA,UAAA;AAAA,MACV,GAAA,EAAA,CAAK,EAAe,GAAA,cAAA,CAAA,CAAA,KAAf,IAAoB,GAAA,EAAA,GAAA,CAAA;AAAA,MACzB,IAAA,EAAA,CAAM,EAAe,GAAA,cAAA,CAAA,CAAA,KAAf,IAAoB,GAAA,EAAA,GAAA,CAAA;AAAA,MAC1B,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,QAAA;AAAA,MACV,OAAS,EAAA,aAAA;AAAA,KACX;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Pulse.js","sources":["../../../../../src/components/atoms/Skeleton/Pulse.tsx"],"sourcesContent":["import { Animated } from 'react-native';\nimport React, { useEffect, useRef } from 'react';\nimport { pulseAnimation } from './animation';\nimport { IAnimationComponent } from './types';\n\nexport const Pulse = ({\n active = true,\n width,\n height,\n childrenLayout,\n}: IAnimationComponent) => {\n const animatedValue = useRef(new Animated.Value(0)).current;\n\n useEffect(() => {\n pulseAnimation(active, animatedValue);\n }, [active]);\n\n return (\n <Animated.View\n style={{\n width: width ?? childrenLayout.width,\n height: height ?? childrenLayout.height,\n backgroundColor: 'rgba(0,0,0,0.05)',\n position: 'absolute',\n top: childrenLayout.x ?? 0,\n left: childrenLayout.y ?? 0,\n zIndex: 2,\n overflow: 'hidden',\n opacity: animatedValue,\n }}\n />\n );\n};\n"],"names":["useRef","Animated","useEffect","pulseAnimation","React"],"mappings":";;;;;;;;;;;;AAKO,MAAM,QAAQ,CAAC;AAAA,EACpB,MAAS,GAAA,IAAA;AAAA,EACT,KAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AACF,CAA2B,KAAA;AACzB,EAAA,MAAM,gBAAgBA,YAAO,CAAA,IAAIC,qBAAS,KAAM,CAAA,CAAC,CAAC,CAAE,CAAA,OAAA,CAAA;AAEpD,EAAAC,eAAA,CAAU,MAAM;AACd,IAAAC,wBAAA,CAAe,QAAQ,aAAa,CAAA,CAAA;AAAA,GACtC,EAAG,CAAC,MAAM,CAAC,CAAA,CAAA;AAEX,EACE,uBAAAC,yBAAA,CAAA,aAAA,CAACH,qBAAS,IAAT,EAAA;AAAA,IACC,KAAO,EAAA;AAAA,MACL,KAAA,EAAO,SAAS,cAAe,CAAA,KAAA;AAAA,MAC/B,MAAA,EAAQ,UAAU,cAAe,CAAA,MAAA;AAAA,MACjC,eAAiB,EAAA,kBAAA;AAAA,MACjB,QAAU,EAAA,UAAA;AAAA,MACV,GAAA,EAAK,eAAe,CAAK,IAAA,CAAA;AAAA,MACzB,IAAA,EAAM,eAAe,CAAK,IAAA,CAAA;AAAA,MAC1B,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,QAAA;AAAA,MACV,OAAS,EAAA,aAAA;AAAA,KACX;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -10,50 +10,15 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
10
10
 
11
11
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
12
 
13
- var __defProp = Object.defineProperty;
14
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
15
- var __hasOwnProp = Object.prototype.hasOwnProperty;
16
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
17
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
18
- var __spreadValues = (a, b) => {
19
- for (var prop in b || (b = {}))
20
- if (__hasOwnProp.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- if (__getOwnPropSymbols)
23
- for (var prop of __getOwnPropSymbols(b)) {
24
- if (__propIsEnum.call(b, prop))
25
- __defNormalProp(a, prop, b[prop]);
26
- }
27
- return a;
28
- };
29
- var __objRest = (source, exclude) => {
30
- var target = {};
31
- for (var prop in source)
32
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
33
- target[prop] = source[prop];
34
- if (source != null && __getOwnPropSymbols)
35
- for (var prop of __getOwnPropSymbols(source)) {
36
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
37
- target[prop] = source[prop];
38
- }
39
- return target;
40
- };
41
- const Skeleton = (_a) => {
42
- var _b = _a, {
43
- children,
44
- width,
45
- height,
46
- radius,
47
- active = true,
48
- animation = "wave"
49
- } = _b, rest = __objRest(_b, [
50
- "children",
51
- "width",
52
- "height",
53
- "radius",
54
- "active",
55
- "animation"
56
- ]);
13
+ const Skeleton = ({
14
+ children,
15
+ width,
16
+ height,
17
+ radius,
18
+ active = true,
19
+ animation = "wave",
20
+ ...rest
21
+ }) => {
57
22
  const [childrenLayout, setChildrenLayout] = React.useState({
58
23
  width: 0,
59
24
  height: 0,
@@ -68,11 +33,12 @@ const Skeleton = (_a) => {
68
33
  const getChildrenLayout = (event) => {
69
34
  setChildrenLayout(event.nativeEvent.layout);
70
35
  };
71
- return /* @__PURE__ */ React__default["default"].createElement(styled.Wrapper, __spreadValues({
36
+ return /* @__PURE__ */ React__default["default"].createElement(styled.Wrapper, {
72
37
  width,
73
38
  height,
74
- radius
75
- }, rest), active && animation === "wave" ? /* @__PURE__ */ React__default["default"].createElement(Wave.Wave, {
39
+ radius,
40
+ ...rest
41
+ }, active && animation === "wave" ? /* @__PURE__ */ React__default["default"].createElement(Wave.Wave, {
76
42
  active,
77
43
  width,
78
44
  height,
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.js","sources":["../../../../../src/components/atoms/Skeleton/Skeleton.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { BorderRadiusType } from '@tecsinapse/react-core';\nimport { LayoutChangeEvent, View, ViewProps } from 'react-native';\nimport { Wrapper } from './styled';\nimport { Wave } from './Wave';\nimport { Pulse } from './Pulse';\nimport { ChildrenLayout } from './types';\n\nexport interface SkeletonProps extends ViewProps {\n width?: number;\n height?: number;\n radius?: BorderRadiusType;\n active?: boolean;\n animation?: 'wave' | 'pulse';\n}\n\nconst Skeleton: React.FC<SkeletonProps> = ({\n children,\n width,\n height,\n radius,\n active = true,\n animation = 'wave',\n ...rest\n}) => {\n const [childrenLayout, setChildrenLayout] = useState<ChildrenLayout>({\n width: 0,\n height: 0,\n y: 0,\n x: 0,\n });\n\n if (!width && !height && !children) {\n throw new Error(\n '[Skeleton] You should provide children or specify width and height'\n );\n }\n\n const getChildrenLayout = (event: LayoutChangeEvent) => {\n setChildrenLayout(event.nativeEvent.layout);\n };\n\n return (\n <Wrapper width={width} height={height} radius={radius} {...rest}>\n {active && animation === 'wave' ? (\n <Wave\n active={active}\n width={width}\n height={height}\n childrenLayout={childrenLayout}\n />\n ) : (\n <></>\n )}\n\n {active && animation === 'pulse' ? (\n <Pulse\n active={active}\n width={width}\n height={height}\n childrenLayout={childrenLayout}\n />\n ) : (\n <></>\n )}\n <View\n onLayout={event => getChildrenLayout(event)}\n style={{ opacity: active ? 0 : 1 }}\n pointerEvents={active ? 'none' : 'auto'}\n >\n {children}\n </View>\n </Wrapper>\n );\n};\n\nexport default Skeleton;\n"],"names":["useState","React","Wrapper","Wave","Pulse","View"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBM,MAAA,QAAA,GAAoC,CAAC,EAQrC,KAAA;AARqC,EACzC,IAAA,EAAA,GAAA,EAAA,EAAA;AAAA,IAAA,QAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,MAAA;AAAA,IACA,MAAS,GAAA,IAAA;AAAA,IACT,SAAY,GAAA,MAAA;AAAA,GAtBd,GAgB2C,EAOtC,EAAA,IAAA,GAAA,SAAA,CAPsC,EAOtC,EAAA;AAAA,IANH,UAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA;AAAA,GAAA,CAAA,CAAA;AAGA,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAIA,cAAyB,CAAA;AAAA,IACnE,KAAO,EAAA,CAAA;AAAA,IACP,MAAQ,EAAA,CAAA;AAAA,IACR,CAAG,EAAA,CAAA;AAAA,IACH,CAAG,EAAA,CAAA;AAAA,GACJ,CAAA,CAAA;AAED,EAAA,IAAI,CAAC,KAAA,IAAS,CAAC,MAAA,IAAU,CAAC,QAAU,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,oEAAA;AAAA,KACF,CAAA;AAAA,GACF;AAEA,EAAM,MAAA,iBAAA,GAAoB,CAAC,KAA6B,KAAA;AACtD,IAAkB,iBAAA,CAAA,KAAA,CAAM,YAAY,MAAM,CAAA,CAAA;AAAA,GAC5C,CAAA;AAEA,EAAA,uBACGC,yBAAA,CAAA,aAAA,CAAAC,cAAA,EAAA,cAAA,CAAA;AAAA,IAAQ,KAAA;AAAA,IAAc,MAAA;AAAA,IAAgB,MAAA;AAAA,GAAA,EAAoB,IACxD,CAAA,EAAA,MAAA,IAAU,SAAc,KAAA,MAAA,mBACtBD,yBAAA,CAAA,aAAA,CAAAE,SAAA,EAAA;AAAA,IACC,MAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,cAAA;AAAA,GACF,oBAEEF,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,EAGH,MAAU,IAAA,SAAA,KAAc,0BACtBA,yBAAA,CAAA,aAAA,CAAAG,WAAA,EAAA;AAAA,IACC,MAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,cAAA;AAAA,GACF,CAAA,mBAEEH,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,kBAEHA,yBAAA,CAAA,aAAA,CAAAI,gBAAA,EAAA;AAAA,IACC,QAAA,EAAU,CAAS,KAAA,KAAA,iBAAA,CAAkB,KAAK,CAAA;AAAA,IAC1C,KAAO,EAAA,EAAE,OAAS,EAAA,MAAA,GAAS,IAAI,CAAE,EAAA;AAAA,IACjC,aAAA,EAAe,SAAS,MAAS,GAAA,MAAA;AAAA,GAAA,EAEhC,QACH,CACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Skeleton.js","sources":["../../../../../src/components/atoms/Skeleton/Skeleton.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { BorderRadiusType } from '@tecsinapse/react-core';\nimport { LayoutChangeEvent, View, ViewProps } from 'react-native';\nimport { Wrapper } from './styled';\nimport { Wave } from './Wave';\nimport { Pulse } from './Pulse';\nimport { ChildrenLayout } from './types';\n\nexport interface SkeletonProps extends ViewProps {\n width?: number;\n height?: number;\n radius?: BorderRadiusType;\n active?: boolean;\n animation?: 'wave' | 'pulse';\n}\n\nconst Skeleton: React.FC<SkeletonProps> = ({\n children,\n width,\n height,\n radius,\n active = true,\n animation = 'wave',\n ...rest\n}) => {\n const [childrenLayout, setChildrenLayout] = useState<ChildrenLayout>({\n width: 0,\n height: 0,\n y: 0,\n x: 0,\n });\n\n if (!width && !height && !children) {\n throw new Error(\n '[Skeleton] You should provide children or specify width and height'\n );\n }\n\n const getChildrenLayout = (event: LayoutChangeEvent) => {\n setChildrenLayout(event.nativeEvent.layout);\n };\n\n return (\n <Wrapper width={width} height={height} radius={radius} {...rest}>\n {active && animation === 'wave' ? (\n <Wave\n active={active}\n width={width}\n height={height}\n childrenLayout={childrenLayout}\n />\n ) : (\n <></>\n )}\n\n {active && animation === 'pulse' ? (\n <Pulse\n active={active}\n width={width}\n height={height}\n childrenLayout={childrenLayout}\n />\n ) : (\n <></>\n )}\n <View\n onLayout={event => getChildrenLayout(event)}\n style={{ opacity: active ? 0 : 1 }}\n pointerEvents={active ? 'none' : 'auto'}\n >\n {children}\n </View>\n </Wrapper>\n );\n};\n\nexport default Skeleton;\n"],"names":["useState","React","Wrapper","Wave","Pulse","View"],"mappings":";;;;;;;;;;;;AAgBA,MAAM,WAAoC,CAAC;AAAA,EACzC,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAS,GAAA,IAAA;AAAA,EACT,SAAY,GAAA,MAAA;AAAA,EACT,GAAA,IAAA;AACL,CAAM,KAAA;AACJ,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAIA,cAAyB,CAAA;AAAA,IACnE,KAAO,EAAA,CAAA;AAAA,IACP,MAAQ,EAAA,CAAA;AAAA,IACR,CAAG,EAAA,CAAA;AAAA,IACH,CAAG,EAAA,CAAA;AAAA,GACJ,CAAA,CAAA;AAED,EAAA,IAAI,CAAC,KAAA,IAAS,CAAC,MAAA,IAAU,CAAC,QAAU,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,oEAAA;AAAA,KACF,CAAA;AAAA,GACF;AAEA,EAAM,MAAA,iBAAA,GAAoB,CAAC,KAA6B,KAAA;AACtD,IAAkB,iBAAA,CAAA,KAAA,CAAM,YAAY,MAAM,CAAA,CAAA;AAAA,GAC5C,CAAA;AAEA,EAAA,uBACGC,yBAAA,CAAA,aAAA,CAAAC,cAAA,EAAA;AAAA,IAAQ,KAAA;AAAA,IAAc,MAAA;AAAA,IAAgB,MAAA;AAAA,IAAiB,GAAG,IAAA;AAAA,GACxD,EAAA,MAAA,IAAU,SAAc,KAAA,MAAA,mBACtBD,yBAAA,CAAA,aAAA,CAAAE,SAAA,EAAA;AAAA,IACC,MAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,cAAA;AAAA,GACF,oBAEEF,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,EAGH,MAAU,IAAA,SAAA,KAAc,0BACtBA,yBAAA,CAAA,aAAA,CAAAG,WAAA,EAAA;AAAA,IACC,MAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,cAAA;AAAA,GACF,CAAA,mBAEEH,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,kBAEHA,yBAAA,CAAA,aAAA,CAAAI,gBAAA,EAAA;AAAA,IACC,QAAA,EAAU,CAAS,KAAA,KAAA,iBAAA,CAAkB,KAAK,CAAA;AAAA,IAC1C,KAAO,EAAA,EAAE,OAAS,EAAA,MAAA,GAAS,IAAI,CAAE,EAAA;AAAA,IACjC,aAAA,EAAe,SAAS,MAAS,GAAA,MAAA;AAAA,GAAA,EAEhC,QACH,CACF,CAAA,CAAA;AAEJ;;;;"}
@@ -19,8 +19,7 @@ const Wave = ({
19
19
  height,
20
20
  childrenLayout
21
21
  }) => {
22
- var _a, _b;
23
- const range = width != null ? width : childrenLayout.width;
22
+ const range = width ?? childrenLayout.width;
24
23
  const animatedValue = React.useRef(new reactNative.Animated.Value(0)).current;
25
24
  const translateX = animatedValue.interpolate({
26
25
  inputRange: [0, 1],
@@ -39,11 +38,11 @@ const Wave = ({
39
38
  start: { x: 0, y: 0 },
40
39
  end: { x: 1, y: 0 },
41
40
  style: {
42
- width: width != null ? width : childrenLayout.width,
43
- height: height != null ? height : childrenLayout.height,
41
+ width: width ?? childrenLayout.width,
42
+ height: height ?? childrenLayout.height,
44
43
  position: "absolute",
45
- top: (_a = childrenLayout.y) != null ? _a : 0,
46
- left: (_b = childrenLayout.x) != null ? _b : 0,
44
+ top: childrenLayout.y ?? 0,
45
+ left: childrenLayout.x ?? 0,
47
46
  zIndex: 2,
48
47
  overflow: "hidden",
49
48
  transform: [
@@ -1 +1 @@
1
- {"version":3,"file":"Wave.js","sources":["../../../../../src/components/atoms/Skeleton/Wave.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { Animated } from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport { waveAnimation } from './animation';\nimport { IAnimationComponent } from './types';\n\nconst AnimatedLinearGradient = Animated.createAnimatedComponent(LinearGradient);\n\nexport const Wave = ({\n active = true,\n width,\n height,\n childrenLayout,\n}: IAnimationComponent) => {\n const range = width ?? childrenLayout.width;\n const animatedValue = useRef(new Animated.Value(0)).current;\n\n const translateX = animatedValue.interpolate({\n inputRange: [0, 1],\n outputRange: [-range, range],\n });\n\n useEffect(() => {\n waveAnimation(active, animatedValue);\n }, [active]);\n\n return (\n <AnimatedLinearGradient\n colors={[\n 'transparent',\n 'rgba(0,0,0,0.05)',\n 'rgba(0,0,0,0.1)',\n 'transparent',\n ]}\n start={{ x: 0, y: 0 }}\n end={{ x: 1, y: 0 }}\n style={{\n width: width ?? childrenLayout.width,\n height: height ?? childrenLayout.height,\n position: 'absolute',\n top: childrenLayout.y ?? 0,\n left: childrenLayout.x ?? 0,\n zIndex: 2,\n overflow: 'hidden',\n transform: [\n {\n translateX: translateX,\n },\n ],\n }}\n />\n );\n};\n"],"names":["Animated","LinearGradient","useRef","useEffect","waveAnimation","React"],"mappings":";;;;;;;;;;;;;;AAMA,MAAM,sBAAA,GAAyBA,oBAAS,CAAA,uBAAA,CAAwBC,kCAAc,CAAA,CAAA;AAEvE,MAAM,OAAO,CAAC;AAAA,EACnB,MAAS,GAAA,IAAA;AAAA,EACT,KAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AACF,CAA2B,KAAA;AAb3B,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AAcE,EAAM,MAAA,KAAA,GAAQ,wBAAS,cAAe,CAAA,KAAA,CAAA;AACtC,EAAA,MAAM,gBAAgBC,YAAO,CAAA,IAAIF,qBAAS,KAAM,CAAA,CAAC,CAAC,CAAE,CAAA,OAAA,CAAA;AAEpD,EAAM,MAAA,UAAA,GAAa,cAAc,WAAY,CAAA;AAAA,IAC3C,UAAA,EAAY,CAAC,CAAA,EAAG,CAAC,CAAA;AAAA,IACjB,WAAa,EAAA,CAAC,CAAC,KAAA,EAAO,KAAK,CAAA;AAAA,GAC5B,CAAA,CAAA;AAED,EAAAG,eAAA,CAAU,MAAM;AACd,IAAAC,uBAAA,CAAc,QAAQ,aAAa,CAAA,CAAA;AAAA,GACrC,EAAG,CAAC,MAAM,CAAC,CAAA,CAAA;AAEX,EAAA,uBACGC,yBAAA,CAAA,aAAA,CAAA,sBAAA,EAAA;AAAA,IACC,MAAQ,EAAA;AAAA,MACN,aAAA;AAAA,MACA,kBAAA;AAAA,MACA,iBAAA;AAAA,MACA,aAAA;AAAA,KACF;AAAA,IACA,KAAO,EAAA,EAAE,CAAG,EAAA,CAAA,EAAG,GAAG,CAAE,EAAA;AAAA,IACpB,GAAK,EAAA,EAAE,CAAG,EAAA,CAAA,EAAG,GAAG,CAAE,EAAA;AAAA,IAClB,KAAO,EAAA;AAAA,MACL,KAAA,EAAO,wBAAS,cAAe,CAAA,KAAA;AAAA,MAC/B,MAAA,EAAQ,0BAAU,cAAe,CAAA,MAAA;AAAA,MACjC,QAAU,EAAA,UAAA;AAAA,MACV,GAAA,EAAA,CAAK,EAAe,GAAA,cAAA,CAAA,CAAA,KAAf,IAAoB,GAAA,EAAA,GAAA,CAAA;AAAA,MACzB,IAAA,EAAA,CAAM,EAAe,GAAA,cAAA,CAAA,CAAA,KAAf,IAAoB,GAAA,EAAA,GAAA,CAAA;AAAA,MAC1B,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,QAAA;AAAA,MACV,SAAW,EAAA;AAAA,QACT;AAAA,UACE,UAAA;AAAA,SACF;AAAA,OACF;AAAA,KACF;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Wave.js","sources":["../../../../../src/components/atoms/Skeleton/Wave.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { Animated } from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport { waveAnimation } from './animation';\nimport { IAnimationComponent } from './types';\n\nconst AnimatedLinearGradient = Animated.createAnimatedComponent(LinearGradient);\n\nexport const Wave = ({\n active = true,\n width,\n height,\n childrenLayout,\n}: IAnimationComponent) => {\n const range = width ?? childrenLayout.width;\n const animatedValue = useRef(new Animated.Value(0)).current;\n\n const translateX = animatedValue.interpolate({\n inputRange: [0, 1],\n outputRange: [-range, range],\n });\n\n useEffect(() => {\n waveAnimation(active, animatedValue);\n }, [active]);\n\n return (\n <AnimatedLinearGradient\n colors={[\n 'transparent',\n 'rgba(0,0,0,0.05)',\n 'rgba(0,0,0,0.1)',\n 'transparent',\n ]}\n start={{ x: 0, y: 0 }}\n end={{ x: 1, y: 0 }}\n style={{\n width: width ?? childrenLayout.width,\n height: height ?? childrenLayout.height,\n position: 'absolute',\n top: childrenLayout.y ?? 0,\n left: childrenLayout.x ?? 0,\n zIndex: 2,\n overflow: 'hidden',\n transform: [\n {\n translateX: translateX,\n },\n ],\n }}\n />\n );\n};\n"],"names":["Animated","LinearGradient","useRef","useEffect","waveAnimation","React"],"mappings":";;;;;;;;;;;;;;AAMA,MAAM,sBAAA,GAAyBA,oBAAS,CAAA,uBAAA,CAAwBC,kCAAc,CAAA,CAAA;AAEvE,MAAM,OAAO,CAAC;AAAA,EACnB,MAAS,GAAA,IAAA;AAAA,EACT,KAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AACF,CAA2B,KAAA;AACzB,EAAM,MAAA,KAAA,GAAQ,SAAS,cAAe,CAAA,KAAA,CAAA;AACtC,EAAA,MAAM,gBAAgBC,YAAO,CAAA,IAAIF,qBAAS,KAAM,CAAA,CAAC,CAAC,CAAE,CAAA,OAAA,CAAA;AAEpD,EAAM,MAAA,UAAA,GAAa,cAAc,WAAY,CAAA;AAAA,IAC3C,UAAA,EAAY,CAAC,CAAA,EAAG,CAAC,CAAA;AAAA,IACjB,WAAa,EAAA,CAAC,CAAC,KAAA,EAAO,KAAK,CAAA;AAAA,GAC5B,CAAA,CAAA;AAED,EAAAG,eAAA,CAAU,MAAM;AACd,IAAAC,uBAAA,CAAc,QAAQ,aAAa,CAAA,CAAA;AAAA,GACrC,EAAG,CAAC,MAAM,CAAC,CAAA,CAAA;AAEX,EAAA,uBACGC,yBAAA,CAAA,aAAA,CAAA,sBAAA,EAAA;AAAA,IACC,MAAQ,EAAA;AAAA,MACN,aAAA;AAAA,MACA,kBAAA;AAAA,MACA,iBAAA;AAAA,MACA,aAAA;AAAA,KACF;AAAA,IACA,KAAO,EAAA,EAAE,CAAG,EAAA,CAAA,EAAG,GAAG,CAAE,EAAA;AAAA,IACpB,GAAK,EAAA,EAAE,CAAG,EAAA,CAAA,EAAG,GAAG,CAAE,EAAA;AAAA,IAClB,KAAO,EAAA;AAAA,MACL,KAAA,EAAO,SAAS,cAAe,CAAA,KAAA;AAAA,MAC/B,MAAA,EAAQ,UAAU,cAAe,CAAA,MAAA;AAAA,MACjC,QAAU,EAAA,UAAA;AAAA,MACV,GAAA,EAAK,eAAe,CAAK,IAAA,CAAA;AAAA,MACzB,IAAA,EAAM,eAAe,CAAK,IAAA,CAAA;AAAA,MAC1B,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,QAAA;AAAA,MACV,SAAW,EAAA;AAAA,QACT;AAAA,UACE,UAAA;AAAA,SACF;AAAA,OACF;AAAA,KACF;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -25,46 +25,13 @@ function _interopNamespace(e) {
25
25
 
26
26
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
27
27
 
28
- var __defProp = Object.defineProperty;
29
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
30
- var __hasOwnProp = Object.prototype.hasOwnProperty;
31
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
32
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
33
- var __spreadValues = (a, b) => {
34
- for (var prop in b || (b = {}))
35
- if (__hasOwnProp.call(b, prop))
36
- __defNormalProp(a, prop, b[prop]);
37
- if (__getOwnPropSymbols)
38
- for (var prop of __getOwnPropSymbols(b)) {
39
- if (__propIsEnum.call(b, prop))
40
- __defNormalProp(a, prop, b[prop]);
41
- }
42
- return a;
43
- };
44
- var __objRest = (source, exclude) => {
45
- var target = {};
46
- for (var prop in source)
47
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
48
- target[prop] = source[prop];
49
- if (source != null && __getOwnPropSymbols)
50
- for (var prop of __getOwnPropSymbols(source)) {
51
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
52
- target[prop] = source[prop];
53
- }
54
- return target;
55
- };
56
- const SnappingSlider = (_a) => {
57
- var _b = _a, {
58
- children,
59
- showAmount,
60
- scrollAmount,
61
- spacing
62
- } = _b, rest = __objRest(_b, [
63
- "children",
64
- "showAmount",
65
- "scrollAmount",
66
- "spacing"
67
- ]);
28
+ const SnappingSlider = ({
29
+ children,
30
+ showAmount,
31
+ scrollAmount,
32
+ spacing,
33
+ ...rest
34
+ }) => {
68
35
  const theme = react.useTheme();
69
36
  const childCount = React__namespace.Children.count(children);
70
37
  const screenWidth = reactNative.Dimensions.get("window").width;
@@ -77,13 +44,14 @@ const SnappingSlider = (_a) => {
77
44
  const padCompensation = horizontalPadding * Math.sign(index);
78
45
  return offset + padCompensation;
79
46
  });
80
- return /* @__PURE__ */ React__namespace.createElement(reactNative.ScrollView, __spreadValues({
47
+ return /* @__PURE__ */ React__namespace.createElement(reactNative.ScrollView, {
81
48
  horizontal: true,
82
49
  snapToOffsets,
83
50
  snapToStart: true,
84
51
  snapToEnd: true,
85
- showsHorizontalScrollIndicator: false
86
- }, rest), React__namespace.Children.map(children, (child, index) => {
52
+ showsHorizontalScrollIndicator: false,
53
+ ...rest
54
+ }, React__namespace.Children.map(children, (child, index) => {
87
55
  const isFirst = index === 0;
88
56
  const isLast = index === childCount - 1;
89
57
  return /* @__PURE__ */ React__namespace.createElement(reactNative.View, {
@@ -1 +1 @@
1
- {"version":3,"file":"SnappingSlider.js","sources":["../../../../../src/components/atoms/SnappingSlider/SnappingSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Dimensions, ScrollView, ScrollViewProps, View } from 'react-native';\nimport {\n extractNumbersFromString,\n SpacingType,\n ThemeProp,\n} from '@tecsinapse/react-core';\nimport { useTheme } from '@emotion/react';\n\nexport interface SnappingSliderProps\n extends Omit<ScrollViewProps, 'horizontal' | 'snapToOffsets'> {\n /**\n * Amount in screen elements.\n * Should never be lower than scrollAmount, otherwise some elements will be skipped.\n */\n showAmount: number;\n\n /**\n * Amount of items to scroll within a single swipe.\n * Should never be greater than showAmount, otherwise some elements will be skipped.\n */\n scrollAmount: number;\n\n /**\n * Spacing between elements.\n * Must be one of [nano, micro, mili, centi, deca, kilo, mega, giga, tera, peta, hexa]\n */\n spacing?: SpacingType;\n}\n\nconst SnappingSlider: React.FC<SnappingSliderProps> = ({\n children,\n showAmount,\n scrollAmount,\n spacing,\n ...rest\n}) => {\n const theme = useTheme() as ThemeProp;\n\n const childCount = React.Children.count(children);\n const screenWidth = Dimensions.get('window').width;\n const totalSlideWidth = Math.round(screenWidth / showAmount);\n const horizontalPadding = spacing\n ? extractNumbersFromString(theme.spacing[spacing]) / 2\n : 0;\n\n const snapToOffsets = [\n ...Array(Math.ceil(childCount / scrollAmount)).keys(),\n ].map(index => {\n const offset = totalSlideWidth * scrollAmount * index;\n const padCompensation = horizontalPadding * Math.sign(index);\n return offset + padCompensation;\n });\n\n return (\n <ScrollView\n horizontal\n snapToOffsets={snapToOffsets}\n snapToStart\n snapToEnd\n showsHorizontalScrollIndicator={false}\n {...rest}\n >\n {React.Children.map(children, (child, index) => {\n const isFirst = index === 0;\n const isLast = index === childCount - 1;\n\n return (\n <View\n style={{\n width: totalSlideWidth,\n paddingHorizontal: horizontalPadding,\n paddingLeft: isFirst ? 0 : horizontalPadding,\n paddingRight: isLast ? 0 : horizontalPadding,\n }}\n >\n {child}\n </View>\n );\n })}\n </ScrollView>\n );\n};\n\nexport default SnappingSlider;\n"],"names":["useTheme","React","Dimensions","extractNumbersFromString","ScrollView","View"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BM,MAAA,cAAA,GAAgD,CAAC,EAMjD,KAAA;AANiD,EACrD,IAAA,EAAA,GAAA,EAAA,EAAA;AAAA,IAAA,QAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,OAAA;AAAA,GAlCF,GA8BuD,EAKlD,EAAA,IAAA,GAAA,SAAA,CALkD,EAKlD,EAAA;AAAA,IAJH,UAAA;AAAA,IACA,YAAA;AAAA,IACA,cAAA;AAAA,IACA,SAAA;AAAA,GAAA,CAAA,CAAA;AAGA,EAAA,MAAM,QAAQA,cAAS,EAAA,CAAA;AAEvB,EAAA,MAAM,UAAa,GAAAC,gBAAA,CAAM,QAAS,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAChD,EAAA,MAAM,WAAc,GAAAC,sBAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA,KAAA,CAAA;AAC7C,EAAA,MAAM,eAAkB,GAAA,IAAA,CAAK,KAAM,CAAA,WAAA,GAAc,UAAU,CAAA,CAAA;AAC3D,EAAA,MAAM,oBAAoB,OACtB,GAAAC,kCAAA,CAAyB,MAAM,OAAQ,CAAA,OAAA,CAAQ,IAAI,CACnD,GAAA,CAAA,CAAA;AAEJ,EAAA,MAAM,aAAgB,GAAA;AAAA,IACpB,GAAG,MAAM,IAAK,CAAA,IAAA,CAAK,aAAa,YAAY,CAAC,EAAE,IAAK,EAAA;AAAA,GACtD,CAAE,IAAI,CAAS,KAAA,KAAA;AACb,IAAM,MAAA,MAAA,GAAS,kBAAkB,YAAe,GAAA,KAAA,CAAA;AAChD,IAAA,MAAM,eAAkB,GAAA,iBAAA,GAAoB,IAAK,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAC3D,IAAA,OAAO,MAAS,GAAA,eAAA,CAAA;AAAA,GACjB,CAAA,CAAA;AAED,EAAA,uBACGF,gBAAA,CAAA,aAAA,CAAAG,sBAAA,EAAA,cAAA,CAAA;AAAA,IACC,UAAU,EAAA,IAAA;AAAA,IACV,aAAA;AAAA,IACA,WAAW,EAAA,IAAA;AAAA,IACX,SAAS,EAAA,IAAA;AAAA,IACT,8BAAgC,EAAA,KAAA;AAAA,GAAA,EAC5B,OAEHH,gBAAM,CAAA,QAAA,CAAS,IAAI,QAAU,EAAA,CAAC,OAAO,KAAU,KAAA;AAC9C,IAAA,MAAM,UAAU,KAAU,KAAA,CAAA,CAAA;AAC1B,IAAM,MAAA,MAAA,GAAS,UAAU,UAAa,GAAA,CAAA,CAAA;AAEtC,IAAA,uBACGA,gBAAA,CAAA,aAAA,CAAAI,gBAAA,EAAA;AAAA,MACC,KAAO,EAAA;AAAA,QACL,KAAO,EAAA,eAAA;AAAA,QACP,iBAAmB,EAAA,iBAAA;AAAA,QACnB,WAAA,EAAa,UAAU,CAAI,GAAA,iBAAA;AAAA,QAC3B,YAAA,EAAc,SAAS,CAAI,GAAA,iBAAA;AAAA,OAC7B;AAAA,KAAA,EAEC,KACH,CAAA,CAAA;AAAA,GAEH,CACH,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"SnappingSlider.js","sources":["../../../../../src/components/atoms/SnappingSlider/SnappingSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Dimensions, ScrollView, ScrollViewProps, View } from 'react-native';\nimport {\n extractNumbersFromString,\n SpacingType,\n ThemeProp,\n} from '@tecsinapse/react-core';\nimport { useTheme } from '@emotion/react';\n\nexport interface SnappingSliderProps\n extends Omit<ScrollViewProps, 'horizontal' | 'snapToOffsets'> {\n /**\n * Amount in screen elements.\n * Should never be lower than scrollAmount, otherwise some elements will be skipped.\n */\n showAmount: number;\n\n /**\n * Amount of items to scroll within a single swipe.\n * Should never be greater than showAmount, otherwise some elements will be skipped.\n */\n scrollAmount: number;\n\n /**\n * Spacing between elements.\n * Must be one of [nano, micro, mili, centi, deca, kilo, mega, giga, tera, peta, hexa]\n */\n spacing?: SpacingType;\n}\n\nconst SnappingSlider: React.FC<SnappingSliderProps> = ({\n children,\n showAmount,\n scrollAmount,\n spacing,\n ...rest\n}) => {\n const theme = useTheme() as ThemeProp;\n\n const childCount = React.Children.count(children);\n const screenWidth = Dimensions.get('window').width;\n const totalSlideWidth = Math.round(screenWidth / showAmount);\n const horizontalPadding = spacing\n ? extractNumbersFromString(theme.spacing[spacing]) / 2\n : 0;\n\n const snapToOffsets = [\n ...Array(Math.ceil(childCount / scrollAmount)).keys(),\n ].map(index => {\n const offset = totalSlideWidth * scrollAmount * index;\n const padCompensation = horizontalPadding * Math.sign(index);\n return offset + padCompensation;\n });\n\n return (\n <ScrollView\n horizontal\n snapToOffsets={snapToOffsets}\n snapToStart\n snapToEnd\n showsHorizontalScrollIndicator={false}\n {...rest}\n >\n {React.Children.map(children, (child, index) => {\n const isFirst = index === 0;\n const isLast = index === childCount - 1;\n\n return (\n <View\n style={{\n width: totalSlideWidth,\n paddingHorizontal: horizontalPadding,\n paddingLeft: isFirst ? 0 : horizontalPadding,\n paddingRight: isLast ? 0 : horizontalPadding,\n }}\n >\n {child}\n </View>\n );\n })}\n </ScrollView>\n );\n};\n\nexport default SnappingSlider;\n"],"names":["useTheme","React","Dimensions","extractNumbersFromString","ScrollView","View"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,MAAM,iBAAgD,CAAC;AAAA,EACrD,QAAA;AAAA,EACA,UAAA;AAAA,EACA,YAAA;AAAA,EACA,OAAA;AAAA,EACG,GAAA,IAAA;AACL,CAAM,KAAA;AACJ,EAAA,MAAM,QAAQA,cAAS,EAAA,CAAA;AAEvB,EAAA,MAAM,UAAa,GAAAC,gBAAA,CAAM,QAAS,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAChD,EAAA,MAAM,WAAc,GAAAC,sBAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA,KAAA,CAAA;AAC7C,EAAA,MAAM,eAAkB,GAAA,IAAA,CAAK,KAAM,CAAA,WAAA,GAAc,UAAU,CAAA,CAAA;AAC3D,EAAA,MAAM,oBAAoB,OACtB,GAAAC,kCAAA,CAAyB,MAAM,OAAQ,CAAA,OAAA,CAAQ,IAAI,CACnD,GAAA,CAAA,CAAA;AAEJ,EAAA,MAAM,aAAgB,GAAA;AAAA,IACpB,GAAG,MAAM,IAAK,CAAA,IAAA,CAAK,aAAa,YAAY,CAAC,EAAE,IAAK,EAAA;AAAA,GACtD,CAAE,IAAI,CAAS,KAAA,KAAA;AACb,IAAM,MAAA,MAAA,GAAS,kBAAkB,YAAe,GAAA,KAAA,CAAA;AAChD,IAAA,MAAM,eAAkB,GAAA,iBAAA,GAAoB,IAAK,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAC3D,IAAA,OAAO,MAAS,GAAA,eAAA,CAAA;AAAA,GACjB,CAAA,CAAA;AAED,EAAA,uBACGF,gBAAA,CAAA,aAAA,CAAAG,sBAAA,EAAA;AAAA,IACC,UAAU,EAAA,IAAA;AAAA,IACV,aAAA;AAAA,IACA,WAAW,EAAA,IAAA;AAAA,IACX,SAAS,EAAA,IAAA;AAAA,IACT,8BAAgC,EAAA,KAAA;AAAA,IAC/B,GAAG,IAAA;AAAA,GAAA,EAEHH,iBAAM,QAAS,CAAA,GAAA,CAAI,QAAU,EAAA,CAAC,OAAO,KAAU,KAAA;AAC9C,IAAA,MAAM,UAAU,KAAU,KAAA,CAAA,CAAA;AAC1B,IAAM,MAAA,MAAA,GAAS,UAAU,UAAa,GAAA,CAAA,CAAA;AAEtC,IAAA,uBACGA,gBAAA,CAAA,aAAA,CAAAI,gBAAA,EAAA;AAAA,MACC,KAAO,EAAA;AAAA,QACL,KAAO,EAAA,eAAA;AAAA,QACP,iBAAmB,EAAA,iBAAA;AAAA,QACnB,WAAA,EAAa,UAAU,CAAI,GAAA,iBAAA;AAAA,QAC3B,YAAA,EAAc,SAAS,CAAI,GAAA,iBAAA;AAAA,OAC7B;AAAA,KAAA,EAEC,KACH,CAAA,CAAA;AAAA,GAEH,CACH,CAAA,CAAA;AAEJ;;;;"}
@@ -8,45 +8,17 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
8
8
 
9
9
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
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
- const Tag = (_a) => {
40
- var _b = _a, { value } = _b, rest = __objRest(_b, ["value"]);
41
- return /* @__PURE__ */ React__default["default"].createElement(reactCore.Tag, __spreadValues({
11
+ const Tag = ({ value, ...rest }) => {
12
+ return /* @__PURE__ */ React__default["default"].createElement(reactCore.Tag, {
42
13
  value: /* @__PURE__ */ React__default["default"].createElement(Text, {
43
14
  colorVariant: "secondary",
44
15
  colorTone: "dark",
45
16
  fontStack: "default",
46
17
  fontWeight: "bold",
47
18
  typography: rest.variant === "small" ? "sub" : "base"
48
- }, value)
49
- }, rest));
19
+ }, value),
20
+ ...rest
21
+ });
50
22
  };
51
23
 
52
24
  module.exports = Tag;
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../../../src/components/atoms/Tag/Tag.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Tag as TagCore,\n TagProps as TagCoreProps,\n} from '@tecsinapse/react-core';\nimport { Text } from '../Text';\n\nexport interface TagProps extends Omit<TagCoreProps, 'value'> {\n value: string;\n}\n\nconst Tag: React.FC<TagProps> = ({ value, ...rest }): JSX.Element => {\n return (\n <TagCore\n value={\n <Text\n colorVariant=\"secondary\"\n colorTone=\"dark\"\n fontStack=\"default\"\n fontWeight=\"bold\"\n typography={rest.variant === 'small' ? 'sub' : 'base'}\n >\n {value}\n </Text>\n }\n {...rest}\n />\n );\n};\n\nexport default Tag;\n"],"names":["React","TagCore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWM,MAAA,GAAA,GAA0B,CAAC,EAAoC,KAAA;AAApC,EAAA,IAAA,EAAA,GAAA,EAAA,EAAE,EAXnC,KAAA,EAAA,GAWiC,EAAY,EAAA,IAAA,GAAA,SAAA,CAAZ,IAAY,CAAV,OAAA,CAAA,CAAA,CAAA;AACjC,EAAA,uBACGA,yBAAA,CAAA,aAAA,CAAAC,aAAA,EAAA,cAAA,CAAA;AAAA,IACC,uBACGD,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,MACC,YAAa,EAAA,WAAA;AAAA,MACb,SAAU,EAAA,MAAA;AAAA,MACV,SAAU,EAAA,SAAA;AAAA,MACV,UAAW,EAAA,MAAA;AAAA,MACX,UAAY,EAAA,IAAA,CAAK,OAAY,KAAA,OAAA,GAAU,KAAQ,GAAA,MAAA;AAAA,KAAA,EAE9C,KACH,CAAA;AAAA,GAAA,EAEE,IACN,CAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Tag.js","sources":["../../../../../src/components/atoms/Tag/Tag.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Tag as TagCore,\n TagProps as TagCoreProps,\n} from '@tecsinapse/react-core';\nimport { Text } from '../Text';\n\nexport interface TagProps extends Omit<TagCoreProps, 'value'> {\n value: string;\n}\n\nconst Tag: React.FC<TagProps> = ({ value, ...rest }): JSX.Element => {\n return (\n <TagCore\n value={\n <Text\n colorVariant=\"secondary\"\n colorTone=\"dark\"\n fontStack=\"default\"\n fontWeight=\"bold\"\n typography={rest.variant === 'small' ? 'sub' : 'base'}\n >\n {value}\n </Text>\n }\n {...rest}\n />\n );\n};\n\nexport default Tag;\n"],"names":["React","TagCore"],"mappings":";;;;;;;;;;AAWA,MAAM,GAA0B,GAAA,CAAC,EAAE,KAAA,EAAA,GAAU,MAAwB,KAAA;AACnE,EAAA,uBACGA,yBAAA,CAAA,aAAA,CAAAC,aAAA,EAAA;AAAA,IACC,uBACGD,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,MACC,YAAa,EAAA,WAAA;AAAA,MACb,SAAU,EAAA,MAAA;AAAA,MACV,SAAU,EAAA,SAAA;AAAA,MACV,UAAW,EAAA,MAAA;AAAA,MACX,UAAY,EAAA,IAAA,CAAK,OAAY,KAAA,OAAA,GAAU,KAAQ,GAAA,MAAA;AAAA,KAAA,EAE9C,KACH,CAAA;AAAA,IAED,GAAG,IAAA;AAAA,GACN,CAAA,CAAA;AAEJ;;;;"}