@trilogy-ds/react 4.0.6 → 4.0.7-SC-beta-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/lib/components/accordion/Accordion.d.ts +2 -2
  2. package/lib/components/accordion/Accordion.js +4 -6
  3. package/lib/components/accordion/Accordion.native.d.ts +2 -2
  4. package/lib/components/accordion/Accordion.native.js +5 -5
  5. package/lib/components/accordion/AccordionProps.d.ts +0 -3
  6. package/lib/components/accordion/index.d.ts +5 -5
  7. package/lib/components/accordion/index.js +6 -6
  8. package/lib/components/accordion/item/AccordionItem.d.ts +1 -1
  9. package/lib/components/accordion/item/AccordionItem.js +6 -10
  10. package/lib/components/accordion/item/body/AccordionBody.d.ts +2 -2
  11. package/lib/components/accordion/item/body/AccordionBody.js +6 -8
  12. package/lib/components/accordion/item/body/AccordionBody.native.d.ts +2 -2
  13. package/lib/components/accordion/item/body/AccordionBody.native.js +4 -4
  14. package/lib/components/accordion/item/body/AccordionBodyProps.d.ts +1 -1
  15. package/lib/components/accordion/item/body/hooks/useAccordionBoy.d.ts +6 -0
  16. package/lib/components/accordion/item/body/hooks/useAccordionBoy.js +14 -0
  17. package/lib/components/accordion/item/body/index.d.ts +1 -1
  18. package/lib/components/accordion/item/body/index.js +2 -2
  19. package/lib/components/accordion/item/header/AccordionHeader.d.ts +2 -2
  20. package/lib/components/accordion/item/header/AccordionHeader.js +4 -6
  21. package/lib/components/accordion/item/header/AccordionHeader.native.d.ts +2 -2
  22. package/lib/components/accordion/item/header/AccordionHeader.native.js +7 -7
  23. package/lib/components/accordion/item/header/index.d.ts +1 -1
  24. package/lib/components/accordion/item/header/index.js +2 -2
  25. package/lib/components/accordion/item/index.d.ts +1 -1
  26. package/lib/components/accordion/item/index.js +2 -2
  27. package/lib/components/alert/Alert.d.ts +1 -1
  28. package/lib/components/alert/Alert.js +17 -43
  29. package/lib/components/alert/context/ToasterContext.js +6 -2
  30. package/lib/components/alert/hooks/useAlert.d.ts +23 -0
  31. package/lib/components/alert/hooks/useAlert.js +48 -0
  32. package/lib/components/autocomplete/AutoComplete.d.ts +1 -1
  33. package/lib/components/autocomplete/AutoComplete.js +26 -127
  34. package/lib/components/autocomplete/AutoComplete.native.d.ts +1 -1
  35. package/lib/components/autocomplete/AutoComplete.native.js +5 -5
  36. package/lib/components/autocomplete/AutoCompleteProps.d.ts +1 -1
  37. package/lib/components/autocomplete/Autocomplete.helpers.d.ts +1 -1
  38. package/lib/components/autocomplete/hooks/useAutocomplete.d.ts +40 -0
  39. package/lib/components/autocomplete/hooks/useAutocomplete.js +144 -0
  40. package/lib/components/autocomplete/index.d.ts +3 -3
  41. package/lib/components/autocomplete/index.js +4 -4
  42. package/lib/components/autocomplete/item/AutoCompleteIem.native.d.ts +1 -1
  43. package/lib/components/autocomplete/item/AutoCompleteIem.native.js +4 -4
  44. package/lib/components/autocomplete/item/AutoCompleteItem.d.ts +2 -2
  45. package/lib/components/autocomplete/item/AutoCompleteItem.js +6 -8
  46. package/lib/components/autocomplete/item/AutoCompleteItemProps.d.ts +1 -1
  47. package/lib/components/autocomplete/item/hooks/useAutocompleteItem.d.ts +9 -0
  48. package/lib/components/autocomplete/item/hooks/useAutocompleteItem.js +20 -0
  49. package/lib/components/autocomplete/item/index.d.ts +1 -1
  50. package/lib/components/autocomplete/item/index.js +2 -2
  51. package/lib/components/autocomplete/menu/AutoCompleteMenu.d.ts +2 -2
  52. package/lib/components/autocomplete/menu/AutoCompleteMenu.js +5 -7
  53. package/lib/components/autocomplete/menu/AutoCompleteMenu.native.js +4 -4
  54. package/lib/components/autocomplete/menu/index.d.ts +1 -1
  55. package/lib/components/autocomplete/menu/index.js +2 -2
  56. package/lib/components/badge/Badge.d.ts +1 -1
  57. package/lib/components/badge/Badge.js +10 -13
  58. package/lib/components/badge/Badge.native.js +2 -2
  59. package/lib/components/badge/BadgeProps.d.ts +2 -2
  60. package/lib/components/badge/index.d.ts +2 -1
  61. package/lib/components/badge/index.js +3 -2
  62. package/lib/components/box/Box.js +8 -16
  63. package/lib/components/box/content/BoxContent.js +5 -7
  64. package/lib/components/box/footer/BoxFooter.js +4 -6
  65. package/lib/components/box/header/BoxHeader.js +5 -7
  66. package/lib/components/box/item/BoxItem.js +4 -6
  67. package/lib/components/box/table-container/BoxTableContainer.d.ts +1 -1
  68. package/lib/components/box/table-container/BoxTableContainer.js +5 -7
  69. package/lib/components/breadcrumb/Breadcrumb.js +2 -4
  70. package/lib/components/breadcrumb/item/BreadcrumbItem.js +6 -8
  71. package/lib/components/button/Button.js +7 -19
  72. package/lib/components/button/hooks/useButton.d.ts +12 -0
  73. package/lib/components/button/hooks/useButton.js +16 -0
  74. package/lib/components/button/list/ButtonList.js +5 -7
  75. package/lib/components/card/Card.d.ts +1 -4
  76. package/lib/components/card/Card.js +8 -15
  77. package/lib/components/card/Card.native.d.ts +1 -1
  78. package/lib/components/card/Card.native.js +15 -13
  79. package/lib/components/card/CardProps.d.ts +3 -1
  80. package/lib/components/card/content/CardContent.d.ts +1 -1
  81. package/lib/components/card/content/CardContent.js +4 -6
  82. package/lib/components/card/content/CardContentProps.d.ts +1 -1
  83. package/lib/components/card/content/index.d.ts +1 -1
  84. package/lib/components/card/content/index.js +2 -2
  85. package/lib/components/card/image/CardImage.d.ts +1 -1
  86. package/lib/components/card/image/CardImage.js +7 -13
  87. package/lib/components/card/image/CardImage.native.d.ts +1 -1
  88. package/lib/components/card/image/CardImage.native.js +12 -12
  89. package/lib/components/card/index.d.ts +5 -5
  90. package/lib/components/card/index.js +6 -6
  91. package/lib/components/checkbox/Checkbox.js +17 -26
  92. package/lib/components/checkbox/CheckboxProps.d.ts +1 -1
  93. package/lib/components/checkbox/tiles/CheckboxTiles.js +4 -6
  94. package/lib/components/checkbox/tiles/tile/CheckboxTile.js +23 -24
  95. package/lib/components/chips/Chips.d.ts +1 -1
  96. package/lib/components/chips/Chips.js +7 -11
  97. package/lib/components/chips/index.d.ts +2 -2
  98. package/lib/components/chips/index.js +3 -3
  99. package/lib/components/chips/list/ChipsList.d.ts +2 -2
  100. package/lib/components/chips/list/ChipsList.js +5 -7
  101. package/lib/components/chips/list/index.d.ts +1 -1
  102. package/lib/components/chips/list/index.js +2 -2
  103. package/lib/components/columns/Columns.js +2 -4
  104. package/lib/components/columns/column/Column.js +2 -4
  105. package/lib/components/container/Container.js +2 -4
  106. package/lib/components/countdown/Countdown.d.ts +1 -1
  107. package/lib/components/countdown/Countdown.js +17 -77
  108. package/lib/components/countdown/CountdownProps.d.ts +1 -1
  109. package/lib/components/countdown/hooks/useCountdown.d.ts +16 -0
  110. package/lib/components/countdown/hooks/useCountdown.js +77 -0
  111. package/lib/components/countdown/index.d.ts +2 -2
  112. package/lib/components/countdown/index.js +3 -3
  113. package/lib/components/divider/Divider.js +3 -5
  114. package/lib/components/fab/Fab.d.ts +1 -1
  115. package/lib/components/fab/Fab.js +7 -16
  116. package/lib/components/fab/FabProps.d.ts +5 -3
  117. package/lib/components/fab/index.d.ts +1 -1
  118. package/lib/components/fab/index.js +2 -2
  119. package/lib/components/hero/Hero.js +3 -5
  120. package/lib/components/icon/Icon.js +6 -8
  121. package/lib/components/image/Image.d.ts +1 -1
  122. package/lib/components/image/Image.js +7 -12
  123. package/lib/components/image/ImageProps.d.ts +3 -2
  124. package/lib/components/image/ImageProps.js +1 -1
  125. package/lib/components/image/index.d.ts +1 -1
  126. package/lib/components/image/index.js +2 -2
  127. package/lib/components/input/Input.d.ts +2 -2
  128. package/lib/components/input/Input.js +48 -128
  129. package/lib/components/input/Input.native.d.ts +1 -1
  130. package/lib/components/input/Input.native.js +6 -6
  131. package/lib/components/input/InputProps.d.ts +3 -3
  132. package/lib/components/input/gauge/InputGauge.d.ts +2 -3
  133. package/lib/components/input/gauge/InputGauge.js +15 -15
  134. package/lib/components/input/gauge/hook/useGauge.d.ts +1 -1
  135. package/lib/components/input/gauge/hook/useGauge.js +89 -74
  136. package/lib/components/input/hook/useInput.d.ts +68 -0
  137. package/lib/components/input/hook/useInput.js +151 -0
  138. package/lib/components/input/index.d.ts +3 -3
  139. package/lib/components/input/index.js +4 -4
  140. package/lib/components/link/Link.js +6 -8
  141. package/lib/components/list/List.d.ts +3 -2
  142. package/lib/components/list/List.js +9 -9
  143. package/lib/components/list/List.native.d.ts +4 -3
  144. package/lib/components/list/List.native.js +11 -7
  145. package/lib/components/list/ListProps.d.ts +1 -0
  146. package/lib/components/list/ListPropsDefaults.js +8 -0
  147. package/lib/components/list/context/ListContext.d.ts +3 -0
  148. package/lib/components/list/context/ListContext.js +8 -0
  149. package/lib/components/list/context/ListContextProps.d.ts +7 -0
  150. package/lib/components/list/context/ListContextProps.js +2 -0
  151. package/lib/components/list/context/ListContextPropsDefaults.js +24 -0
  152. package/lib/components/list/context/index.d.ts +2 -0
  153. package/lib/components/list/context/index.js +3 -0
  154. package/lib/components/list/item/ListItem.js +6 -8
  155. package/lib/components/list/item/ListItem.native.d.ts +1 -1
  156. package/lib/components/list/item/ListItem.native.js +19 -5
  157. package/lib/components/list/item/description/ListItemDescription.d.ts +2 -2
  158. package/lib/components/list/item/description/ListItemDescription.js +5 -7
  159. package/lib/components/modal/Modal.d.ts +1 -1
  160. package/lib/components/modal/Modal.js +14 -74
  161. package/lib/components/modal/Modal.native.js +51 -109
  162. package/lib/components/modal/ModalProps.d.ts +3 -2
  163. package/lib/components/modal/body/ModalBody.d.ts +1 -1
  164. package/lib/components/modal/body/ModalBody.js +3 -5
  165. package/lib/components/modal/body/ModalBody.native.js +13 -8
  166. package/lib/components/modal/context/ModalContext.d.ts +3 -0
  167. package/lib/components/modal/context/ModalContext.js +8 -0
  168. package/lib/components/modal/context/ModalContextProps.d.ts +8 -0
  169. package/lib/components/modal/context/ModalContextProps.js +2 -0
  170. package/lib/components/modal/context/ModalContextPropsDefaults.js +25 -0
  171. package/lib/components/modal/context/index.d.ts +2 -0
  172. package/lib/components/modal/context/index.js +3 -0
  173. package/lib/components/modal/footer/ModalFooter.d.ts +1 -1
  174. package/lib/components/modal/footer/ModalFooter.js +4 -6
  175. package/lib/components/modal/footer/ModalFooter.native.js +20 -10
  176. package/lib/components/modal/hooks/useModal.d.ts +26 -0
  177. package/lib/components/modal/hooks/useModal.js +86 -0
  178. package/lib/components/modal/index.d.ts +4 -4
  179. package/lib/components/modal/index.js +5 -5
  180. package/lib/components/otp/Otp.d.ts +1 -1
  181. package/lib/components/otp/Otp.js +22 -98
  182. package/lib/components/otp/hooks/useOtp.d.ts +20 -0
  183. package/lib/components/otp/hooks/useOtp.js +101 -0
  184. package/lib/components/otp/index.d.ts +1 -1
  185. package/lib/components/otp/index.js +2 -2
  186. package/lib/components/pagination/Pagination.d.ts +1 -1
  187. package/lib/components/pagination/Pagination.js +17 -66
  188. package/lib/components/pagination/PaginationProps.d.ts +3 -2
  189. package/lib/components/pagination/hooks/usePagination.d.ts +25 -0
  190. package/lib/components/pagination/hooks/usePagination.js +77 -0
  191. package/lib/components/pagination/index.d.ts +2 -2
  192. package/lib/components/pagination/index.js +3 -3
  193. package/lib/components/popover/Popover.js +5 -7
  194. package/lib/components/price/Price.js +11 -13
  195. package/lib/components/product-tour/ProductTour.js +13 -17
  196. package/lib/components/product-tour/hooks/useProductTour.d.ts +11 -0
  197. package/lib/components/product-tour/hooks/useProductTour.js +22 -0
  198. package/lib/components/progress/Progress.d.ts +2 -2
  199. package/lib/components/progress/Progress.js +11 -13
  200. package/lib/components/progress/ProgressProps.d.ts +1 -1
  201. package/lib/components/progress/index.d.ts +3 -3
  202. package/lib/components/progress/index.js +4 -4
  203. package/lib/components/progress/radial/ProgressRadial.d.ts +1 -1
  204. package/lib/components/progress/radial/ProgressRadial.js +11 -52
  205. package/lib/components/progress/radial/ProgressRadial.native.js +1 -1
  206. package/lib/components/progress/radial/ProgressRadialProps.d.ts +5 -3
  207. package/lib/components/progress/radial/hooks/useProgressRadial.d.ts +15 -0
  208. package/lib/components/progress/radial/hooks/useProgressRadial.js +57 -0
  209. package/lib/components/progress/radial/index.d.ts +1 -1
  210. package/lib/components/progress/radial/index.js +2 -2
  211. package/lib/components/progress/radial/item/ProgressRadialItemProps.d.ts +1 -1
  212. package/lib/components/progress/radial/item/ProgressRadialtem.d.ts +1 -1
  213. package/lib/components/progress/radial/item/ProgressRadialtem.js +4 -6
  214. package/lib/components/progress/radial/item/index.d.ts +1 -1
  215. package/lib/components/progress/radial/item/index.js +2 -2
  216. package/lib/components/radio/Radio.js +6 -8
  217. package/lib/components/radio/RadioProps.d.ts +1 -1
  218. package/lib/components/radio/index.d.ts +5 -5
  219. package/lib/components/radio/index.js +6 -6
  220. package/lib/components/radio/list/RadioList.d.ts +1 -1
  221. package/lib/components/radio/list/RadioList.js +5 -7
  222. package/lib/components/radio/list/RadioListProps.d.ts +1 -1
  223. package/lib/components/radio/list/index.d.ts +1 -1
  224. package/lib/components/radio/list/index.js +2 -2
  225. package/lib/components/radio/tiles/RadioTiles.js +5 -7
  226. package/lib/components/radio/tiles/RadioTilesProps.d.ts +1 -1
  227. package/lib/components/radio/tiles/index.d.ts +1 -1
  228. package/lib/components/radio/tiles/index.js +2 -2
  229. package/lib/components/radio/tiles/tile/RadioTile.js +10 -12
  230. package/lib/components/radio/tiles/tile/index.d.ts +1 -1
  231. package/lib/components/radio/tiles/tile/index.js +2 -2
  232. package/lib/components/range/Range.d.ts +1 -1
  233. package/lib/components/range/Range.js +15 -57
  234. package/lib/components/range/RangeProps.d.ts +2 -1
  235. package/lib/components/range/hooks/useRange.d.ts +30 -0
  236. package/lib/components/range/hooks/useRange.js +63 -0
  237. package/lib/components/range/index.d.ts +1 -1
  238. package/lib/components/range/index.js +2 -2
  239. package/lib/components/rows/Rows.js +4 -6
  240. package/lib/components/rows/row/Row.js +4 -6
  241. package/lib/components/scroll-view/ScrollView.d.ts +2 -2
  242. package/lib/components/scroll-view/ScrollView.js +11 -13
  243. package/lib/components/section/Section.js +5 -7
  244. package/lib/components/segment-control/SegmentControl.d.ts +8 -2
  245. package/lib/components/segment-control/SegmentControl.js +16 -28
  246. package/lib/components/segment-control/SegmentControlProps.d.ts +1 -1
  247. package/lib/components/segment-control/hooks/useSegmentControl.d.ts +14 -0
  248. package/lib/components/segment-control/hooks/useSegmentControl.js +31 -0
  249. package/lib/components/segment-control/item/SegmentControlItem.d.ts +6 -2
  250. package/lib/components/segment-control/item/SegmentControlItem.js +8 -18
  251. package/lib/components/segment-control/item/SegmentControlItemProps.d.ts +1 -1
  252. package/lib/components/segment-control/item/hooks/useSegmentControlItem.d.ts +14 -0
  253. package/lib/components/segment-control/item/hooks/useSegmentControlItem.js +24 -0
  254. package/lib/components/segment-control/item/index.d.ts +1 -1
  255. package/lib/components/segment-control/item/index.js +2 -2
  256. package/lib/components/select/Select.d.ts +1 -1
  257. package/lib/components/select/Select.js +3 -3
  258. package/lib/components/select/SelectProps.d.ts +3 -2
  259. package/lib/components/select/index.d.ts +2 -2
  260. package/lib/components/select/index.js +3 -3
  261. package/lib/components/select/option/SelectOption.d.ts +2 -2
  262. package/lib/components/select/option/SelectOption.js +7 -9
  263. package/lib/components/select/option/SelectOptionProps.d.ts +3 -2
  264. package/lib/components/select/option/index.d.ts +1 -1
  265. package/lib/components/select/option/index.js +2 -2
  266. package/lib/components/select/web/SelectDynamic.d.ts +1 -1
  267. package/lib/components/select/web/SelectDynamic.js +15 -131
  268. package/lib/components/select/web/SelectNative.js +15 -35
  269. package/lib/components/select/web/hooks/useSelectDynamic.d.ts +27 -0
  270. package/lib/components/select/web/hooks/useSelectDynamic.js +156 -0
  271. package/lib/components/select/web/hooks/useSelectNative.d.ts +22 -0
  272. package/lib/components/select/web/hooks/useSelectNative.js +38 -0
  273. package/lib/components/select/web/index.d.ts +2 -2
  274. package/lib/components/select/web/index.js +3 -3
  275. package/lib/components/spacer/Spacer.js +3 -5
  276. package/lib/components/stepper/Stepper.d.ts +2 -2
  277. package/lib/components/stepper/Stepper.js +9 -36
  278. package/lib/components/stepper/hooks/useStepper.d.ts +9 -0
  279. package/lib/components/stepper/hooks/useStepper.js +55 -0
  280. package/lib/components/stepper/step/Step.d.ts +1 -1
  281. package/lib/components/stepper/step/Step.js +8 -10
  282. package/lib/components/stepper/step/index.d.ts +1 -1
  283. package/lib/components/stepper/step/index.js +2 -2
  284. package/lib/components/sticker/Sticker.d.ts +1 -1
  285. package/lib/components/sticker/Sticker.js +9 -11
  286. package/lib/components/sticker/Sticker.native.d.ts +1 -1
  287. package/lib/components/sticker/Sticker.native.js +7 -7
  288. package/lib/components/sticker/StickerProps.d.ts +2 -2
  289. package/lib/components/sticker/StickerPropsDefaults.js +7 -0
  290. package/lib/components/switch/Switch.d.ts +1 -1
  291. package/lib/components/switch/Switch.js +11 -43
  292. package/lib/components/switch/SwitchProps.d.ts +2 -3
  293. package/lib/components/switch/hooks/useSwitch.d.ts +18 -0
  294. package/lib/components/switch/hooks/useSwitch.js +46 -0
  295. package/lib/components/switch/index.d.ts +1 -1
  296. package/lib/components/switch/index.js +2 -2
  297. package/lib/components/table/Table.js +5 -7
  298. package/lib/components/table/body/TableBody.js +5 -7
  299. package/lib/components/table/head/TableHead.js +5 -7
  300. package/lib/components/table/td/TableTd.js +4 -6
  301. package/lib/components/table/th/TableTh.js +4 -6
  302. package/lib/components/table/tr/TableTr.d.ts +1 -1
  303. package/lib/components/table/tr/TableTr.js +7 -9
  304. package/lib/components/tabs/Tabs.js +6 -18
  305. package/lib/components/tabs/TabsProps.d.ts +4 -1
  306. package/lib/components/tabs/context/index.js +2 -1
  307. package/lib/components/tabs/hooks/useTabs.d.ts +12 -0
  308. package/lib/components/tabs/hooks/useTabs.js +33 -0
  309. package/lib/components/tabs/tab-list/TabList.js +2 -4
  310. package/lib/components/tabs/tab-list/tab/Tab.js +4 -19
  311. package/lib/components/tabs/tab-list/tab/TabProps.d.ts +3 -1
  312. package/lib/components/tabs/tab-list/tab/hooks/useTab.d.ts +17 -0
  313. package/lib/components/tabs/tab-list/tab/hooks/useTab.js +28 -0
  314. package/lib/components/tabs/tab-panels/TabPanels.js +2 -4
  315. package/lib/components/tabs/tab-panels/tab-panel/TabPanel.js +4 -6
  316. package/lib/components/tabs/tab-panels/tab-panel/TabPanelProps.d.ts +1 -1
  317. package/lib/components/tabs/tab-panels/tab-panel/hooks/useTabPanel.d.ts +3 -0
  318. package/lib/components/tabs/tab-panels/tab-panel/hooks/useTabPanel.js +14 -0
  319. package/lib/components/tag/Tag.js +3 -5
  320. package/lib/components/tag/list/TagList.js +5 -7
  321. package/lib/components/text/Text.js +5 -7
  322. package/lib/components/textarea/Textarea.d.ts +1 -1
  323. package/lib/components/textarea/Textarea.js +15 -27
  324. package/lib/components/textarea/TextareaProps.d.ts +4 -3
  325. package/lib/components/textarea/hooks/useTextarea.d.ts +15 -0
  326. package/lib/components/textarea/hooks/useTextarea.js +30 -0
  327. package/lib/components/timeline/Timeline.js +4 -6
  328. package/lib/components/timeline/content/TimelineContent.js +5 -7
  329. package/lib/components/timeline/item/TimelineItem.js +4 -6
  330. package/lib/components/timeline/marker/TimelineMarker.js +5 -7
  331. package/lib/components/title/Title.js +7 -9
  332. package/lib/components/view/View.d.ts +1 -1
  333. package/lib/components/view/View.js +12 -15
  334. package/lib/context/index.d.ts +1 -1
  335. package/lib/context/index.js +3 -2
  336. package/lib/context/providerStates.js +3 -2
  337. package/lib/context/providerTheme.js +2 -1
  338. package/lib/helpers/hashClassesHelpers.d.ts +1 -3
  339. package/lib/helpers/hashClassesHelpers.js +18 -15
  340. package/lib/objects/Typography/TypographyBold.js +3 -2
  341. package/lib/version.d.ts +1 -1
  342. package/lib/version.js +2 -2
  343. package/package.json +1 -1
@@ -1,13 +1,11 @@
1
- import { __assign, __read, __rest } from "tslib";
1
+ import { __assign, __rest } from "tslib";
2
2
  import { ButtonType } from '../../components/button';
3
+ import { useModal } from '../../components/modal/hooks/useModal';
3
4
  import { Title, TitleLevels, TitleMarkup } from '../../components/title';
4
- import { useTrilogyContext } from '../../context/index';
5
5
  import { hashClass } from '../../helpers/hashClassesHelpers';
6
6
  import { is } from '../../services';
7
7
  import clsx from 'clsx';
8
- import React, { useCallback, useEffect, useRef, useState } from 'react';
9
- import shortid from 'shortid';
10
- var modalGeneratedId = shortid.generate();
8
+ import React from 'react';
11
9
  /**
12
10
  * Modal Component
13
11
  * @param active {boolean} Activated Modal
@@ -24,78 +22,20 @@ var modalGeneratedId = shortid.generate();
24
22
  */
25
23
  var Modal = function (_a) {
26
24
  var children = _a.children, className = _a.className, id = _a.id, _b = _a.accessibilityLabel, accessibilityLabel = _b === void 0 ? 'Close' : _b, active = _a.active, onClose = _a.onClose, onOpen = _a.onOpen, panel = _a.panel, size = _a.size, _c = _a.hideCloseButton, hideCloseButton = _c === void 0 ? false : _c, trigger = _a.trigger, _d = _a.unClosable, unClosable = _d === void 0 ? false : _d, title = _a.title, others = __rest(_a, ["children", "className", "id", "accessibilityLabel", "active", "onClose", "onOpen", "panel", "size", "hideCloseButton", "trigger", "unClosable", "title"]);
27
- var modal = useRef(null);
28
- var _e = __read(useState(active || false), 2), display = _e[0], setDisplay = _e[1];
29
- var styled = useTrilogyContext().styled;
30
- var refsActions = useRef([]);
31
- var refBtnModal = useRef(null);
32
- var refModal = useRef(null);
33
- var _f = __read(useState(0), 2), setIndexFocusable = _f[1];
34
- var handleClose = React.useCallback(function (onCloseFunc, e) {
35
- setDisplay(false);
36
- refBtnModal.current && refBtnModal.current.focus();
37
- setIndexFocusable(0);
38
- if (onCloseFunc)
39
- onCloseFunc(e);
40
- }, [refBtnModal.current]);
41
- var classes = React.useMemo(function () { return hashClass(styled, clsx('modal', display && is('active'), size && is(size), panel && is('panel'), className)); }, [display, panel, className, styled]);
42
- var onKeyDown = useCallback(function (event) {
43
- if (display && refsActions.current) {
44
- var refs_1 = refsActions.current.filter(function (ref) { return ref; });
45
- var key = event.key;
46
- if (key === 'Tab') {
47
- event.preventDefault();
48
- setIndexFocusable(function (prev) {
49
- var _a;
50
- var nextIndex = (prev + 1) % refs_1.length;
51
- refs_1[nextIndex] && ((_a = refs_1[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus());
52
- return nextIndex;
53
- });
54
- }
55
- if (key === 'Escape') {
56
- event.preventDefault();
57
- setDisplay(false);
58
- refBtnModal.current && refBtnModal.current.focus();
59
- setIndexFocusable(0);
60
- onClose && onClose();
61
- }
62
- }
63
- }, [refsActions.current.length, display]);
64
- useEffect(function () {
65
- display && refsActions.current[0] && refsActions.current[0].focus();
66
- }, [display, refsActions === null || refsActions === void 0 ? void 0 : refsActions.current.length]);
67
- useEffect(function () {
68
- setDisplay(function (prev) {
69
- if (prev) {
70
- refBtnModal.current && refBtnModal.current.focus();
71
- setIndexFocusable(0);
72
- }
73
- return active || false;
74
- });
75
- }, [active]);
76
- useEffect(function () {
77
- if (refModal.current) {
78
- var footer = refModal.current.querySelector('[data-modal-footer]');
79
- var getCTA = footer === null || footer === void 0 ? void 0 : footer.querySelectorAll('button');
80
- if (getCTA)
81
- getCTA.forEach(function (el, i) { return (refsActions.current[i + 1] = el); });
82
- }
83
- }, [refModal.current]);
25
+ var modalGeneratedId = React.useId();
26
+ var _e = useModal({
27
+ active: active,
28
+ onClose: onClose,
29
+ }), display = _e.display, refModal = _e.refModal, onKeyDown = _e.onKeyDown, handleClickModal = _e.handleClickModal, modal = _e.modal, refBtnModal = _e.refBtnModal, buttonRef = _e.buttonRef, handleCloseModal = _e.handleCloseModal;
30
+ var classes = React.useMemo(function () { return hashClass(clsx('modal', display && is('active'), size && is(size), panel && is('panel'), className)); }, [display, panel, className]);
84
31
  return (React.createElement("div", { onKeyDown: onKeyDown, ref: refModal },
85
32
  trigger && React.cloneElement(trigger, { ref: refBtnModal, 'aria-haspopup': 'dialog' }),
86
- React.createElement("div", __assign({ id: id, className: classes, role: 'dialog', "aria-labelledby": modalGeneratedId, "aria-modal": true, onClick: function (e) {
87
- var _a;
88
- if (!((_a = modal === null || modal === void 0 ? void 0 : modal.current) === null || _a === void 0 ? void 0 : _a.contains(e.target))) {
89
- handleClose(onClose, e);
90
- }
91
- } }, others),
92
- React.createElement("div", { ref: modal, className: hashClass(styled, clsx('modal-content')) },
93
- React.createElement("div", { className: hashClass(styled, clsx('modal-header')) },
94
- hideCloseButton !== true && (React.createElement("button", { onClick: function (e) {
95
- handleClose(onClose, e);
96
- }, className: hashClass(styled, clsx('modal-close', is('large'))), type: ButtonType.BUTTON, ref: function (el) { return el && (refsActions.current[0] = el); } }, accessibilityLabel && React.createElement("span", { className: 'sr-only' }, accessibilityLabel))),
33
+ React.createElement("div", __assign({ id: id, className: classes, role: 'dialog', "aria-labelledby": modalGeneratedId, "aria-modal": true, onClick: handleClickModal }, others),
34
+ React.createElement("div", { ref: modal, className: hashClass(clsx('modal-content')) },
35
+ React.createElement("div", { className: hashClass(clsx('modal-header')) },
36
+ hideCloseButton !== true && (React.createElement("button", { onClick: handleCloseModal, className: hashClass(clsx('modal-close', is('large'))), type: ButtonType.BUTTON, ref: buttonRef }, accessibilityLabel && React.createElement("span", { className: 'sr-only' }, accessibilityLabel))),
97
37
  React.createElement(Title, { id: modalGeneratedId, level: TitleLevels.THREE, markup: TitleMarkup.H1 }, title)),
98
38
  children && children))));
99
39
  };
100
40
  export default Modal;
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL01vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRW5ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQy9CLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQTtBQUN2QixPQUFPLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUN2RSxPQUFPLE9BQU8sTUFBTSxTQUFTLENBQUE7QUFHN0IsSUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUE7QUFFM0M7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILElBQU0sS0FBSyxHQUFHLFVBQUMsRUFlRjtJQWRYLElBQUEsUUFBUSxjQUFBLEVBQ1IsU0FBUyxlQUFBLEVBQ1QsRUFBRSxRQUFBLEVBQ0YsMEJBQTRCLEVBQTVCLGtCQUFrQixtQkFBRyxPQUFPLEtBQUEsRUFDNUIsTUFBTSxZQUFBLEVBQ04sT0FBTyxhQUFBLEVBQ1AsTUFBTSxZQUFBLEVBQ04sS0FBSyxXQUFBLEVBQ0wsSUFBSSxVQUFBLEVBQ0osdUJBQXVCLEVBQXZCLGVBQWUsbUJBQUcsS0FBSyxLQUFBLEVBQ3ZCLE9BQU8sYUFBQSxFQUNQLGtCQUFrQixFQUFsQixVQUFVLG1CQUFHLEtBQUssS0FBQSxFQUNsQixLQUFLLFdBQUEsRUFDRixNQUFNLGNBZEksMEpBZWQsQ0FE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
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL01vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRWhELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDeEQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUMvQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBRXpCOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxJQUFNLEtBQUssR0FBRyxVQUFDLEVBZUY7SUFkWCxJQUFBLFFBQVEsY0FBQSxFQUNSLFNBQVMsZUFBQSxFQUNULEVBQUUsUUFBQSxFQUNGLDBCQUE0QixFQUE1QixrQkFBa0IsbUJBQUcsT0FBTyxLQUFBLEVBQzVCLE1BQU0sWUFBQSxFQUNOLE9BQU8sYUFBQSxFQUNQLE1BQU0sWUFBQSxFQUNOLEtBQUssV0FBQSxFQUNMLElBQUksVUFBQSxFQUNKLHVCQUF1QixFQUF2QixlQUFlLG1CQUFHLEtBQUssS0FBQSxFQUN2QixPQUFPLGFBQUEsRUFDUCxrQkFBa0IsRUFBbEIsVUFBVSxtQkFBRyxLQUFLLEtBQUEsRUFDbEIsS0FBSyxXQUFBLEVBQ0YsTUFBTSxjQWRJLDBKQWVkLENBRFU7SUFFVCxJQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNoQyxJQUFBLEtBQXNHLFFBQVEsQ0FBQztRQUNuSCxNQUFNLFFBQUE7UUFDTixPQUFPLFNBQUE7S0FDUixDQUFDLEVBSE0sT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsU0FBUyxlQUFBLEVBQUUsZ0JBQWdCLHNCQUFBLEVBQUUsS0FBSyxXQUFBLEVBQUUsV0FBVyxpQkFBQSxFQUFFLFNBQVMsZUFBQSxFQUFFLGdCQUFnQixzQkFHckcsQ0FBQTtJQUVGLElBQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQzNCLGNBQU0sT0FBQSxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUFwRyxDQUFvRyxFQUMxRyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQzVCLENBQUE7SUFFRCxPQUFPLENBQ0wsNkJBQUssU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUNyQyxPQUFPLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUE2QixFQUFFLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLENBQUM7UUFDOUcsc0NBQ0UsRUFBRSxFQUFFLEVBQUUsRUFDTixTQUFTLEVBQUUsT0FBTyxFQUNsQixJQUFJLEVBQUMsUUFBUSxxQkFDSSxnQkFBZ0IsZ0JBQ3JCLElBQUksRUFDaEIsT0FBTyxFQUFFLGdCQUFnQixJQUNyQixNQUFNO1lBRVYsNkJBQUssR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDMUQsNkJBQUssU0FBUyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7b0JBQzVDLGVBQWUsS0FBSyxJQUFJLElBQUksQ0FDM0IsZ0NBQ0UsT0FBTyxFQUFFLGdCQUFnQixFQUN6QixTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFDdEQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxNQUFNLEVBQ3ZCLEdBQUcsRUFBRSxTQUFTLElBRWIsa0JBQWtCLElBQUksOEJBQU0sU0FBUyxFQUFDLFNBQVMsSUFBRSxrQkFBa0IsQ0FBUSxDQUNyRSxDQUNWO29CQUNELG9CQUFDLEtBQUssSUFBQyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFLElBQzFFLEtBQUssQ0FDQSxDQUNKO2dCQUNMLFFBQVEsSUFBSSxRQUFRLENBQ2pCLENBQ0YsQ0FDRixDQUNQLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxlQUFlLEtBQUssQ0FBQSJ9
@@ -1,14 +1,13 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
2
  import { ComponentName } from '../../components/enumsComponentsName';
3
- import { Icon, IconName, IconSize } from '../../components/icon';
4
- import { Alignable } from '../../objects/facets/Alignable';
5
- import { getColorStyle, TrilogyColor } from '../../objects/facets/Color';
3
+ import { Alignable, getColorStyle, TrilogyColor } from '../../objects';
6
4
  import React, { useEffect, useRef, useState } from 'react';
7
- import { Animated, Dimensions, StyleSheet, TouchableOpacity, View } from 'react-native';
8
- import NativeModal from 'react-native-modal';
5
+ import { Dimensions, StyleSheet, TouchableOpacity, View, } from 'react-native';
6
+ import ModalRN from 'react-native-modal';
9
7
  import { Column, Columns } from '../columns';
10
- import { SpacerSize } from '../spacer';
8
+ import { Icon, IconName, IconSize } from '../icon';
11
9
  import { Title } from '../title';
10
+ import { ModalContext } from './context/ModalContext';
12
11
  /**
13
12
  * Modal Component
14
13
  * @param active {boolean} Activated Modal
@@ -21,114 +20,57 @@ import { Title } from '../title';
21
20
  */
22
21
  var Modal = function (_a) {
23
22
  var children = _a.children, _b = _a.active, active = _b === void 0 ? false : _b, onClose = _a.onClose, onModalHide = _a.onModalHide, _c = _a.hideCloseButton, hideCloseButton = _c === void 0 ? false : _c, _d = _a.unClosable, unClosable = _d === void 0 ? false : _d, trigger = _a.trigger, title = _a.title, others = __rest(_a, ["children", "active", "onClose", "onModalHide", "hideCloseButton", "unClosable", "trigger", "title"]);
24
- var styles = StyleSheet.create({
25
- centeredView: {
26
- justifyContent: 'flex-end',
27
- alignItems: 'center',
28
- backgroundColor: 'rgba(0, 0, 0, 0.5)',
29
- },
30
- iconCenter: {
31
- alignSelf: 'center',
32
- marginBottom: 30,
33
- },
34
- modalView: {
35
- margin: 0,
36
- backgroundColor: getColorStyle(TrilogyColor.BACKGROUND),
37
- borderRadius: 6,
38
- padding: 17,
39
- shadowColor: '#000',
40
- shadowOffset: {
41
- width: 0,
42
- height: 2,
43
- },
44
- shadowOpacity: 0.25,
45
- shadowRadius: 3.84,
46
- elevation: 5,
47
- flex: 1,
48
- },
49
- title: {
50
- textAlign: 'center',
51
- fontSize: 21,
52
- fontWeight: '600',
53
- },
54
- content: {
55
- textAlign: 'center',
56
- fontSize: 15,
57
- paddingTop: 10,
58
- },
59
- overlay: {
60
- flexDirection: 'row',
61
- width: '100%',
62
- height: '100%',
63
- },
64
- middleModal: {
65
- justifyContent: 'center',
66
- },
67
- bottomModal: {
68
- justifyContent: 'flex-end',
69
- },
70
- childrenContainer: {
71
- flexWrap: 'wrap',
72
- borderRadius: 6,
73
- backgroundColor: getColorStyle(TrilogyColor.BACKGROUND),
74
- width: '100%',
75
- },
76
- horizontalMargin: {
77
- marginTop: 50,
78
- marginBottom: 0,
79
- },
80
- });
81
- var defaultAnimPosition = Dimensions.get('window').height;
82
- var translateAnim = useRef(new Animated.Value(defaultAnimPosition)).current;
83
- var _e = __read(useState(active || false), 2), visible = _e[0], setVisible = _e[1];
84
- useEffect(function () {
85
- setVisible(active);
86
- }, [active]);
87
- useEffect(function () {
88
- if (visible) {
89
- Animated.timing(translateAnim, {
90
- toValue: 0,
91
- duration: 500,
92
- useNativeDriver: true,
93
- }).start();
94
- }
95
- else {
96
- translateAnim.setValue(defaultAnimPosition);
97
- }
98
- }, [visible]);
99
- var close = function (e) {
23
+ var scrollViewRef = useRef(null);
24
+ var _e = __read(useState(0), 2), scrollOffset = _e[0], setScrollOffset = _e[1];
25
+ var _f = __read(useState(active || false), 2), visible = _f[0], setVisible = _f[1];
26
+ var _g = __read(useState(active || false), 2), isFooter = _g[0], setIsFooter = _g[1];
27
+ var handleOnScroll = function (event) {
28
+ setScrollOffset(event.nativeEvent.contentOffset.y);
29
+ };
30
+ var handleScrollTo = function (p) {
31
+ if (scrollViewRef.current)
32
+ scrollViewRef.current.scrollTo(p);
33
+ };
34
+ var handleClose = function (e) {
100
35
  if (onClose)
101
36
  onClose(e);
102
37
  setVisible(false);
103
38
  };
104
- return (React.createElement(React.Fragment, null,
39
+ useEffect(function () {
40
+ setVisible(active);
41
+ }, [active]);
42
+ return (React.createElement(ModalContext.Provider, { value: { scrollViewRef: scrollViewRef, handleOnScroll: handleOnScroll, isFooter: isFooter, setIsFooter: setIsFooter } },
105
43
  trigger,
106
- React.createElement(NativeModal, __assign({ onSwipeComplete: function (e) { return close(e); }, onModalHide: onModalHide, swipeDirection: unClosable ? undefined : 'down', isVisible: visible, statusBarTranslucent: true, style: { width: '100%', padding: 0, margin: 0 }, propagateSwipe: true }, others),
107
- React.createElement(View, { style: [styles.overlay, styles.bottomModal] },
108
- React.createElement(TouchableOpacity, { activeOpacity: 1, style: { width: 0, height: '100%' }, onPress: close }),
109
- React.createElement(View, { style: {
110
- display: 'flex',
111
- flexDirection: 'column',
112
- flex: 1,
113
- } },
114
- React.createElement(TouchableOpacity, { activeOpacity: 1, style: { width: '100%', minHeight: 50, flexGrow: 1 }, onPress: close }),
115
- React.createElement(View, { style: { flexShrink: 1 } },
116
- React.createElement(Animated.View, { style: [styles.childrenContainer, { transform: [{ translateY: translateAnim }], overflow: 'hidden' }] },
117
- !hideCloseButton && (React.createElement(View, { style: { paddingHorizontal: SpacerSize.FOUR, paddingVertical: 16 } },
118
- React.createElement(Columns, { verticalAlign: Alignable.ALIGNED_CENTER },
119
- React.createElement(Column, null,
120
- React.createElement(Title, { level: 4 }, title)),
121
- React.createElement(Column, { narrow: true },
122
- React.createElement(TouchableOpacity, { onPress: close },
123
- React.createElement(Icon, { name: IconName.TIMES, size: IconSize.MEDIUM, color: TrilogyColor.MAIN })))))),
124
- children)),
125
- React.createElement(TouchableOpacity, { activeOpacity: 1, style: {
126
- width: '100%',
127
- minHeight: 0,
128
- flexGrow: 0,
129
- }, onPress: close })),
130
- React.createElement(TouchableOpacity, { onPress: close, activeOpacity: 1, style: { width: 0, height: '100%' } })))));
44
+ React.createElement(ModalRN, __assign({ isVisible: visible, onSwipeComplete: handleClose, swipeDirection: unClosable ? undefined : ['down'], scrollTo: handleScrollTo, scrollOffset: scrollOffset, scrollOffsetMax: 100, propagateSwipe: true, style: [styles.modal], onModalHide: onModalHide }, others),
45
+ React.createElement(View, { style: [styles.body, { backgroundColor: getColorStyle(TrilogyColor.BACKGROUND) }] },
46
+ React.createElement(View, { style: { paddingVertical: !title && hideCloseButton ? 8 : 16 } },
47
+ React.createElement(Columns, { verticalAlign: Alignable.ALIGNED_CENTER },
48
+ React.createElement(Column, null,
49
+ React.createElement(Title, { level: 4 }, title)),
50
+ !hideCloseButton && (React.createElement(Column, { narrow: true },
51
+ React.createElement(TouchableOpacity, { onPress: handleClose },
52
+ React.createElement(Icon, { name: IconName.TIMES, size: IconSize.MEDIUM, color: TrilogyColor.MAIN })))))),
53
+ children))));
131
54
  };
132
55
  Modal.displayName = ComponentName.Modal;
133
56
  export default Modal;
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwubmF0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9Nb2RhbC5uYXRpdmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDaEUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDcEUsT0FBTyxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBeUIsVUFBVSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUM5RyxPQUFPLFdBQXNDLE1BQU0sb0JBQW9CLENBQUE7QUFDdkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBR2hDOzs7Ozs7Ozs7R0FTRztBQUNILElBQU0sS0FBSyxHQUFHLFVBQUMsRUFVRjtJQVRYLElBQUEsUUFBUSxjQUFBLEVBQ1IsY0FBYyxFQUFkLE1BQU0sbUJBQUcsS0FBSyxLQUFBLEVBQ2QsT0FBTyxhQUFBLEVBQ1AsV0FBVyxpQkFBQSxFQUNYLHVCQUF1QixFQUF2QixlQUFlLG1CQUFHLEtBQUssS0FBQSxFQUN2QixrQkFBa0IsRUFBbEIsVUFBVSxtQkFBRyxLQUFLLEtBQUEsRUFDbEIsT0FBTyxhQUFBLEVBQ1AsS0FBSyxX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
57
+ var styles = StyleSheet.create({
58
+ modal: {
59
+ justifyContent: 'flex-end',
60
+ margin: 0,
61
+ },
62
+ body: {
63
+ paddingHorizontal: 16,
64
+ maxHeight: Dimensions.get('screen').height / 1.1,
65
+ shadowColor: '#000',
66
+ shadowOffset: {
67
+ width: 0,
68
+ height: 2,
69
+ },
70
+ shadowOpacity: 0.25,
71
+ shadowRadius: 3.84,
72
+ elevation: 5,
73
+ borderRadius: 6,
74
+ },
75
+ });
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwubmF0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9Nb2RhbC5uYXRpdmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFDMUQsT0FBTyxFQUNMLFVBQVUsRUFLVixVQUFVLEVBQ1YsZ0JBQWdCLEVBQ2hCLElBQUksR0FDTCxNQUFNLGNBQWMsQ0FBQTtBQUNyQixPQUFPLE9BQWtDLE1BQU0sb0JBQW9CLENBQUE7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ2xELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXJEOzs7Ozs7Ozs7R0FTRztBQUNILElBQU0sS0FBSyxHQUFHLFVBQUMsRUFVRjtJQVRYLElBQUEsUUFBUSxjQUFBLEVBQ1IsY0FBYyxFQUFkLE1BQU0sbUJBQUcsS0FBSyxLQUFBLEVBQ2QsT0FBTyxhQUFBLEVBQ1AsV0FBVyxpQkFBQSxFQUNYLHVCQUF1QixFQUF2QixlQUFlLG1CQUFHLEtBQUssS0FBQSxFQUN2QixrQkFBa0IsRUFBbEIsVUFBVSxtQkFBRyxLQUFLLEtBQUEsRUFDbEIsT0FBTyxhQUFBLEVBQ1AsS0FBSyxXQUFBLEVBQ0YsTUFBTSxjQVRJLHFHQVVkLENBRFU7SUFFVCxJQUFNLGFBQWEs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
@@ -1,8 +1,9 @@
1
- import { ReactNode } from 'react';
2
1
  import { ModalSize } from '../../components/modal/ModalEnum';
3
2
  import { ClickEvent } from '../../events/OnClickEvent';
4
- import { Accessibility, Dev } from '../../objects';
3
+ import { Accessibility } from '../../objects/facets/Accessibility';
5
4
  import { CommonProps } from '../../objects/facets/CommonProps';
5
+ import { Dev } from '../../objects/facets/Dev';
6
+ import { ReactNode } from 'react';
6
7
  /**
7
8
  * Modal Interface
8
9
  */
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ModalBodyProps } from './ModalBodyProps';
2
+ import { ModalBodyProps } from '../../../components/modal/body/ModalBodyProps';
3
3
  /**
4
4
  * Modal Footer Component
5
5
  * @param children {React.ReactNode}
@@ -1,7 +1,6 @@
1
- import * as React from 'react';
2
1
  import { hashClass } from '../../../helpers';
3
2
  import clsx from 'clsx';
4
- import { useTrilogyContext } from '../../../context';
3
+ import React from 'react';
5
4
  /**
6
5
  * Modal Footer Component
7
6
  * @param children {React.ReactNode}
@@ -11,8 +10,7 @@ import { useTrilogyContext } from '../../../context';
11
10
  */
12
11
  var ModalBody = function (_a) {
13
12
  var children = _a.children, className = _a.className, id = _a.id;
14
- var styled = useTrilogyContext().styled;
15
- return (React.createElement("div", { id: id, className: hashClass(styled, clsx('modal-body', className)) }, children));
13
+ return (React.createElement("div", { id: id, className: hashClass(clsx('modal-body', className)) }, children));
16
14
  };
17
15
  export default ModalBody;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxCb2R5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9ib2R5L01vZGFsQm9keS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEtBQUssTUFBTSxPQUFPLENBQUE7QUFFOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNyQyxPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRTdDOzs7Ozs7R0FNRztBQUNILElBQU0sU0FBUyxHQUFHLFVBQUMsRUFBMkM7UUFBekMsUUFBUSxjQUFBLEVBQUUsU0FBUyxlQUFBLEVBQUUsRUFBRSxRQUFBO0lBQ2xDLElBQUEsTUFBTSxHQUFLLGlCQUFpQixFQUFFLE9BQXhCLENBQXdCO0lBQ3RDLE9BQU8sQ0FDTCw2QkFBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFDckUsUUFBUSxDQUNMLENBQ1AsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVELGVBQWUsU0FBUyxDQUFBIn0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxCb2R5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9ib2R5L01vZGFsQm9keS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNyQyxPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBRXpCOzs7Ozs7R0FNRztBQUNILElBQU0sU0FBUyxHQUFHLFVBQUMsRUFBMkM7UUFBekMsUUFBUSxjQUFBLEVBQUUsU0FBUyxlQUFBLEVBQUUsRUFBRSxRQUFBO0lBQzFDLE9BQU8sQ0FDTCw2QkFBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUM3RCxRQUFRLENBQ0wsQ0FDUCxDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsZUFBZSxTQUFTLENBQUEifQ==
@@ -1,7 +1,9 @@
1
1
  import { __assign, __rest } from "tslib";
2
2
  import { ComponentName } from '../../../components/enumsComponentsName';
3
+ import { getColorStyle, TrilogyColor } from '../../../objects';
3
4
  import * as React from 'react';
4
- import { Platform, ScrollView, TouchableOpacity } from 'react-native';
5
+ import { Platform, ScrollView, View } from 'react-native';
6
+ import { ModalContext } from '../context/ModalContext';
5
7
  /**
6
8
  * Modal Footer Component
7
9
  * @param children {React.ReactNode}
@@ -9,13 +11,16 @@ import { Platform, ScrollView, TouchableOpacity } from 'react-native';
9
11
  */
10
12
  var ModalBody = function (_a) {
11
13
  var children = _a.children, others = __rest(_a, ["children"]);
12
- return (React.createElement(ScrollView, { contentContainerStyle: { flexGrow: 1, paddingBottom: Platform.OS === 'ios' ? 40 : 10 } },
13
- React.createElement(TouchableOpacity, __assign({ activeOpacity: 1 }, others, { style: {
14
- bottom: 0,
15
- width: '100%',
16
- paddingHorizontal: 16,
17
- } }), children)));
14
+ var _b = React.useContext(ModalContext), handleOnScroll = _b.handleOnScroll, scrollViewRef = _b.scrollViewRef, isFooter = _b.isFooter;
15
+ return (React.createElement(ScrollView, { ref: scrollViewRef, scrollEventThrottle: 16, onScroll: handleOnScroll, showsVerticalScrollIndicator: false },
16
+ React.createElement(View, __assign({ style: [
17
+ {
18
+ backgroundColor: getColorStyle(TrilogyColor.BACKGROUND),
19
+ paddingTop: 8,
20
+ paddingBottom: isFooter ? 8 : Platform.OS === 'ios' ? 40 : 16,
21
+ },
22
+ ] }, others), children)));
18
23
  };
19
24
  ModalBody.displayName = ComponentName.ModalBody;
20
25
  export default ModalBody;
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxCb2R5Lm5hdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbXBvbmVudHMvbW9kYWwvYm9keS9Nb2RhbEJvZHkubmF0aXZlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2hFLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBQzlCLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBR3JFOzs7O0dBSUc7QUFDSCxJQUFNLFNBQVMsR0FBRyxVQUFDLEVBQXVDO0lBQXJDLElBQUEsUUFBUSxjQUFBLEVBQUssTUFBTSxjQUFyQixZQUF1QixDQUFGO0lBQ3RDLE9BQU8sQ0FDTCxvQkFBQyxVQUFVLElBQUMscUJBQXFCLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDaEcsb0JBQUMsZ0JBQWdCLGFBQ2YsYUFBYSxFQUFFLENBQUMsSUFDWixNQUFNLElBQ1YsS0FBSyxFQUFFO2dCQUNMLE1BQU0sRUFBRSxDQUFDO2dCQUNULEtBQUssRUFBRSxNQUFNO2dCQUNiLGlCQUFpQixFQUFFLEVBQUU7YUFDdEIsS0FFQSxRQUFRLENBQ1EsQ0FDUixDQUNkLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxTQUFTLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUE7QUFFL0MsZUFBZSxTQUFTLENBQUEifQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxCb2R5Lm5hdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbXBvbmVudHMvbW9kYWwvYm9keS9Nb2RhbEJvZHkubmF0aXZlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3ZELE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBQzlCLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFHdEQ7Ozs7R0FJRztBQUNILElBQU0sU0FBUyxHQUFHLFVBQUMsRUFBdUM7SUFBckMsSUFBQSxRQUFRLGNBQUEsRUFBSyxNQUFNLGNBQXJCLFlBQXVCLENBQUY7SUFDaEMsSUFBQSxLQUE4QyxLQUFLLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUExRSxjQUFjLG9CQUFBLEVBQUUsYUFBYSxtQkFBQSxFQUFFLFFBQVEsY0FBbUMsQ0FBQTtJQUVsRixPQUFPLENBQ0wsb0JBQUMsVUFBVSxJQUNULEdBQUcsRUFBRSxhQUFhLEVBQ2xCLG1CQUFtQixFQUFFLEVBQUUsRUFDdkIsUUFBUSxFQUFFLGNBQWMsRUFDeEIsNEJBQTRCLEVBQUUsS0FBSztRQUVuQyxvQkFBQyxJQUFJLGFBQ0gsS0FBSyxFQUFFO2dCQUNMO29CQUNFLGVBQWUsRUFBRSxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQztvQkFDdkQsVUFBVSxFQUFFLENBQUM7b0JBQ2IsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFO2lCQUM5RDthQUNGLElBQ0csTUFBTSxHQUVULFFBQVEsQ0FDSixDQUNJLENBQ2QsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVELFNBQVMsQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQTtBQUUvQyxlQUFlLFNBQVMsQ0FBQSJ9
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { ModalContextProps } from './ModalContextProps';
3
+ export declare const ModalContext: React.Context<ModalContextProps>;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export var ModalContext = React.createContext({
3
+ scrollViewRef: null,
4
+ handleOnScroll: function () { return null; },
5
+ isFooter: false,
6
+ setIsFooter: function () { return false; },
7
+ });
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9jb250ZXh0L01vZGFsQ29udGV4dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBR3pCLE1BQU0sQ0FBQyxJQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFvQjtJQUNqRSxhQUFhLEVBQUUsSUFBSTtJQUNuQixjQUFjLEVBQUUsY0FBTSxPQUFBLElBQUksRUFBSixDQUFJO0lBQzFCLFFBQVEsRUFBRSxLQUFLO0lBQ2YsV0FBVyxFQUFFLGNBQU0sT0FBQSxLQUFLLEVBQUwsQ0FBSztDQUN6QixDQUFDLENBQUEifQ==
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { NativeScrollEvent, NativeSyntheticEvent, type ScrollView } from 'react-native';
3
+ export interface ModalContextProps {
4
+ scrollViewRef: React.Ref<ScrollView>;
5
+ handleOnScroll: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
6
+ isFooter: boolean;
7
+ setIsFooter: React.Dispatch<React.SetStateAction<boolean>>;
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxDb250ZXh0UHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL2NvbnRleHQvTW9kYWxDb250ZXh0UHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,25 @@
1
+ export default {
2
+ "scrollViewRef": {
3
+ "type": "function",
4
+ "values": [
5
+ "null",
6
+ "ScrollView | null) => void",
7
+ "ScrollView>"
8
+ ]
9
+ },
10
+ "handleOnScroll": {
11
+ "type": "string",
12
+ "values": []
13
+ },
14
+ "isFooter": {
15
+ "type": "boolean",
16
+ "values": [
17
+ "false",
18
+ "true"
19
+ ]
20
+ },
21
+ "setIsFooter": {
22
+ "type": "string",
23
+ "values": []
24
+ }
25
+ };
@@ -0,0 +1,2 @@
1
+ export * from './ModalContext';
2
+ export * from './ModalContextProps';
@@ -0,0 +1,3 @@
1
+ export * from './ModalContext';
2
+ export * from './ModalContextProps';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL2NvbnRleHQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHFCQUFxQixDQUFBIn0=
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ModalFooterProps } from './ModalFooterProps';
2
+ import { ModalFooterProps } from '../../../components/modal/footer/ModalFooterProps';
3
3
  /**
4
4
  * Modal Footer Component
5
5
  * @param children {React.ReactNode}
@@ -1,7 +1,6 @@
1
- import { useTrilogyContext } from '../../../context';
2
- import { hashClass } from '../../../helpers';
1
+ import { hashClass } from '../../../helpers/hashClassesHelpers';
3
2
  import clsx from 'clsx';
4
- import * as React from 'react';
3
+ import React from 'react';
5
4
  /**
6
5
  * Modal Footer Component
7
6
  * @param children {React.ReactNode}
@@ -11,8 +10,7 @@ import * as React from 'react';
11
10
  */
12
11
  var ModalFooter = function (_a) {
13
12
  var children = _a.children, className = _a.className, id = _a.id;
14
- var styled = useTrilogyContext().styled;
15
- return (React.createElement("div", { "data-modal-footer": '', id: id, className: hashClass(styled, clsx('modal-footer', className)) }, children));
13
+ return (React.createElement("div", { "data-modal-footer": '', id: id, className: hashClass(clsx('modal-footer', className)) }, children));
16
14
  };
17
15
  export default ModalFooter;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxGb290ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL2Zvb3Rlci9Nb2RhbEZvb3Rlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDckMsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQ3ZCLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBRzlCOzs7Ozs7R0FNRztBQUNILElBQU0sV0FBVyxHQUFHLFVBQUMsRUFBNkM7UUFBM0MsUUFBUSxjQUFBLEVBQUUsU0FBUyxlQUFBLEVBQUUsRUFBRSxRQUFBO0lBQ3BDLElBQUEsTUFBTSxHQUFLLGlCQUFpQixFQUFFLE9BQXhCLENBQXdCO0lBQ3RDLE9BQU8sQ0FDTCxrREFBdUIsRUFBRSxFQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUM1RixRQUFRLENBQ0wsQ0FDUCxDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsZUFBZSxXQUFXLENBQUEifQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxGb290ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL2Zvb3Rlci9Nb2RhbEZvb3Rlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ3hELE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQTtBQUN2QixPQUFPLEtBQUssTUFBTSxPQUFPLENBQUE7QUFFekI7Ozs7OztHQU1HO0FBQ0gsSUFBTSxXQUFXLEdBQUcsVUFBQyxFQUE2QztRQUEzQyxRQUFRLGNBQUEsRUFBRSxTQUFTLGVBQUEsRUFBRSxFQUFFLFFBQUE7SUFDNUMsT0FBTyxDQUNMLGtEQUF1QixFQUFFLEVBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFDcEYsUUFBUSxDQUNMLENBQ1AsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVELGVBQWUsV0FBVyxDQUFBIn0=
@@ -1,24 +1,34 @@
1
1
  import { __assign, __rest } from "tslib";
2
2
  import { ComponentName } from '../../../components/enumsComponentsName';
3
3
  import { Title, TitleLevels } from '../../../components/title';
4
- import { getColorStyle, TrilogyColor } from '../../../objects/facets/Color';
4
+ import { getColorStyle, TrilogyColor } from '../../../objects';
5
5
  import * as React from 'react';
6
- import { Platform, View } from 'react-native';
6
+ import { Platform, StyleSheet, View } from 'react-native';
7
+ import { ModalContext } from '../context';
7
8
  /**
8
9
  * Modal Footer Component
9
10
  * @param children {React.ReactNode}
10
11
  */
11
12
  var ModalFooter = function (_a) {
12
13
  var children = _a.children, others = __rest(_a, ["children"]);
13
- return (React.createElement(View, __assign({}, others, { style: {
14
- bottom: 0,
15
- width: '100%',
16
- paddingBottom: Platform.OS === 'ios' ? 40 : 10,
17
- } }),
18
- React.createElement(View, { style: { width: '100%', height: 16, marginTop: -16, backgroundColor: getColorStyle(TrilogyColor.BACKGROUND) } }),
19
- React.createElement(View, { style: { paddingHorizontal: 16 } }, (typeof children === 'string' && (React.createElement(Title, { level: TitleLevels.THREE, style: { width: '100%', textAlign: 'center' } }, children))) ||
14
+ var setIsFooter = React.useContext(ModalContext).setIsFooter;
15
+ React.useEffect(function () {
16
+ setIsFooter(true);
17
+ return function () {
18
+ setIsFooter(false);
19
+ };
20
+ }, []);
21
+ return (React.createElement(View, __assign({ style: [styles.container] }, others),
22
+ React.createElement(View, { style: [{ backgroundColor: getColorStyle(TrilogyColor.BACKGROUND) }] }, (typeof children === 'string' && (React.createElement(Title, { level: TitleLevels.THREE, style: styles.title }, children))) ||
20
23
  children)));
21
24
  };
22
25
  ModalFooter.displayName = ComponentName.ModalFooter;
23
26
  export default ModalFooter;
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxGb290ZXIubmF0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9mb290ZXIvTW9kYWxGb290ZXIubmF0aXZlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNwRSxPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUM5QixPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUc3Qzs7O0dBR0c7QUFDSCxJQUFNLFdBQVcsR0FBRyxVQUFDLEVBQXlDO0lBQXZDLElBQUEsUUFBUSxjQUFBLEVBQUssTUFBTSxjQUFyQixZQUF1QixDQUFGO0lBQ3hDLE9BQU8sQ0FDTCxvQkFBQyxJQUFJLGVBQ0MsTUFBTSxJQUNWLEtBQUssRUFBRTtZQUNMLE1BQU0sRUFBRSxDQUFDO1lBQ1QsS0FBSyxFQUFFLE1BQU07WUFDYixhQUFhLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMvQztRQUVELG9CQUFDLElBQUksSUFDSCxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxFQUFFLGVBQWUsRUFBRSxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEdBQzdHO1FBQ0Ysb0JBQUMsSUFBSSxJQUFDLEtBQUssRUFBRSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxJQUNuQyxDQUFDLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUNoQyxvQkFBQyxLQUFLLElBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQzNFLFFBQVEsQ0FDSCxDQUNULENBQUM7WUFDQSxRQUFRLENBQ0wsQ0FDRixDQUNSLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxXQUFXLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUE7QUFFbkQsZUFBZSxXQUFXLENBQUEifQ==
27
+ var styles = StyleSheet.create({
28
+ container: {
29
+ paddingBottom: Platform.OS === 'ios' ? 40 : 10,
30
+ paddingTop: 16,
31
+ },
32
+ title: { width: '100%', textAlign: 'center' },
33
+ });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWxGb290ZXIubmF0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy9tb2RhbC9mb290ZXIvTW9kYWxGb290ZXIubmF0aXZlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDdkQsT0FBTyxLQUFLLEtBQUssTUFBTSxPQUFPLENBQUE7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFHekM7OztHQUdHO0FBQ0gsSUFBTSxXQUFXLEdBQUcsVUFBQyxFQUF5QztJQUF2QyxJQUFBLFFBQVEsY0FBQSxFQUFLLE1BQU0sY0FBckIsWUFBdUIsQ0FBRjtJQUNoQyxJQUFBLFdBQVcsR0FBSyxLQUFLLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxZQUFuQyxDQUFtQztJQUV0RCxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2QsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRWpCLE9BQU87WUFDTCxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEIsQ0FBQyxDQUFBO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRU4sT0FBTyxDQUNMLG9CQUFDLElBQUksYUFBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQU0sTUFBTTtRQUN6QyxvQkFBQyxJQUFJLElBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLElBQ3ZFLENBQUMsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLENBQ2hDLG9CQUFDLEtBQUssSUFBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssSUFDakQsUUFBUSxDQUNILENBQ1QsQ0FBQztZQUNBLFFBQVEsQ0FDTCxDQUNGLENBQ1IsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVELFdBQVcsQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQTtBQUVuRCxlQUFlLFdBQVcsQ0FBQTtBQUUxQixJQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO0lBQy9CLFNBQVMsRUFBRTtRQUNULGFBQWEsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlDLFVBQVUsRUFBRSxFQUFFO0tBQ2Y7SUFDRCxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUU7Q0FDOUMsQ0FBQyxDQUFBIn0=
@@ -0,0 +1,26 @@
1
+ import { ClickEvent } from '../../../events/OnClickEvent';
2
+ import React from 'react';
3
+ interface IProps {
4
+ active?: boolean;
5
+ onClose?: ClickEvent;
6
+ }
7
+ export declare const useModal: ({ active, onClose }: IProps) => {
8
+ modal: React.RefObject<HTMLDivElement>;
9
+ display: boolean;
10
+ onKeyDown: (event: React.KeyboardEvent<HTMLDivElement>) => void;
11
+ handleClickModal: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
12
+ refModal: React.RefObject<HTMLDivElement>;
13
+ refBtnModal: React.MutableRefObject<any>;
14
+ handleCloseModal: (e: React.MouseEvent) => void;
15
+ buttonRef: (el: HTMLButtonElement | null) => HTMLButtonElement | null;
16
+ } | {
17
+ display: boolean;
18
+ modal?: undefined;
19
+ onKeyDown?: undefined;
20
+ handleClickModal?: undefined;
21
+ refModal?: undefined;
22
+ refBtnModal?: undefined;
23
+ handleCloseModal?: undefined;
24
+ buttonRef?: undefined;
25
+ };
26
+ export {};