@terreno/ui 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/LICENSE +203 -0
  2. package/README.md +160 -0
  3. package/dist/Accordion.d.ts +3 -0
  4. package/dist/Accordion.js +30 -0
  5. package/dist/Accordion.js.map +1 -0
  6. package/dist/ActionSheet.d.ts +169 -0
  7. package/dist/ActionSheet.js +637 -0
  8. package/dist/ActionSheet.js.map +1 -0
  9. package/dist/AddressField.d.ts +3 -0
  10. package/dist/AddressField.js +18 -0
  11. package/dist/AddressField.js.map +1 -0
  12. package/dist/Avatar.d.ts +3 -0
  13. package/dist/Avatar.js +189 -0
  14. package/dist/Avatar.js.map +1 -0
  15. package/dist/Badge.d.ts +3 -0
  16. package/dist/Badge.js +100 -0
  17. package/dist/Badge.js.map +1 -0
  18. package/dist/Banner.d.ts +4 -0
  19. package/dist/Banner.js +103 -0
  20. package/dist/Banner.js.map +1 -0
  21. package/dist/Body.d.ts +3 -0
  22. package/dist/Body.js +17 -0
  23. package/dist/Body.js.map +1 -0
  24. package/dist/BooleanField.d.ts +3 -0
  25. package/dist/BooleanField.js +89 -0
  26. package/dist/BooleanField.js.map +1 -0
  27. package/dist/Box.d.ts +3 -0
  28. package/dist/Box.js +289 -0
  29. package/dist/Box.js.map +1 -0
  30. package/dist/Button.d.ts +3 -0
  31. package/dist/Button.js +105 -0
  32. package/dist/Button.js.map +1 -0
  33. package/dist/Card.d.ts +2 -0
  34. package/dist/Card.js +18 -0
  35. package/dist/Card.js.map +1 -0
  36. package/dist/CheckBox.d.ts +3 -0
  37. package/dist/CheckBox.js +28 -0
  38. package/dist/CheckBox.js.map +1 -0
  39. package/dist/Common.d.ts +2325 -0
  40. package/dist/Common.js +47 -0
  41. package/dist/Common.js.map +1 -0
  42. package/dist/CommonIconTypes.d.ts +3 -0
  43. package/dist/CommonIconTypes.js +2 -0
  44. package/dist/CommonIconTypes.js.map +1 -0
  45. package/dist/Constants.d.ts +12685 -0
  46. package/dist/Constants.js +3310 -0
  47. package/dist/Constants.js.map +1 -0
  48. package/dist/CustomSelectField.d.ts +3 -0
  49. package/dist/CustomSelectField.js +59 -0
  50. package/dist/CustomSelectField.js.map +1 -0
  51. package/dist/DataTable.d.ts +3 -0
  52. package/dist/DataTable.js +190 -0
  53. package/dist/DataTable.js.map +1 -0
  54. package/dist/DateTimeActionSheet.d.ts +2 -0
  55. package/dist/DateTimeActionSheet.js +270 -0
  56. package/dist/DateTimeActionSheet.js.map +1 -0
  57. package/dist/DateTimeField.d.ts +3 -0
  58. package/dist/DateTimeField.js +514 -0
  59. package/dist/DateTimeField.js.map +1 -0
  60. package/dist/DateUtilities.d.ts +57 -0
  61. package/dist/DateUtilities.js +308 -0
  62. package/dist/DateUtilities.js.map +1 -0
  63. package/dist/DecimalRangeActionSheet.d.ts +6 -0
  64. package/dist/DecimalRangeActionSheet.js +45 -0
  65. package/dist/DecimalRangeActionSheet.js.map +1 -0
  66. package/dist/DismissButton.d.ts +3 -0
  67. package/dist/DismissButton.js +12 -0
  68. package/dist/DismissButton.js.map +1 -0
  69. package/dist/EmailField.d.ts +3 -0
  70. package/dist/EmailField.js +48 -0
  71. package/dist/EmailField.js.map +1 -0
  72. package/dist/EmojiSelector.d.ts +113 -0
  73. package/dist/EmojiSelector.js +322 -0
  74. package/dist/EmojiSelector.js.map +1 -0
  75. package/dist/ErrorBoundary.d.ts +19 -0
  76. package/dist/ErrorBoundary.js +30 -0
  77. package/dist/ErrorBoundary.js.map +1 -0
  78. package/dist/ErrorPage.d.ts +6 -0
  79. package/dist/ErrorPage.js +15 -0
  80. package/dist/ErrorPage.js.map +1 -0
  81. package/dist/Field.d.ts +3 -0
  82. package/dist/Field.js +80 -0
  83. package/dist/Field.js.map +1 -0
  84. package/dist/FlatList.d.ts +2 -0
  85. package/dist/FlatList.js +3 -0
  86. package/dist/FlatList.js.map +1 -0
  87. package/dist/Heading.d.ts +3 -0
  88. package/dist/Heading.js +43 -0
  89. package/dist/Heading.js.map +1 -0
  90. package/dist/HeightActionSheet.d.ts +11 -0
  91. package/dist/HeightActionSheet.js +46 -0
  92. package/dist/HeightActionSheet.js.map +1 -0
  93. package/dist/Hyperlink.d.ts +30 -0
  94. package/dist/Hyperlink.js +144 -0
  95. package/dist/Hyperlink.js.map +1 -0
  96. package/dist/Icon.d.ts +3 -0
  97. package/dist/Icon.js +15 -0
  98. package/dist/Icon.js.map +1 -0
  99. package/dist/IconButton.d.ts +3 -0
  100. package/dist/IconButton.js +111 -0
  101. package/dist/IconButton.js.map +1 -0
  102. package/dist/Image.d.ts +8 -0
  103. package/dist/Image.js +37 -0
  104. package/dist/Image.js.map +1 -0
  105. package/dist/ImageBackground.d.ts +10 -0
  106. package/dist/ImageBackground.js +9 -0
  107. package/dist/ImageBackground.js.map +1 -0
  108. package/dist/InfoModalIcon.d.ts +3 -0
  109. package/dist/InfoModalIcon.js +10 -0
  110. package/dist/InfoModalIcon.js.map +1 -0
  111. package/dist/InfoTooltipButton.d.ts +3 -0
  112. package/dist/InfoTooltipButton.js +6 -0
  113. package/dist/InfoTooltipButton.js.map +1 -0
  114. package/dist/Link.d.ts +3 -0
  115. package/dist/Link.js +10 -0
  116. package/dist/Link.js.map +1 -0
  117. package/dist/MarkdownView.d.ts +5 -0
  118. package/dist/MarkdownView.js +44 -0
  119. package/dist/MarkdownView.js.map +1 -0
  120. package/dist/MediaQuery.d.ts +4 -0
  121. package/dist/MediaQuery.js +52 -0
  122. package/dist/MediaQuery.js.map +1 -0
  123. package/dist/MobileAddressAutoComplete.d.ts +2 -0
  124. package/dist/MobileAddressAutoComplete.js +54 -0
  125. package/dist/MobileAddressAutoComplete.js.map +1 -0
  126. package/dist/Modal.d.ts +3 -0
  127. package/dist/Modal.js +127 -0
  128. package/dist/Modal.js.map +1 -0
  129. package/dist/ModalSheet.d.ts +6 -0
  130. package/dist/ModalSheet.js +42 -0
  131. package/dist/ModalSheet.js.map +1 -0
  132. package/dist/MultiselectField.d.ts +3 -0
  133. package/dist/MultiselectField.js +45 -0
  134. package/dist/MultiselectField.js.map +1 -0
  135. package/dist/NumberField.d.ts +3 -0
  136. package/dist/NumberField.js +60 -0
  137. package/dist/NumberField.js.map +1 -0
  138. package/dist/NumberPickerActionSheet.d.ts +7 -0
  139. package/dist/NumberPickerActionSheet.js +22 -0
  140. package/dist/NumberPickerActionSheet.js.map +1 -0
  141. package/dist/OpenAPIContext.d.ts +4 -0
  142. package/dist/OpenAPIContext.js +53 -0
  143. package/dist/OpenAPIContext.js.map +1 -0
  144. package/dist/Page.d.ts +7 -0
  145. package/dist/Page.js +24 -0
  146. package/dist/Page.js.map +1 -0
  147. package/dist/Pagination.d.ts +3 -0
  148. package/dist/Pagination.js +106 -0
  149. package/dist/Pagination.js.map +1 -0
  150. package/dist/PasswordField.d.ts +2 -0
  151. package/dist/PasswordField.js +6 -0
  152. package/dist/PasswordField.js.map +1 -0
  153. package/dist/Permissions.d.ts +2 -0
  154. package/dist/Permissions.js +35 -0
  155. package/dist/Permissions.js.map +1 -0
  156. package/dist/PhoneNumberField.d.ts +3 -0
  157. package/dist/PhoneNumberField.js +83 -0
  158. package/dist/PhoneNumberField.js.map +1 -0
  159. package/dist/PickerSelect.d.ts +46 -0
  160. package/dist/PickerSelect.js +306 -0
  161. package/dist/PickerSelect.js.map +1 -0
  162. package/dist/Radio.d.ts +3 -0
  163. package/dist/Radio.js +21 -0
  164. package/dist/Radio.js.map +1 -0
  165. package/dist/RadioField.d.ts +3 -0
  166. package/dist/RadioField.js +16 -0
  167. package/dist/RadioField.js.map +1 -0
  168. package/dist/ScrollView.d.ts +2 -0
  169. package/dist/ScrollView.js +3 -0
  170. package/dist/ScrollView.js.map +1 -0
  171. package/dist/SectionDivider.d.ts +2 -0
  172. package/dist/SectionDivider.js +12 -0
  173. package/dist/SectionDivider.js.map +1 -0
  174. package/dist/SegmentedControl.d.ts +3 -0
  175. package/dist/SegmentedControl.js +65 -0
  176. package/dist/SegmentedControl.js.map +1 -0
  177. package/dist/SelectBadge.d.ts +3 -0
  178. package/dist/SelectBadge.js +166 -0
  179. package/dist/SelectBadge.js.map +1 -0
  180. package/dist/SelectField.d.ts +3 -0
  181. package/dist/SelectField.js +16 -0
  182. package/dist/SelectField.js.map +1 -0
  183. package/dist/SideDrawer.d.ts +3 -0
  184. package/dist/SideDrawer.js +32 -0
  185. package/dist/SideDrawer.js.map +1 -0
  186. package/dist/Signature.d.ts +8 -0
  187. package/dist/Signature.js +21 -0
  188. package/dist/Signature.js.map +1 -0
  189. package/dist/Signature.native.d.ts +8 -0
  190. package/dist/Signature.native.js +26 -0
  191. package/dist/Signature.native.js.map +1 -0
  192. package/dist/SignatureField.d.ts +3 -0
  193. package/dist/SignatureField.js +42 -0
  194. package/dist/SignatureField.js.map +1 -0
  195. package/dist/Slider.d.ts +3 -0
  196. package/dist/Slider.js +78 -0
  197. package/dist/Slider.js.map +1 -0
  198. package/dist/Spinner.d.ts +3 -0
  199. package/dist/Spinner.js +33 -0
  200. package/dist/Spinner.js.map +1 -0
  201. package/dist/SplitPage.d.ts +2 -0
  202. package/dist/SplitPage.js +139 -0
  203. package/dist/SplitPage.js.map +1 -0
  204. package/dist/SplitPage.native.d.ts +2 -0
  205. package/dist/SplitPage.native.js +75 -0
  206. package/dist/SplitPage.native.js.map +1 -0
  207. package/dist/TapToEdit.d.ts +4 -0
  208. package/dist/TapToEdit.js +170 -0
  209. package/dist/TapToEdit.js.map +1 -0
  210. package/dist/TerrenoProvider.d.ts +6 -0
  211. package/dist/TerrenoProvider.js +10 -0
  212. package/dist/TerrenoProvider.js.map +1 -0
  213. package/dist/Text.d.ts +3 -0
  214. package/dist/Text.js +95 -0
  215. package/dist/Text.js.map +1 -0
  216. package/dist/TextArea.d.ts +3 -0
  217. package/dist/TextArea.js +6 -0
  218. package/dist/TextArea.js.map +1 -0
  219. package/dist/TextField.d.ts +3 -0
  220. package/dist/TextField.js +144 -0
  221. package/dist/TextField.js.map +1 -0
  222. package/dist/TextFieldNumberActionSheet.d.ts +7 -0
  223. package/dist/TextFieldNumberActionSheet.js +20 -0
  224. package/dist/TextFieldNumberActionSheet.js.map +1 -0
  225. package/dist/Theme.d.ts +96 -0
  226. package/dist/Theme.js +213 -0
  227. package/dist/Theme.js.map +1 -0
  228. package/dist/TimezonePicker.d.ts +11 -0
  229. package/dist/TimezonePicker.js +27 -0
  230. package/dist/TimezonePicker.js.map +1 -0
  231. package/dist/Toast.d.ts +23 -0
  232. package/dist/Toast.js +157 -0
  233. package/dist/Toast.js.map +1 -0
  234. package/dist/Tooltip.d.ts +3 -0
  235. package/dist/Tooltip.js +289 -0
  236. package/dist/Tooltip.js.map +1 -0
  237. package/dist/UnifiedAddressAutoComplete.d.ts +2 -0
  238. package/dist/UnifiedAddressAutoComplete.js +23 -0
  239. package/dist/UnifiedAddressAutoComplete.js.map +1 -0
  240. package/dist/Unifier.d.ts +43 -0
  241. package/dist/Unifier.js +154 -0
  242. package/dist/Unifier.js.map +1 -0
  243. package/dist/Utilities.d.ts +56 -0
  244. package/dist/Utilities.js +193 -0
  245. package/dist/Utilities.js.map +1 -0
  246. package/dist/WebAddressAutocomplete.d.ts +3 -0
  247. package/dist/WebAddressAutocomplete.js +61 -0
  248. package/dist/WebAddressAutocomplete.js.map +1 -0
  249. package/dist/fieldElements/FieldError.d.ts +6 -0
  250. package/dist/fieldElements/FieldError.js +9 -0
  251. package/dist/fieldElements/FieldError.js.map +1 -0
  252. package/dist/fieldElements/FieldHelperText.d.ts +6 -0
  253. package/dist/fieldElements/FieldHelperText.js +8 -0
  254. package/dist/fieldElements/FieldHelperText.js.map +1 -0
  255. package/dist/fieldElements/FieldTitle.d.ts +6 -0
  256. package/dist/fieldElements/FieldTitle.js +16 -0
  257. package/dist/fieldElements/FieldTitle.js.map +1 -0
  258. package/dist/fieldElements/index.d.ts +3 -0
  259. package/dist/fieldElements/index.js +4 -0
  260. package/dist/fieldElements/index.js.map +1 -0
  261. package/dist/icons/MobileIcon.d.ts +2 -0
  262. package/dist/icons/MobileIcon.js +18 -0
  263. package/dist/icons/MobileIcon.js.map +1 -0
  264. package/dist/icons/OfflineIcon.d.ts +2 -0
  265. package/dist/icons/OfflineIcon.js +18 -0
  266. package/dist/icons/OfflineIcon.js.map +1 -0
  267. package/dist/icons/OnlineIcon.d.ts +2 -0
  268. package/dist/icons/OnlineIcon.js +19 -0
  269. package/dist/icons/OnlineIcon.js.map +1 -0
  270. package/dist/icons/OutOfficeIcon.d.ts +2 -0
  271. package/dist/icons/OutOfficeIcon.js +18 -0
  272. package/dist/icons/OutOfficeIcon.js.map +1 -0
  273. package/dist/icons/index.d.ts +4 -0
  274. package/dist/icons/index.js +5 -0
  275. package/dist/icons/index.js.map +1 -0
  276. package/dist/index.d.ts +1328 -0
  277. package/dist/index.js +89 -0
  278. package/dist/index.js.map +1 -0
  279. package/dist/table/Table.d.ts +3 -0
  280. package/dist/table/Table.js +53 -0
  281. package/dist/table/Table.js.map +1 -0
  282. package/dist/table/TableBadge.d.ts +6 -0
  283. package/dist/table/TableBadge.js +23 -0
  284. package/dist/table/TableBadge.js.map +1 -0
  285. package/dist/table/TableBoolean.d.ts +6 -0
  286. package/dist/table/TableBoolean.js +37 -0
  287. package/dist/table/TableBoolean.js.map +1 -0
  288. package/dist/table/TableDate.d.ts +3 -0
  289. package/dist/table/TableDate.js +27 -0
  290. package/dist/table/TableDate.js.map +1 -0
  291. package/dist/table/TableHeader.d.ts +6 -0
  292. package/dist/table/TableHeader.js +10 -0
  293. package/dist/table/TableHeader.js.map +1 -0
  294. package/dist/table/TableHeaderCell.d.ts +6 -0
  295. package/dist/table/TableHeaderCell.js +54 -0
  296. package/dist/table/TableHeaderCell.js.map +1 -0
  297. package/dist/table/TableIconButton.d.ts +3 -0
  298. package/dist/table/TableIconButton.js +39 -0
  299. package/dist/table/TableIconButton.js.map +1 -0
  300. package/dist/table/TableNumber.d.ts +3 -0
  301. package/dist/table/TableNumber.js +18 -0
  302. package/dist/table/TableNumber.js.map +1 -0
  303. package/dist/table/TableRow.d.ts +6 -0
  304. package/dist/table/TableRow.js +22 -0
  305. package/dist/table/TableRow.js.map +1 -0
  306. package/dist/table/TableText.d.ts +3 -0
  307. package/dist/table/TableText.js +18 -0
  308. package/dist/table/TableText.js.map +1 -0
  309. package/dist/table/TableTitle.d.ts +3 -0
  310. package/dist/table/TableTitle.js +21 -0
  311. package/dist/table/TableTitle.js.map +1 -0
  312. package/dist/table/tableContext.d.ts +5 -0
  313. package/dist/table/tableContext.js +38 -0
  314. package/dist/table/tableContext.js.map +1 -0
  315. package/dist/useStoredState.d.ts +1 -0
  316. package/dist/useStoredState.js +49 -0
  317. package/dist/useStoredState.js.map +1 -0
  318. package/package.json +123 -0
  319. package/src/Accordion.test.tsx +104 -0
  320. package/src/Accordion.tsx +81 -0
  321. package/src/ActionSheet.tsx +881 -0
  322. package/src/AddressField.test.tsx +120 -0
  323. package/src/AddressField.tsx +122 -0
  324. package/src/Avatar.test.tsx +163 -0
  325. package/src/Avatar.tsx +298 -0
  326. package/src/Badge.test.tsx +116 -0
  327. package/src/Badge.tsx +136 -0
  328. package/src/Banner.tsx +200 -0
  329. package/src/Body.tsx +34 -0
  330. package/src/BooleanField.tsx +141 -0
  331. package/src/Box.test.tsx +662 -0
  332. package/src/Box.tsx +368 -0
  333. package/src/Button.tsx +196 -0
  334. package/src/Card.tsx +19 -0
  335. package/src/CheckBox.tsx +45 -0
  336. package/src/Common.ts +2787 -0
  337. package/src/CommonIconTypes.ts +2030 -0
  338. package/src/Constants.ts +3311 -0
  339. package/src/CustomSelectField.tsx +115 -0
  340. package/src/DataTable.tsx +674 -0
  341. package/src/DateTimeActionSheet.tsx +559 -0
  342. package/src/DateTimeField.test.tsx +393 -0
  343. package/src/DateTimeField.tsx +777 -0
  344. package/src/DateUtilities.test.ts +440 -0
  345. package/src/DateUtilities.tsx +370 -0
  346. package/src/DecimalRangeActionSheet.tsx +85 -0
  347. package/src/DismissButton.tsx +31 -0
  348. package/src/EmailField.tsx +66 -0
  349. package/src/EmojiSelector.test.tsx +61 -0
  350. package/src/EmojiSelector.tsx +510 -0
  351. package/src/ErrorBoundary.tsx +37 -0
  352. package/src/ErrorPage.tsx +41 -0
  353. package/src/Field.tsx +101 -0
  354. package/src/FlatList.tsx +2 -0
  355. package/src/Heading.tsx +66 -0
  356. package/src/HeightActionSheet.tsx +91 -0
  357. package/src/Hyperlink.tsx +179 -0
  358. package/src/Icon.tsx +36 -0
  359. package/src/IconButton.tsx +217 -0
  360. package/src/Image.tsx +51 -0
  361. package/src/ImageBackground.tsx +14 -0
  362. package/src/InfoModalIcon.tsx +42 -0
  363. package/src/InfoTooltipButton.tsx +16 -0
  364. package/src/Link.tsx +22 -0
  365. package/src/MarkdownView.tsx +67 -0
  366. package/src/MediaQuery.ts +46 -0
  367. package/src/MobileAddressAutoComplete.tsx +126 -0
  368. package/src/Modal.tsx +300 -0
  369. package/src/ModalSheet.tsx +58 -0
  370. package/src/MultiselectField.tsx +112 -0
  371. package/src/NumberField.tsx +67 -0
  372. package/src/NumberPickerActionSheet.tsx +51 -0
  373. package/src/OpenAPIContext.tsx +74 -0
  374. package/src/Page.tsx +105 -0
  375. package/src/Pagination.tsx +169 -0
  376. package/src/PasswordField.tsx +7 -0
  377. package/src/Permissions.ts +43 -0
  378. package/src/PhoneNumberField.tsx +109 -0
  379. package/src/PickerSelect.tsx +571 -0
  380. package/src/Radio.tsx +33 -0
  381. package/src/RadioField.tsx +43 -0
  382. package/src/ScrollView.tsx +2 -0
  383. package/src/SectionDivider.tsx +18 -0
  384. package/src/SegmentedControl.tsx +126 -0
  385. package/src/SelectBadge.tsx +280 -0
  386. package/src/SelectField.tsx +41 -0
  387. package/src/SideDrawer.tsx +56 -0
  388. package/src/Signature.native.tsx +57 -0
  389. package/src/Signature.tsx +44 -0
  390. package/src/SignatureField.tsx +92 -0
  391. package/src/Slider.tsx +199 -0
  392. package/src/Spinner.tsx +35 -0
  393. package/src/SplitPage.native.tsx +163 -0
  394. package/src/SplitPage.tsx +304 -0
  395. package/src/TapToEdit.tsx +292 -0
  396. package/src/TerrenoProvider.tsx +31 -0
  397. package/src/Text.tsx +123 -0
  398. package/src/TextArea.test.tsx +255 -0
  399. package/src/TextArea.tsx +8 -0
  400. package/src/TextField.test.tsx +487 -0
  401. package/src/TextField.tsx +260 -0
  402. package/src/TextFieldNumberActionSheet.tsx +46 -0
  403. package/src/Theme.tsx +248 -0
  404. package/src/TimezonePicker.tsx +45 -0
  405. package/src/Toast.tsx +234 -0
  406. package/src/Tooltip.tsx +407 -0
  407. package/src/UnifiedAddressAutoComplete.tsx +66 -0
  408. package/src/Unifier.ts +172 -0
  409. package/src/Utilities.tsx +329 -0
  410. package/src/WebAddressAutocomplete.tsx +84 -0
  411. package/src/__snapshots__/Accordion.test.tsx.snap +126 -0
  412. package/src/__snapshots__/AddressField.test.tsx.snap +1197 -0
  413. package/src/__snapshots__/Avatar.test.tsx.snap +57 -0
  414. package/src/__snapshots__/Badge.test.tsx.snap +55 -0
  415. package/src/__snapshots__/Box.test.tsx.snap +162 -0
  416. package/src/__snapshots__/EmojiSelector.test.tsx.snap +422 -0
  417. package/src/__snapshots__/TextArea.test.tsx.snap +521 -0
  418. package/src/__snapshots__/TextField.test.tsx.snap +569 -0
  419. package/src/bunSetup.ts +1235 -0
  420. package/src/fieldElements/FieldError.tsx +24 -0
  421. package/src/fieldElements/FieldHelperText.tsx +20 -0
  422. package/src/fieldElements/FieldTitle.tsx +31 -0
  423. package/src/fieldElements/index.tsx +3 -0
  424. package/src/icons/MobileIcon.tsx +40 -0
  425. package/src/icons/OfflineIcon.tsx +37 -0
  426. package/src/icons/OnlineIcon.tsx +39 -0
  427. package/src/icons/OutOfficeIcon.tsx +36 -0
  428. package/src/icons/index.ts +4 -0
  429. package/src/index.tsx +1375 -0
  430. package/src/polyfill.d.ts +11 -0
  431. package/src/table/Table.tsx +109 -0
  432. package/src/table/TableBadge.tsx +46 -0
  433. package/src/table/TableBoolean.tsx +70 -0
  434. package/src/table/TableDate.tsx +38 -0
  435. package/src/table/TableHeader.tsx +20 -0
  436. package/src/table/TableHeaderCell.tsx +94 -0
  437. package/src/table/TableIconButton.tsx +61 -0
  438. package/src/table/TableNumber.tsx +29 -0
  439. package/src/table/TableRow.tsx +67 -0
  440. package/src/table/TableText.tsx +29 -0
  441. package/src/table/TableTitle.tsx +31 -0
  442. package/src/table/tableContext.tsx +67 -0
  443. package/src/test-utils.tsx +27 -0
  444. package/src/types/react-native-swiper-flatlist.d.ts +56 -0
  445. package/src/useStoredState.test.tsx +143 -0
  446. package/src/useStoredState.ts +56 -0
@@ -0,0 +1,1328 @@
1
+ export * from "./Accordion";
2
+ export * from "./ActionSheet";
3
+ export * from "./AddressField";
4
+ export * from "./Avatar";
5
+ export * from "./Badge";
6
+ export * from "./Banner";
7
+ export * from "./Body";
8
+ export * from "./BooleanField";
9
+ export * from "./Box";
10
+ export * from "./Button";
11
+ export * from "./Card";
12
+ export * from "./CheckBox";
13
+ export * from "./Common";
14
+ export * from "./Constants";
15
+ export * from "./CustomSelectField";
16
+ export * from "./DataTable";
17
+ export * from "./DateTimeActionSheet";
18
+ export * from "./DateTimeField";
19
+ export * from "./DateUtilities";
20
+ export * from "./DecimalRangeActionSheet";
21
+ export * from "./DismissButton";
22
+ export * from "./EmailField";
23
+ export { default as EmojiSelector } from "./EmojiSelector";
24
+ export * from "./ErrorBoundary";
25
+ export * from "./ErrorPage";
26
+ export * from "./Field";
27
+ export * from "./FlatList";
28
+ export * from "./Heading";
29
+ export * from "./HeightActionSheet";
30
+ export * from "./Icon";
31
+ export * from "./IconButton";
32
+ export * from "./Image";
33
+ export * from "./ImageBackground";
34
+ export * from "./InfoModalIcon";
35
+ export * from "./InfoTooltipButton";
36
+ export * from "./Link";
37
+ export * from "./MarkdownView";
38
+ export * from "./MediaQuery";
39
+ export * from "./MobileAddressAutoComplete";
40
+ export * from "./Modal";
41
+ export * from "./ModalSheet";
42
+ export * from "./MultiselectField";
43
+ export * from "./NumberField";
44
+ export * from "./NumberPickerActionSheet";
45
+ export * from "./OpenAPIContext";
46
+ export * from "./Page";
47
+ export * from "./Pagination";
48
+ export * from "./PasswordField";
49
+ export * from "./PhoneNumberField";
50
+ export * from "./Radio";
51
+ export * from "./RadioField";
52
+ export * from "./ScrollView";
53
+ export * from "./SectionDivider";
54
+ export * from "./SegmentedControl";
55
+ export * from "./SelectBadge";
56
+ export * from "./SelectField";
57
+ export * from "./SideDrawer";
58
+ export * from "./Signature";
59
+ export * from "./SignatureField";
60
+ export * from "./Slider";
61
+ export * from "./Spinner";
62
+ export * from "./SplitPage";
63
+ export * from "./TapToEdit";
64
+ export * from "./TerrenoProvider";
65
+ export * from "./Text";
66
+ export * from "./TextArea";
67
+ export * from "./TextField";
68
+ export * from "./Theme";
69
+ export * from "./Toast";
70
+ export * from "./Tooltip";
71
+ export * from "./table/Table";
72
+ export * from "./table/Table";
73
+ export * from "./table/TableBadge";
74
+ export * from "./table/TableBoolean";
75
+ export * from "./table/TableDate";
76
+ export * from "./table/TableHeader";
77
+ export * from "./table/TableHeaderCell";
78
+ export * from "./table/TableIconButton";
79
+ export * from "./table/TableNumber";
80
+ export * from "./table/TableRow";
81
+ export * from "./table/TableText";
82
+ export * from "./table/TableTitle";
83
+ export * from "./table/tableContext";
84
+ export * from "./UnifiedAddressAutoComplete";
85
+ export * from "./Unifier";
86
+ export * from "./Utilities";
87
+ export * from "./useStoredState";
88
+ export * from "./WebAddressAutocomplete";
89
+ type ImageRequireSource = number;
90
+ interface Insets {
91
+ top?: number;
92
+ left?: number;
93
+ bottom?: number;
94
+ right?: number;
95
+ }
96
+ export interface LayoutComponent<P = {}> {
97
+ /**
98
+ * Component reference id, Auto generated if empty
99
+ */
100
+ id?: string;
101
+ /**
102
+ * Name of your component
103
+ */
104
+ name: string | number;
105
+ /**
106
+ * Styling options
107
+ */
108
+ options?: Options;
109
+ /**
110
+ * Properties to pass down to the component
111
+ */
112
+ passProps?: P;
113
+ }
114
+ export interface LayoutStackChildren {
115
+ /**
116
+ * Set component
117
+ */
118
+ component?: LayoutComponent;
119
+ /**
120
+ * Set the external component
121
+ */
122
+ externalComponent?: ExternalComponent;
123
+ }
124
+ export interface LayoutStack {
125
+ /**
126
+ * Set ID of the stack so you can use Navigation.mergeOptions to
127
+ * update options
128
+ */
129
+ id?: string;
130
+ /**
131
+ * Set children screens
132
+ */
133
+ children?: LayoutStackChildren[];
134
+ /**
135
+ * Set options
136
+ */
137
+ options?: Options;
138
+ }
139
+ export interface LayoutTabsChildren {
140
+ /**
141
+ * Set stack
142
+ */
143
+ stack?: LayoutStack;
144
+ /**
145
+ * Set component
146
+ */
147
+ component?: LayoutComponent;
148
+ /**
149
+ * Set the external component
150
+ */
151
+ externalComponent?: ExternalComponent;
152
+ }
153
+ export interface LayoutBottomTabs {
154
+ /**
155
+ * Set ID of the stack so you can use Navigation.mergeOptions to
156
+ * update options
157
+ */
158
+ id?: string;
159
+ /**
160
+ * Set the children screens
161
+ */
162
+ children?: LayoutTabsChildren[];
163
+ /**
164
+ * Set the bottom tabs options
165
+ */
166
+ options?: Options;
167
+ }
168
+ export interface LayoutSideMenu {
169
+ /**
170
+ * Set ID of the stack so you can use Navigation.mergeOptions to
171
+ * update options
172
+ */
173
+ id?: string;
174
+ /**
175
+ * Set the left side bar
176
+ */
177
+ left?: LayoutStackChildren;
178
+ /**
179
+ * Set the center view
180
+ */
181
+ center: Layout;
182
+ /**
183
+ * Set the right side bar
184
+ */
185
+ right?: LayoutStackChildren;
186
+ /**
187
+ * Set the bottom tabs options
188
+ */
189
+ options?: Options;
190
+ }
191
+ export interface LayoutSplitView {
192
+ /**
193
+ * Set ID of the stack so you can use Navigation.mergeOptions to
194
+ * update options
195
+ */
196
+ id?: string;
197
+ /**
198
+ * Set master layout (the smaller screen, sidebar)
199
+ */
200
+ master?: Layout;
201
+ /**
202
+ * Set detail layout (the larger screen, flexes)
203
+ */
204
+ detail?: Layout;
205
+ /**
206
+ * Configure split view
207
+ */
208
+ options?: Options;
209
+ }
210
+ export interface LayoutTopTabs {
211
+ /**
212
+ * Set the layout's id so Navigation.mergeOptions can be used to update options
213
+ */
214
+ id?: string;
215
+ /**
216
+ * Set the children screens
217
+ */
218
+ children?: LayoutTabsChildren[];
219
+ /**
220
+ * Configure top tabs
221
+ */
222
+ options?: Options;
223
+ }
224
+ export interface LayoutRoot {
225
+ /**
226
+ * Set the root
227
+ */
228
+ root: Layout;
229
+ modals?: any;
230
+ overlays?: any;
231
+ }
232
+ export interface ExternalComponent {
233
+ /**
234
+ * Set the screen's id so Navigation.mergeOptions can be used to update options
235
+ */
236
+ id?: string;
237
+ /**
238
+ * Name of your component
239
+ */
240
+ name: string | number;
241
+ /**
242
+ * Configure component options
243
+ */
244
+ options?: Options;
245
+ /**
246
+ * Properties to pass down to the component
247
+ */
248
+ passProps?: object;
249
+ }
250
+ export interface Layout<P = {}> {
251
+ /**
252
+ * Set the component
253
+ */
254
+ component?: LayoutComponent<P>;
255
+ /**
256
+ * Set the stack
257
+ */
258
+ stack?: LayoutStack;
259
+ /**
260
+ * Set the bottom tabs
261
+ */
262
+ bottomTabs?: LayoutBottomTabs;
263
+ /**
264
+ * Set the side menu
265
+ */
266
+ sideMenu?: LayoutSideMenu;
267
+ /**
268
+ * Set the split view
269
+ */
270
+ splitView?: LayoutSplitView;
271
+ /**
272
+ * Set the top tabs
273
+ */
274
+ topTabs?: LayoutTopTabs;
275
+ /**
276
+ * Set the external component
277
+ */
278
+ externalComponent?: ExternalComponent;
279
+ }
280
+ declare type Color = string;
281
+ declare type FontFamily = string;
282
+ declare type FontWeight = "regular" | "bold" | "thin" | "ultraLight" | "light" | "medium" | "semibold" | "heavy" | "black";
283
+ declare type LayoutOrientation = "portrait" | "landscape";
284
+ declare type AndroidDensityNumber = number;
285
+ declare type SystemItemIcon = "done" | "cancel" | "edit" | "save" | "add" | "flexibleSpace" | "fixedSpace" | "compose" | "reply" | "action" | "organize" | "bookmarks" | "search" | "refresh" | "stop" | "camera" | "trash" | "play" | "pause" | "rewind" | "fastForward" | "undo" | "redo";
286
+ declare type Interpolation = "linear" | "accelerateDecelerate" | "decelerate" | "accelerate" | "decelerateAccelerate";
287
+ export interface OptionsSplitView {
288
+ /**
289
+ * Master view display mode
290
+ * @default 'auto'
291
+ */
292
+ displayMode?: "auto" | "visible" | "hidden" | "overlay";
293
+ /**
294
+ * Master view side. Leading is left. Trailing is right.
295
+ * @default 'leading'
296
+ */
297
+ primaryEdge?: "leading" | "trailing";
298
+ /**
299
+ * Set the minimum width of master view
300
+ */
301
+ minWidth?: number;
302
+ /**
303
+ * Set the maximum width of master view
304
+ */
305
+ maxWidth?: number;
306
+ }
307
+ export interface OptionsStatusBar {
308
+ /**
309
+ * Set the status bar visibility
310
+ * @default true
311
+ */
312
+ visible?: boolean;
313
+ /**
314
+ * Set the text color of the status bar
315
+ * @default 'light'
316
+ */
317
+ style?: "light" | "dark";
318
+ /**
319
+ * Set the background color of the status bar
320
+ * #### (Android specific)
321
+ */
322
+ backgroundColor?: Color;
323
+ /**
324
+ * Draw screen behind the status bar
325
+ * #### (Android specific)
326
+ */
327
+ drawBehind?: boolean;
328
+ }
329
+ export interface OptionsLayout {
330
+ fitSystemWindows?: boolean;
331
+ /**
332
+ * Set the screen background color
333
+ */
334
+ backgroundColor?: Color;
335
+ /**
336
+ * Set background color only for components, helps reduce overdraw if background color is set in
337
+ * default options. #### (Android specific)
338
+ */
339
+ componentBackgroundColor?: Color;
340
+ /**
341
+ * Set the allowed orientations
342
+ */
343
+ orientation?: LayoutOrientation[];
344
+ /**
345
+ * Layout top margin
346
+ * #### (Android specific)
347
+ */
348
+ topMargin?: number;
349
+ /**
350
+ * Set language direction.
351
+ * only works with DefaultOptions
352
+ */
353
+ direction?: "rtl" | "ltr";
354
+ }
355
+ export declare enum OptionsModalPresentationStyle {
356
+ formSheet = "formSheet",
357
+ pageSheet = "pageSheet",
358
+ overFullScreen = "overFullScreen",
359
+ overCurrentContext = "overCurrentContext",
360
+ currentContext = "currentContext",
361
+ popover = "popover",
362
+ fullScreen = "fullScreen",
363
+ none = "none"
364
+ }
365
+ export declare enum OptionsModalTransitionStyle {
366
+ coverVertical = "coverVertical",
367
+ crossDissolve = "crossDissolve",
368
+ flipHorizontal = "flipHorizontal",
369
+ partialCurl = "partialCurl"
370
+ }
371
+ export interface OptionsTopBarLargeTitle {
372
+ /**
373
+ * Enable large titles
374
+ */
375
+ visible?: boolean;
376
+ /**
377
+ * Set the font size of large title's text
378
+ */
379
+ fontSize?: number;
380
+ /**
381
+ * Set the color of large title's text
382
+ */
383
+ color?: Color;
384
+ /**
385
+ * Set the font family of large title's text
386
+ */
387
+ fontFamily?: FontFamily;
388
+ /**
389
+ * Set the font weight, ignore fontFamily and use the iOS system fonts instead
390
+ * #### (iOS specific)
391
+ */
392
+ fontWeight?: FontWeight;
393
+ }
394
+ export interface OptionsTopBarTitle {
395
+ /**
396
+ * Text to display in the title area
397
+ */
398
+ text?: string;
399
+ /**
400
+ * Font size
401
+ */
402
+ fontSize?: number;
403
+ /**
404
+ * Text color
405
+ */
406
+ color?: Color;
407
+ /**
408
+ * Title font family
409
+ *
410
+ * Make sure that the font is available
411
+ */
412
+ fontFamily?: FontFamily;
413
+ /**
414
+ * Set the font weight, ignore fontFamily and use the iOS system fonts instead
415
+ * #### (iOS specific)
416
+ */
417
+ fontWeight?: FontWeight;
418
+ /**
419
+ * Custom component as the title view
420
+ */
421
+ component?: {
422
+ /**
423
+ * Component reference id, Auto generated if empty
424
+ */
425
+ id?: string;
426
+ /**
427
+ * Name of your component
428
+ */
429
+ name: string;
430
+ /**
431
+ * Set component alignment
432
+ */
433
+ alignment?: "center" | "fill";
434
+ /**
435
+ * Properties to pass down to the component
436
+ */
437
+ passProps?: object;
438
+ };
439
+ /**
440
+ * Top Bar title height in density pixels
441
+ * #### (Android specific)
442
+ */
443
+ height?: number;
444
+ /**
445
+ * Title alignment
446
+ * #### (Android specific)
447
+ */
448
+ alignment?: "center" | "fill";
449
+ }
450
+ export interface OptionsTopBarSubtitle {
451
+ /**
452
+ * Set subtitle text
453
+ */
454
+ text?: string;
455
+ /**
456
+ * Set subtitle font size
457
+ */
458
+ fontSize?: number;
459
+ /**
460
+ * Set subtitle color
461
+ */
462
+ color?: Color;
463
+ /**
464
+ * Set subtitle font family
465
+ */
466
+ fontFamily?: FontFamily;
467
+ /**
468
+ * Set the font weight, ignore fontFamily and use the iOS system fonts instead
469
+ * #### (iOS specific)
470
+ */
471
+ fontWeight?: FontWeight;
472
+ /**
473
+ * Set subtitle alignment
474
+ */
475
+ alignment?: "center";
476
+ }
477
+ export interface OptionsTopBarBackButton {
478
+ /**
479
+ * Image to show as the back button
480
+ */
481
+ icon?: ImageRequireSource;
482
+ /**
483
+ * Whether the back button is visible or not
484
+ * @default true
485
+ */
486
+ visible?: boolean;
487
+ /**
488
+ * Set the back button title
489
+ * #### (iOS specific)
490
+ */
491
+ title?: string;
492
+ /**
493
+ * Show title or just the icon
494
+ * #### (iOS specific)
495
+ */
496
+ showTitle?: boolean;
497
+ /**
498
+ * Back button icon and text color
499
+ */
500
+ color?: Color;
501
+ /**
502
+ * Set subtitle font size
503
+ */
504
+ fontSize?: number;
505
+ /**
506
+ * Set subtitle font family
507
+ */
508
+ fontFamily?: FontFamily;
509
+ /**
510
+ * Set testID for reference in E2E tests
511
+ */
512
+ testID?: string;
513
+ }
514
+ export interface OptionsTopBarBackground {
515
+ /**
516
+ * Background color of the top bar
517
+ */
518
+ color?: Color;
519
+ /**
520
+ * Clip the top bar background to bounds if set to true.
521
+ * #### (iOS specific)
522
+ */
523
+ clipToBounds?: boolean;
524
+ /**
525
+ * Set a custom component for the Top Bar background
526
+ */
527
+ component?: {
528
+ name?: string;
529
+ /**
530
+ * Properties to pass down to the component
531
+ */
532
+ passProps?: object;
533
+ };
534
+ /**
535
+ * Allows the NavBar to be translucent (blurred)
536
+ * #### (iOS specific)
537
+ */
538
+ translucent?: boolean;
539
+ /**
540
+ * Enable background blur
541
+ * #### (iOS specific)
542
+ */
543
+ blur?: boolean;
544
+ }
545
+ export interface OptionsTopBarButton {
546
+ /**
547
+ * Button id for reference press event
548
+ */
549
+ id: string;
550
+ /**
551
+ * Set the button icon
552
+ */
553
+ icon?: ImageRequireSource;
554
+ /**
555
+ * Set the button icon insets
556
+ */
557
+ iconInsets?: IconInsets;
558
+ /**
559
+ * Set the button as a custom component
560
+ */
561
+ component?: {
562
+ /**
563
+ * Component reference id, Auto generated if empty
564
+ */
565
+ id?: string;
566
+ /**
567
+ * Name of your component
568
+ */
569
+ name: string;
570
+ /**
571
+ * Properties to pass down to the component
572
+ */
573
+ passProps?: object;
574
+ /**
575
+ * (Android only) component width
576
+ */
577
+ width?: number;
578
+ /**
579
+ * (Android only) component height
580
+ */
581
+ height?: number;
582
+ };
583
+ /**
584
+ * (iOS only) Set the button as an iOS system icon
585
+ */
586
+ systemItem?: SystemItemIcon;
587
+ /**
588
+ * Set the button text
589
+ */
590
+ text?: string;
591
+ /**
592
+ * Overrides the text that's read by the screen reader when the user interacts with the element
593
+ */
594
+ accessibilityLabel?: string;
595
+ /**
596
+ * Set the button font family
597
+ */
598
+ fontFamily?: string;
599
+ /**
600
+ * Set the font weight, ignore fontFamily and use the iOS system fonts instead
601
+ * #### (iOS specific)
602
+ */
603
+ fontWeight?: FontWeight;
604
+ /**
605
+ * Set the button enabled or disabled
606
+ * @default true
607
+ */
608
+ enabled?: boolean;
609
+ /**
610
+ * Disable icon tinting
611
+ */
612
+ disableIconTint?: boolean;
613
+ /**
614
+ * Set text color
615
+ */
616
+ color?: Color;
617
+ /**
618
+ * Set text color in disabled state
619
+ */
620
+ disabledColor?: Color;
621
+ /**
622
+ * Set testID for reference in E2E tests
623
+ */
624
+ testID?: string;
625
+ /**
626
+ * (Android only) Set showAsAction value
627
+ * @see {@link https://developer.android.com/guide/topics/resources/menu-resource|Android developer guide: Menu resource}
628
+ */
629
+ showAsAction?: "ifRoom" | "withText" | "always" | "never";
630
+ }
631
+ export interface OptionsTopBar {
632
+ /**
633
+ * Show or hide the top bar
634
+ */
635
+ visible?: boolean;
636
+ /**
637
+ * Controls whether TopBar visibility changes should be animated
638
+ */
639
+ animate?: boolean;
640
+ /**
641
+ * Top bar will hide and show based on users scroll direction
642
+ */
643
+ hideOnScroll?: boolean;
644
+ /**
645
+ * Change button colors in the top bar
646
+ */
647
+ leftButtonColor?: Color;
648
+ rightButtonColor?: Color;
649
+ leftButtonDisabledColor?: Color;
650
+ rightButtonDisabledColor?: Color;
651
+ /**
652
+ * Draw behind the navbar
653
+ */
654
+ drawBehind?: boolean;
655
+ /**
656
+ * Can be used to reference the top bar in E2E tests
657
+ */
658
+ testID?: string;
659
+ /**
660
+ * Title configuration
661
+ */
662
+ title?: OptionsTopBarTitle;
663
+ /**
664
+ * Subtitle configuration
665
+ */
666
+ subtitle?: OptionsTopBarSubtitle;
667
+ /**
668
+ * Back button configuration
669
+ */
670
+ backButton?: OptionsTopBarBackButton;
671
+ /**
672
+ * List of buttons to the left
673
+ */
674
+ leftButtons?: OptionsTopBarButton[];
675
+ /**
676
+ * List of buttons to the right
677
+ */
678
+ rightButtons?: OptionsTopBarButton[];
679
+ /**
680
+ * Background configuration
681
+ */
682
+ background?: OptionsTopBarBackground;
683
+ /**
684
+ * Control the NavBar blur style
685
+ * #### (iOS specific)
686
+ * @requires translucent: true
687
+ * @default 'default'
688
+ */
689
+ barStyle?: "default" | "black";
690
+ /**
691
+ * Disable the border on bottom of the navbar
692
+ * #### (iOS specific)
693
+ * @default false
694
+ */
695
+ noBorder?: boolean;
696
+ /**
697
+ * Show a UISearchBar in the Top Bar
698
+ * #### (iOS 11+ specific)
699
+ */
700
+ searchBar?: boolean;
701
+ /**
702
+ * Hides the UISearchBar when scrolling
703
+ * #### (iOS 11+ specific)
704
+ */
705
+ searchBarHiddenWhenScrolling?: boolean;
706
+ /**
707
+ * The placeholder value in the UISearchBar
708
+ * #### (iOS 11+ specific)
709
+ */
710
+ searchBarPlaceholder?: string;
711
+ /**
712
+ * Controls Hiding NavBar on focus UISearchBar
713
+ * #### (iOS 11+ specific)
714
+ */
715
+ hideNavBarOnFocusSearchBar?: boolean;
716
+ /**
717
+ * Control the Large Title configuration
718
+ * #### (iOS 11+ specific)
719
+ */
720
+ largeTitle?: OptionsTopBarLargeTitle;
721
+ /**
722
+ * Set the height of the navbar in dp
723
+ * #### (Android specific)
724
+ */
725
+ height?: AndroidDensityNumber;
726
+ /**
727
+ * Change the navbar border color
728
+ * #### (Android specific)
729
+ */
730
+ borderColor?: Color;
731
+ /**
732
+ * Set the border height of the navbar in dp
733
+ * #### (Android specific)
734
+ */
735
+ borderHeight?: AndroidDensityNumber;
736
+ /**
737
+ * Set the elevation of the navbar in dp
738
+ * #### (Android specific)
739
+ */
740
+ elevation?: AndroidDensityNumber;
741
+ /**
742
+ * Layout top margin
743
+ * #### (Android specific)
744
+ */
745
+ topMargin?: number;
746
+ }
747
+ export interface SharedElementTransition {
748
+ fromId: string;
749
+ toId: string;
750
+ duration?: number;
751
+ interpolation: Interpolation;
752
+ }
753
+ export interface ElementTransition {
754
+ id: string;
755
+ alpha?: AppearingElementAnimation | DisappearingElementAnimation;
756
+ translationX?: AppearingElementAnimation | DisappearingElementAnimation;
757
+ translationY?: AppearingElementAnimation | DisappearingElementAnimation;
758
+ scaleX?: AppearingElementAnimation | DisappearingElementAnimation;
759
+ scaleY?: AppearingElementAnimation | DisappearingElementAnimation;
760
+ rotationX?: AppearingElementAnimation | DisappearingElementAnimation;
761
+ rotationY?: AppearingElementAnimation | DisappearingElementAnimation;
762
+ x?: AppearingElementAnimation | DisappearingElementAnimation;
763
+ y?: AppearingElementAnimation | DisappearingElementAnimation;
764
+ }
765
+ export interface AppearingElementAnimation extends ElementAnimation {
766
+ from: number;
767
+ }
768
+ export interface DisappearingElementAnimation extends ElementAnimation {
769
+ to: number;
770
+ }
771
+ export interface ElementAnimation {
772
+ duration: number;
773
+ startDelay?: number;
774
+ interpolation: Interpolation;
775
+ }
776
+ export interface OptionsFab {
777
+ id: string;
778
+ backgroundColor?: Color;
779
+ clickColor?: Color;
780
+ rippleColor?: Color;
781
+ visible?: boolean;
782
+ icon?: ImageRequireSource;
783
+ iconColor?: Color;
784
+ alignHorizontally?: "left" | "right";
785
+ alignVertically?: "top" | "bottom";
786
+ hideOnScroll?: boolean;
787
+ size?: number;
788
+ actions?: OptionsFab[];
789
+ }
790
+ export interface OptionsBottomTabs {
791
+ /**
792
+ * Show or hide the bottom tabs
793
+ */
794
+ visible?: boolean;
795
+ /**
796
+ * Enable animations when toggling visibility
797
+ */
798
+ animate?: boolean;
799
+ /**
800
+ * Use large icons when possible, even when three tabs without titles are displayed
801
+ * #### (android specific)
802
+ * @default false
803
+ */
804
+ preferLargeIcons?: boolean;
805
+ /**
806
+ * Switch to another screen within the bottom tabs via index (starting from 0)
807
+ */
808
+ currentTabIndex?: number;
809
+ /**
810
+ * Switch to another screen within the bottom tabs via screen name
811
+ */
812
+ currentTabId?: string;
813
+ /**
814
+ * Set a testID to reference the bottom tabs
815
+ */
816
+ testID?: string;
817
+ /**
818
+ * Draw screen component under the tab bar
819
+ */
820
+ drawBehind?: boolean;
821
+ /**
822
+ * Set a background color for the bottom tabs
823
+ */
824
+ backgroundColor?: Color;
825
+ /**
826
+ * Set when tabs are attached to hierarchy consequently when the
827
+ * RootView's constructor is called.
828
+ */
829
+ tabsAttachMode?: "together" | "afterInitialTab" | "onSwitchToTab";
830
+ /**
831
+ * Control the Bottom Tabs blur style
832
+ * #### (iOS specific)
833
+ * @requires translucent: true
834
+ * @default 'default'
835
+ */
836
+ barStyle?: "default" | "black";
837
+ /**
838
+ * Allows the Bottom Tabs to be translucent (blurred)
839
+ * #### (iOS specific)
840
+ */
841
+ translucent?: boolean;
842
+ /**
843
+ * Hide the top line of the Tab Bar
844
+ * #### (iOS specific)
845
+ */
846
+ hideShadow?: boolean;
847
+ /**
848
+ * Control the text display mode below the tab icon
849
+ * #### (Android specific)
850
+ */
851
+ titleDisplayMode?: "alwaysShow" | "showWhenActive" | "alwaysHide" | "showWhenActiveForce";
852
+ /**
853
+ * Set the elevation of the Bottom Tabs in dp
854
+ * #### (Android specific)
855
+ */
856
+ elevation?: AndroidDensityNumber;
857
+ }
858
+ export interface DotIndicatorOptions {
859
+ color?: Color;
860
+ size?: number;
861
+ visible?: boolean;
862
+ }
863
+ export declare type ImageResource = string;
864
+ export interface OptionsBottomTab {
865
+ dotIndicator?: DotIndicatorOptions;
866
+ /**
867
+ * Set the text to display below the icon
868
+ */
869
+ text?: string;
870
+ /**
871
+ * Set the text in a badge that is overlayed over the component
872
+ */
873
+ badge?: string;
874
+ /**
875
+ * Set the background color of the badge that is overlayed over the component
876
+ */
877
+ badgeColor?: string;
878
+ /**
879
+ * Set a testID to reference the tab in E2E tests
880
+ */
881
+ testID?: string;
882
+ /**
883
+ * Set the tab icon
884
+ */
885
+ icon?: ImageRequireSource | ImageResource;
886
+ /**
887
+ * Set the icon tint
888
+ */
889
+ iconColor?: Color;
890
+ /**
891
+ * Set the text color
892
+ */
893
+ textColor?: Color;
894
+ /**
895
+ * Set the selected icon tint
896
+ */
897
+ selectedIconColor?: Color;
898
+ /**
899
+ * Set the selected text color
900
+ */
901
+ selectedTextColor?: Color;
902
+ /**
903
+ * Set the text font family
904
+ */
905
+ fontFamily?: FontFamily;
906
+ /**
907
+ * Set the font weight, ignore fontFamily and use the iOS system fonts instead
908
+ * #### (iOS specific)
909
+ */
910
+ fontWeight?: FontWeight;
911
+ /**
912
+ * Set the text font size
913
+ */
914
+ fontSize?: number;
915
+ /**
916
+ * Set the insets of the icon
917
+ * #### (iOS specific)
918
+ */
919
+ iconInsets?: Insets;
920
+ /**
921
+ * Set selected icon image
922
+ * #### (iOS specific)
923
+ */
924
+ selectedIcon?: ImageRequireSource;
925
+ /**
926
+ * Set true if you want to disable the icon tinting
927
+ * #### (iOS specific)
928
+ */
929
+ disableIconTint?: boolean;
930
+ /**
931
+ * Set true if you want to disable the text tinting
932
+ * #### (iOS specific)
933
+ */
934
+ disableSelectedIconTint?: boolean;
935
+ /**
936
+ * Set the font size for selected tabs
937
+ * #### (Android specific)
938
+ */
939
+ selectedFontSize?: number;
940
+ /**
941
+ * If it's set to false, pressing a tab won't select the tab
942
+ * instead it will emit a bottomTabPressedEvent
943
+ */
944
+ selectTabOnPress?: boolean;
945
+ }
946
+ export interface SideMenuSide {
947
+ /**
948
+ * Show or hide the side menu
949
+ */
950
+ visible?: boolean;
951
+ /**
952
+ * Enable or disable the side menu
953
+ */
954
+ enabled?: boolean;
955
+ /**
956
+ * Set the width of the side menu
957
+ */
958
+ width?: number;
959
+ /**
960
+ * Set the height of the side menu
961
+ */
962
+ height?: number;
963
+ /**
964
+ * Stretch sideMenu contents when opened past the width
965
+ * #### (iOS specific)
966
+ * @default true
967
+ */
968
+ shouldStretchDrawer?: boolean;
969
+ }
970
+ export interface OptionsSideMenu {
971
+ /**
972
+ * Configure the left side menu
973
+ */
974
+ left?: SideMenuSide;
975
+ /**
976
+ * Configure the right side menu
977
+ */
978
+ right?: SideMenuSide;
979
+ /**
980
+ * Configure how a user is allowed to open a drawer using gestures
981
+ * #### (iOS specific)
982
+ * @default 'entireScreen'
983
+ */
984
+ openGestureMode?: "entireScreen" | "bezel";
985
+ }
986
+ export interface OverlayOptions {
987
+ /**
988
+ * Capture touches outside of the Component View
989
+ */
990
+ interceptTouchOutside?: boolean;
991
+ /**
992
+ * Control whether this Overlay should handle Keyboard events.
993
+ * Set this to true if your Overlay contains a TextInput.
994
+ */
995
+ handleKeyboardEvents?: boolean;
996
+ }
997
+ export interface ModalOptions {
998
+ /**
999
+ * Control whether this modal should be dismiss using swipe gesture when the
1000
+ * modalPresentationStyle = 'pageSheet' #### (iOS specific)
1001
+ */
1002
+ swipeToDismiss?: boolean;
1003
+ }
1004
+ export interface OptionsPreviewAction {
1005
+ /**
1006
+ * Reference ID to get callbacks from
1007
+ */
1008
+ id: string;
1009
+ /**
1010
+ * Action text
1011
+ */
1012
+ title: string;
1013
+ /**
1014
+ * Action style
1015
+ */
1016
+ style?: "default" | "selected" | "destructive";
1017
+ /**
1018
+ * Subactions that will be shown when this action is pressed.
1019
+ */
1020
+ actions?: OptionsPreviewAction[];
1021
+ }
1022
+ export interface OptionsPreview {
1023
+ /**
1024
+ * Pass a react node tag to mark a SourceRect for a specific
1025
+ * peek and pop preview element.
1026
+ */
1027
+ reactTag?: number;
1028
+ /**
1029
+ * You can set this property specify the width of the preview.
1030
+ * If the width is greater than the device width, it will be zoomed in.
1031
+ */
1032
+ width?: number;
1033
+ /**
1034
+ * Height of the preview
1035
+ */
1036
+ height?: 100;
1037
+ /**
1038
+ * You can control if the users gesture will result in pushing
1039
+ * the preview screen into the stack.
1040
+ */
1041
+ commit?: boolean;
1042
+ /**
1043
+ * List of actions that will appear underneath the preview window.
1044
+ * They can be nested for sub actions.
1045
+ */
1046
+ actions?: OptionsPreviewAction[];
1047
+ }
1048
+ export interface OptionsAnimationPropertyConfig {
1049
+ /**
1050
+ * Animate from this value, ex. 0
1051
+ */
1052
+ from?: number;
1053
+ /**
1054
+ * Animate to this value, ex. 1
1055
+ */
1056
+ to?: number;
1057
+ /**
1058
+ * Animation duration
1059
+ * @default 300
1060
+ */
1061
+ duration?: number;
1062
+ /**
1063
+ * Animation delay
1064
+ * @default 0
1065
+ */
1066
+ startDelay?: number;
1067
+ /**
1068
+ * Animation interplation
1069
+ */
1070
+ interpolation?: "accelerate" | "decelerate";
1071
+ }
1072
+ /**
1073
+ * Used to animate the actual content added to the hierarchy.
1074
+ * Content can be a React component (component) or any other layout (Stack, BottomTabs etc)
1075
+ */
1076
+ export interface ScreenAnimationOptions {
1077
+ /**
1078
+ * Animate the element over x value
1079
+ */
1080
+ x?: OptionsAnimationPropertyConfig;
1081
+ /**
1082
+ * Animate the element over y value
1083
+ */
1084
+ y?: OptionsAnimationPropertyConfig;
1085
+ /**
1086
+ * Animate the element over translateX
1087
+ */
1088
+ translationX?: OptionsAnimationPropertyConfig;
1089
+ /**
1090
+ * Animate the element over translateY
1091
+ */
1092
+ translationY?: OptionsAnimationPropertyConfig;
1093
+ /**
1094
+ * Animate the element over opacity
1095
+ */
1096
+ alpha?: OptionsAnimationPropertyConfig;
1097
+ /**
1098
+ * Animate the element over scaleX
1099
+ */
1100
+ scaleX?: OptionsAnimationPropertyConfig;
1101
+ /**
1102
+ * Animate the element over scaleY
1103
+ */
1104
+ scaleY?: OptionsAnimationPropertyConfig;
1105
+ /**
1106
+ * Animate the element over rotationX
1107
+ */
1108
+ rotationX?: OptionsAnimationPropertyConfig;
1109
+ /**
1110
+ * Animate the element over rotationY
1111
+ */
1112
+ rotationY?: OptionsAnimationPropertyConfig;
1113
+ /**
1114
+ * Animate the element over rotation
1115
+ */
1116
+ rotation?: OptionsAnimationPropertyConfig;
1117
+ /**
1118
+ * Wait for the root view to render before start animation
1119
+ */
1120
+ waitForRender?: boolean;
1121
+ /**
1122
+ * Enable or disable the animation
1123
+ * @default true
1124
+ */
1125
+ enabled?: boolean;
1126
+ }
1127
+ export interface IconInsets {
1128
+ /**
1129
+ * Configure top inset
1130
+ */
1131
+ top?: number;
1132
+ /**
1133
+ * Configure left inset
1134
+ */
1135
+ left?: number;
1136
+ /**
1137
+ * Configure bottom inset
1138
+ */
1139
+ bottom?: number;
1140
+ /**
1141
+ * Configure right inset
1142
+ */
1143
+ right?: number;
1144
+ }
1145
+ export interface ViewAnimationOptions extends ScreenAnimationOptions {
1146
+ /**
1147
+ * ID of the Top Bar we want to animate
1148
+ */
1149
+ id?: string;
1150
+ }
1151
+ /**
1152
+ * Used for describing stack commands animations.
1153
+ */
1154
+ export interface StackAnimationOptions {
1155
+ /**
1156
+ * Wait for the View to render before start animation
1157
+ */
1158
+ waitForRender?: boolean;
1159
+ /**
1160
+ * Enable or disable the animation
1161
+ * @default true
1162
+ */
1163
+ enabled?: boolean;
1164
+ /**
1165
+ * Configure animations for the top bar
1166
+ */
1167
+ topBar?: ViewAnimationOptions;
1168
+ /**
1169
+ * Configure animations for the bottom tabs
1170
+ */
1171
+ bottomTabs?: ViewAnimationOptions;
1172
+ /**
1173
+ * Configure animations for the content (Screen)
1174
+ */
1175
+ content?: ViewAnimationOptions;
1176
+ /**
1177
+ * Animations to be applied on elements which are shared between the appearing and disappearing
1178
+ * screens
1179
+ */
1180
+ sharedElementTransitions?: SharedElementTransition[];
1181
+ /**
1182
+ * Animations to be applied on views in the appearing or disappearing screens
1183
+ */
1184
+ elementTransitions?: ElementTransition[];
1185
+ }
1186
+ /**
1187
+ * Used for configuring command animations
1188
+ */
1189
+ export interface AnimationOptions {
1190
+ /**
1191
+ * Configure the setStackRoot animation
1192
+ */
1193
+ setStackRoot?: ViewAnimationOptions;
1194
+ /**
1195
+ * Configure the setRoot animation
1196
+ */
1197
+ setRoot?: ViewAnimationOptions;
1198
+ /**
1199
+ * Configure what animates when a screen is pushed
1200
+ */
1201
+ push?: StackAnimationOptions;
1202
+ /**
1203
+ * Configure what animates when a screen is popped
1204
+ */
1205
+ pop?: StackAnimationOptions;
1206
+ /**
1207
+ * Configure what animates when modal is shown
1208
+ */
1209
+ showModal?: ViewAnimationOptions;
1210
+ /**
1211
+ * Configure what animates when modal is dismissed
1212
+ */
1213
+ dismissModal?: ViewAnimationOptions;
1214
+ }
1215
+ /**
1216
+ * Configure Android's NavigationBar
1217
+ */
1218
+ export interface NavigationBarOptions {
1219
+ backgroundColor?: Color;
1220
+ visible?: boolean;
1221
+ }
1222
+ export interface Options {
1223
+ /**
1224
+ * Configure the status bar
1225
+ */
1226
+ statusBar?: OptionsStatusBar;
1227
+ /**
1228
+ * Configure the layout
1229
+ */
1230
+ layout?: OptionsLayout;
1231
+ /**
1232
+ * Configure the presentation style of the modal
1233
+ */
1234
+ modalPresentationStyle?: OptionsModalPresentationStyle;
1235
+ /**
1236
+ * Configure the transition style of the modal
1237
+ *
1238
+ * #### (Android specific)
1239
+ */
1240
+ modalTransitionStyle?: OptionsModalTransitionStyle;
1241
+ /**
1242
+ * Configure the top bar
1243
+ */
1244
+ topBar?: OptionsTopBar;
1245
+ fab?: OptionsFab;
1246
+ /**
1247
+ * Configure the bottom tabs
1248
+ */
1249
+ bottomTabs?: OptionsBottomTabs;
1250
+ /**
1251
+ * Configure the bottom tab associated to the screen
1252
+ */
1253
+ bottomTab?: OptionsBottomTab;
1254
+ /**
1255
+ * Configure the side menu
1256
+ */
1257
+ sideMenu?: OptionsSideMenu;
1258
+ /**
1259
+ * Configure the splitView controller
1260
+ */
1261
+ splitView?: OptionsSplitView;
1262
+ /**
1263
+ * Configure the overlay
1264
+ */
1265
+ overlay?: OverlayOptions;
1266
+ /**
1267
+ * Configure the modal
1268
+ */
1269
+ modal?: ModalOptions;
1270
+ /**
1271
+ * Animation used for navigation commands that modify the layout
1272
+ * hierarchy can be controlled in options.
1273
+ *
1274
+ * Animations can be modified per command and it's also possible
1275
+ * to change the default animation for each command.
1276
+ *
1277
+ * Example:
1278
+ ```js
1279
+ setRoot: {
1280
+ y: {
1281
+ from: 1000,
1282
+ to: 0,
1283
+ duration: 500,
1284
+ interpolation: 'accelerate',
1285
+ },
1286
+ alpha: {
1287
+ from: 0,
1288
+ to: 1,
1289
+ duration: 400,
1290
+ startDelay: 100,
1291
+ interpolation: 'accelerate'
1292
+ }
1293
+ }
1294
+ ```
1295
+ */
1296
+ animations?: AnimationOptions;
1297
+ /**
1298
+ * Configure Android's NavigationBar
1299
+ */
1300
+ navigationBar?: NavigationBarOptions;
1301
+ /**
1302
+ * Preview configuration for Peek and Pop
1303
+ * #### (iOS specific)
1304
+ */
1305
+ preview?: OptionsPreview;
1306
+ /**
1307
+ * Enable or disable swipe back to pop gesture
1308
+ * #### (iOS specific)
1309
+ * @default true
1310
+ */
1311
+ popGesture?: boolean;
1312
+ /**
1313
+ * Background image for the screen
1314
+ * #### (iOS specific)
1315
+ */
1316
+ backgroundImage?: ImageRequireSource;
1317
+ /**
1318
+ * Background image for the Navigation View
1319
+ * #### (iOS specific)
1320
+ */
1321
+ rootBackgroundImage?: ImageRequireSource;
1322
+ /**
1323
+ * Enable or disable automatically blurring focused input, dismissing keyboard on unmount
1324
+ * #### (Android specific)
1325
+ * @default false
1326
+ */
1327
+ blurOnUnmount?: boolean;
1328
+ }