@xqmsg/ui-core 0.23.1-rc.1 → 0.23.1-rc.3

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 (193) hide show
  1. package/CHANGELOG.md +456 -0
  2. package/LICENSE +20 -20
  3. package/README.md +40 -40
  4. package/dist/{89793640b494d7ea.svg → 78c9d6fd7766410f.svg} +9 -9
  5. package/dist/components/input/index.d.ts +2 -1
  6. package/dist/ui-core.cjs.development.js +5 -3
  7. package/dist/ui-core.cjs.development.js.map +1 -1
  8. package/dist/ui-core.cjs.production.min.js +1 -1
  9. package/dist/ui-core.cjs.production.min.js.map +1 -1
  10. package/dist/ui-core.esm.js +5 -3
  11. package/dist/ui-core.esm.js.map +1 -1
  12. package/package.json +118 -118
  13. package/src/components/banner/Banner.stories.tsx +100 -100
  14. package/src/components/banner/index.tsx +73 -73
  15. package/src/components/breadcrumbs/Breadcrumbs.stories.tsx +66 -66
  16. package/src/components/breadcrumbs/components/icon/index.tsx +38 -38
  17. package/src/components/breadcrumbs/components/label/index.tsx +20 -20
  18. package/src/components/breadcrumbs/index.tsx +48 -48
  19. package/src/components/button/Button.stories.tsx +140 -140
  20. package/src/components/button/google/GoogleButton.stories.tsx +23 -23
  21. package/src/components/button/google/index.tsx +29 -29
  22. package/src/components/button/index.tsx +51 -51
  23. package/src/components/button/microsoft/MicrosoftButton.stories.tsx +25 -25
  24. package/src/components/button/microsoft/index.tsx +29 -29
  25. package/src/components/button/spinner/SpinnerButton.stories.tsx +60 -60
  26. package/src/components/button/spinner/index.tsx +36 -36
  27. package/src/components/card/Card.stories.tsx +56 -56
  28. package/src/components/card/index.tsx +78 -78
  29. package/src/components/form/Form.stories.tsx +62 -62
  30. package/src/components/form/FormTypes.ts +20 -20
  31. package/src/components/form/hooks/useFormHandler.tsx +74 -74
  32. package/src/components/form/index.tsx +25 -25
  33. package/src/components/form/section/FormSection.stories.tsx +109 -109
  34. package/src/components/form/section/index.tsx +87 -87
  35. package/src/components/form/utils/formErrors.ts +34 -34
  36. package/src/components/icons/checkmark/checkmark.svg +3 -3
  37. package/src/components/icons/checkmark/index.tsx +13 -13
  38. package/src/components/icons/chevron/down/chevron-down.svg +3 -3
  39. package/src/components/icons/chevron/down/index.tsx +14 -14
  40. package/src/components/icons/chevron/right/chevron-right.svg +3 -3
  41. package/src/components/icons/chevron/right/index.tsx +13 -13
  42. package/src/components/icons/clock/clock.svg +3 -3
  43. package/src/components/icons/clock/index.tsx +13 -13
  44. package/src/components/icons/close/close.svg +3 -3
  45. package/src/components/icons/close/index.tsx +21 -21
  46. package/src/components/icons/dropdown/dropdown.svg +3 -3
  47. package/src/components/icons/dropdown/index.tsx +16 -16
  48. package/src/components/icons/error/error.svg +3 -3
  49. package/src/components/icons/error/index.tsx +13 -13
  50. package/src/components/icons/file/fill/file-fill.svg +4 -4
  51. package/src/components/icons/file/fill/index.tsx +13 -13
  52. package/src/components/icons/file/outline/file-outline.svg +3 -3
  53. package/src/components/icons/file/outline/index.tsx +13 -13
  54. package/src/components/icons/folder/add/fill/folder-add-fill.svg +3 -3
  55. package/src/components/icons/folder/add/fill/index.tsx +13 -13
  56. package/src/components/icons/folder/add/outline/folder-add-outline.svg +3 -3
  57. package/src/components/icons/folder/add/outline/index.tsx +15 -15
  58. package/src/components/icons/folder/fill/folder-fill-gradient.svg +33 -33
  59. package/src/components/icons/folder/fill/folder-fill.svg +4 -4
  60. package/src/components/icons/folder/fill/index.tsx +21 -21
  61. package/src/components/icons/folder/outline/folder-outline.svg +3 -3
  62. package/src/components/icons/folder/outline/index.tsx +13 -13
  63. package/src/components/icons/gear/GearIcon.tsx +36 -36
  64. package/src/components/icons/google/drive/index.tsx +13 -13
  65. package/src/components/icons/google/google.svg +13 -13
  66. package/src/components/icons/google/index.tsx +13 -13
  67. package/src/components/icons/group/group.svg +3 -3
  68. package/src/components/icons/group/index.tsx +13 -13
  69. package/src/components/icons/home/home.svg +3 -3
  70. package/src/components/icons/home/index.tsx +13 -13
  71. package/src/components/icons/image/image.svg +3 -3
  72. package/src/components/icons/image/index.tsx +13 -13
  73. package/src/components/icons/index.tsx +101 -101
  74. package/src/components/icons/link/index.tsx +13 -13
  75. package/src/components/icons/link/link.svg +4 -4
  76. package/src/components/icons/menu/index.tsx +13 -13
  77. package/src/components/icons/menu/menu.svg +3 -3
  78. package/src/components/icons/microsoft/index.tsx +13 -13
  79. package/src/components/icons/microsoft/microsoft.svg +9 -9
  80. package/src/components/icons/microsoft/onedrive/index.tsx +16 -16
  81. package/src/components/icons/neutral/index.tsx +14 -14
  82. package/src/components/icons/neutral/neutral.svg +3 -3
  83. package/src/components/icons/page/index.tsx +13 -13
  84. package/src/components/icons/page/page.svg +3 -3
  85. package/src/components/icons/positive/index.tsx +13 -13
  86. package/src/components/icons/positive/positive.svg +3 -3
  87. package/src/components/icons/question/index.tsx +13 -13
  88. package/src/components/icons/question/question.svg +3 -3
  89. package/src/components/icons/search/index.tsx +13 -13
  90. package/src/components/icons/search/search.svg +3 -3
  91. package/src/components/icons/services/index.tsx +13 -13
  92. package/src/components/icons/services/services.svg +3 -3
  93. package/src/components/icons/settings/index.tsx +14 -14
  94. package/src/components/icons/settings/settings.svg +6 -6
  95. package/src/components/icons/table/fill/index.tsx +13 -13
  96. package/src/components/icons/table/fill/table-fill.svg +3 -3
  97. package/src/components/icons/table/outline/index.tsx +13 -13
  98. package/src/components/icons/table/outline/table-outline.svg +3 -3
  99. package/src/components/icons/task/index.tsx +10 -10
  100. package/src/components/icons/task/task.svg +11 -11
  101. package/src/components/icons/trash/index.tsx +13 -13
  102. package/src/components/icons/trash/trash.svg +3 -3
  103. package/src/components/icons/vault/index.tsx +14 -14
  104. package/src/components/icons/video/index.tsx +13 -13
  105. package/src/components/icons/video/video.svg +3 -3
  106. package/src/components/icons/warning/index.tsx +13 -13
  107. package/src/components/icons/warning/warning.svg +3 -3
  108. package/src/components/icons/workspace/index.tsx +14 -14
  109. package/src/components/input/Input.stories.tsx +287 -287
  110. package/src/components/input/InputTypes.ts +77 -77
  111. package/src/components/input/StackedCheckbox/StackedCheckbox.tsx +44 -44
  112. package/src/components/input/StackedInput/StackedInput.tsx +60 -60
  113. package/src/components/input/StackedMultiSelect/index.tsx +349 -349
  114. package/src/components/input/StackedPilledInput/index.tsx +375 -386
  115. package/src/components/input/StackedRadio/StackedRadioGroup.tsx +38 -38
  116. package/src/components/input/StackedSelect/index.tsx +232 -232
  117. package/src/components/input/StackedSwitch/index.tsx +33 -33
  118. package/src/components/input/StackedTextarea/StackedTextarea.tsx +55 -55
  119. package/src/components/input/components/dropdown/index.tsx +111 -111
  120. package/src/components/input/components/label/index.tsx +35 -35
  121. package/src/components/input/components/token/Token.stories.tsx +25 -25
  122. package/src/components/input/components/token/index.tsx +45 -45
  123. package/src/components/input/index.tsx +301 -298
  124. package/src/components/layout/BorderedBox/index.tsx +30 -30
  125. package/src/components/layout/Layout.stories.tsx +40 -40
  126. package/src/components/layout/index.tsx +100 -100
  127. package/src/components/link/Link.stories.tsx +23 -23
  128. package/src/components/link/index.tsx +34 -34
  129. package/src/components/loading/LoadingIndicator.stories.tsx +45 -45
  130. package/src/components/loading/index.tsx +45 -45
  131. package/src/components/modal/Modal.stories.tsx +36 -36
  132. package/src/components/modal/components/action/index.tsx +37 -37
  133. package/src/components/modal/index.tsx +41 -41
  134. package/src/components/navigation/NavigationMenu.stories.tsx +85 -85
  135. package/src/components/navigation/components/header/index.tsx +27 -27
  136. package/src/components/navigation/components/items/index.tsx +76 -76
  137. package/src/components/navigation/index.tsx +87 -87
  138. package/src/components/select/index.tsx +140 -140
  139. package/src/components/table/Table.stories.tsx +63 -63
  140. package/src/components/table/TableTypes.ts +15 -15
  141. package/src/components/table/components/loading/index.tsx +45 -45
  142. package/src/components/table/components/text/index.tsx +23 -23
  143. package/src/components/table/empty/index.tsx +47 -47
  144. package/src/components/table/index.tsx +84 -84
  145. package/src/components/table/utils/generateTableColumns.ts +9 -9
  146. package/src/components/tabs/TabsWrapper.stories.tsx +85 -85
  147. package/src/components/tabs/index.tsx +39 -39
  148. package/src/components/text/Text.stories.tsx +59 -59
  149. package/src/components/text/index.tsx +16 -16
  150. package/src/components/toast/Toast.stories.tsx +52 -52
  151. package/src/components/toast/index.tsx +78 -78
  152. package/src/components/toolbar/Toolbar.stories.tsx +59 -59
  153. package/src/components/toolbar/components/actions/add/index.tsx +18 -18
  154. package/src/components/toolbar/components/actions/search/index.tsx +38 -38
  155. package/src/components/toolbar/components/actions/sort/index.tsx +49 -49
  156. package/src/components/toolbar/components/breadcrumbs/index.tsx +63 -63
  157. package/src/components/toolbar/components/breadcrumbs/item/index.tsx +72 -72
  158. package/src/components/toolbar/components/dropdown/index.tsx +107 -107
  159. package/src/components/toolbar/components/navigation/components/button/left/index.tsx +28 -28
  160. package/src/components/toolbar/components/navigation/components/button/left/left-arrow.svg +3 -3
  161. package/src/components/toolbar/components/navigation/components/button/right/index.tsx +27 -27
  162. package/src/components/toolbar/components/navigation/components/button/right/right-arrow.svg +3 -3
  163. package/src/components/toolbar/components/navigation/index.tsx +36 -36
  164. package/src/components/toolbar/index.tsx +55 -55
  165. package/src/hooks/useDeepEffect.tsx +22 -22
  166. package/src/hooks/useDidMountEffect.tsx +13 -13
  167. package/src/hooks/useOnOutsideClick.tsx +31 -31
  168. package/src/hooks/useToast.tsx +16 -16
  169. package/src/index.tsx +78 -78
  170. package/src/theme/components/alert.ts +60 -60
  171. package/src/theme/components/badge.ts +59 -59
  172. package/src/theme/components/button.ts +163 -163
  173. package/src/theme/components/checkbox.ts +28 -28
  174. package/src/theme/components/code.ts +16 -16
  175. package/src/theme/components/form-error.ts +31 -31
  176. package/src/theme/components/form-label.ts +17 -17
  177. package/src/theme/components/form.ts +29 -29
  178. package/src/theme/components/input.ts +65 -65
  179. package/src/theme/components/link.ts +118 -118
  180. package/src/theme/components/modal.ts +45 -45
  181. package/src/theme/components/select.ts +36 -36
  182. package/src/theme/components/switch.ts +89 -89
  183. package/src/theme/components/table.ts +42 -42
  184. package/src/theme/components/tabs.ts +255 -255
  185. package/src/theme/components/text.ts +93 -93
  186. package/src/theme/components/textarea.ts +42 -42
  187. package/src/theme/customXQChakraTheme.ts +54 -54
  188. package/src/theme/foundations/breakpoints.ts +18 -18
  189. package/src/theme/foundations/colors.ts +165 -165
  190. package/src/theme/foundations/shadows.ts +23 -23
  191. package/src/theme/foundations/typography.ts +62 -62
  192. package/src/theme/provider/index.tsx +21 -21
  193. package/src/theme/styles.ts +19 -19
@@ -1 +1 @@
1
- {"version":3,"file":"ui-core.cjs.production.min.js","sources":["../src/components/icons/error/error.svg","../src/components/button/index.tsx","../src/components/icons/neutral/neutral.svg","../src/components/icons/error/index.tsx","../src/components/icons/positive/positive.svg","../src/components/icons/neutral/index.tsx","../src/components/icons/warning/warning.svg","../src/components/icons/positive/index.tsx","../src/components/icons/google/google.svg","../src/components/icons/warning/index.tsx","../src/theme/foundations/colors.ts","../src/components/breadcrumbs/components/icon/index.tsx","../src/components/breadcrumbs/components/label/index.tsx","../src/theme/foundations/typography.ts","../src/components/icons/microsoft/microsoft.svg","../src/components/icons/google/index.tsx","../src/components/icons/microsoft/index.tsx","../src/components/input/StackedCheckbox/StackedCheckbox.tsx","../src/components/icons/dropdown/dropdown.svg","../src/components/input/StackedInput/StackedInput.tsx","../src/components/input/StackedRadio/StackedRadioGroup.tsx","../src/components/input/components/dropdown/index.tsx","../src/hooks/useOnOutsideClick.tsx","../src/components/icons/close/close.svg","../src/components/icons/dropdown/index.tsx","../src/components/input/StackedSelect/index.tsx","../src/components/input/StackedTextarea/StackedTextarea.tsx","../src/components/icons/checkmark/checkmark.svg","../src/components/icons/close/index.tsx","../src/components/input/components/token/index.tsx","../src/components/input/StackedMultiSelect/index.tsx","../src/components/input/StackedPilledInput/index.tsx","../src/components/input/StackedSwitch/index.tsx","../src/components/input/components/label/index.tsx","../src/components/input/index.tsx","../src/components/icons/chevron/down/chevron-down.svg","../src/components/icons/chevron/right/chevron-right.svg","../src/components/icons/clock/clock.svg","../src/components/icons/chevron/right/index.tsx","../src/components/icons/file/fill/file-fill.svg","../src/components/icons/file/outline/file-outline.svg","../src/components/icons/folder/fill/folder-fill.svg","../src/components/icons/folder/fill/folder-fill-gradient.svg","../src/components/icons/folder/outline/folder-outline.svg","../src/components/icons/folder/add/fill/folder-add-fill.svg","../src/components/icons/folder/add/outline/folder-add-outline.svg","../src/components/icons/group/group.svg","../src/components/icons/home/home.svg","../src/components/icons/image/image.svg","../src/components/icons/menu/menu.svg","../src/components/icons/search/search.svg","../src/components/icons/settings/settings.svg","../src/components/icons/table/fill/table-fill.svg","../src/components/icons/table/outline/table-outline.svg","../src/components/icons/trash/trash.svg","../src/components/icons/services/services.svg","../src/components/icons/question/question.svg","../src/components/icons/video/video.svg","../src/components/icons/page/page.svg","../src/components/icons/video/index.tsx","../src/components/icons/task/task.svg","../src/components/icons/page/index.tsx","../src/components/layout/BorderedBox/index.tsx","../src/components/navigation/components/header/index.tsx","../src/components/navigation/components/items/index.tsx","../src/components/table/components/loading/index.tsx","../src/components/table/empty/index.tsx","../src/theme/foundations/breakpoints.ts","../src/theme/foundations/shadows.ts","../src/theme/components/alert.ts","../src/theme/components/badge.ts","../src/theme/components/button.ts","../src/theme/components/checkbox.ts","../src/theme/components/code.ts","../src/theme/components/form.ts","../src/theme/components/form-error.ts","../src/theme/components/form-label.ts","../src/theme/components/input.ts","../src/theme/components/link.ts","../src/theme/components/select.ts","../src/theme/components/switch.ts","../src/theme/components/table.ts","../src/theme/components/tabs.ts","../src/components/toolbar/components/navigation/components/button/left/left-arrow.svg","../src/theme/components/textarea.ts","../src/theme/components/text.ts","../src/theme/customXQChakraTheme.ts","../src/theme/components/modal.ts","../src/theme/styles.ts","../src/components/toolbar/components/breadcrumbs/item/index.tsx","../src/components/toolbar/components/breadcrumbs/index.tsx","../src/components/toolbar/components/navigation/components/button/right/right-arrow.svg","../src/components/toolbar/components/navigation/components/button/left/index.tsx","../src/components/toolbar/components/navigation/components/button/right/index.tsx","../src/components/toolbar/components/navigation/index.tsx","../src/components/toast/index.tsx","../src/components/modal/components/action/index.tsx","../src/components/banner/index.tsx","../src/components/breadcrumbs/index.tsx","../src/components/card/index.tsx","../src/components/icons/checkmark/index.tsx","../src/components/icons/chevron/down/index.tsx","../src/components/icons/clock/index.tsx","../src/components/icons/file/fill/index.tsx","../src/components/icons/file/outline/index.tsx","../src/components/icons/folder/add/fill/index.tsx","../src/components/icons/folder/add/outline/index.tsx","../src/components/icons/folder/fill/index.tsx","../src/components/icons/folder/outline/index.tsx","../src/components/form/index.tsx","../src/components/form/section/index.tsx","../src/components/icons/gear/GearIcon.tsx","../src/components/button/google/index.tsx","../src/components/icons/google/drive/index.tsx","../src/components/icons/google/drive/drive.png","../src/components/icons/group/index.tsx","../src/components/icons/home/index.tsx","../src/components/icons/image/index.tsx","../src/components/layout/index.tsx","../src/components/link/index.tsx","../src/components/loading/index.tsx","../src/components/icons/menu/index.tsx","../src/components/button/microsoft/index.tsx","../src/components/icons/microsoft/onedrive/index.tsx","../src/components/icons/microsoft/onedrive/onedrive.png","../src/components/modal/index.tsx","../src/components/navigation/index.tsx","../src/components/icons/question/index.tsx","../src/components/icons/search/index.tsx","../src/components/select/index.tsx","../src/components/icons/services/index.tsx","../src/components/icons/settings/index.tsx","../src/components/button/spinner/index.tsx","../src/components/table/index.tsx","../src/components/table/utils/generateTableColumns.ts","../src/components/icons/table/fill/index.tsx","../src/components/icons/table/outline/index.tsx","../src/components/tabs/index.tsx","../src/components/icons/task/index.tsx","../src/components/text/index.tsx","../src/components/toolbar/index.tsx","../src/components/icons/trash/index.tsx","../src/components/icons/vault/index.tsx","../src/components/icons/vault/vault.png","../src/components/icons/workspace/index.tsx","../src/components/icons/workspace/workspace.png","../src/theme/provider/index.tsx","../src/components/form/utils/formErrors.ts","../src/hooks/useToast.tsx"],"sourcesContent":["export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5.5%205.5L8.5%208.5M8.5%205.5L5.5%208.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%23F96057%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { Button as ChakraButton } from '@chakra-ui/react';\nimport buttonTheme from '../../theme/components/button';\n\nexport interface ButtonProps {\n text: string;\n onClick?: () => void;\n width: 'variable' | 'fixed';\n variant?: keyof typeof buttonTheme.variants;\n type?: 'button' | 'submit' | 'reset';\n ariaLabel: string;\n disabled?: boolean;\n className?: string;\n leftIcon?: JSX.Element;\n rightIcon?: JSX.Element;\n color?: string;\n}\n\n/**\n * A functional React component utilized to render the `Button` component\n */\nexport const Button: React.FC<ButtonProps> = ({\n onClick,\n text,\n type = 'button',\n ariaLabel,\n variant = 'primary',\n disabled,\n className,\n width,\n rightIcon,\n leftIcon,\n color,\n}) => {\n return (\n <ChakraButton\n onClick={onClick}\n type={type}\n variant={variant}\n disabled={disabled}\n aria-label={ariaLabel}\n className={className}\n width={width === 'fixed' ? '100%' : 'fit-content'}\n rightIcon={rightIcon}\n leftIcon={leftIcon}\n color={color}\n >\n {text}\n </ChakraButton>\n );\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%204.5V4C6.72386%204%206.5%204.22386%206.5%204.5H7ZM7.005%204.5H7.505C7.505%204.22386%207.28114%204%207.005%204V4.5ZM7.005%204.505V5.005C7.28114%205.005%207.505%204.78114%207.505%204.505H7.005ZM7%204.505H6.5C6.5%204.78114%206.72386%205.005%207%205.005V4.505ZM6.27639%206.05279C6.0294%206.17628%205.92929%206.47662%206.05279%206.72361C6.17628%206.9706%206.47662%207.07071%206.72361%206.94721L6.27639%206.05279ZM6.52766%206.48617L6.30405%206.03896L6.52766%206.48617ZM7.23634%207.05465L7.72141%207.17592L7.23634%207.05465ZM6.76366%208.94535L6.27859%208.82408L6.76366%208.94535ZM7.47234%209.51383L7.69595%209.96104L7.69595%209.96104L7.47234%209.51383ZM7.72361%209.94721C7.9706%209.82371%208.07071%209.52337%207.94721%209.27639C7.82371%209.0294%207.52337%208.92929%207.27639%209.05279L7.72361%209.94721ZM12.5%207C12.5%2010.0376%2010.0376%2012.5%207%2012.5V13.5C10.5899%2013.5%2013.5%2010.5899%2013.5%207H12.5ZM7%2012.5C3.96243%2012.5%201.5%2010.0376%201.5%207H0.5C0.5%2010.5899%203.41015%2013.5%207%2013.5V12.5ZM1.5%207C1.5%203.96243%203.96243%201.5%207%201.5V0.5C3.41015%200.5%200.5%203.41015%200.5%207H1.5ZM7%201.5C10.0376%201.5%2012.5%203.96243%2012.5%207H13.5C13.5%203.41015%2010.5899%200.5%207%200.5V1.5ZM7%205H7.005V4H7V5ZM6.505%204.5V4.505H7.505V4.5H6.505ZM7.005%204.005H7V5.005H7.005V4.005ZM7.5%204.505V4.5H6.5V4.505H7.5ZM6.72361%206.94721L6.75127%206.93338L6.30405%206.03896L6.27639%206.05279L6.72361%206.94721ZM6.75127%206.93338L6.27859%208.82408L7.24873%209.06662L7.72141%207.17592L6.75127%206.93338ZM7.69595%209.96104L7.72361%209.94721L7.27639%209.05279L7.24873%209.06662L7.69595%209.96104ZM6.27859%208.82408C6.07138%209.65293%206.93179%2010.3431%207.69595%209.96104L7.24873%209.06662L6.27859%208.82408ZM6.75127%206.93338L7.72141%207.17592C7.92862%206.34708%207.06821%205.65688%206.30405%206.03896L6.75127%206.93338Z%22%20fill%3D%22current%22%20fill-opacity%3D%220.6%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as ErrorIcon } from './error.svg';\n\nexport interface ErrorProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Error` icon component\n */\nexport const Error: React.FC<ErrorProps> = ({ boxSize }) => {\n return <ErrorIcon boxSize={boxSize} />;\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%207.5L6.5%209L9%205.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%2334C759%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as NeutralIcon } from './neutral.svg';\n\nexport interface NeutralProps {\n boxSize: number | string;\n color?: string;\n}\n\n/**\n * A functional React component utilized to render the `Neutral` icon component\n */\nexport const Neutral: React.FC<NeutralProps> = ({ color, boxSize }) => {\n return <NeutralIcon boxSize={boxSize} fill={color || '#3C3C43'} />;\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%205V7.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207ZM7%209.5H7.005V9.505H7V9.5Z%22%20stroke%3D%22%23F8CE52%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as PositiveIcon } from './positive.svg';\n\nexport interface PositiveProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Positive` icon component\n */\nexport const Positive: React.FC<PositiveProps> = ({ boxSize }) => {\n return <PositiveIcon boxSize={boxSize} />;\n};\n","export default \"data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20533.5%20544.3%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20%20%20%20d%3D%22M533.5%20278.4c0-18.5-1.5-37.1-4.7-55.3H272.1v104.8h147c-6.1%2033.8-25.7%2063.7-54.4%2082.7v68h87.7c51.5-47.4%2081.1-117.4%2081.1-200.2z%22%20%20%20%20fill%3D%22%234285f4%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M272.1%20544.3c73.4%200%20135.3-24.1%20180.4-65.7l-87.7-68c-24.4%2016.6-55.9%2026-92.6%2026-71%200-131.2-47.9-152.8-112.3H28.9v70.1c46.2%2091.9%20140.3%20149.9%20243.2%20149.9z%22%20%20%20%20fill%3D%22%2334a853%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M119.3%20324.3c-11.4-33.8-11.4-70.4%200-104.2V150H28.9c-38.6%2076.9-38.6%20167.5%200%20244.4l90.4-70.1z%22%20%20%20%20fill%3D%22%23fbbc04%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M272.1%20107.7c38.8-.6%2076.3%2014%20104.4%2040.8l77.7-77.7C405%2024.6%20339.7-.8%20272.1%200%20169.2%200%2075.1%2058%2028.9%20150l90.4%2070.1c21.5-64.5%2081.8-112.4%20152.8-112.4z%22%20%20%20%20fill%3D%22%23ea4335%22%20%20%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as WarningIcon } from './warning.svg';\n\nexport interface WarningProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Warning` icon component\n */\nexport const Warning: React.FC<WarningProps> = ({ boxSize }) => {\n return <WarningIcon boxSize={boxSize} />;\n};\n","export interface ColorHues {\n 50: string;\n 100: string;\n 200: string;\n 300: string;\n 400: string;\n 500: string;\n 600: string;\n 700: string;\n 800: string;\n 900: string;\n}\n\nconst blue: ColorHues = {\n 50: 'hsl(209, 100%, 95%)',\n 100: 'hsl(209, 100%, 90%)',\n 200: 'hsl(209, 100%, 80%)',\n 300: 'hsl(209, 100%, 70%)',\n 400: 'hsl(209, 100%, 60%)',\n 500: 'hsl(209, 100%, 50%)',\n 600: 'hsl(209, 100%, 40%)',\n 700: 'hsl(209, 100%, 30%)',\n 800: 'hsl(209, 100%, 20%)',\n 900: 'hsl(209, 100%, 10%)',\n};\n\nconst red: ColorHues = {\n 50: 'hsl(0, 100%, 98%)',\n 100: 'hsl(0, 95%, 92%)',\n 200: 'hsl(0, 97%, 85%)',\n 300: 'hsl(0, 95%, 75%)',\n 400: 'hsl(0, 88%, 68%)',\n 500: 'hsl(0, 76%, 57%)',\n 600: 'hsl(0, 61%, 48%)',\n 700: 'hsl(0, 56%, 39%)',\n 800: 'hsl(0, 54%, 33%)',\n 900: 'hsl(357, 62%, 24%)',\n};\n\nconst orange: ColorHues = {\n 50: 'hsl(40, 100%, 97%)',\n 100: 'hsl(39, 96%, 89%)',\n 200: 'hsl(38, 93%, 77%)',\n 300: 'hsl(33, 90%, 65%)',\n 400: 'hsl(27, 84%, 57%)',\n 500: 'hsl(24, 75%, 50%)',\n 600: 'hsl(20, 71%, 44%)',\n 700: 'hsl(16, 65%, 37%)',\n 800: 'hsl(14, 61%, 30%)',\n 900: 'hsl(14, 60%, 25%)',\n};\n\nconst green: ColorHues = {\n 50: 'hsl(140, 60%, 96%)',\n 100: 'hsl(141, 65%, 92%)',\n 200: 'hsl(141, 63%, 88%)',\n 300: 'hsl(141, 64%, 80%)',\n 400: 'hsl(140, 64%, 73%)',\n 500: 'hsl(140, 64%, 61%)',\n 600: 'hsl(140, 42%, 48%)',\n 700: 'hsl(140, 42%, 36%)',\n 800: 'hsl(141, 42%, 24%)',\n 900: 'hsl(138, 42%, 6%)',\n};\n\nconst label = {\n primary: { light: '#000000', dark: '#FFFFFF' },\n secondary: { light: '#3C3C4399' },\n tertiary: { light: '', dark: '#EBEBF52E' },\n error: '#FF0000',\n};\n\nconst border = {\n focus: '#3A6CD980',\n default: '#D9D9D9',\n light: '#99999919A',\n};\n\nconst blur = {\n quaternary: { light: '', dark: '#2A2A2A73' },\n tertiary: { light: '', dark: '#111111A6' },\n};\n\nconst fill = {\n light: {\n primary: '#74748033',\n secondary: '#74748029',\n tertiary: '#7474801F',\n quaternary: '#7474800D',\n },\n success: '#d8f1b8',\n error: '#ffbdb9',\n warning: '#ffefb4',\n action: '#0082ff',\n};\n\nconst semantic = {\n action: '#488ef7',\n success: '#5fcf65',\n warning: '#f8c352',\n error: '#f96057',\n};\n\nexport const colors = {\n label,\n blur,\n border,\n fill,\n semantic,\n transparent: 'transparent',\n current: 'currentColor',\n black: '#000000',\n white: '#FFFFFF',\n lightBlue: '#29abe2',\n coolGray: '#F6F7FB',\n darkBlue: '#292f4c',\n backdrop: '#fbfcff',\n whiteAlpha: {\n 50: 'rgba(255, 255, 255, 0.04)',\n 100: 'rgba(255, 255, 255, 0.06)',\n 200: 'rgba(255, 255, 255, 0.08)',\n 300: 'rgba(255, 255, 255, 0.16)',\n 400: 'rgba(255, 255, 255, 0.24)',\n 500: 'rgba(255, 255, 255, 0.36)',\n 600: 'rgba(255, 255, 255, 0.48)',\n 700: 'rgba(255, 255, 255, 0.64)',\n 800: 'rgba(255, 255, 255, 0.80)',\n 900: 'rgba(255, 255, 255, 0.92)',\n },\n\n blackAlpha: {\n 50: 'rgba(0, 0, 0, 0.04)',\n 100: 'rgba(0, 0, 0, 0.06)',\n 200: 'rgba(0, 0, 0, 0.08)',\n 300: 'rgba(0, 0, 0, 0.16)',\n 400: 'rgba(0, 0, 0, 0.24)',\n 500: 'rgba(0, 0, 0, 0.36)',\n 600: 'rgba(0, 0, 0, 0.48)',\n 700: 'rgba(0, 0, 0, 0.64)',\n 800: 'rgba(0, 0, 0, 0.80)',\n 900: 'rgba(0, 0, 0, 0.92)',\n },\n\n gray: {\n 50: 'hsl(240, 3%, 94%)',\n 100: 'hsl(210, 3%, 87%)',\n 200: 'hsl(220, 4%, 69%)', // #ADAFB3\n 300: 'hsl(225, 4%, 56%)',\n 400: 'hsl(222, 4%, 44%)',\n 500: 'hsl(224, 6%, 38%)',\n 600: 'hsl(227, 6%, 30%)',\n 700: 'hsl(230, 5%, 23%)', // #38393E\n 800: 'hsl(216, 6%, 15%)',\n 900: 'hsl(240, 5%, 4%)',\n },\n\n red,\n orange,\n green,\n blue,\n};\n\nexport type Colors = typeof colors;\n\nexport default colors as Colors;\n","import React, { useMemo } from 'react';\nimport { Flex, Text } from '@chakra-ui/react';\nimport colors from '../../../../theme/foundations/colors';\n\nexport interface IconProps {\n step: number;\n status: 'complete' | 'active' | 'inactive';\n}\n\n/**\n * A functional React component utilized to render the `Icon` for the `Breadcrumbs` component.\n */\nexport const Icon: React.FC<IconProps> = ({ step, status }) => {\n const getColors = useMemo(() => {\n switch (status) {\n case 'active':\n return { bg: '#0082FF', color: colors.label.primary.dark };\n case 'complete':\n return { bg: '#7474800D', color: colors.label.primary.light };\n case 'inactive':\n return { bg: '#7474800D', color: colors.label.primary.light };\n }\n }, [status]);\n\n return (\n <Flex\n boxSize=\"20px\"\n bg={getColors.bg}\n borderRadius=\"100%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n >\n <Text fontSize=\"12px\" color={getColors.color}>\n {step}\n </Text>\n </Flex>\n );\n};\n","import React from 'react';\nimport { Box, Text } from '@chakra-ui/react';\nimport colors from '../../../../theme/foundations/colors';\n\nexport interface LabelProps {\n label: string;\n}\n\n/**\n * A functional React component utilized to render the `Label` for the `Breadcrumbs` component.\n */\nexport const Label: React.FC<LabelProps> = ({ label }) => {\n return (\n <Box pl=\"8px\">\n <Text color={colors.label.primary.light} fontSize=\"13px\">\n {label}\n </Text>\n </Box>\n );\n};\n","const typography = {\n letterSpacings: {\n tighter: '-0.05em',\n tight: '-0.025em',\n normal: '0',\n wide: '0.025em',\n wider: '0.05em',\n widest: '0.1em',\n },\n\n lineHeights: {\n normal: 'normal',\n none: 1,\n shorter: 1.25,\n short: 1.375,\n base: 1.5,\n tall: 1.625,\n taller: '2',\n '3': '.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '7': '1.75rem',\n '8': '2rem',\n '9': '2.25rem',\n '10': '2.5rem',\n },\n\n fontWeights: {\n hairline: 100,\n thin: 200,\n light: 300,\n normal: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n extrabold: 800,\n black: 900,\n },\n\n fonts: {\n base: `proxima-nova, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`,\n mono: `SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace`,\n },\n\n fontSizes: {\n xs: '0.75rem',\n sm: '0.875rem',\n md: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n '5xl': '3rem',\n '6xl': '4rem',\n },\n};\n\nexport type Typography = typeof typography;\n\nexport default typography;\n","export default \"89793640b494d7ea.svg\"","import React from 'react';\nimport { ReactComponent as GoogleLogo } from './google.svg';\n\nexport interface GoogleProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Google` icon component\n */\nexport const Google: React.FC<GoogleProps> = ({ boxSize }) => {\n return <GoogleLogo width={boxSize} height={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as MicrosoftLogo } from './microsoft.svg';\n\nexport interface MicrosoftProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Microsoft` icon component\n */\nexport const Microsoft: React.FC<MicrosoftProps> = ({ boxSize }) => {\n return <MicrosoftLogo boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { Checkbox, Text } from '@chakra-ui/react';\nimport { InputFieldProps } from '../InputTypes';\n\nexport interface StackedCheckboxProps extends InputFieldProps {\n label: string;\n variant: string;\n}\n\n/**\n * A functional React component utilized to render the `StackedCheckbox` component.\n */\nconst StackedCheckbox = React.forwardRef<\n HTMLInputElement,\n StackedCheckboxProps\n>(({ value, label, onChange, disabled, variant }, _ref) => {\n if (value === null) return null;\n\n return (\n <Checkbox\n ref={_ref}\n defaultChecked={Boolean(value)}\n defaultValue={value}\n onChange={e => {\n if (onChange) return onChange(e.target.checked as any);\n }}\n isChecked={Boolean(value)}\n disabled={disabled}\n variant={variant}\n >\n {/* solved like this because of bug in chakra\n https://github.com/chakra-ui/chakra-ui/issues/7328 */}\n <Text\n fontSize={variant === 'mobile' ? '17px' : '13px'}\n alignSelf=\"center\"\n >\n {label}\n </Text>\n {/* {label} */}\n </Checkbox>\n );\n});\n\nexport default StackedCheckbox;\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M2%2012C0.89543%2012%20-3.91405e-08%2011.1046%20-8.74228e-08%2010L-4.37114e-07%202C-4.85396e-07%200.895431%200.89543%20-3.91405e-08%202%20-8.74228e-08L10%20-4.37114e-07C11.1046%20-4.85396e-07%2012%200.89543%2012%202L12%2010C12%2011.1046%2011.1046%2012%2010%2012L2%2012ZM6%202.5C6.13261%202.5%206.25979%202.55268%206.35355%202.64645L7.85355%204.14645C8.04881%204.34171%208.04881%204.65829%207.85355%204.85355C7.65829%205.04882%207.34171%205.04882%207.14645%204.85355L6%203.70711L4.85355%204.85355C4.65829%205.04882%204.34171%205.04882%204.14645%204.85355C3.95118%204.65829%203.95118%204.34171%204.14645%204.14645L5.64645%202.64645C5.74021%202.55268%205.86739%202.5%206%202.5ZM5.64645%209.35355C5.74021%209.44732%205.86739%209.5%206%209.5C6.13261%209.5%206.25978%209.44732%206.35355%209.35355L7.85355%207.85355C8.04882%207.65829%208.04882%207.34171%207.85355%207.14645C7.65829%206.95118%207.34171%206.95118%207.14645%207.14645L6%208.29289L4.85355%207.14645C4.65829%206.95118%204.34171%206.95118%204.14645%207.14645C3.95118%207.34171%203.95118%207.65829%204.14645%207.85355L5.64645%209.35355Z%22%20fill%3D%22current%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { Input, InputGroup } from '@chakra-ui/react';\nimport { InputFieldProps } from '../InputTypes';\n\nexport interface StackedInputProps extends InputFieldProps {\n isRequired?: boolean;\n allowDefault?: boolean;\n leftElement?: React.ReactNode;\n rightElement?: React.ReactNode;\n variant?: string;\n label?: string;\n}\n\n/**\n * A functional React component utilized to render the `StackedInput` component.\n */\nconst StackedInput = React.forwardRef<HTMLInputElement, StackedInputProps>(\n (\n {\n type = 'text',\n isRequired,\n rightElement,\n leftElement,\n defaultValue,\n allowDefault,\n variant,\n label,\n ...props\n },\n _ref\n ) => {\n const isMobile = variant === 'mobile';\n const placeholder = isMobile && label ? label : undefined;\n return (\n <InputGroup>\n {leftElement && leftElement}\n {label}\n <Input\n {...props}\n placeholder={placeholder}\n type={type}\n isRequired={isRequired}\n ref={_ref}\n defaultValue={defaultValue}\n fontSize={isMobile ? '17px' : '13px'}\n variant={variant}\n onKeyDown={e => {\n if (e.key === 'Enter' && !allowDefault) {\n e.stopPropagation();\n e.preventDefault();\n }\n }}\n />\n {rightElement && rightElement}\n </InputGroup>\n );\n }\n);\n\nexport default StackedInput;\n","import React from 'react';\nimport { Flex, InputGroup, Radio, RadioGroup } from '@chakra-ui/react';\nimport { FieldOptions, SelectFieldProps } from '../InputTypes';\n\nexport interface StackedRadioGroupProps extends SelectFieldProps {\n flexDirection?: 'row' | 'column';\n\n options: FieldOptions;\n}\n\n/**\n * A functional React component utilized to render the `StackedRadio` component.\n */\nconst StackedRadioGroup = React.forwardRef<\n HTMLInputElement,\n StackedRadioGroupProps\n>(({ id, flexDirection = 'row', options }, _ref) => {\n return (\n <InputGroup>\n <RadioGroup name={id}>\n {options.map(option => (\n <Flex\n mr=\"30px\"\n alignItems=\"center\"\n key={option.value}\n flexDirection={flexDirection}\n >\n <Radio ref={_ref} value={option.value}>\n {option.label}\n </Radio>\n </Flex>\n ))}\n </RadioGroup>\n </InputGroup>\n );\n});\n\nexport default StackedRadioGroup;\n","import React, { RefObject, useMemo } from 'react';\nimport { Box, Flex } from '@chakra-ui/react';\nimport colors from '../../../../../src/theme/foundations/colors';\nimport { FieldOption, FieldOptions } from '../../InputTypes';\n\nexport interface DropdownProps {\n onSelectItem: (option: FieldOption) => void;\n options: FieldOptions;\n dropdownRef: RefObject<HTMLDivElement>;\n position: 'top' | 'bottom';\n optionIndex?: number | null;\n}\n\n/**\n * A functional React component utilized to render the `Dropdown` component\n */\nexport const Dropdown: React.FC<DropdownProps> = ({\n onSelectItem,\n options,\n dropdownRef,\n position,\n optionIndex,\n}) => {\n const DropdownContent = useMemo(() => {\n return options.map((option, idx) => (\n <Box key={idx} width=\"100%\" role=\"combobox\">\n {option.value === 'section_header' &&\n options[idx + 1] &&\n options[idx + 1].value !== 'section_header' && (\n <Box\n color={colors.label.secondary.light}\n fontSize=\"13px\"\n width=\"100%\"\n fontWeight=\"bold\"\n px=\"8px\"\n bg=\"inherit\"\n whiteSpace=\"nowrap\"\n >\n {idx > 0 && (\n <Box\n width=\"100%\"\n my=\"3px\"\n borderTop=\"2px solid\"\n borderColor={colors.border.default}\n />\n )}\n {option.label}\n </Box>\n )}\n {option.value !== 'section_header' && (\n <Box\n cursor=\"pointer\"\n borderRadius=\"inherit\"\n onClick={() => onSelectItem(option)}\n key={option.value}\n fontSize=\"13px\"\n px=\"8px\"\n py=\"4px\"\n width=\"100%\"\n color={\n optionIndex === idx\n ? colors.label.primary.dark\n : colors.label.primary.light\n }\n _hover={{\n color: colors.label.primary.dark,\n bg: colors.fill.action,\n borderRadius: '4px',\n width: '100%',\n }}\n bg={optionIndex === idx ? colors.fill.action : 'inherit'}\n whiteSpace=\"nowrap\"\n id={option.value}\n >\n {option.label}\n </Box>\n )}\n </Box>\n ));\n }, [onSelectItem, optionIndex, options]);\n\n if (!options) return null;\n\n return (\n <Flex\n flexDirection=\"column\"\n ref={dropdownRef}\n scrollMargin=\"15px\"\n bg={colors.fill.light.quaternary}\n backdropFilter=\"auto\"\n backdropBlur=\"64px\"\n borderRadius=\"4px\"\n border=\"0.25px solid\"\n borderColor={colors.fill.light.tertiary}\n mt=\"3px\"\n maxH=\"240px\"\n overflowY=\"auto\"\n px=\"8px\"\n py=\"4px\"\n position=\"absolute\"\n top={position === 'top' ? 26 : undefined}\n bottom={position === 'bottom' ? 30 : undefined}\n width=\"fit-content\"\n minWidth=\"100%\"\n zIndex={100}\n tabIndex={-2000}\n >\n {DropdownContent}\n </Flex>\n );\n};\n","import { RefObject, useEffect } from 'react';\n\nexport function useOnClickOutside(ref: RefObject<any>, handler: () => void) {\n useEffect(\n () => {\n const listener: EventListener = event => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n handler();\n };\n\n document.addEventListener('mousedown', listener);\n document.addEventListener('touchstart', listener);\n\n return () => {\n document.removeEventListener('mousedown', listener);\n document.removeEventListener('touchstart', listener);\n };\n },\n // Add ref and handler to effect dependencies\n // It's worth noting that because passed in handler is a new ...\n // ... function on every render that will cause this effect ...\n // ... callback/cleanup to run every render. It's not a big deal ...\n // ... but to optimize you can wrap handler in useCallback before ...\n // ... passing it into this hook.\n [ref, handler]\n );\n}\n","export default \"data:image/svg+xml,%3Csvg%20%20viewBox%3D%220%200%2056%2056%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M27.9995%2056C43.4635%2056%2055.9995%2043.464%2055.9995%2028C55.9995%2012.536%2043.4635%200%2027.9995%200C12.5355%200%20-0.000488281%2012.536%20-0.000488281%2028C-0.000488281%2043.464%2012.5355%2056%2027.9995%2056ZM21.9807%2018.2688C20.9555%2017.2437%2019.2935%2017.2437%2018.2684%2018.2688C17.2432%2019.294%2017.2432%2020.956%2018.2684%2021.9812L24.2872%2028L18.2684%2034.0188C17.2432%2035.044%2017.2432%2036.706%2018.2684%2037.7312C19.2935%2038.7563%2020.9555%2038.7563%2021.9807%2037.7312L27.9995%2031.7123L34.0184%2037.7312C35.0435%2038.7563%2036.7055%2038.7563%2037.7307%2037.7312C38.7558%2036.706%2038.7558%2035.044%2037.7307%2034.0188L31.7118%2028L37.7307%2021.9812C38.7558%2020.956%2038.7558%2019.294%2037.7307%2018.2688C36.7055%2017.2437%2035.0435%2017.2437%2034.0184%2018.2688L27.9995%2024.2877L21.9807%2018.2688Z%22%20fill%3D%22%233C3C43%22%20fill-opacity%3D%220.6%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as DropdownIcon } from './dropdown.svg';\n\nexport interface DropdownProps {\n boxSize: number | string;\n disabled?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `Dropdown` icon component\n */\nexport const Dropdown: React.FC<DropdownProps> = ({ boxSize, disabled }) => {\n return (\n <DropdownIcon boxSize={boxSize} fill={disabled ? '#3C3C4399' : '#0082FF'} />\n );\n};\n","import React, {\n KeyboardEventHandler,\n useEffect,\n useRef,\n useMemo,\n useState,\n} from 'react';\nimport { Box, Input, InputGroup, InputRightElement } from '@chakra-ui/react';\nimport { FieldOptions } from '../InputTypes';\nimport { StackedInputProps } from '../StackedInput/StackedInput';\nimport colors from '../../../theme/foundations/colors';\nimport { UseFormSetValue, FieldValues, Control } from 'react-hook-form';\nimport { Dropdown } from '../components/dropdown';\nimport { useOnClickOutside } from '../../../hooks/useOnOutsideClick';\nimport { Dropdown as DropdownIcon } from '../../icons/dropdown';\nimport { debounce } from 'lodash';\n\nexport interface StackedSelectProps extends StackedInputProps {\n options: FieldOptions;\n fullOptions?: FieldOptions;\n setValue: UseFormSetValue<FieldValues>;\n control: Control<FieldValues, any>;\n handleOnChange: (value?: string) => void;\n}\n\n/**\n * A functional React component utilized to render the `StackedSelect` component.\n */\nconst StackedSelect = React.forwardRef<HTMLInputElement, StackedSelectProps>(\n (\n {\n isRequired,\n options,\n name,\n setValue,\n handleOnChange,\n disabled,\n value,\n fullOptions,\n ...props\n },\n _ref\n ) => {\n const dropdownRef = useRef<HTMLDivElement>(null);\n const dropdownMenuRef = useRef<HTMLDivElement>(null);\n\n const [isFocussed, setIsFocussed] = useState(false);\n const [selectedOption, setSelectedOption] = useState(\n options.find(option => option.value === value)?.label ?? ''\n );\n const [optionIndex, setOptionIndex] = useState<number | null>(null);\n const [position, setPosition] = useState<'top' | 'bottom'>('top');\n const [searchValue, setSearchValue] = useState('');\n const [debouncedSearchValue, setDebouncedSearchValue] = useState('');\n\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\n\n useEffect(() => {\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\n\n if (window.innerHeight - (boundingClientRect?.y + 240) >= 0) {\n setPosition('top');\n } else {\n setPosition('bottom');\n }\n }, [boundingClientRect]);\n\n useEffect(() => {\n setSelectedOption(\n (fullOptions || options).find(option => option.value === value)\n ?.label ?? ''\n );\n }, [fullOptions, value]);\n\n useOnClickOutside(dropdownRef, () => setIsFocussed(false));\n\n const handleOnSelectItem = (option: {\n label: string;\n value: string;\n sortValue: number;\n }) => {\n if (handleOnChange) {\n handleOnChange(option.value);\n }\n setValue(name as string, option.value);\n setSelectedOption(option.label);\n setIsFocussed(false);\n };\n\n const handleOnKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\n const initialOptionIndex = options[0].value === 'section_header' ? 1 : 0;\n\n if (\n !isFocussed &&\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\n ) {\n setIsFocussed(true);\n return setOptionIndex(initialOptionIndex);\n }\n\n if (isFocussed) {\n if (\n optionIndex === null &&\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\n ) {\n return setOptionIndex(initialOptionIndex);\n }\n\n if (e.key === 'ArrowUp' && optionIndex !== null && optionIndex > 0) {\n const incrementValue =\n options[optionIndex - 1] &&\n options[optionIndex - 1].value === 'section_header'\n ? 2\n : 1;\n setOptionIndex(optionIndex - incrementValue);\n\n return dropdownMenuRef.current?.scrollTo({\n top: optionIndex * 24,\n behavior: 'smooth',\n });\n }\n\n if (\n e.key === 'ArrowDown' &&\n optionIndex !== null &&\n optionIndex < options.length\n ) {\n const incrementValue =\n options[optionIndex + 1] &&\n options[optionIndex + 1].value === 'section_header'\n ? 2\n : 1;\n setOptionIndex(optionIndex + incrementValue);\n\n return dropdownMenuRef.current?.scrollTo({\n top: optionIndex * 24,\n behavior: 'smooth',\n });\n }\n\n if (e.key === 'Enter' && optionIndex !== null) {\n const option = options.find((_, idx) => optionIndex === idx);\n if (!option) return;\n\n if (handleOnChange) {\n handleOnChange(option.value);\n }\n\n setSelectedOption(option?.label);\n setValue(name as string, option.value, {\n shouldDirty: true,\n shouldValidate: true,\n });\n\n return setIsFocussed(false);\n }\n\n if (e.key === 'Tab') {\n return setIsFocussed(false);\n }\n }\n };\n\n useEffect(() => {\n if (searchValue.length) {\n const idx = options.findIndex(\n option =>\n option.label.substring(0, searchValue.length).toLowerCase() ===\n searchValue.toLowerCase()\n );\n\n dropdownMenuRef.current?.scrollTo({\n top: idx * 24,\n behavior: 'smooth',\n });\n\n setSearchValue('');\n setDebouncedSearchValue('');\n }\n }, [options, searchValue]);\n\n const updateSearchValue = useMemo(() => {\n return debounce(val => {\n setSearchValue(val);\n }, 1000);\n }, []);\n\n const update = (value: string) => {\n updateSearchValue(value);\n setDebouncedSearchValue(value);\n };\n\n return (\n <Box ref={dropdownRef} position=\"relative\">\n <InputGroup>\n <Input\n isRequired={isRequired}\n {...props}\n ref={_ref}\n onClick={() => setIsFocussed(!isFocussed)}\n cursor=\"pointer\"\n color=\"transparent\"\n fontSize=\"13px\"\n textShadow={`0 0 0 ${colors.label.primary.light}`}\n value={selectedOption}\n disabled={disabled}\n autoComplete=\"off\"\n onChange={e => update(debouncedSearchValue.concat(e.target.value))}\n onKeyDown={handleOnKeyDown}\n />\n <InputRightElement\n cursor={disabled ? 'not-allowed' : 'pointer'}\n onClick={() => !disabled && setIsFocussed(!isFocussed)}\n >\n <DropdownIcon boxSize=\"16px\" disabled={disabled} />\n </InputRightElement>\n </InputGroup>\n {isFocussed && (\n <Dropdown\n position={position}\n dropdownRef={dropdownMenuRef}\n onSelectItem={option => handleOnSelectItem(option)}\n options={options}\n optionIndex={optionIndex}\n />\n )}\n </Box>\n );\n }\n);\n\nexport default StackedSelect;\n","import React from 'react';\nimport { Flex, Textarea } from '@chakra-ui/react';\nimport { TextareaFieldProps } from '../InputTypes';\n\nexport interface StackedTextareaProps extends TextareaFieldProps {\n isRequired?: boolean;\n allowDefault?: boolean;\n variant: string;\n label?: string;\n}\n\n/**\n * A functional React component utilized to render the `StackedTextarea` component.\n */\nconst StackedTextarea = React.forwardRef<\n HTMLTextAreaElement,\n StackedTextareaProps\n>(({ isRequired, allowDefault, variant, label, ...props }, _ref) => {\n const isMobile = variant === 'mobile';\n if (isMobile) {\n return (\n <Flex>\n <Textarea\n ref={_ref}\n {...props}\n variant={variant}\n fontSize=\"17px\"\n placeholder={label ?? ''}\n onKeyDown={e => {\n if (e.key === 'Enter' && !allowDefault) {\n e.stopPropagation();\n e.preventDefault();\n }\n }}\n />\n </Flex>\n );\n }\n return (\n <Textarea\n ref={_ref}\n {...props}\n variant={variant}\n fontSize=\"13px\"\n onKeyDown={e => {\n if (e.key === 'Enter' && !allowDefault) {\n e.stopPropagation();\n e.preventDefault();\n }\n }}\n />\n );\n});\n\nexport default StackedTextarea;\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2210%22%20viewBox%3D%220%200%2012%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.7467%200.127888C12.0291%200.33708%2012.0836%200.729242%2011.8685%201.00381L5.01133%209.75378C4.89891%209.89724%204.72822%209.98649%204.54313%209.99859C4.35804%2010.0107%204.17659%209.94447%204.04542%209.81694L0.188288%206.06695C-0.0627627%205.82288%20-0.0627627%205.42715%200.188288%205.18307C0.439339%204.939%200.846372%204.939%201.09742%205.18307L4.43443%208.42738L10.8458%200.246255C11.0609%20-0.0283092%2011.4643%20-0.0813041%2011.7467%200.127888Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as CloseIcon } from './close.svg';\n\nexport interface CloseProps {\n boxSize: number | string;\n onClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `Close` icon component\n */\nexport const Close: React.FC<CloseProps> = ({ boxSize, onClick }) => {\n return (\n <CloseIcon\n width={boxSize}\n height={boxSize}\n onClick={onClick}\n cursor=\"pointer\"\n />\n );\n};\n","import { Flex, Text } from '@chakra-ui/react';\nimport { truncate } from 'lodash';\nimport React from 'react';\nimport { Close } from '../../../icons/close';\nimport colors from '../../../../../src/theme/foundations/colors';\n\nexport interface TokenProps {\n label: any;\n onDelete: any;\n isMobile?: boolean;\n}\n\n// For v1 we are truncating the label at 15 characters to avoid overflow\nconst Token: React.FC<TokenProps> = ({ label, onDelete, isMobile = false }) => {\n return (\n <Flex\n key={label}\n borderRadius={'full'}\n backgroundColor=\"#7676801F\"\n alignItems=\"center\"\n width=\"fit-content\"\n w=\"auto\"\n h={isMobile ? '18px' : '16px'}\n pl=\"6px\"\n pr=\"2px\"\n py=\"2px\"\n position=\"relative\"\n >\n <Text\n whiteSpace=\"nowrap\"\n color={colors.label.primary.light}\n fontSize={isMobile ? '17px' : '13px'}\n pr=\"4px\"\n >\n {truncate(label.trim(), {\n length: 15,\n omission: '...',\n })}\n </Text>\n <Close boxSize={isMobile ? '17px' : '11px'} onClick={onDelete} />\n </Flex>\n );\n};\n\nexport default Token;\n","import React, {\n KeyboardEventHandler,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Box, Flex, Text, Input } from '@chakra-ui/react';\nimport { debounce } from 'lodash';\nimport {\n FieldOption,\n FieldOptions,\n ReactSelectFieldProps,\n} from '../InputTypes';\nimport colors from '../../../theme/foundations/colors';\nimport {\n Control,\n FieldValues,\n UseFormClearErrors,\n UseFormSetError,\n UseFormSetValue,\n useWatch,\n} from 'react-hook-form';\nimport { Dropdown as DropdownIcon } from '../../icons/dropdown';\nimport { Dropdown } from '../components/dropdown';\nimport Token from '../components/token';\nimport { useOnClickOutside } from '../../../hooks/useOnOutsideClick';\n\nexport interface StackedMultiSelectProps extends ReactSelectFieldProps {\n options: FieldOptions;\n setValue: UseFormSetValue<FieldValues>;\n setError: UseFormSetError<FieldValues>;\n clearErrors: UseFormClearErrors<FieldValues>;\n control: Control<FieldValues, any>;\n}\n\n/**\n * A functional React component utilized to render the `StackedMultiSelect` component.\n */\nconst StackedMultiSelect = React.forwardRef<\n HTMLInputElement,\n StackedMultiSelectProps\n>(({ options, setValue, control, name, placeholder, disabled }, _ref) => {\n const watchedValue = useWatch({ control, name: name as string });\n const dropdownRef = useRef<HTMLDivElement>(null);\n const dropdownMenuRef = useRef<HTMLDivElement>(null);\n const scrollRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [isInit, setIsInit] = useState(false);\n const [localValues, setLocalValues] = useState<FieldOptions>([]);\n const [localOptions, setLocalOptions] = useState<FieldOptions>(options);\n const [isFocussed, setIsFocussed] = useState(false);\n const [shouldSideScroll, setShouldSideScroll] = useState(false);\n const [optionIndex, setOptionIndex] = useState<number | null>(null);\n\n const [position, setPosition] = useState<'top' | 'bottom'>('top');\n const [searchValue, setSearchValue] = useState('');\n const [debouncedSearchValue, setDebouncedSearchValue] = useState('');\n\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\n\n useEffect(() => {\n if (window.innerHeight - (boundingClientRect?.y + 240) >= 0) {\n setPosition('top');\n } else {\n setPosition('bottom');\n }\n }, [boundingClientRect]);\n\n useOnClickOutside(dropdownRef, () => setIsFocussed(false));\n\n // gets latest watched form value (common delimited) from RHF state and creates a list\n useEffect(() => {\n if (watchedValue !== undefined && !watchedValue.length && !isInit) {\n setLocalValues([]);\n setIsInit(true);\n }\n\n if (watchedValue !== undefined && watchedValue?.length && !isInit) {\n if (shouldSideScroll) {\n (scrollRef.current as HTMLDivElement).scrollTo({\n left: scrollRef.current?.scrollWidth,\n behavior: 'smooth',\n });\n setShouldSideScroll(false);\n }\n\n if (isInit) return;\n\n setLocalValues(\n watchedValue\n .split(',')\n .filter(Boolean)\n .map((value: string) =>\n options.find(option => option.value === value)\n )\n );\n // Filter out options that are already selected\n setLocalOptions(prevLocalOptions =>\n prevLocalOptions.filter(\n localOption =>\n !watchedValue\n .split(',')\n .filter(Boolean)\n .map((value: string) =>\n options.find(option => option.value === value)\n )\n .includes(localOption)\n )\n );\n\n setIsInit(true);\n }\n }, [\n isInit,\n localOptions,\n localValues,\n options,\n shouldSideScroll,\n watchedValue,\n ]);\n\n const handleChange = (option: FieldOption) => {\n setShouldSideScroll(true);\n const newValue = [...localValues, option]\n .map(({ value }) => value)\n .join(',');\n\n setValue(name as string, newValue, {\n shouldValidate: true,\n shouldDirty: true,\n });\n\n setLocalOptions(prevLocalOptions =>\n prevLocalOptions.filter(prevLocalOption => prevLocalOption !== option)\n );\n\n setLocalValues(prevLocalValues => [...prevLocalValues, option]);\n };\n\n const handleDelete = (option: FieldOption) => {\n const newValue = localValues\n .filter(localValue => localValue !== option)\n .map(({ value }) => value)\n .join(',');\n\n setValue(name as string, newValue, {\n shouldValidate: true,\n shouldDirty: true,\n });\n\n setLocalOptions(prevLocalOptions =>\n [...prevLocalOptions, option].sort((a, b) => a.sortValue - b.sortValue)\n );\n\n setLocalValues(prevLocalValues =>\n prevLocalValues.filter(prevLocalValue => prevLocalValue !== option)\n );\n };\n\n const handleOnKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\n const initialOptionIndex = options[0].value === 'section_header' ? 1 : 0;\n\n if (\n !isFocussed &&\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\n ) {\n setIsFocussed(true);\n return setOptionIndex(initialOptionIndex);\n }\n\n if (isFocussed) {\n if (\n optionIndex === null &&\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\n ) {\n return setOptionIndex(initialOptionIndex);\n }\n\n if (e.key === 'ArrowUp' && optionIndex !== null && optionIndex > 0) {\n const incrementValue =\n localOptions[optionIndex - 1] &&\n localOptions[optionIndex - 1].value === 'section_header'\n ? 2\n : 1;\n setOptionIndex(optionIndex - incrementValue);\n\n return dropdownMenuRef.current?.scrollTo({\n top: optionIndex * 24,\n behavior: 'smooth',\n });\n }\n\n if (\n e.key === 'ArrowDown' &&\n optionIndex !== null &&\n optionIndex < localOptions.length\n ) {\n const incrementValue =\n localOptions[optionIndex + 1] &&\n localOptions[optionIndex + 1].value === 'section_header'\n ? 2\n : 1;\n setOptionIndex(optionIndex + incrementValue);\n\n return dropdownMenuRef.current?.scrollTo({\n top: optionIndex * 24,\n behavior: 'smooth',\n });\n }\n\n if (e.key === 'Enter' && optionIndex !== null) {\n const option = localOptions.find((_, idx) => optionIndex === idx);\n if (!option) return;\n\n handleChange(option);\n\n return setIsFocussed(false);\n }\n\n if (e.key === 'Tab') {\n return setIsFocussed(false);\n }\n\n return update(debouncedSearchValue.concat(e.key));\n }\n };\n\n useEffect(() => {\n if (searchValue.length) {\n const idx = options.findIndex(\n option =>\n option.label.substring(0, searchValue.length).toLowerCase() ===\n searchValue.toLowerCase()\n );\n\n dropdownMenuRef.current?.scrollTo({\n top: idx * 24,\n behavior: 'smooth',\n });\n\n setSearchValue('');\n setDebouncedSearchValue('');\n }\n }, [options, searchValue]);\n\n const updateSearchValue = useMemo(() => {\n return debounce(val => {\n setSearchValue(val);\n }, 1000);\n }, []);\n\n const update = (value: string) => {\n updateSearchValue(value);\n setDebouncedSearchValue(value);\n };\n\n return (\n <Box ref={dropdownRef} position=\"relative\" onKeyDown={handleOnKeyDown}>\n <Flex\n fontSize=\"13px\"\n h=\"26px\"\n border={isFocussed ? '2px solid' : '.5px solid'}\n borderColor={isFocussed ? colors.border.focus : colors.border.default}\n py=\"5px\"\n pl=\"8px\"\n borderRadius=\"4px\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n onClick={() => {\n if (!disabled) {\n if (isFocussed) {\n return setIsFocussed(false);\n }\n\n inputRef.current?.focus();\n setIsFocussed(true);\n }\n }}\n bg={disabled ? colors.fill.light.quaternary : '#ffffff'}\n cursor={disabled ? 'not-allowed' : 'pointer'}\n >\n <Flex\n alignItems=\"center\"\n h=\"inherit\"\n width=\"90%\"\n overflowX=\"scroll\"\n style={{\n scrollbarWidth: 'none' /* Firefox */,\n msOverflowStyle: 'none',\n }}\n sx={{\n '::-webkit-scrollbar': {\n display: 'none',\n },\n }}\n ref={scrollRef}\n >\n {localValues.length ? (\n localValues.map((option, idx) => (\n <Box\n key={idx}\n mr=\"4px\"\n width=\"fit-content\"\n h=\"16px\"\n borderRadius=\"full\"\n >\n <Token\n label={option.label}\n onDelete={() => handleDelete(option)}\n />\n </Box>\n ))\n ) : (\n <Text color={colors.label.secondary.light} fontSize=\"13px\">\n {placeholder}\n </Text>\n )}\n </Flex>\n <Input\n padding={0}\n border=\"none\"\n height=\"0\"\n width=\"0\"\n autoComplete=\"off\"\n type=\"text\"\n ref={inputRef}\n tabIndex={-1}\n _focus={{ boxShadow: 'none !important' }}\n />\n <Flex mr=\"4px\" justifyContent=\"center\" alignItems=\"center\">\n <DropdownIcon boxSize=\"16px\" disabled={disabled} />\n </Flex>\n </Flex>\n {isFocussed && (\n <Dropdown\n dropdownRef={dropdownMenuRef}\n onSelectItem={option => handleChange(option)}\n options={localOptions}\n position={position}\n optionIndex={optionIndex}\n />\n )}\n </Box>\n );\n});\n\nexport default StackedMultiSelect;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Box, Flex, Input, Text, useOutsideClick } from '@chakra-ui/react';\nimport { InputFieldProps } from '../InputTypes';\nimport {\n Control,\n FieldValues,\n UseFormClearErrors,\n UseFormSetError,\n UseFormSetValue,\n useWatch,\n} from 'react-hook-form';\nimport colors from '../../../theme/foundations/colors';\nimport Token from '../components/token';\n\nexport interface StackedPilledInputProps extends InputFieldProps {\n setValue: UseFormSetValue<FieldValues>;\n setError: UseFormSetError<FieldValues>;\n clearErrors: UseFormClearErrors<FieldValues>;\n control: Control<FieldValues, any>;\n separators?: string[];\n variant?: string;\n label?: string;\n}\n\n/**\n * A functional React component utilized to render the `StackedPilledInput` component.\n */\nconst StackedPilledInput = React.forwardRef<\n HTMLInputElement,\n StackedPilledInputProps\n>(\n (\n {\n name,\n setValue,\n control,\n placeholder,\n disabled,\n separators = ['Enter', ' ', ',', ';', 'Tab'],\n variant,\n label,\n },\n _ref\n ) => {\n const watchedValue = useWatch({ control, name: name as string });\n const [lastestFormValueToArray, setLatestFormValueToArray] = useState<\n string[]\n >([]);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const inputWrapperRef = useRef(null);\n const scrollRef = useRef<HTMLDivElement>(null);\n\n const [tokenIndex, setTokenIndex] = useState<number | null>(null);\n const [isFocussed, setIsFocussed] = useState(false);\n const [localValue, setLocalValue] = useState('');\n\n const latestTokenElement = document.getElementById(\n `${name}_token_${lastestFormValueToArray.length - 1}`\n );\n\n // gets latest watched form value (common delimited) from RHF state and creates a list\n useEffect(() => {\n if (watchedValue !== undefined && !watchedValue.length) {\n setLatestFormValueToArray([]);\n }\n\n if (watchedValue !== undefined && watchedValue?.length) {\n setLatestFormValueToArray(\n watchedValue\n .split(';')\n .join(',')\n .split(',')\n .filter(Boolean)\n );\n\n if (latestTokenElement) {\n latestTokenElement.scrollIntoView({\n block: 'end',\n inline: 'center',\n behavior: 'smooth',\n });\n }\n }\n }, [latestTokenElement, watchedValue]);\n\n const handleOnChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (tokenIndex === null) {\n setLocalValue(\n e.target.value\n .trim()\n .replace(',', '')\n .replace(';', '').length\n ? e.target.value\n : ''\n );\n }\n };\n\n const onHandleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Enter') {\n e.stopPropagation();\n e.preventDefault();\n }\n\n if (separators.includes(e.key)) {\n if (\n e.key === 'Enter' &&\n !localValue.trim().length &&\n tokenIndex !== null\n ) {\n setLocalValue(lastestFormValueToArray[tokenIndex]);\n\n const filteredUniqueValues = Array.from(\n new Set(\n lastestFormValueToArray.filter(\n value => value !== lastestFormValueToArray[tokenIndex]\n )\n )\n );\n\n setValue(name as string, filteredUniqueValues.toString(), {\n shouldValidate: true,\n shouldDirty: true,\n });\n\n return setTokenIndex(null);\n }\n\n const filteredUniqueValues = Array.from(\n new Set([\n ...lastestFormValueToArray,\n ...localValue\n .trim()\n .split(';')\n .join(',')\n .split(','),\n ])\n );\n\n setLocalValue('');\n\n return setValue(name as string, filteredUniqueValues.toString(), {\n shouldValidate: true,\n shouldDirty: true,\n });\n }\n\n if (!localValue.trim().length && lastestFormValueToArray.length) {\n if (e.key === 'Backspace' && tokenIndex !== null) {\n setLocalValue(\n lastestFormValueToArray[tokenIndex].substring(\n 0,\n lastestFormValueToArray[tokenIndex].length\n )\n );\n\n const filteredUniqueValues = Array.from(\n new Set(\n [...lastestFormValueToArray].filter(\n value => value !== lastestFormValueToArray[tokenIndex]\n )\n )\n );\n\n setValue(name as string, filteredUniqueValues.toString(), {\n shouldValidate: true,\n shouldDirty: true,\n });\n\n return setTokenIndex(null);\n }\n\n if (e.key === 'ArrowLeft') {\n if (tokenIndex === 0) return;\n\n if (!tokenIndex) {\n return setTokenIndex(lastestFormValueToArray.length - 1);\n }\n\n setTokenIndex(prevTokenIndex => (prevTokenIndex as number) - 1);\n\n const tokenElement = document.getElementById(\n `${name}_token_${tokenIndex}`\n );\n\n if (!tokenElement || !scrollRef.current) return;\n\n return scrollRef.current.scrollBy({\n left: -1 * tokenElement.getBoundingClientRect().width,\n behavior: 'smooth',\n });\n }\n\n if (e.key === 'ArrowRight') {\n if (tokenIndex === null) return;\n\n if (tokenIndex === lastestFormValueToArray.length - 1) {\n return setTokenIndex(null);\n }\n setTokenIndex(prevTokenIndex => (prevTokenIndex as number) + 1);\n\n const tokenElement = document.getElementById(\n `${name}_token_${tokenIndex}`\n );\n\n if (!tokenElement || !scrollRef.current) return;\n\n return scrollRef.current.scrollBy({\n left: tokenElement.getBoundingClientRect().width,\n behavior: 'smooth',\n });\n }\n }\n };\n\n const onRemoveTag = (index: number) => {\n const filteredUniqueValues = lastestFormValueToArray.filter(\n (_, i) => i !== index\n );\n\n setLatestFormValueToArray(filteredUniqueValues);\n\n setValue(name as string, filteredUniqueValues.toString(), {\n shouldValidate: true,\n shouldDirty: true,\n });\n };\n\n const onBlur = () => {\n if (localValue.trim().length) {\n const filteredUniqueValues = Array.from(\n new Set([...lastestFormValueToArray, ...localValue.trim().split(',')])\n );\n\n setValue(name as string, filteredUniqueValues.toString(), {\n shouldValidate: true,\n shouldDirty: true,\n });\n setLocalValue('');\n }\n setIsFocussed(false);\n };\n\n useOutsideClick({\n ref: inputWrapperRef,\n handler: () => {\n onBlur();\n },\n });\n const isMobile = variant === 'mobile';\n\n return (\n <Box position=\"relative\">\n <Flex\n fontSize={isMobile ? '17px' : '13px'}\n border={isFocussed ? '2px solid' : '.5px solid'}\n borderColor={isFocussed ? colors.border.focus : colors.border.default}\n pl=\"8px\"\n borderRadius={isMobile ? '0' : '4px'}\n alignItems=\"center\"\n justifyContent=\"space-between\"\n style={\n isMobile\n ? {\n cursor: 'pointer',\n height: '48px',\n fontSize: '17px',\n lineHeight: '20px',\n fontWeight: 400,\n padding: '12px 16px 12px 0px',\n borderRadius: 0,\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\n borderLeft: 'none',\n borderRight: 'none',\n }\n : undefined\n }\n onClick={() => {\n if (isFocussed && tokenIndex !== null) {\n setTokenIndex(null);\n }\n\n if (!disabled) {\n inputRef.current?.focus();\n }\n }}\n bg={disabled ? colors.fill.light.quaternary : '#ffffff'}\n cursor={disabled ? 'not-allowed' : 'pointer'}\n ref={inputWrapperRef}\n h={isMobile ? '48px' : '26px'}\n >\n <Flex\n h=\"100%\"\n alignItems=\"center\"\n overflowX=\"scroll\"\n overflowY=\"hidden\"\n maxWidth={isFocussed ? '80%' : '100%'}\n style={{\n scrollbarWidth: 'none' /* Firefox */,\n msOverflowStyle: 'none',\n }}\n sx={{\n '::-webkit-scrollbar': {\n display: 'none',\n },\n }}\n ref={scrollRef}\n zIndex={100}\n onKeyDown={onHandleKeyDown}\n >\n {lastestFormValueToArray.length\n ? lastestFormValueToArray.map((label, index) => (\n <Box\n key={index}\n mr=\"4px\"\n border={\n tokenIndex === index\n ? `1px solid ${colors.border.focus}`\n : 'none'\n }\n borderRadius=\"full\"\n onClick={() => setTokenIndex(index)}\n width=\"100%\"\n id={`${name}_token_${index}`}\n >\n <Token\n label={label}\n onDelete={(e: any) => {\n e.stopPropagation();\n e.preventDefault();\n onRemoveTag(index);\n }}\n isMobile={isMobile}\n />\n </Box>\n ))\n : null}\n {!lastestFormValueToArray.length && !isFocussed ? (\n <Text\n color={colors.label.secondary.light}\n fontSize={isMobile ? '17px' : '13px'}\n >\n {placeholder}\n </Text>\n ) : null}\n </Flex>\n {!disabled && (\n <Flex flex={1} minWidth={isFocussed && !tokenIndex ? '20%' : 0}>\n <Input\n onKeyDown={onHandleKeyDown}\n type=\"text\"\n padding={0}\n alignContent=\"flex-start\"\n float=\"right\"\n border=\"none\"\n height=\"auto\"\n color={\n tokenIndex !== null ? 'transparent' : colors.label.primary\n }\n _focus={{ boxShadow: 'none !important' }}\n value={localValue}\n onChange={handleOnChange}\n ref={inputRef}\n onFocus={() => setIsFocussed(true)}\n onBlur={() => {\n setIsFocussed(false);\n return setTokenIndex(null);\n }}\n placeholder={\n isMobile && label && lastestFormValueToArray.length === 0\n ? (label as string)\n : ''\n }\n variant={variant}\n style={isMobile ? { border: 'none' } : undefined}\n />\n </Flex>\n )}\n </Flex>\n </Box>\n );\n }\n);\n\nexport default StackedPilledInput;\n","import React from 'react';\nimport { Switch, SwitchProps } from '@chakra-ui/react';\nimport colors from '../../../theme/foundations/colors';\n\nexport interface StackedSwitchProps extends SwitchProps {}\n\n/**\n * A functional React component utilized to render the `StackedSwitch` component.\n */\nconst StackedSwitch = React.forwardRef<HTMLInputElement, StackedSwitchProps>(\n ({ isRequired, onChange, value }, _ref) => {\n if (value === null) return null;\n\n return (\n <Switch\n h=\"21px\"\n _focus={{\n border: '2px solid',\n borderColor: colors.border.focus,\n }}\n ref={_ref}\n isRequired={isRequired}\n value={String(value)}\n defaultChecked={Boolean(value)}\n onChange={e => {\n if (onChange) return onChange(e.target.checked as any);\n }}\n />\n );\n }\n);\n\nexport default StackedSwitch;\n","import React from 'react';\nimport { Box, FormLabel, Tooltip } from '@chakra-ui/react';\nimport colors from '../../../../../src/theme/foundations/colors';\nimport { QuestionOutlineIcon } from '@chakra-ui/icons';\n\nexport interface LabelProps {\n label: string;\n tooltipText?: string;\n isRequired?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `Label` component\n */\nexport const Label: React.FC<LabelProps> = ({\n tooltipText,\n isRequired,\n label,\n}) => {\n return (\n <FormLabel display=\"flex\" ml=\"0\">\n {label}\n {isRequired && (\n <Box ml={1} color={colors.label.error}>\n *\n </Box>\n )}\n {!!tooltipText && (\n <Tooltip label={tooltipText} placement=\"top\">\n <QuestionOutlineIcon boxSize=\"13px\" ml=\"8px\" />\n </Tooltip>\n )}\n </FormLabel>\n );\n};\n","import React from 'react';\nimport StackedCheckBox from './StackedCheckbox/StackedCheckbox';\nimport StackedInput from './StackedInput/StackedInput';\nimport StackedRadioGroup from './StackedRadio/StackedRadioGroup';\nimport StackedSelect from './StackedSelect';\nimport StackedTextarea from './StackedTextarea/StackedTextarea';\nimport { FieldOptions, ValidationProps, InputType } from './InputTypes';\nimport {\n FormControl,\n FormErrorMessage,\n FormHelperText,\n} from '@chakra-ui/react';\nimport {\n Control,\n Controller,\n FieldValues,\n Path,\n PathValue,\n RefCallBack,\n UseFormClearErrors,\n UseFormSetError,\n UseFormSetValue,\n} from 'react-hook-form';\nimport StackedMultiSelect from './StackedMultiSelect';\nimport StackedPilledInput from './StackedPilledInput';\nimport StackedSwitch from './StackedSwitch';\nimport { Label } from './components/label';\n\nexport interface InputProps<T extends FieldValues> extends ValidationProps {\n inputType: InputType;\n name: string;\n ariaLabel: string;\n placeholder?: string;\n defaultValue?: string;\n label?: string;\n className?: string;\n options?: FieldOptions;\n fullOptions?: FieldOptions;\n maxLength?: number;\n helperText?: React.ReactNode;\n control: Control<T, unknown>;\n onChange?: (value?: string) => void;\n disabled?: boolean;\n tooltipText?: string;\n setValue: UseFormSetValue<T>;\n setError: UseFormSetError<T>;\n clearErrors: UseFormClearErrors<T>;\n leftElement?: React.ReactNode;\n allowDefault?: boolean;\n rightElement?: React.ReactNode;\n variant: string;\n}\n\n/**\n * A functional React component utilized to render the `Input` component. Utilizes a switch statement\n * to render the correct input based on the `inputType`.\n */\nexport function Input<T extends FieldValues>({\n inputType,\n label,\n ariaLabel,\n className,\n placeholder,\n name,\n helperText,\n options,\n tooltipText,\n isInvalid,\n errorText,\n isRequired,\n maxLength,\n defaultValue,\n fullOptions,\n control,\n disabled,\n rightElement,\n leftElement,\n allowDefault,\n variant = 'default',\n onChange,\n setValue,\n setError,\n clearErrors,\n}: InputProps<T>) {\n const selectedInputField = (\n onChange: () => void,\n onBlur: () => void,\n ref: RefCallBack,\n value: string\n ) => {\n switch (inputType) {\n case 'text':\n return (\n <StackedInput\n className={`input-${inputType} ${className ?? ''}`}\n aria-label={ariaLabel}\n name={name}\n id={name}\n placeholder={placeholder}\n maxLength={maxLength}\n isRequired={isRequired}\n isInvalid={isInvalid}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n rightElement={rightElement}\n leftElement={leftElement}\n disabled={disabled}\n defaultValue={defaultValue}\n value={value}\n allowDefault={allowDefault}\n variant={variant}\n label={label as string}\n />\n );\n case 'radio':\n return (\n <StackedRadioGroup\n className={`input-${inputType} ${className ?? ''}`}\n name={name}\n id={name}\n isInvalid={isInvalid}\n options={options as FieldOptions}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n disabled={disabled}\n value={value}\n />\n );\n case 'select':\n return (\n <StackedSelect\n className={`input-${inputType} ${className ?? ''}`}\n name={name}\n id={name}\n isRequired={isRequired}\n isInvalid={isInvalid}\n options={options as FieldOptions}\n handleOnChange={onChange}\n onBlur={onBlur}\n setValue={setValue as UseFormSetValue<FieldValues>}\n control={control as Control<FieldValues, any>}\n ref={ref}\n disabled={disabled}\n value={value}\n defaultValue={defaultValue}\n placeholder={placeholder}\n fullOptions={fullOptions}\n />\n );\n case 'textarea':\n return (\n <StackedTextarea\n className={`input-${inputType} ${className ?? ''}`}\n aria-label={ariaLabel}\n name={name}\n id={name}\n placeholder={placeholder}\n maxLength={maxLength}\n isRequired={isRequired}\n isInvalid={isInvalid}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n disabled={disabled}\n value={value}\n variant={variant}\n label={label as string}\n />\n );\n case 'checkbox':\n return (\n <StackedCheckBox\n className={`input-${inputType} ${className ?? ''}`}\n name={name}\n id={name}\n isInvalid={isInvalid}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n value={value}\n defaultValue={defaultValue}\n label={label as string}\n disabled={disabled}\n variant={variant}\n />\n );\n case 'multi-select':\n return (\n <StackedMultiSelect\n className={`input-${inputType} ${className ?? ''}`}\n name={name}\n id={name}\n isInvalid={isInvalid}\n options={options as FieldOptions}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n disabled={disabled}\n value={value}\n setValue={setValue as UseFormSetValue<FieldValues>}\n control={control as Control<FieldValues, any>}\n setError={setError as UseFormSetError<FieldValues>}\n clearErrors={clearErrors as UseFormClearErrors<FieldValues>}\n placeholder={placeholder}\n />\n );\n case 'pilled-text':\n return (\n <StackedPilledInput\n className={`input-${inputType} ${className ?? ''}`}\n aria-label={ariaLabel}\n name={name}\n id={name}\n isInvalid={isInvalid}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n disabled={disabled}\n value={value}\n placeholder={placeholder}\n setValue={setValue as UseFormSetValue<FieldValues>}\n setError={setError as UseFormSetError<FieldValues>}\n clearErrors={clearErrors as UseFormClearErrors<FieldValues>}\n control={control as Control<FieldValues, any>}\n maxLength={maxLength}\n variant={variant}\n label={label}\n />\n );\n case 'switch':\n return (\n <StackedSwitch\n className={`input-${inputType} ${className ?? ''}`}\n name={name}\n id={name}\n isInvalid={isInvalid}\n onChange={onChange}\n onBlur={onBlur}\n ref={ref}\n value={value}\n defaultValue={defaultValue}\n />\n );\n default:\n return null;\n }\n };\n const nonLabeledInputs = ['checkbox'];\n\n return (\n <Controller\n control={control}\n name={name as Path<T>}\n defaultValue={defaultValue as PathValue<T, Path<T>>}\n rules={{ required: isRequired }}\n /** @ts-ignore: issues with implicit */\n render={({ field: { onBlur, onChange: fieldOnChange, ref, value } }) => (\n <FormControl\n id={name}\n isInvalid={isInvalid}\n position=\"relative\"\n py={\n (!nonLabeledInputs.includes(inputType) &&\n variant !== 'mobile' &&\n label) ||\n helperText ||\n isInvalid\n ? 5\n : 0\n }\n >\n {label &&\n !nonLabeledInputs.includes(inputType) &&\n variant !== 'mobile' && (\n <Label\n tooltipText={tooltipText}\n label={label}\n isRequired={isRequired}\n />\n )}\n {selectedInputField(\n onChange ? onChange : fieldOnChange,\n onBlur,\n ref,\n value\n )}\n {isInvalid ? (\n <FormErrorMessage>{errorText}</FormErrorMessage>\n ) : (\n helperText && <FormHelperText>{helperText}</FormHelperText>\n )}\n </FormControl>\n )}\n />\n );\n}\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%226%22%20viewBox%3D%220%200%208%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.184136%200.767507C0.422999%200.537831%200.802824%200.545278%201.0325%200.784142L4%203.93434L6.9675%200.784142C7.19718%200.545279%207.577%200.537831%207.81587%200.767507C8.05473%200.997183%208.06218%201.37701%207.8325%201.61587L4.4325%205.21587C4.31938%205.33352%204.16321%205.40001%204%205.40001C3.83679%205.40001%203.68062%205.33352%203.5675%205.21587L0.167501%201.61587C-0.0621751%201.37701%20-0.0547276%200.997183%200.184136%200.767507Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%226%22%20height%3D%228%22%20viewBox%3D%220%200%206%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.767599%207.81586C0.537923%207.577%200.54537%207.19718%200.784233%206.9675L3.93443%204L0.784233%201.0325C0.54537%200.802823%200.537922%200.422997%200.767598%200.184134C0.997274%20-0.0547285%201.3771%20-0.0621767%201.61596%200.167499L5.21596%203.5675C5.33361%203.68062%205.4001%203.83679%205.4001%204C5.4001%204.16321%205.33361%204.31938%205.21596%204.4325L1.61596%207.8325C1.3771%208.06218%200.997275%208.05473%200.767599%207.81586Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%203V7H10M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as ChevronRightIcon } from './chevron-right.svg';\n\nexport interface ChevronRightProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `ChevronRight` icon component\n */\nexport const ChevronRight: React.FC<ChevronRightProps> = ({ boxSize }) => {\n return <ChevronRightIcon boxSize={boxSize} />;\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.75%200C1.05964%200%200.5%200.559644%200.5%201.25V12.75C0.5%2013.4404%201.05964%2014%201.75%2014H10.25C10.9404%2014%2011.5%2013.4404%2011.5%2012.75V7.5C11.5%206.11929%2010.3807%205%209%205H7.75C7.05964%205%206.5%204.44036%206.5%203.75V2.5C6.5%201.11929%205.38071%200%204%200H1.75Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M6.64746%200.210603C7.17864%200.824319%207.5%201.62463%207.5%202.5V3.75C7.5%203.88807%207.61193%204%207.75%204H9C9.87537%204%2010.6757%204.32136%2011.2894%204.85254C10.6975%202.58658%208.91342%200.802516%206.64746%200.210603Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.0461%208.47693V6.75385C11.0461%205.53033%2010.0542%204.53847%208.83072%204.53847H7.84611C7.43826%204.53847%207.10764%204.20785%207.10764%203.80001V2.81539C7.10764%201.59187%206.11578%200.600006%204.89226%200.600006H3.66149M5.13841%200.600006H1.93841C1.53057%200.600006%201.19995%200.930626%201.19995%201.33847V12.6615C1.19995%2013.0694%201.53057%2013.4%201.93841%2013.4H10.3076C10.7155%2013.4%2011.0461%2013.0694%2011.0461%2012.6615V6.5077C11.0461%203.24497%208.40114%200.600006%205.13841%200.600006Z%22%20stroke%3D%22white%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.0001%200.399994C1.2269%200.399994%200.600098%201.02679%200.600098%201.79999V4.40872C1.00422%204.14999%201.48464%203.99999%202.0001%203.99999H12.0001C12.5156%203.99999%2012.996%204.14999%2013.4001%204.40872V3.39999C13.4001%202.6268%2012.7733%201.99999%2012.0001%201.99999H8.13147C8.07842%201.99999%208.02755%201.97892%207.99005%201.94142L6.85868%200.810044C6.59613%200.547493%206.24003%200.399994%205.86873%200.399994H2.0001Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M2.0001%205.19999C1.2269%205.19999%200.600098%205.8268%200.600098%206.59999V10.2C0.600098%2010.9732%201.2269%2011.6%202.0001%2011.6H12.0001C12.7733%2011.6%2013.4001%2010.9732%2013.4001%2010.2V6.59999C13.4001%205.8268%2012.7733%205.19999%2012.0001%205.19999H2.0001Z%22%20fill%3D%22%230082ff%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22Layer_1%22%20data-name%3D%22Layer%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20viewBox%3D%220%200%20102.4%2089.6%22%3E%20%20%3Cdefs%3E%20%20%20%20%3Cstyle%3E%20%20%20%20%20%20.cls-1%20%7B%20%20%20%20%20%20%20%20fill%3A%20url%28%23linear-gradient-2%29%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-1%2C%20.cls-2%20%7B%20%20%20%20%20%20%20%20fill-opacity%3A%20.8%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-3%20%7B%20%20%20%20%20%20%20%20fill%3A%20%23fff%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-2%20%7B%20%20%20%20%20%20%20%20fill%3A%20url%28%23linear-gradient%29%3B%20%20%20%20%20%20%7D%20%20%20%20%3C%2Fstyle%3E%20%20%20%20%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%2267.42%22%20y1%3D%2297.14%22%20x2%3D%2214.33%22%20y2%3D%2213.53%22%20gradientTransform%3D%22translate%280%2091.6%29%20scale%281%20-1%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff81e2%22%2F%3E%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230082ff%22%2F%3E%20%20%20%20%3C%2FlinearGradient%3E%20%20%20%20%3ClinearGradient%20id%3D%22linear-gradient-2%22%20x1%3D%2287.33%22%20y1%3D%2284.5%22%20x2%3D%2234.24%22%20y2%3D%22.89%22%20gradientTransform%3D%22translate%280%2091.6%29%20scale%281%20-1%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff81e2%22%2F%3E%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230082ff%22%2F%3E%20%20%20%20%3C%2FlinearGradient%3E%20%20%3C%2Fdefs%3E%20%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22m11.2%2C0C5.01%2C0%2C0%2C5.01%2C0%2C11.2v20.87c3.23-2.07%2C7.08-3.27%2C11.2-3.27h80c4.12%2C0%2C7.97%2C1.2%2C11.2%2C3.27v-8.07c0-6.19-5.01-11.2-11.2-11.2h-30.95c-.42%2C0-.83-.17-1.13-.47l-9.05-9.05c-2.1-2.1-4.95-3.28-7.92-3.28H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22m11.2%2C0C5.01%2C0%2C0%2C5.01%2C0%2C11.2v20.87c3.23-2.07%2C7.08-3.27%2C11.2-3.27h80c4.12%2C0%2C7.97%2C1.2%2C11.2%2C3.27v-8.07c0-6.19-5.01-11.2-11.2-11.2h-30.95c-.42%2C0-.83-.17-1.13-.47l-9.05-9.05c-2.1-2.1-4.95-3.28-7.92-3.28H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22m11.2%2C38.4c-6.19%2C0-11.2%2C5.01-11.2%2C11.2v28.8c0%2C6.19%2C5.01%2C11.2%2C11.2%2C11.2h80c6.19%2C0%2C11.2-5.01%2C11.2-11.2v-28.8c0-6.19-5.01-11.2-11.2-11.2H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22m11.2%2C38.4c-6.19%2C0-11.2%2C5.01-11.2%2C11.2v28.8c0%2C6.19%2C5.01%2C11.2%2C11.2%2C11.2h80c6.19%2C0%2C11.2-5.01%2C11.2-11.2v-28.8c0-6.19-5.01-11.2-11.2-11.2H11.2Z%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1%206.53846V6.07692C1%205.31222%201.61991%204.69231%202.38462%204.69231H11.6154C12.3801%204.69231%2013%205.31222%2013%206.07692V6.53846M7.65271%202.57579L6.34729%201.27036C6.17418%201.09725%205.93939%201%205.69457%201H2.38462C1.61991%201%201%201.61991%201%202.38462V9.76923C1%2010.5339%201.61991%2011.1538%202.38462%2011.1538H11.6154C12.3801%2011.1538%2013%2010.5339%2013%209.76923V4.23077C13%203.46607%2012.3801%202.84615%2011.6154%202.84615H8.30543C8.06061%202.84615%207.82582%202.7489%207.65271%202.57579Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8%207V11M10%209H6M8.70711%204.20711L7.29289%202.79289C7.10536%202.60536%206.851%202.5%206.58579%202.5H3C2.17157%202.5%201.5%203.17157%201.5%204V12C1.5%2012.8284%202.17157%2013.5%203%2013.5H13C13.8284%2013.5%2014.5%2012.8284%2014.5%2012V6C14.5%205.17157%2013.8284%204.5%2013%204.5H9.41421C9.149%204.5%208.89464%204.39464%208.70711%204.20711Z%22%20stroke%3D%22white%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%205V9M9%207H5M7.70711%202.20711L6.29289%200.792893C6.10536%200.605357%205.851%200.5%205.58579%200.5H2C1.17157%200.5%200.5%201.17157%200.5%202V10C0.5%2010.8284%201.17157%2011.5%202%2011.5H12C12.8284%2011.5%2013.5%2010.8284%2013.5%2010V4C13.5%203.17157%2012.8284%202.5%2012%202.5H8.41421C8.149%202.5%207.89464%202.39464%207.70711%202.20711Z%22%20stroke%3D%22%233C3C4399%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2214%22%20viewBox%3D%220%200%2015%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M9.35643%2011.6759C9.92846%2011.8425%2010.5334%2011.9317%2011.1592%2011.9317C12.1747%2011.9317%2013.1354%2011.6966%2013.9897%2011.2778C13.9913%2011.2384%2013.9921%2011.1989%2013.9921%2011.1591C13.9921%209.59453%2012.7238%208.32618%2011.1592%208.32618C10.1853%208.32618%209.32622%208.81758%208.81633%209.56595M9.35643%2011.6759V11.6742C9.35643%2010.9099%209.16058%2010.1913%208.81633%209.56595M9.35643%2011.6759C9.35642%2011.7004%209.3562%2011.7249%209.35579%2011.7493C8.07722%2012.5191%206.57945%2012.9619%204.97826%2012.9619C3.37707%2012.9619%201.87931%2012.5191%200.60073%2011.7493C0.60031%2011.7243%200.600098%2011.6993%200.600098%2011.6742C0.600098%209.25619%202.56027%207.29602%204.97826%207.29602C6.63195%207.29602%208.0715%208.21286%208.81633%209.56595M7.29611%202.91786C7.29611%204.19797%206.25838%205.23571%204.97826%205.23571C3.69815%205.23571%202.66041%204.19797%202.66041%202.91786C2.66041%201.63774%203.69815%200.600006%204.97826%200.600006C6.25838%200.600006%207.29611%201.63774%207.29611%202.91786ZM12.962%204.46309C12.962%205.45874%2012.1548%206.26587%2011.1592%206.26587C10.1636%206.26587%209.35643%205.45874%209.35643%204.46309C9.35643%203.46745%2010.1636%202.66032%2011.1592%202.66032C12.1548%202.66032%2012.962%203.46745%2012.962%204.46309Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2214%22%20viewBox%3D%220%200%2015%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20stroke%3D%22%230082ff%22%20d%3D%22M0.800049%207.26691L6.67788%201.38908C6.96626%201.10069%207.43383%201.10069%207.72222%201.38908L13.6%207.26691M2.27697%205.78999V12.4361C2.27697%2012.844%202.60759%2013.1746%203.01543%2013.1746H5.72313V9.9746C5.72313%209.56676%206.05375%209.23614%206.46159%209.23614H7.93851C8.34635%209.23614%208.67697%209.56676%208.67697%209.9746V13.1746H11.3847C11.7925%2013.1746%2012.1231%2012.844%2012.1231%2012.4361V5.78999M4.73851%2013.1746H10.1539%22%20%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2212%22%20viewBox%3D%220%200%2016%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.800049%202.19999C0.800049%201.20588%201.60594%200.399994%202.60005%200.399994H13.4C14.3942%200.399994%2015.2%201.20588%2015.2%202.19999V9.79999C15.2%2010.7941%2014.3942%2011.6%2013.4%2011.6H2.60005C1.60594%2011.6%200.800049%2010.7941%200.800049%209.79999V2.19999ZM2.00005%206.84852V9.79999C2.00005%2010.1314%202.26868%2010.4%202.60005%2010.4H13.4C13.7314%2010.4%2014%2010.1314%2014%209.79999V7.64852L12.2243%205.87279C11.99%205.63847%2011.6101%205.63847%2011.3758%205.87279L9.84858%207.39999L10.2243%207.77573C10.4586%208.01004%2010.4586%208.38994%2010.2243%208.62426C9.99%208.85857%209.6101%208.85857%209.37578%208.62426L5.22431%204.47279C4.99%204.23847%204.6101%204.23847%204.37578%204.47279L2.00005%206.84852ZM9.60005%203.59999C9.60005%204.04182%209.24188%204.39999%208.80005%204.39999C8.35822%204.39999%208.00005%204.04182%208.00005%203.59999C8.00005%203.15817%208.35822%202.79999%208.80005%202.79999C9.24188%202.79999%209.60005%203.15817%209.60005%203.59999Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20viewBox%3D%220%200%2010%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0%200.8C0%200.468629%200.268629%200.2%200.6%200.2H9C9.33137%200.2%209.6%200.468629%209.6%200.8C9.6%201.13137%209.33137%201.4%209%201.4H0.6C0.268629%201.4%200%201.13137%200%200.8ZM0%205C0%204.66863%200.268629%204.4%200.6%204.4H9C9.33137%204.4%209.6%204.66863%209.6%205C9.6%205.33137%209.33137%205.6%209%205.6H0.6C0.268629%205.6%200%205.33137%200%205ZM0%209.2C0%208.86863%200.268629%208.6%200.6%208.6H9C9.33137%208.6%209.6%208.86863%209.6%209.2C9.6%209.53137%209.33137%209.8%209%209.8H0.6C0.268629%209.8%200%209.53137%200%209.2Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.2001%201.8C3.77005%201.8%201.8001%203.76995%201.8001%206.2C1.8001%208.63005%203.77005%2010.6%206.2001%2010.6C7.41529%2010.6%208.51447%2010.1082%209.31137%209.31127C10.1083%208.51437%2010.6001%207.41519%2010.6001%206.2C10.6001%203.76995%208.63015%201.8%206.2001%201.8ZM0.600098%206.2C0.600098%203.10721%203.1073%200.6%206.2001%200.6C9.29289%200.6%2011.8001%203.10721%2011.8001%206.2C11.8001%207.53002%2011.3358%208.75245%2010.5615%209.71285L13.2244%2012.3757C13.4587%2012.6101%2013.4587%2012.9899%2013.2244%2013.2243C12.99%2013.4586%2012.6101%2013.4586%2012.3758%2013.2243L9.71295%2010.5614C8.75255%2011.3358%207.53012%2011.8%206.2001%2011.8C3.1073%2011.8%200.600098%209.29279%200.600098%206.2Z%22%20fill%3D%22%233C3C4399%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22%230082ff%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.4194%207.39998C10.7956%207.39998%2011.081%207.05374%2010.9292%206.70955C10.433%205.58495%209.30821%204.79999%208.00005%204.79999C7.88306%204.79999%207.76754%204.80627%207.6538%204.8185C7.27948%204.85878%207.12204%205.27922%207.31028%205.60526L8.17326%207.09998C8.28044%207.28562%208.47851%207.39998%208.69287%207.39998L10.4194%207.39998Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M6.27163%206.20627C6.08334%205.88013%205.64026%205.80621%205.4176%206.10992C5.02933%206.63952%204.80005%207.29298%204.80005%207.99999C4.80005%208.70702%205.02935%209.36049%205.41763%209.8901C5.6403%2010.1938%206.08337%2010.1199%206.27166%209.79375L7.13406%208.30003C7.24124%208.11439%207.24124%207.88567%207.13406%207.70003L6.27163%206.20627Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M7.31033%2010.3947C7.12209%2010.7208%207.27954%2011.1412%207.65386%2011.1815C7.76758%2011.1937%207.88308%2011.2%208.00005%2011.2C9.30822%2011.2%2010.433%2010.415%2010.9292%209.29041C11.0811%208.94622%2010.7956%208.59998%2010.4194%208.59998H8.69293C8.47857%208.59998%208.2805%208.71434%208.17332%208.89998L7.31033%2010.3947Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20stroke%3D%22%230082ff%22%20fill%3D%22%230082ff%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.3037%203.47778L11.8196%202.58421C11.9853%202.29723%2011.8869%201.93028%2011.6%201.76459C11.313%201.59891%2010.946%201.69723%2010.7803%201.98421L10.2649%202.87691C9.74658%202.6474%209.18685%202.49426%208.60005%202.43175V1.39999C8.60005%201.06862%208.33142%200.799988%208.00005%200.799988C7.66868%200.799988%207.40005%201.06862%207.40005%201.39999V2.43175C6.81324%202.49426%206.25351%202.6474%205.73514%202.87691L5.21975%201.98423C5.05406%201.69725%204.68711%201.59893%204.40013%201.76461C4.11316%201.9303%204.01483%202.29725%204.18052%202.58423L4.69641%203.47779C4.23032%203.81887%203.81892%204.23026%203.47785%204.69636L2.58412%204.18036C2.29714%204.01468%201.93019%204.113%201.7645%204.39998C1.59882%204.68695%201.69714%205.05391%201.98412%205.21959L2.87697%205.73508C2.64746%206.25346%202.49432%206.81318%202.43181%207.39999H1.40005C1.06868%207.39999%200.800049%207.66862%200.800049%207.99999C0.800049%208.33136%201.06868%208.59999%201.40005%208.59999H2.43181C2.49432%209.18679%202.64746%209.74651%202.87696%2010.2649L1.98412%2010.7804C1.69714%2010.946%201.59882%2011.313%201.7645%2011.6C1.93019%2011.887%202.29714%2011.9853%202.58412%2011.8196L3.47783%2011.3036C3.81889%2011.7697%204.23025%2012.181%204.6963%2012.5221L4.18035%2013.4157C4.01466%2013.7027%204.11299%2014.0697%204.39996%2014.2354C4.68694%2014.401%205.05389%2014.3027%205.21958%2014.0157L5.73501%2013.123C6.25342%2013.3525%206.81319%2013.5057%207.40005%2013.5682V14.6C7.40005%2014.9314%207.66868%2015.2%208.00005%2015.2C8.33142%2015.2%208.60005%2014.9314%208.60005%2014.6V13.5682C9.1869%2013.5057%209.74667%2013.3525%2010.2651%2013.123L10.7805%2014.0158C10.9462%2014.3027%2011.3132%2014.4011%2011.6001%2014.2354C11.8871%2014.0697%2011.9854%2013.7027%2011.8197%2013.4158L11.3038%2012.5221C11.7698%2012.1811%2012.1812%2011.7697%2012.5222%2011.3037L13.4159%2011.8196C13.7028%2011.9853%2014.0698%2011.887%2014.2355%2011.6C14.4012%2011.313%2014.3028%2010.946%2014.0159%2010.7804L13.1231%2010.2649C13.3526%209.74655%2013.5058%209.18681%2013.5683%208.59999H14.6C14.9314%208.59999%2015.2%208.33136%2015.2%207.99999C15.2%207.66862%2014.9314%207.39999%2014.6%207.39999H13.5683C13.5058%206.81316%2013.3526%206.25341%2013.1231%205.73502L14.0159%205.21959C14.3028%205.05391%2014.4012%204.68695%2014.2355%204.39998C14.0698%204.113%2013.7028%204.01468%2013.4159%204.18036L12.5222%204.6963C12.1811%204.23023%2011.7698%203.81885%2011.3037%203.47778ZM8.00005%203.59999C7.20901%203.59999%206.46672%203.80874%205.82527%204.17415C5.81706%204.17944%205.80868%204.18455%205.80013%204.18948C5.79187%204.19425%205.78355%204.1988%205.77516%204.20314C5.12539%204.58471%204.58225%205.12831%204.20124%205.77844C4.19744%205.78567%204.19349%205.79285%204.18937%205.79998C4.18509%205.80739%204.18067%205.81469%204.17613%205.82185C3.80953%206.46407%203.60005%207.20756%203.60005%207.99999C3.60005%208.79233%203.80948%209.53575%204.17601%2010.1779C4.1806%2010.1851%204.18505%2010.1925%204.18937%2010.2C4.19353%2010.2072%204.19752%2010.2144%204.20134%2010.2217C4.5826%2010.8722%205.12617%2011.416%205.77644%2011.7976C5.78434%2011.8017%205.79218%2011.806%205.79996%2011.8105C5.80805%2011.8152%205.81598%2011.82%205.82377%2011.825C6.46556%2012.1909%207.20839%2012.4%208.00005%2012.4C8.79182%2012.4%209.53475%2012.1909%2010.1766%2011.8248C10.1843%2011.8199%2010.1921%2011.8151%2010.2001%2011.8105C10.2078%2011.8061%2010.2156%2011.8018%2010.2234%2011.7977C10.8731%2011.4165%2011.4163%2010.8734%2011.7976%2010.2237C11.8017%2010.2157%2011.8061%2010.2078%2011.8106%2010.2C11.8153%2010.1918%2011.8202%2010.1838%2011.8252%2010.176C12.191%209.53427%2012.4%208.79154%2012.4%207.99999C12.4%207.20836%2012.191%206.46555%2011.8251%205.82378C11.8201%205.81599%2011.8153%205.80806%2011.8106%205.79998C11.8061%205.79219%2011.8018%205.78434%2011.7977%205.77644C11.4167%205.12711%2010.8739%204.58418%2010.2247%204.20299C10.2164%204.19869%2010.2081%204.19419%2010.2%204.18947C10.1915%204.18458%2010.1832%204.17952%2010.1751%204.17429C9.53356%203.80879%208.79119%203.59999%208.00005%203.59999Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2212%22%20viewBox%3D%220%200%2016%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.791992%202.19199C0.791992%201.19788%201.60589%200.400002%202.6%200.400002H13.4C14.3941%200.400002%2015.2%201.20589%2015.2%202.2L15.208%209.8C15.208%2010.7941%2014.4021%2011.6%2013.408%2011.6C10.3413%2011.6%205.67467%2011.6%202.60801%2011.6C1.6139%2011.6%200.8%2010.7861%200.8%209.79199L0.791992%202.19199ZM7.4%209.80801V9.30801C7.4%208.97664%207.13137%208.70801%206.8%208.70801H2.6C2.26863%208.70801%202%208.97664%202%209.30801V9.8C2%2010.1314%202.26863%2010.4%202.6%2010.4H6.89827C7.18289%2010.3531%207.4%2010.1059%207.4%209.80801ZM8.6%209.80801C8.6%2010.1059%208.81711%2010.3531%209.10173%2010.4H13.4C13.7314%2010.4%2014%2010.1314%2014%209.8V9.30801C14%208.97664%2013.7314%208.70801%2013.4%208.70801H9.2C8.86863%208.70801%208.6%208.97664%208.6%209.30801V9.80801ZM14%206.90401V6.40401C14%206.07264%2013.7314%205.80401%2013.4%205.80401H9.2C8.86863%205.80401%208.6%206.07264%208.6%206.40401V6.90401C8.6%207.23538%208.86863%207.50401%209.2%207.50401H13.4C13.7314%207.50401%2014%207.23538%2014%206.90401ZM7.4%206.90401V6.40401C7.4%206.07264%207.13137%205.80401%206.8%205.80401H2.6C2.26863%205.80401%202%206.07264%202%206.40401V6.90401C2%207.23538%202.26863%207.50401%202.6%207.50401H6.8C7.13137%207.50401%207.4%207.23538%207.4%206.90401ZM14%204V3.5C14%203.16863%2013.7314%202.9%2013.4%202.9H9.2C8.86863%202.9%208.6%203.16863%208.6%203.5V4C8.6%204.33137%208.86863%204.6%209.2%204.6H13.4C13.7314%204.6%2014%204.33137%2014%204ZM7.4%204V3.5C7.4%203.16863%207.13137%202.9%206.8%202.9H2.6C2.26863%202.9%202%203.16863%202%203.5V4C2%204.33137%202.26863%204.6%202.6%204.6H6.8C7.13137%204.6%207.4%204.33137%207.4%204Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.25%2011H12.75M1.25%2011C0.835786%2011%200.5%2010.6642%200.5%2010.25M1.25%2011H6.25C6.66421%2011%207%2010.6642%207%2010.25M0.5%2010.25V1.75M0.5%2010.25V9.25C0.5%208.83579%200.835787%208.5%201.25%208.5M13.5%2010.25V1.75M13.5%2010.25C13.5%2010.6642%2013.1642%2011%2012.75%2011M13.5%2010.25V9.25C13.5%208.83579%2013.1642%208.5%2012.75%208.5M12.75%2011H7.75C7.33579%2011%207%2010.6642%207%2010.25M13.5%201.75C13.5%201.33579%2013.1642%201%2012.75%201H1.25C0.835786%201%200.5%201.33579%200.5%201.75M13.5%201.75V2.75C13.5%203.16421%2013.1642%203.5%2012.75%203.5M0.5%201.75V2.75C0.5%203.16421%200.835786%203.5%201.25%203.5M1.25%203.5H12.75M1.25%203.5H6.25C6.66421%203.5%207%203.83579%207%204.25M1.25%203.5C0.835786%203.5%200.5%203.83579%200.5%204.25V5.25C0.5%205.66421%200.835787%206%201.25%206M12.75%203.5H7.75C7.33579%203.5%207%203.83579%207%204.25M12.75%203.5C13.1642%203.5%2013.5%203.83579%2013.5%204.25V5.25C13.5%205.66421%2013.1642%206%2012.75%206M1.25%206H6.25M1.25%206C0.835787%206%200.5%206.33579%200.5%206.75V7.75C0.5%208.16421%200.835787%208.5%201.25%208.5M7%205.25V4.25M7%205.25C7%205.66421%206.66421%206%206.25%206M7%205.25C7%205.66421%207.33579%206%207.75%206M6.25%206C6.66421%206%207%206.33579%207%206.75M7.75%206H12.75M7.75%206C7.33579%206%207%206.33579%207%206.75M12.75%206C13.1642%206%2013.5%206.33579%2013.5%206.75V7.75C13.5%208.16421%2013.1642%208.5%2012.75%208.5M1.25%208.5H6.25M7%207.75V6.75M7%207.75C7%208.16421%206.66421%208.5%206.25%208.5M7%207.75C7%208.16421%207.33579%208.5%207.75%208.5M6.25%208.5C6.66421%208.5%207%208.83579%207%209.25M7%2010.25V9.25M7%209.25C7%208.83579%207.33579%208.5%207.75%208.5M7.75%208.5H12.75%22%20stroke%3D%22%233C3C4399%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.76331%205.15385L7.5503%2010.6923M4.60355%2010.6923L4.39053%205.15385M10.5247%203.17881C10.7352%203.21059%2010.9449%203.2446%2011.1538%203.28079M10.5247%203.17881L9.86757%2011.7216C9.81208%2012.443%209.21055%2013%208.48703%2013H3.66681C2.9433%2013%202.34177%2012.443%202.28628%2011.7216L1.62914%203.17881M10.5247%203.17881C9.81921%203.07227%209.10554%202.99068%208.38461%202.93497M1%203.28079C1.20897%203.2446%201.41869%203.21059%201.62914%203.17881M1.62914%203.17881C2.33463%203.07227%203.0483%202.99068%203.76923%202.93497M8.38461%202.93497V2.37119C8.38461%201.64543%207.82421%201.03953%207.09882%201.01632C6.75952%201.00547%206.41886%201%206.07692%201C5.73498%201%205.39432%201.00547%205.05502%201.01632C4.32963%201.03953%203.76923%201.64543%203.76923%202.37119V2.93497M8.38461%202.93497C7.62311%202.87612%206.85352%202.84615%206.07692%202.84615C5.30033%202.84615%204.53073%202.87612%203.76923%202.93497%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.5%203.05796C8.5%202.82119%208.62403%202.60718%208.76747%202.4188C8.91473%202.2254%209%201.996%209%201.75C9%201.05964%208.32843%200.5%207.5%200.5C6.67157%200.5%206%201.05964%206%201.75C6%201.996%206.08527%202.2254%206.23253%202.4188C6.37597%202.60718%206.5%202.82119%206.5%203.05796V3.05796C6.5%203.29881%206.30277%203.49331%206.06202%203.48638C5.12626%203.45942%204.20056%203.3923%203.2866%203.28666C3.41084%204.36184%203.48179%205.45325%203.49674%206.55818C3.50004%206.80215%203.30195%206.99997%203.05796%207V7C2.82119%207%202.60718%206.87597%202.4188%206.73253C2.2254%206.58527%201.996%206.5%201.75%206.5C1.05964%206.5%200.5%207.17157%200.5%208C0.5%208.82843%201.05964%209.5%201.75%209.5C1.996%209.5%202.2254%209.41473%202.4188%209.26747C2.60718%209.12403%202.82119%209%203.05796%209V9C3.26409%209%203.42771%209.17385%203.4126%209.37942C3.32871%2010.5208%203.18495%2011.6455%202.98445%2012.7504C3.99638%2012.8771%205.02301%2012.9566%206.06204%2012.9865C6.30283%2012.9934%206.50008%2012.7989%206.50008%2012.558V12.558C6.50008%2012.3212%206.37604%2012.1072%206.23261%2011.9188C6.08535%2011.7254%206.00008%2011.496%206.00008%2011.25C6.00008%2010.5597%206.67165%2010%207.50008%2010C8.3285%2010%209.00008%2010.5597%209.00008%2011.25C9.00008%2011.496%208.9148%2011.7254%208.76755%2011.9188C8.62411%2012.1072%208.50008%2012.3212%208.50008%2012.558V12.558C8.50008%2012.7799%208.68543%2012.9571%208.90697%2012.9441C10.1328%2012.8721%2011.3401%2012.731%2012.5251%2012.5248C12.7047%2011.4926%2012.8349%2010.4435%2012.9131%209.37989C12.9282%209.17408%2012.7644%209.00003%2012.558%209.00003V9.00003C12.3213%209.00003%2012.1073%209.12406%2011.9189%209.2675C11.7255%209.41476%2011.4961%209.50003%2011.2501%209.50003C10.5597%209.50003%2010.0001%208.82846%2010.0001%208.00003C10.0001%207.1716%2010.5597%206.50003%2011.2501%206.50003C11.4961%206.50003%2011.7255%206.5853%2011.9189%206.73256C12.1073%206.876%2012.3213%207.00003%2012.558%207.00003V7.00003C12.8023%207.00003%2013.0006%206.80203%2012.9972%206.55783C12.9809%205.34942%2012.8975%204.15715%2012.7508%202.98465C11.4935%203.21277%2010.2107%203.36743%208.90685%203.44404C8.68533%203.45705%208.5%203.27986%208.5%203.05796V3.05796Z%22%20stroke%3D%22%230082FF%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.5%207C0.5%203.41015%203.41015%200.5%207%200.5C10.5899%200.5%2013.5%203.41015%2013.5%207C13.5%2010.5899%2010.5899%2013.5%207%2013.5C3.41015%2013.5%200.5%2010.5899%200.5%207ZM8.08511%204.38885C7.49258%203.87038%206.50773%203.87038%205.91519%204.38885C5.70737%204.57069%205.39149%204.54963%205.20965%204.34182C5.02781%204.134%205.04887%203.81812%205.25669%203.63627C6.22625%202.78791%207.77406%202.78791%208.74362%203.63627C9.75233%204.5189%209.75233%205.9811%208.74362%206.86373C8.57251%207.01344%208.38406%207.13608%208.18537%207.23224C7.73452%207.45043%207.50015%207.74812%207.50015%208V8.5C7.50015%208.77614%207.27629%209%207.00015%209C6.72401%209%206.50015%208.77614%206.50015%208.5V8C6.50015%207.14731%207.20634%206.5951%207.74974%206.33211C7.8715%206.27318%207.98433%206.19933%208.08511%206.11115C8.6385%205.62694%208.6385%204.87306%208.08511%204.38885ZM7%2011C7.27614%2011%207.5%2010.7761%207.5%2010.5C7.5%2010.2239%207.27614%2010%207%2010C6.72386%2010%206.5%2010.2239%206.5%2010.5C6.5%2010.7761%206.72386%2011%207%2011Z%22%20fill%3D%22%230082FF%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.600098%207.00001C0.600098%203.46538%203.46548%200.600006%207.0001%200.600006C10.5347%200.600006%2013.4001%203.46538%2013.4001%207.00001C13.4001%2010.5346%2010.5347%2013.4%207.0001%2013.4C3.46548%2013.4%200.600098%2010.5346%200.600098%207.00001ZM5.71258%204.67338C5.90523%204.5682%206.13993%204.57661%206.32455%204.6953L9.12455%206.4953C9.29629%206.6057%209.4001%206.79585%209.4001%207.00001C9.4001%207.20416%209.29629%207.39431%209.12455%207.50471L6.32455%209.30471C6.13993%209.4234%205.90523%209.43181%205.71258%209.32663C5.51994%209.22146%205.4001%209.01949%205.4001%208.80001V5.20001C5.4001%204.98052%205.51994%204.77855%205.71258%204.67338Z%22%20fill%3D%22%230082FF%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11%208.5V6.75C11%205.50736%209.99264%204.5%208.75%204.5H7.75C7.33579%204.5%207%204.16421%207%203.75V2.75C7%201.50736%205.99264%200.5%204.75%200.5H3.5M5%200.5H1.75C1.33579%200.5%201%200.835786%201%201.25V12.75C1%2013.1642%201.33579%2013.5%201.75%2013.5H10.25C10.6642%2013.5%2011%2013.1642%2011%2012.75V6.5C11%203.18629%208.31371%200.5%205%200.5Z%22%20stroke%3D%22%230082FF%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as VideoIcon } from './video.svg';\n\nexport interface VideoProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Video` icon component\n */\nexport const Video: React.FC<VideoProps> = ({ boxSize }) => {\n return <VideoIcon boxSize={boxSize} />;\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22%23FFB300%22%2F%3E%3Crect%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22url%28%23paint0_linear_2027_23020%29%22%20fill-opacity%3D%220.16%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.8421%209.59139C12.412%209.28926%2012.8002%208.68997%2012.8002%208.00001C12.8002%207.31005%2012.412%206.71077%2011.8421%206.40864C12.0315%205.79203%2011.8822%205.09376%2011.3943%204.60589C10.9064%204.11801%2010.2082%203.96874%209.59156%204.15809C9.28944%203.5882%208.69015%203.20001%208.0002%203.20001C7.31024%203.20001%206.71094%203.58821%206.40882%204.1581C5.79221%203.96877%205.09396%204.11803%204.60608%204.60591C4.11821%205.09378%203.96894%205.79203%204.15828%206.40864C3.58839%206.71077%203.2002%207.31006%203.2002%208.00001C3.2002%208.68997%203.58839%209.28926%204.15828%209.59138C3.96894%2010.208%204.1182%2010.9063%204.60608%2011.3941C5.09396%2011.882%205.79221%2012.0313%206.40882%2011.8419C6.71095%2012.4118%207.31024%2012.8%208.0002%2012.8C8.69016%2012.8%209.28945%2012.4118%209.59157%2011.8419C10.2082%2012.0313%2010.9064%2011.882%2011.3943%2011.3941C11.8822%2010.9062%2012.0314%2010.208%2011.8421%209.59139ZM10.3141%206.91469C10.4603%206.7137%2010.4159%206.43226%2010.2149%206.28608C10.0139%206.1399%209.73244%206.18434%209.58626%206.38534L7.49601%209.25943L6.36839%208.13181C6.19266%207.95608%205.90773%207.95608%205.732%208.13181C5.55626%208.30755%205.55626%208.59247%205.732%208.76821L7.232%2010.2682C7.32506%2010.3613%207.45419%2010.4089%207.5854%2010.3986C7.7166%2010.3883%207.83672%2010.3211%207.91413%2010.2147L10.3141%206.91469Z%22%20fill%3D%22white%22%2F%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22paint0_linear_2027_23020%22%20x1%3D%228%22%20y1%3D%220%22%20x2%3D%228%22%20y2%3D%2216%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { ReactComponent as PageIcon } from './page.svg';\n\nexport interface PageProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Page` icon component\n */\nexport const Page: React.FC<PageProps> = ({ boxSize }) => {\n return <PageIcon boxSize={boxSize} />;\n};\n","import React, { PropsWithChildren } from 'react';\nimport { Box } from '@chakra-ui/react';\n\nexport interface BorderBox extends PropsWithChildren {\n boxShadow: string;\n borderRadius?: string;\n}\n\n/**\n * A functional React component utilized to render the `BorderedBox` component\n */\nexport const BorderedBox: React.FC<BorderBox> = ({\n children,\n boxShadow,\n borderRadius = 'none',\n}) => {\n return (\n <Box\n boxShadow={boxShadow}\n borderRadius={borderRadius}\n bg=\"white\"\n mx=\"auto\"\n width=\"100%\"\n height=\"100%\"\n display=\"flex\"\n >\n {children}\n </Box>\n );\n};\n","import React from 'react';\nimport { Flex } from '@chakra-ui/react';\nimport colors from '../../../../theme/foundations/colors';\n\nexport interface NavigationMenuHeaderProps {\n label: string;\n}\n\n/**\n * A functional React component utilized to render the `NavigationMenuHeader` component\n */\n\nexport const NavigationMenuHeader: React.FC<NavigationMenuHeaderProps> = ({\n label,\n}) => {\n return (\n <Flex\n alignItems=\"center\"\n height=\"26px\"\n width=\"204px\"\n fontSize=\"12px\"\n color={colors.label.secondary.light}\n >\n {label}\n </Flex>\n );\n};\n","import React from 'react';\nimport { Box, Flex, Link } from '@chakra-ui/react';\nimport { Link as RouterLink } from 'react-router-dom';\nimport colors from '../../../../theme/foundations/colors';\n\nexport interface NavigationMenuItemProps {\n leftIcon: JSX.Element;\n label: string;\n to?: string;\n href?: string;\n isSelected: boolean;\n onClick: () => void;\n rightIcon?: JSX.Element;\n isExternal?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `NavigationMenuItem` component\n */\nexport const NavigationMenuItem: React.FC<NavigationMenuItemProps> = ({\n label,\n leftIcon,\n href,\n to,\n rightIcon,\n isExternal,\n isSelected,\n onClick,\n}) => {\n let additionalProps = {};\n\n let reactRouterLinkProps = {};\n\n if (to) {\n reactRouterLinkProps = {\n to,\n as: RouterLink,\n };\n }\n\n if (isExternal) {\n additionalProps = {\n ...additionalProps,\n referrerPolicy: 'no-referrer',\n target: '_blank',\n href,\n isExternal: true,\n };\n }\n\n return (\n <Link\n {...reactRouterLinkProps}\n {...additionalProps}\n onClick={onClick}\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n py=\"5px\"\n px=\"4px\"\n height=\"26px\"\n width=\"204px\"\n color={colors.label.primary}\n bg={isSelected ? colors.fill.light.quaternary : 'transparent'}\n borderRadius=\"4px\"\n fontSize=\"13px\"\n textDecoration=\"none\"\n _hover={{ textDecoration: 'none' }}\n >\n <Flex alignItems=\"center\">\n <Box mr=\"4px\">{leftIcon}</Box> {label}\n </Flex>\n {rightIcon}\n </Link>\n );\n};\n","import React from 'react';\nimport { Flex, IconButton, Spinner } from '@chakra-ui/react';\nimport { HiOutlineRefresh } from 'react-icons/hi';\nimport colors from '../../../../theme/foundations/colors';\nimport typography from '../../../../theme/foundations/typography';\n\ninterface TableLoadingRowsProps {\n isLoading: boolean;\n onLoadMore: () => void;\n}\n\n/**\n * A loading spinner rendered after the table to indicate more rows are being loaded.\n */\nexport const TableLoadingRows: React.FC<TableLoadingRowsProps> = ({\n isLoading,\n onLoadMore,\n}) => {\n return (\n <Flex\n width=\"full\"\n direction=\"column\"\n justifyContent=\"center\"\n alignItems=\"center\"\n height={20}\n borderTopColor={colors.fill.light.quaternary}\n >\n {isLoading ? (\n <Spinner size=\"lg\" color={colors.fill.action} />\n ) : (\n <IconButton\n aria-label=\"Fetch more rows\"\n icon={<HiOutlineRefresh />}\n fontSize={typography.fontSizes['3xl']}\n bg=\"transparent\"\n shadow=\"none\"\n color={colors.fill.action}\n type=\"button\"\n variant=\"outline\"\n onClick={onLoadMore}\n />\n )}\n </Flex>\n );\n};\n","import React from 'react';\nimport { Table as ChakraTable, Tbody, Td, Tr } from '@chakra-ui/react';\n\n/**\n * A React component utilized to render the `EmptyTable` component\n */\nexport const EmptyTable: React.FC = () => {\n const getOpacity = (index: number) => {\n switch (index) {\n case 1:\n return 0.7;\n case 3:\n return 0.6;\n case 5:\n return 0.5;\n case 7:\n return 0.4;\n case 9:\n return 0.3;\n case 11:\n return 0.2;\n case 13:\n return 0.1;\n default:\n return 1;\n }\n };\n\n return (\n <ChakraTable\n variant=\"unstyled\"\n width=\"100%\"\n style={{\n borderCollapse: 'separate',\n borderSpacing: '0px',\n }}\n >\n <Tbody>\n {Array.from({ length: 14 }, (_, i) => i + 1).map(i => (\n <Tr key={i}>\n <Td height=\"26px\" opacity={getOpacity(i)}></Td>\n </Tr>\n ))}\n </Tbody>\n </ChakraTable>\n );\n};\n","import {\n createBreakpoints,\n BaseBreakpointConfig,\n} from '@chakra-ui/theme-tools';\n\n/**\n * Breakpoints for responsive design\n */\nconst breakpointValues: BaseBreakpointConfig = {\n sm: '30em',\n md: '48em',\n lg: '62em',\n xl: '80em',\n};\n\nconst breakpoints = createBreakpoints(breakpointValues);\n\nexport default breakpoints;\n","import colors from './colors';\n\nconst shadows = {\n xs: '0 0 0 1px rgba(0, 0, 0, 0.05)',\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n base: '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\n xl:\n '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\n insetOutline: `inset 0 0 0 2px ${colors.fill.action}`,\n outline: `0 0 0 2px ${colors.fill.action}`,\n outlineDanger600: `0 0 0 2px ${colors.fill.error}`,\n inner: 'inset 0 2px 4px 0 rgba(0,0,0,0.06)',\n none: 'none',\n 'dark-lg':\n 'rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px',\n};\n\nexport type Shadows = typeof shadows;\n\nexport default shadows;\n","import colors from '../foundations/colors';\n\nconst parts = ['container', 'description', 'icon'];\n\nconst baseStyle = {\n container: {\n px: '8px',\n py: '8px',\n },\n\n description: {\n width: '100%',\n fontSize: '13px',\n textAlign: 'left',\n color: colors.label.primary.light,\n lineHeight: '16px',\n },\n};\n\nfunction variantPositive() {\n return {\n container: { bg: colors.fill.success },\n };\n}\n\nfunction variantWarning() {\n return {\n container: { bg: colors.fill.warning },\n };\n}\n\nfunction variantError() {\n return {\n container: { bg: colors.fill.error },\n };\n}\n\nfunction variantNeutral() {\n return {\n container: { bg: colors.fill.light.tertiary },\n };\n}\n\nconst variants = {\n positive: variantPositive,\n warning: variantWarning,\n error: variantError,\n neutral: variantNeutral,\n};\n\nconst defaultProps = {\n variant: 'positive',\n};\n\nexport default {\n parts,\n baseStyle,\n variants,\n defaultProps,\n};\n","import { getColor, mode, transparentize } from '@chakra-ui/theme-tools';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Dict = Record<string, any>;\n\nconst baseStyle = {\n px: 1,\n textTransform: 'uppercase',\n fontSize: 'xs',\n borderRadius: 'sm',\n fontWeight: 'bold',\n};\n\nfunction variantSolid(props: Dict) {\n const { colorScheme: c, theme } = props;\n const dark = transparentize(`${c}.500`, 0.6)(theme);\n return {\n bg: mode(`${c}.500`, dark)(props),\n color: mode(`white`, `whiteAlpha.800`)(props),\n };\n}\n\nfunction variantSubtle(props: Dict) {\n const { colorScheme: c, theme } = props;\n const darkBg = transparentize(`${c}.200`, 0.16)(theme);\n return {\n bg: mode(`${c}.100`, darkBg)(props),\n color: mode(`${c}.800`, `${c}.200`)(props),\n };\n}\n\nfunction variantOutline(props: Dict) {\n const { colorScheme: c, theme } = props;\n const darkColor = transparentize(`${c}.200`, 0.8)(theme);\n const lightColor = getColor(theme, `${c}.500`);\n const color = mode(lightColor, darkColor)(props);\n\n return {\n color,\n boxShadow: `inset 0 0 0px 1px ${color}`,\n };\n}\n\nconst variants = {\n solid: variantSolid,\n subtle: variantSubtle,\n outline: variantOutline,\n};\n\nconst defaultProps = {\n variant: 'subtle',\n colorScheme: 'gray',\n};\n\nexport default {\n baseStyle,\n variants,\n defaultProps,\n};\n","import { defineStyle } from '@chakra-ui/system';\nimport colors from '../foundations/colors';\n\nconst baseStyle = defineStyle({\n borderRadius: '4px',\n fontSize: '13px',\n fontWeight: 400,\n bg: colors.fill.action,\n color: colors.label.primary.dark,\n h: '26px',\n border: 'none',\n px: '8px',\n py: '4px',\n bgGradient: 'linear-gradient(#FFFFFF29, #FFFFFF00)',\n shadow: '0.5px 0.5px 1px 1px #0000001A',\n _disabled: {\n backgroundColor: 'gray.100',\n borderColor: 'gray.100',\n color: 'gray.500',\n pointerEvents: 'none',\n },\n _hover: {\n bg: colors.fill.action,\n },\n _active: {\n color: colors.label.primary.dark,\n bg: colors.fill.action,\n bgGradient: colors.fill.light.quaternary,\n },\n _focus: {\n outline: `2px solid ${colors.border.focus}`,\n outlineOffset: '0px',\n },\n});\n\nconst variantPrimary = () => {\n return { ...baseStyle };\n};\n\nconst variantSecondary = () => {\n return {\n ...baseStyle,\n color: colors.black,\n bg: colors.label.primary.dark,\n _hover: {\n bg: colors.label.primary.dark,\n },\n _active: {\n color: colors.black,\n bg: colors.label.primary.dark,\n bgGradient: colors.fill.light.quaternary,\n },\n _focus: {\n bg: colors.label.primary.dark,\n },\n };\n};\n\nconst variantTertiary = () => {\n return {\n ...baseStyle,\n color: colors.label.primary.dark,\n bg: colors.blur.quaternary.dark,\n _hover: {\n bg: colors.blur.quaternary.dark,\n },\n _active: {\n color: colors.label.primary.dark,\n bg: colors.blur.tertiary.dark,\n },\n _focus: {\n color: colors.label.primary.dark,\n bg: colors.blur.quaternary.dark,\n },\n _disabled: {\n backgroundColor: colors.blur.quaternary.dark,\n color: colors.blur.tertiary.dark,\n },\n };\n};\n\nconst variantPrimaryFlat = () => {\n return {\n ...baseStyle,\n bg: colors.fill.action,\n bgGradient: null,\n minWidth: '172.5px',\n padding: '10px 16px',\n borderRadius: '8px',\n border: '0.5px',\n gap: '8px',\n height: '44px',\n // margin: '8px',\n fontSize: '17px',\n fontWeight: '500',\n lineHeight: '24px',\n letterSpacing: '0.02em',\n textAlign: 'center',\n boxShadow: '0px 0.5px 1px 0.5px #0000001A',\n };\n};\n\nconst variantSecondaryFlat = () => {\n return {\n ...variantPrimaryFlat(),\n fontWeight: '400',\n color: colors.black,\n bg: colors.label.primary.dark,\n _hover: {\n bg: colors.label.primary.dark,\n },\n _active: {\n color: colors.black,\n bg: colors.label.primary.dark,\n bgGradient: colors.fill.light.quaternary,\n },\n _focus: {\n bg: colors.label.primary.dark,\n },\n };\n};\nconst variantTertiaryFlat = () => {\n return {\n ...variantPrimaryFlat(),\n fontWeight: '400',\n color: colors.label.primary.dark,\n bg: colors.blur.quaternary.dark,\n _hover: {\n bg: colors.blur.quaternary.dark,\n },\n _active: {\n color: colors.label.primary.dark,\n bg: colors.blur.tertiary.dark,\n },\n _focus: {\n color: colors.label.primary.dark,\n bg: colors.blur.quaternary.dark,\n },\n _disabled: {\n backgroundColor: colors.blur.quaternary.dark,\n color: colors.blur.tertiary.dark,\n },\n };\n};\n\nconst variants = {\n primary: variantPrimary(),\n secondary: variantSecondary(),\n tertiary: variantTertiary(),\n 'flat-primary': variantPrimaryFlat(),\n 'flat-secondary': variantSecondaryFlat(),\n 'flat-tertiary': variantTertiaryFlat(),\n};\n\nconst defaultProps = {\n variant: 'primary',\n};\n\nexport default {\n baseStyle,\n variants,\n defaultProps,\n};\n","import { checkboxAnatomy } from '@chakra-ui/anatomy';\nimport { createMultiStyleConfigHelpers } from '@chakra-ui/react';\n\nconst {\n definePartsStyle,\n defineMultiStyleConfig,\n} = createMultiStyleConfigHelpers(checkboxAnatomy.keys);\n\nconst roundedCheckbox = definePartsStyle({\n control: {\n //borderRadius: 50,\n },\n label: {\n fontSize: '17px',\n fontWeight: 400,\n lineHeight: '20px',\n padding: '12px 16px 12px 0px',\n },\n height: '44px',\n});\n\nconst variants = {\n mobile: roundedCheckbox,\n};\n\nexport default defineMultiStyleConfig({\n variants,\n});\n","import Badge from './badge';\n\nconst { variants, defaultProps } = Badge;\n\nconst baseStyle = {\n fontFamily: 'mono',\n fontSize: 'sm',\n px: '0.2em',\n borderRadius: 'sm',\n};\n\nexport default {\n baseStyle,\n variants,\n defaultProps,\n};\n","import colors from '../foundations/colors';\n\nconst parts = ['requiredIndicator', 'helperText'];\n\nfunction baseStyleRequiredIndicator() {\n return {\n ml: 1,\n color: colors.label.error,\n };\n}\n\nfunction baseStyleHelperText() {\n return {\n // mt: 1,\n ml: 1,\n color: colors.label.secondary.light,\n fontSize: '11px',\n };\n}\n\nconst baseStyle = () => ({\n requiredIndicator: baseStyleRequiredIndicator(),\n helperText: baseStyleHelperText(),\n});\n\nexport default {\n parts,\n baseStyle,\n};\n","import colors from '../foundations/colors';\n\nconst parts = ['text', 'icon'];\n\nfunction baseStyleText() {\n return {\n color: colors.label.error,\n position: 'absolute',\n bottom: 0,\n // mt: 1,\n ml: 1,\n fontSize: '11px',\n };\n}\n\nfunction baseStyleIcon() {\n return {\n ml: 1,\n color: colors.label.error,\n };\n}\n\nconst baseStyle = () => ({\n text: baseStyleText(),\n icon: baseStyleIcon(),\n});\n\nexport default {\n parts,\n baseStyle,\n};\n","import colors from '../foundations/colors';\n\nconst baseStyle = {\n fontSize: '11px',\n fontWeight: 400,\n position: 'absolute',\n top: 0,\n display: 'flex',\n ml: 1,\n // mb: 1,\n color: colors.label.primary.light,\n opacity: 1,\n};\n\nexport default {\n baseStyle,\n};\n","import colors from '../foundations/colors';\n\nconst parts = ['field'];\n\nconst baseStyle = {\n field: {\n fontSize: '13px',\n h: '26px',\n '::placeholder': {\n color: colors.label.secondary.light,\n },\n py: '5px',\n px: '8px',\n border: '.5px solid',\n borderColor: colors.border.default,\n _disabled: {\n opacity: 1,\n cursor: 'not-allowed',\n bg: colors.fill.light.quaternary,\n color: colors.label.secondary.light,\n border: '1px solid',\n borderColor: '#9999991A',\n },\n _focus: {\n bg: '#ffffff',\n border: '2px solid',\n borderColor: colors.border.focus,\n },\n _placeholder: {\n color: colors.label.secondary.light,\n },\n },\n};\n\nconst mobileInputs = {\n ...baseStyle,\n field: {\n fontSize: '17px',\n py: '14px',\n px: '16px',\n cursor: 'pointer',\n lineHeight: '21px',\n fontWeight: 400,\n borderRadius: 0,\n height: '48px',\n padding: '12px 16px 12px 0px',\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\n borderColor: 'rgba(153, 153, 153, 0.1)',\n borderLeft: 'none',\n borderRight: 'none',\n },\n};\n\nconst variants = { default: baseStyle, mobile: mobileInputs };\n\nconst defaultProps = {\n variant: 'default',\n};\n\nexport default {\n parts,\n baseStyle,\n variants,\n defaultProps,\n};\n","import { getColor } from '@chakra-ui/theme-tools';\nimport colors from '../foundations/colors';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Dict = Record<string, any>;\n\nconst baseStyle = {\n color: colors.fill.action,\n textDecoration: 'underline',\n transition: 'none',\n _hover: {\n color: 'orange.500',\n },\n};\n\nfunction variantSidebar() {\n return {\n display: 'flex',\n alignItems: 'center',\n // height: '56px',\n pl: 4,\n pr: 4,\n py: 2,\n color: 'gray.500',\n lineHeight: 1.5,\n outline: 'none',\n transition: 'none',\n textDecoration: 'none',\n _focus: {\n boxShadow: 'none',\n },\n _hover: {\n color: 'primary.500',\n textDecoration: 'none',\n },\n '&.active': {\n color: 'primary.500',\n fontWeight: 'semibold',\n },\n };\n}\n\n// This variant represent the same as the sidebar one above but when the route matches exactly\n// and not only for a child sub route match. I did it as a separate variant instead of a\n// prop to get around React complaining that the dom element was not recognized.\nfunction variantSidebarExact() {\n // props: Dict\n const base = variantSidebar();\n // const { theme } = props;\n // const primaryColor = getColor(theme, 'primary.500');\n\n return {\n ...base,\n '&.active': {\n // ...base['&.active'],\n // boxShadow: `inset 3px 0 0 0 ${primaryColor}`,\n },\n };\n}\n\nfunction variantSubNavigation(props: Dict) {\n const { theme } = props;\n const primaryColor = getColor(theme, 'primary.500');\n\n return {\n display: 'block',\n pl: 10,\n mb: 3,\n color: 'gray.900',\n lineHeight: 'shorter',\n fontSize: 'sm',\n outline: 'none',\n transition: 'none',\n textDecoration: 'none',\n _focus: {\n boxShadow: 'none',\n },\n _hover: {\n color: 'primary.500',\n textDecoration: 'none',\n },\n '&.active': {\n color: 'primary.500',\n boxShadow: `inset 3px 0 0 0 ${primaryColor}`,\n fontWeight: 'semibold',\n },\n };\n}\n\nfunction variantNavlink(props: Dict) {\n const { colorScheme: c, size } = props;\n\n return {\n color: 'gray.500',\n fontWeight: 'normal',\n textDecoration: 'none',\n fontSize: size || 'md',\n _hover: {\n color: `${c}.500`,\n textDecoration: 'none',\n },\n '&.active': {\n color: `${c}.500`,\n },\n };\n}\n\nconst variants = {\n sidebar: variantSidebar,\n sidebarExact: variantSidebarExact,\n subNavigation: variantSubNavigation,\n navlink: variantNavlink,\n};\n\nexport default {\n baseStyle,\n variants,\n};\n","import Input from './input';\n\nconst { defaultProps, variants } = Input;\n\nconst parts = ['field', 'icon'];\n\nfunction baseStyleField() {\n return {\n ...Input.baseStyle.field,\n appearance: 'none',\n paddingBottom: '1px',\n lineHeight: 'normal',\n bg: 'white',\n '> option': {\n // bg: mode('white', 'gray.700')(props),\n },\n };\n}\n\nconst baseStyleInput = {\n color: 'currentColor',\n fontSize: '1.25rem',\n _disabled: { opacity: 0.5 },\n};\n\nconst baseStyle = () => ({\n field: baseStyleField(),\n icon: baseStyleInput,\n});\n\nexport default {\n parts,\n baseStyle,\n variants,\n defaultProps,\n};\n","import { mode, getColor } from '@chakra-ui/theme-tools';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Dict = Record<string, any>;\n\nconst parts = ['track', 'thumb'];\n\nfunction baseStyleTrack(props: Dict) {\n const { colorScheme: c, theme } = props;\n\n return {\n borderRadius: 'full',\n p: '2px',\n transition: 'all 120ms',\n bg: mode('gray.300', 'whiteAlpha.400')(props),\n _focus: {\n boxShadow: `0 0 0 3px ${getColor(theme, 'gray.100')}`,\n },\n _disabled: {\n opacity: 0.4,\n cursor: 'not-allowed',\n },\n _checked: {\n bg: mode(`${c}.500`, `${c}.200`)(props),\n _focus: {\n boxShadow: `0 0 0 3px ${getColor(theme, `${c}.200`)}`,\n },\n },\n };\n}\n\nconst baseStyleThumb = {\n bg: 'white',\n transition: 'transform 250ms',\n borderRadius: 'full',\n transform: 'translateX(0)',\n};\n\nconst baseStyle = (props: Dict) => ({\n track: baseStyleTrack(props),\n thumb: baseStyleThumb,\n});\n\nconst sizes = {\n sm: {\n track: { w: '1.375rem', h: '0.75rem' },\n thumb: {\n w: '0.75rem',\n h: '0.75rem',\n _checked: {\n transform: 'translateX(0.625rem)',\n },\n },\n },\n\n md: {\n track: { w: '1.875rem', h: '1rem' },\n thumb: {\n w: '1rem',\n h: '1rem',\n _checked: {\n transform: 'translateX(0.875rem)',\n },\n },\n },\n\n lg: {\n track: { w: '2.875rem', h: '1.5rem' },\n thumb: {\n w: '1.5rem',\n h: '1.5rem',\n _checked: {\n transform: 'translateX(1.375rem)',\n },\n },\n },\n};\n\nconst defaultProps = {\n size: 'md',\n colorScheme: 'blue',\n};\n\nexport default {\n parts,\n baseStyle,\n sizes,\n defaultProps,\n};\n","import colors from '../foundations/colors';\n\nconst parts = ['th', 'td', 'tr', 'body', 'thead'];\n\nconst baseStyle = {\n thead: { bg: colors.label.primary.dark },\n th: {\n bg: colors.label.primary.dark,\n padding: '5px 8px !important',\n fontSize: '13px',\n },\n tr: {\n fontSize: '13px',\n h: '26px',\n lineHeight: 'normal',\n _odd: {\n td: {\n h: '26px ',\n lineHeight: 'normal',\n bg: colors.fill.light.quaternary,\n _first: {\n borderTopLeftRadius: 'md',\n borderBottomLeftRadius: 'md',\n },\n _last: {\n borderTopRightRadius: 'md',\n borderBottomRightRadius: 'md',\n },\n },\n },\n },\n td: {\n padding: '5px 8px !important',\n lineHeight: 'normal',\n h: '26px',\n },\n};\n\nexport default {\n parts,\n baseStyle,\n};\n","import { getColor, mode } from '@chakra-ui/theme-tools';\nimport colors from '../foundations/colors';\n\nconst parts = ['root', 'tablist', 'tab', 'tabpanel', 'indicator'];\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Dict = Record<string, any>;\n\nfunction baseStyleRoot(props: Dict) {\n const { orientation } = props;\n return {\n display: orientation === 'vertical' ? 'flex' : 'block',\n };\n}\n\nfunction baseStyleTab(props: Dict) {\n const { isFitted } = props;\n\n return {\n flex: isFitted ? 1 : undefined,\n transition: 'all 0.2s',\n _focus: {\n zIndex: 1,\n boxShadow: 'outline',\n },\n };\n}\n\nfunction baseStyleTablist(props: Dict) {\n const { align = 'start', orientation } = props;\n\n const alignments: Record<string, string> = {\n end: 'flex-end',\n center: 'center',\n start: 'flex-start',\n };\n\n return {\n justifyContent: alignments[align],\n flexDirection: orientation === 'vertical' ? 'column' : 'row',\n };\n}\n\nconst baseStyleTabpanel = { p: 4 };\n\nconst baseStyle = (props: Dict) => {\n return {\n root: baseStyleRoot(props),\n tab: baseStyleTab(props),\n tablist: baseStyleTablist(props),\n tabpanel: baseStyleTabpanel,\n };\n};\n\nconst sizes = {\n sm: {\n tab: {\n py: '0.25rem',\n px: 6,\n fontSize: '0.85rem',\n },\n },\n md: {\n tab: {\n fontSize: '1rem',\n py: '0.75rem',\n px: 6,\n },\n },\n lg: {\n tab: {\n fontSize: { base: '1rem', sm: '1.15rem' },\n py: '0.75rem',\n px: 6,\n },\n },\n};\n\nfunction variantLine(props: Dict) {\n const { colorScheme: c, orientation } = props;\n const isVertical = orientation === 'vertical';\n const borderProp = isVertical ? 'borderLeft' : 'borderBottom';\n const marginProp = isVertical ? 'ml' : 'mb';\n\n const _selected = {\n color: mode(`${c}.600`, `${c}.300`)(props),\n _after: {\n content: '\"\"',\n display: 'block',\n position: 'absolute',\n bottom: '-1px',\n left: 0,\n right: 0,\n height: '3px',\n bg: 'currentColor',\n },\n };\n\n return {\n tablist: {\n [borderProp]: '1px solid',\n borderColor: 'gray.100',\n },\n tab: {\n position: 'relative',\n [borderProp]: 0,\n borderColor: 'transparent',\n [marginProp]: 0,\n // set by React Router NavLink component\n '&.active': _selected,\n _selected,\n _active: {\n bg: mode(`${c}.50`, 'whiteAlpha.300')(props),\n },\n _disabled: {\n opacity: 0.4,\n cursor: 'not-allowed',\n },\n },\n };\n}\n\nfunction variantEnclosed(props: Dict) {\n const { colorScheme: c } = props;\n return {\n tab: {\n borderTopRadius: 'md',\n border: '1px solid',\n borderColor: 'transparent',\n mb: '-1px',\n _selected: {\n color: mode(`${c}.600`, `${c}.300`)(props),\n borderColor: 'inherit',\n borderBottomColor: mode(`white`, `gray.800`)(props),\n },\n },\n tablist: {\n mb: '-1px',\n borderBottom: '1px solid',\n borderColor: 'gray.100',\n },\n };\n}\n\nfunction variantEnclosedColored(props: Dict) {\n const { colorScheme: c } = props;\n return {\n tab: {\n border: '1px solid',\n borderColor: 'inherit',\n bg: mode(`gray.50`, `whiteAlpha.50`)(props),\n mb: '-1px',\n _notLast: {\n mr: '-1px',\n },\n _selected: {\n bg: mode(`#fff`, 'gray.800')(props),\n color: mode(`${c}.600`, `${c}.300`)(props),\n borderColor: 'inherit',\n borderTopColor: 'currentColor',\n borderBottomColor: 'transparent',\n },\n },\n tablist: {\n mb: '-1px',\n borderBottom: '1px solid',\n borderColor: 'gray.100',\n },\n };\n}\n\nfunction variantSoftRounded(props: Dict) {\n const { colorScheme: c, theme } = props;\n return {\n tab: {\n borderRadius: 'full',\n fontWeight: 'semibold',\n color: 'gray.600',\n _selected: {\n color: getColor(theme, `${c}.700`),\n bg: getColor(theme, `${c}.100`),\n },\n },\n };\n}\n\nfunction variantSolidRounded(props: Dict) {\n const { colorScheme: c } = props;\n return {\n tab: {\n borderRadius: 'full',\n fontWeight: 'semibold',\n color: mode('gray.600', 'inherit')(props),\n _selected: {\n color: mode(`#fff`, 'gray.800')(props),\n bg: mode(`${c}.600`, `${c}.300`)(props),\n },\n },\n };\n}\n\nconst variantUnstyled = {};\n\nconst variantSimple = {\n tab: {\n position: 'relative',\n borderColor: 'transparent',\n '&.active': {\n color: colors.fill.action,\n bg: 'transparent',\n borderBottom: `1px solid ${colors.fill.action}`,\n },\n _selected: {\n color: colors.fill.action,\n bg: 'transparent',\n _after: {\n content: '\"\"',\n display: 'block',\n position: 'absolute',\n bottom: '-1px',\n left: 0,\n right: 0,\n height: '3px',\n bg: 'currentColor',\n },\n },\n _active: {\n bg: 'transparent',\n },\n },\n};\n\nconst variants = {\n line: variantLine,\n enclosed: variantEnclosed,\n 'enclosed-colored': variantEnclosedColored,\n 'soft-rounded': variantSoftRounded,\n 'solid-rounded': variantSolidRounded,\n unstyled: variantUnstyled,\n simple: variantSimple,\n};\n\nconst defaultProps = {\n size: 'md',\n variant: 'line',\n colorScheme: 'blue',\n};\n\nexport default {\n parts,\n baseStyle,\n sizes,\n variants,\n defaultProps,\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%2214%22%20viewBox%3D%220%200%208%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.125%2013.25L0.875%207L7.125%200.75%22%20stroke%3D%22current%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import Input from './input';\nimport { defineStyle } from '@chakra-ui/react';\n\nconst baseStyle = {\n ...Input.baseStyle.field,\n fontSize: '13px',\n\n display: 'block', // Removes gap below textarea because it defaults to inline.\n paddingY: '8px',\n paddingX: '5px',\n height: '78px',\n lineHeight: 'short',\n};\n\nconst mobileInputs = defineStyle({\n ...baseStyle,\n ...Input.variants.mobile.field,\n border: 'none',\n borderRadius: 0,\n paddingY: '16px',\n paddingX: '0',\n // padding: '16px 16px',\n cursor: 'pointer',\n lineHeight: '21px',\n fontWeight: 400,\n resize: 'none',\n overflowY: 'auto',\n fontSize: '17px',\n minHeight: '208px',\n});\n\nconst variants = { default: baseStyle, mobile: mobileInputs };\n\nconst defaultProps = {\n variant: 'default',\n};\n\nexport default {\n baseStyle,\n variants,\n defaultProps,\n};\n","import { Text } from '@chakra-ui/react';\n\nconst { defaultProps } = Text;\n\nfunction variantTitleSmall() {\n return {\n fontWeight: 700,\n fontSize: '13px',\n lineHeight: '16px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantTitleMedium() {\n return {\n fontWeight: 600,\n fontSize: '18px',\n lineHeight: '26px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantTitleLarge() {\n return {\n fontWeight: 700,\n fontSize: '26px',\n lineHeight: '32px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantSubtitleSmall() {\n return {\n fontWeight: 500,\n fontSize: '11px',\n lineHeight: '13px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantSubtitleMedium() {\n return {\n fontWeight: 500,\n fontSize: '12px',\n lineHeight: '16px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantSubtitleLarge() {\n return {\n fontWeight: 500,\n fontSize: '13px',\n lineHeight: '16px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantDescriptionSmall() {\n return {\n fontWeight: 400,\n fontSize: '11px',\n lineHeight: '13px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantDescriptionMedium() {\n return {\n fontWeight: 400,\n fontSize: '12px',\n lineHeight: '16px',\n letterSpacing: '0.02em',\n };\n}\nfunction variantDescriptionLarge() {\n return {\n fontWeight: 400,\n fontSize: '13px',\n lineHeight: '16px',\n letterSpacing: '0.02em',\n };\n}\n\nconst variants = {\n 'title-small': variantTitleSmall,\n 'title-medium': variantTitleMedium,\n 'title-large': variantTitleLarge,\n 'subtitle-small': variantSubtitleSmall,\n 'subtitle-medium': variantSubtitleMedium,\n 'subtitle-large': variantSubtitleLarge,\n 'description-small': variantDescriptionSmall,\n 'description-medium': variantDescriptionMedium,\n 'description-large': variantDescriptionLarge,\n};\n\nexport default {\n variants,\n defaultProps: { ...defaultProps, variant: variants['description-large'] },\n};\n","import { extendTheme } from '@chakra-ui/react';\nimport breakpoints from './foundations/breakpoints';\nimport colors from './foundations/colors';\nimport shadows from './foundations/shadows';\nimport typography from './foundations/typography';\nimport Alert from './components/alert';\nimport Badge from './components/badge';\nimport Button from './components/button';\nimport Checkbox from './components/checkbox';\nimport Code from './components/code';\nimport Form from './components/form';\nimport FormError from './components/form-error';\nimport FormLabel from './components/form-label';\nimport Input from './components/input';\nimport Link from './components/link';\nimport Modal from './components/modal';\nimport Select from './components/select';\nimport Switch from './components/switch';\nimport Table from './components/table';\nimport Tabs from './components/tabs';\nimport Textarea from './components/textarea';\nimport Text from './components/text';\nimport styles from './styles';\n\nconst customXQChakraTheme = extendTheme({\n breakpoints,\n colors,\n shadows,\n ...typography,\n components: {\n Alert,\n Badge,\n Button,\n Checkbox,\n Code,\n Form,\n FormError,\n FormLabel,\n Input,\n Link,\n Modal,\n Select,\n Switch,\n Table,\n Tabs,\n Textarea,\n Text,\n },\n styles,\n});\n\nexport type CustomTheme = typeof customXQChakraTheme;\n\nexport default customXQChakraTheme;\n","const parts = [\n 'overlay',\n 'dialogContainer',\n 'dialog',\n 'header',\n 'closeButton',\n 'body',\n 'footer',\n];\n\nconst baseStyle = {\n width: 'fit-content',\n height: 'fit-content',\n background: '#F6F6F6',\n backdropFilter: 'blur(25px)',\n header: {\n pt: '32px',\n px: '32px',\n pb: '16px',\n fontSize: '18px',\n fontWeight: 600,\n lineHeight: '26px',\n },\n body: {\n pt: 0,\n pb: '32px',\n px: '32px',\n fontSize: '13px',\n fontWeight: 400,\n lineHeight: '16px',\n whiteSpace: 'pre-line',\n },\n footer: {\n py: '16px',\n px: '32px',\n display: 'flex',\n justifyContent: 'flex-end',\n width: '100%',\n },\n};\n\nexport default {\n parts,\n baseStyle,\n};\n","export default {\n global: {\n 'html, body, #root': {},\n body: {\n fontFamily: 'body',\n color: 'black',\n overflow: {\n base: 'visible',\n },\n lineHeight: 'normal',\n },\n '*, *::before, *::after': {\n borderColor: 'gray.200',\n },\n '*::placeholder': {\n color: 'primary',\n },\n },\n};\n","import React, { useMemo } from 'react';\nimport { Box, useMediaQuery } from '@chakra-ui/react';\nimport colors from '../../../../../theme/foundations/colors';\n\nexport interface ToolbarBreadcrumbItemProps {\n pageLabel: string;\n page: 'current' | 'previous' | 'initial' | 'other';\n onClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `ToolbarBreadcrumbItem` component\n */\nexport const ToolbarBreadcrumbItem: React.FC<ToolbarBreadcrumbItemProps> = ({\n page,\n pageLabel,\n onClick,\n}) => {\n const [breakpoint400] = useMediaQuery('(max-width: 400px)');\n const [breakpoint600] = useMediaQuery('(max-width: 600px)');\n const [breakpoint800] = useMediaQuery('(max-width: 800px)');\n const [breakpoint1512] = useMediaQuery('(max-width: 1512px)');\n\n const getPageLabel = useMemo(() => {\n if (breakpoint400) {\n if (page === 'current') {\n return pageLabel;\n }\n }\n\n if (breakpoint600) {\n if (page === 'current' || page === 'previous') {\n return pageLabel;\n }\n\n return '...';\n }\n\n if (breakpoint800 || breakpoint1512) {\n if (page !== 'other') {\n return pageLabel;\n }\n\n return '...';\n }\n\n return pageLabel;\n }, [\n breakpoint1512,\n breakpoint400,\n breakpoint600,\n breakpoint800,\n page,\n pageLabel,\n ]);\n\n return (\n <Box\n color={\n page === 'current'\n ? colors.label.primary.light\n : colors.label.secondary.light\n }\n fontSize=\"13px\"\n letterSpacing=\"0.02em\"\n onClick={onClick}\n cursor=\"pointer\"\n >\n {getPageLabel}\n </Box>\n );\n};\n","import React, { useMemo, useCallback } from 'react';\nimport { Box, Flex, useMediaQuery } from '@chakra-ui/react';\nimport { ToolbarBreadcrumbItem } from './item';\nimport { ToolbarLabelAndHandler } from '../..';\nimport { ChevronRight } from '../../../../components/icons';\n\nexport interface ToolbarBreadcrumbsProps {\n pageList: ToolbarLabelAndHandler[];\n currentPage: string;\n}\n\n/**\n * A functional React component utilized to render the `ToolbarBreadcrumbs` component\n */\nexport const ToolbarBreadcrumbs: React.FC<ToolbarBreadcrumbsProps> = ({\n pageList,\n currentPage,\n}) => {\n const [breakpoint400] = useMediaQuery('(max-width: 400px)');\n\n const filteredPageList = useMemo(() => {\n if (breakpoint400)\n return pageList.filter(page => page.label === currentPage);\n\n const sliceIndex = pageList.findIndex(page => page.label === currentPage);\n return pageList.slice(0, sliceIndex + 1);\n }, [breakpoint400, currentPage, pageList]);\n\n const getPageType = useCallback(\n (index: number) => {\n switch (index) {\n case filteredPageList.length - 1:\n return 'current';\n case filteredPageList.length - 2:\n return 'previous';\n case 0:\n return 'initial';\n default:\n return 'other';\n }\n },\n [filteredPageList]\n );\n\n return (\n <Flex height=\"26px\">\n {filteredPageList.map((page, i) => (\n <Flex alignItems=\"center\" key={i}>\n <ToolbarBreadcrumbItem\n page={getPageType(i)}\n pageLabel={page.label}\n onClick={page.handler}\n />\n {i !== filteredPageList.length - 1 && (\n <Box mx=\"8px\">\n <ChevronRight boxSize=\"16px\" />\n </Box>\n )}\n </Flex>\n ))}\n </Flex>\n );\n};\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%2214%22%20viewBox%3D%220%200%208%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.875%200.75L7.125%207L0.874999%2013.25%22%20stroke%3D%22current%22%20stroke-opacity%3D%220.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\nimport { Box } from '@chakra-ui/react';\nimport { ReactComponent as LeftArrow } from './left-arrow.svg';\n\nexport interface LeftArrowButtonProps {\n onClick: () => void;\n disabled: boolean;\n}\n\n/**\n * A functional React component utilized to render the `LeftArrowButton` component\n */\nexport const LeftArrowButton: React.FC<LeftArrowButtonProps> = ({\n onClick,\n disabled,\n}) => {\n return (\n <Box\n onClick={() => {\n if (!disabled) return onClick();\n }}\n cursor={disabled ? 'not-allowed' : 'pointer'}\n transform=\"scaleX(-1)\"\n >\n <LeftArrow stroke={disabled ? '#3C3C43' : 'black'} />\n </Box>\n );\n};\n","import React from 'react';\nimport { Box } from '@chakra-ui/react';\nimport { ReactComponent as RightArrow } from './right-arrow.svg';\n\nexport interface RightArrowButtonProps {\n onClick: () => void;\n disabled: boolean;\n}\n\n/**\n * A functional React component utilized to render the `RightArrowButton` component\n */\nexport const RightArrowButton: React.FC<RightArrowButtonProps> = ({\n onClick,\n disabled,\n}) => {\n return (\n <Box\n onClick={() => {\n if (!disabled) return onClick();\n }}\n cursor={disabled ? 'not-allowed' : 'pointer'}\n >\n <RightArrow stroke={disabled ? '#3C3C43' : 'black'} />\n </Box>\n );\n};\n","import React from 'react';\nimport { Box, Flex } from '@chakra-ui/react';\nimport { LeftArrowButton } from './components/button/left';\nimport { RightArrowButton } from './components/button/right';\n\nexport interface NavigationButtonsProps {\n onBackClick?: () => void;\n onForwardClick?: () => void;\n backButtonDisabled?: boolean;\n forwardButtonDisabled?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `NavigationButtons` component\n */\nexport const NavigationButtons: React.FC<NavigationButtonsProps> = ({\n onBackClick,\n onForwardClick,\n backButtonDisabled,\n forwardButtonDisabled,\n}) => {\n return (\n <Flex width=\"fit-content\" alignItems=\"center\" mr=\"24px\">\n <Box transform=\"scaleX(-1)\" mr=\"16px\">\n <LeftArrowButton\n onClick={() => onBackClick && onBackClick()}\n disabled={backButtonDisabled || false}\n />\n </Box>\n <RightArrowButton\n onClick={() => onForwardClick && onForwardClick()}\n disabled={forwardButtonDisabled || false}\n />\n </Flex>\n );\n};\n","import React, { ReactNode, useMemo } from 'react';\nimport { Box, Button, Flex, Text } from '@chakra-ui/react';\nimport { Error } from '../icons/error';\nimport { Neutral } from '../icons/neutral';\nimport { Positive } from '../icons/positive';\nimport { Warning } from '../icons/warning';\nimport colors from '../../theme/foundations/colors';\n\nexport type ToastVariant = 'positive' | 'warning' | 'error' | 'neutral';\n\nexport interface ToastProps {\n variant: ToastVariant;\n message: ReactNode;\n buttonText?: string;\n onClick?: () => void;\n}\n\n/**\n * A functional React component utilized to render the `Toast` component\n */\nexport const Toast: React.FC<ToastProps> = ({\n variant,\n message,\n buttonText,\n onClick,\n}) => {\n const Icon = useMemo(() => {\n switch (variant) {\n case 'error':\n return <Error boxSize=\"16px\" />;\n case 'neutral':\n return <Neutral boxSize=\"16px\" color=\"white\" />;\n case 'positive':\n return <Positive boxSize=\"16px\" />;\n case 'warning':\n return <Warning boxSize=\"16px\" />;\n default:\n return null;\n }\n }, [variant]);\n\n return (\n <Flex\n alignItems=\"center\"\n width=\"fit-content\"\n height=\"32px\"\n p=\"8px\"\n bg=\"#151515D9\"\n borderColor=\"#9999991A\"\n borderRadius=\"8px\"\n >\n <Box pr=\"8px\">{Icon}</Box>\n <Text pr=\"16px\" fontSize=\"13px\" color={colors.label.primary.dark}>\n {message}\n </Text>\n {onClick && buttonText && (\n <Flex ml=\"auto\" justifyContent=\"flex-end\">\n <Button\n color={colors.fill.action}\n style={{\n background: 'transparent',\n border: 'transparent',\n boxShadow: 'none',\n }}\n _hover={{\n bg: 'transparent',\n border: 'transparent',\n boxShadow: 'none',\n }}\n onClick={onClick}\n >\n {buttonText}\n </Button>\n </Flex>\n )}\n </Flex>\n );\n};\n","import React from 'react';\nimport { Box, Button } from '@chakra-ui/react';\n\nexport interface ActionRowProps {\n primaryText: string;\n primaryOnClick: () => void;\n primaryDisabled: boolean;\n secondaryText: string;\n secondaryOnClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `ActionRow` component\n */\nexport const ActionRow: React.FC<ActionRowProps> = ({\n primaryDisabled,\n primaryOnClick,\n primaryText,\n secondaryOnClick,\n secondaryText,\n}) => {\n return (\n <Box>\n <Button\n variant=\"secondary\"\n color=\"black\"\n onClick={secondaryOnClick}\n mr=\"8px\"\n >\n {secondaryText}\n </Button>\n <Button onClick={primaryOnClick} disabled={primaryDisabled}>\n {primaryText}\n </Button>\n </Box>\n );\n};\n","import React, { ReactNode, useMemo } from 'react';\nimport { Alert, AlertDescription, Box, Flex } from '@chakra-ui/react';\nimport { Button } from '../button';\nimport { Error } from '../icons/error';\nimport { Neutral } from '../icons/neutral';\nimport { Positive } from '../icons/positive';\nimport { Warning } from '../icons/warning';\n\nexport type BannerVariant = 'positive' | 'warning' | 'error' | 'neutral';\n\nexport interface BannerProps {\n variant: BannerVariant;\n message: ReactNode;\n buttonText?: string;\n onClick?: () => void;\n type?: 'condensed' | 'expanded';\n}\n\n/**\n * A functional React component utilized to render the `Banner` component\n */\nexport const Banner: React.FC<BannerProps> = ({\n variant,\n message,\n buttonText,\n onClick,\n type = 'expanded',\n}) => {\n const Icon = useMemo(() => {\n switch (variant) {\n case 'error':\n return <Error boxSize=\"16px\" />;\n case 'neutral':\n return <Neutral boxSize=\"16px\" />;\n case 'positive':\n return <Positive boxSize=\"16px\" />;\n case 'warning':\n return <Warning boxSize=\"16px\" />;\n default:\n return null;\n }\n }, [variant]);\n\n return (\n <Alert variant={variant} borderRadius=\"4px\">\n <AlertDescription>\n <Flex\n flexDirection={type === 'condensed' ? 'row' : 'column'}\n alignItems={type === 'condensed' ? 'center' : ''}\n minHeight=\"26px\"\n >\n <Box pr=\"8px\">{Icon}</Box>\n <Box pt={type === 'condensed' ? 0 : '8px'}> {message}</Box>\n {onClick && buttonText && (\n <Flex\n ml={type === 'condensed' ? 'auto' : ''}\n pt={type === 'condensed' ? 0 : '8px'}\n justifyContent={type === 'condensed' ? 'flex-end' : 'flex-end'}\n >\n <Button\n variant=\"secondary\"\n onClick={onClick}\n text={buttonText}\n width=\"variable\"\n ariaLabel=\"banner button\"\n />\n </Flex>\n )}\n </Flex>\n </AlertDescription>\n </Alert>\n );\n};\n","import React, { useCallback } from 'react';\nimport { Flex } from '@chakra-ui/react';\nimport { Icon } from './components/icon';\nimport { Label } from './components/label';\n\nexport interface BreadcrumbsProps {\n steps: string[];\n activeStepIndex: number;\n orientation?: 'horizontal' | 'vertical';\n}\n\n/**\n * A functional React component utilized to render the `Breadcrumbs` component.\n *\n * The component will render a list of steps, based on the `steps` array, displaying the completed,\n * active, and incomplete steps. The orientation of the component may be either `horizontal` or\n * `vertical`.\n */\nexport const Breadcrumbs: React.FC<BreadcrumbsProps> = ({\n steps,\n activeStepIndex,\n orientation,\n}) => {\n const getStatus = useCallback(\n (stepIndex: number) => {\n if (activeStepIndex > stepIndex) return 'complete';\n if (activeStepIndex < stepIndex) return 'inactive';\n return 'active';\n },\n [activeStepIndex]\n );\n\n return (\n <Flex flexDir={orientation === 'horizontal' ? 'row' : 'column'}>\n {steps.map((step, idx) => (\n <Flex\n key={idx}\n alignItems=\"center\"\n pr={orientation === 'horizontal' ? '16px' : 0}\n py=\"4px\"\n >\n <Icon step={idx + 1} status={getStatus(idx)} />\n <Label label={step} />\n </Flex>\n ))}\n </Flex>\n );\n};\n","import React, { Children, ReactNode } from 'react';\nimport { Box, Flex, Text } from '@chakra-ui/react';\nimport colors from '../../theme/foundations/colors';\nimport typography from '../../theme/foundations/typography';\nimport { Button } from '../button';\n\nexport interface CardProps {\n title: string | ReactNode;\n leftIcon?: JSX.Element;\n children: ReactNode | null;\n height?: string | number;\n}\n\n/**\n * A functional React component utilized to render the `Card` component\n */\nexport const Card: React.FC<CardProps> = ({\n title,\n leftIcon,\n children,\n height = 'auto',\n}) => {\n return (\n <Box\n bg={colors.fill.light.quaternary}\n borderRadius=\"4px\"\n border={`.5px solid ${colors.border.default}`}\n py=\"8px\"\n px=\"8px\"\n height={height}\n overflowY=\"auto\"\n width=\"206px\"\n _notLast={{ marginBottom: '8px' }}\n >\n {title && (\n <Flex\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"start\"\n textDecoration=\"none\"\n _hover={{ textDecoration: 'none' }}\n mb=\"8px\"\n >\n <Flex alignItems=\"center\">\n <Box mr=\"4px\">{leftIcon}</Box>\n <Text\n color={colors.label.primary.light}\n fontSize={typography.fontSizes.sm}\n fontWeight={typography.fontWeights.medium}\n >\n {title}\n </Text>\n </Flex>\n </Flex>\n )}\n {Children.map(children, child => {\n if (!React.isValidElement(child)) {\n return;\n }\n if (child.type !== Button) {\n return (\n <Text\n as=\"div\"\n _notLast={{ marginBottom: '8px' }}\n color={colors.label.primary.light}\n fontSize={typography.fontSizes.xs}\n fontWeight={typography.fontWeights.normal}\n >\n {child}\n </Text>\n );\n } else {\n return <Box mt=\"8px\">{child}</Box>;\n }\n })}\n </Box>\n );\n};\n","import React from 'react';\nimport { ReactComponent as CheckmarkIcon } from './checkmark.svg';\n\nexport interface CheckmarkProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Checkmark` icon component\n */\nexport const Checkmark: React.FC<CheckmarkProps> = ({ boxSize }) => {\n return <CheckmarkIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport colors from '../../../../theme/foundations/colors';\nimport { ReactComponent as ChevronDownIcon } from './chevron-down.svg';\n\nexport interface ChevronDownProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `ChevronDown` icon component\n */\nexport const ChevronDown: React.FC<ChevronDownProps> = ({ boxSize }) => {\n return <ChevronDownIcon boxSize={boxSize} fill={colors.fill.action} />;\n};\n","import React from 'react';\nimport { ReactComponent as ClockIcon } from './clock.svg';\n\nexport interface ClockProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Clock` icon component\n */\nexport const Clock: React.FC<ClockProps> = ({ boxSize }) => {\n return <ClockIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FileFillIcon } from './file-fill.svg';\n\nexport interface FileFillProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `FileFill` icon component\n */\nexport const FileFill: React.FC<FileFillProps> = ({ boxSize }) => {\n return <FileFillIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FileOutlineIcon } from './file-outline.svg';\n\nexport interface FileOutlineProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `FileOutline` icon component\n */\nexport const FileOutline: React.FC<FileOutlineProps> = ({ boxSize }) => {\n return <FileOutlineIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FolderAddFillIcon } from './folder-add-fill.svg';\n\nexport interface FolderAddFillProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `FolderAddFill` icon component\n */\nexport const FolderAddFill: React.FC<FolderAddFillProps> = ({ boxSize }) => {\n return <FolderAddFillIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FolderAddOutlineIcon } from './folder-add-outline.svg';\n\nexport interface FolderAddOutlineProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `FolderAddOutline` icon component\n */\nexport const FolderAddOutline: React.FC<FolderAddOutlineProps> = ({\n boxSize,\n}) => {\n return <FolderAddOutlineIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FolderFillIcon } from './folder-fill.svg';\nimport { ReactComponent as FolderFillGradientIcon } from './folder-fill-gradient.svg';\n\nexport interface FolderFillProps {\n boxSize: number | string;\n gradient?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `FolderFill` icon component\n */\nexport const FolderFill: React.FC<FolderFillProps> = ({\n boxSize,\n gradient = false,\n}) => {\n if (gradient) {\n return <FolderFillGradientIcon width={boxSize} height={boxSize} />;\n }\n return <FolderFillIcon width={boxSize} height={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as FolderOutlineIcon } from './folder-outline.svg';\n\nexport interface FolderOutlineProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `FolderOutline` icon component\n */\nexport const FolderOutline: React.FC<FolderOutlineProps> = ({ boxSize }) => {\n return <FolderOutlineIcon boxSize={boxSize} />;\n};\n","import React, { PropsWithChildren } from 'react';\nimport { FieldValues, FormProvider } from 'react-hook-form';\nimport { FormHandler } from '../../components/form/hooks/useFormHandler';\n\nexport interface FormProps<T extends FieldValues> {\n formHandler: FormHandler<T>;\n}\n\n/**\n * A functional React component utilized to render the `Form` component, a form wrapper for\n * `react-hook-form`. The `Form` component is provided a `formHandler` and is used to wrap a container\n * that contains a `FormSection` component.\n */\nexport function Form<T extends FieldValues>({\n formHandler,\n children,\n}: PropsWithChildren<FormProps<T>>) {\n const { form, onSubmit } = formHandler;\n\n return (\n <FormProvider {...form}>\n <form onSubmit={onSubmit}>{children}</form>\n </FormProvider>\n );\n}\n","import { SimpleGrid } from '@chakra-ui/react';\nimport React from 'react';\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { Input } from '../../input';\nimport { FormInput, FormStructure } from '../FormTypes';\n\n/**\n * @param T - represents the key/section in the `FormStructure`.\n * @param U - is the form value types for the `useFormHandler` hook.\n *\n * @param formStructure - the form of type form structure with their respective `FormSteps`.\n * @param section - the section (`FormStep`) we want to generate a section for.\n * @param form - the overall form containing methods (generated by `useFormHandler` hook).\n */\nexport interface FormSectionProps<\n T extends string | number | symbol,\n U extends FieldValues\n> {\n formStructure: FormStructure<T>;\n section: T;\n form: UseFormReturn<U>;\n className?: string;\n columns?: number;\n spacing?: number;\n}\n\n/**\n *\n * @param props - of type `FormSectionProps<T, U>` where `T` represents the key in `FormSteps`,\n * can be generic key but is represented by value in `FormSteps` and `U` is the form value types for the\n * `useFormHandler` hook.\n *\n * @returns a list of input's for a specific form section.\n */\nexport function FormSection<\n T extends string | number | symbol,\n U extends FieldValues\n>({\n formStructure,\n section,\n form,\n className,\n columns = 1,\n spacing = 0,\n}: FormSectionProps<T, U>) {\n return (\n <SimpleGrid\n columns={columns}\n spacing={spacing}\n className={`form-section ${className ?? ''}`}\n >\n {formStructure[section].map(\n ({\n label,\n inputType,\n name,\n options,\n isRequired,\n maxLength,\n ariaLabel,\n disabled,\n defaultValue,\n variant,\n }: FormInput) => (\n <Input<U>\n key={name}\n control={form.control}\n label={label}\n inputType={inputType}\n name={name}\n ariaLabel={ariaLabel}\n disabled={disabled}\n options={options}\n isRequired={isRequired}\n maxLength={maxLength}\n isInvalid={!!form.formState.errors[name]}\n defaultValue={defaultValue}\n setValue={form.setValue}\n setError={form.setError}\n clearErrors={form.clearErrors}\n variant={variant ? variant : ''}\n />\n )\n )}\n </SimpleGrid>\n );\n}\n","import React from 'react';\nimport { JSXIconProps } from '..';\nimport { colors } from '../../../theme/foundations/colors';\nimport { Box } from '@chakra-ui/react';\n\nexport const GearIcon: React.FC<JSXIconProps> = ({\n boxSize,\n color,\n ...props\n}) => {\n return (\n <Box {...props}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={boxSize ?? 16}\n height={boxSize ?? 17}\n fill=\"none\"\n viewBox=\"0 0 16 17\"\n {...props}\n >\n <path\n fill={color ?? colors.white}\n d=\"M10.42 7.9c.376 0 .661-.346.51-.69a3.2 3.2 0 00-3.276-1.892c-.375.04-.532.461-.344.787L8.173 7.6a.6.6 0 00.52.3h1.726zM6.272 6.706c-.189-.326-.632-.4-.854-.096A3.186 3.186 0 004.8 8.5c0 .707.23 1.36.618 1.89.222.304.665.23.854-.096L7.134 8.8a.6.6 0 000-.6l-.862-1.494zM7.31 10.895c-.188.326-.03.746.344.786a3.2 3.2 0 003.275-1.891c.152-.344-.133-.69-.51-.69H8.693a.6.6 0 00-.52.3l-.863 1.495z\"\n ></path>\n <path\n fill={color ?? colors.white}\n fillRule=\"evenodd\"\n d=\"M11.304 3.978l.516-.894a.6.6 0 00-1.04-.6l-.515.893A5.563 5.563 0 008.6 2.932V1.9a.6.6 0 00-1.2 0v1.032a5.564 5.564 0 00-1.665.445l-.515-.893a.6.6 0 00-1.04.6l.516.894a5.632 5.632 0 00-1.218 1.218l-.894-.516a.6.6 0 10-.6 1.04l.893.515A5.564 5.564 0 002.432 7.9H1.4a.6.6 0 000 1.2h1.032c.062.587.215 1.146.445 1.665l-.893.515a.6.6 0 10.6 1.04l.894-.517a5.63 5.63 0 001.218 1.219l-.516.894a.6.6 0 001.04.6l.515-.893c.518.23 1.078.383 1.665.445V15.1a.6.6 0 101.2 0v-1.032a5.562 5.562 0 001.665-.445l.515.893a.6.6 0 101.04-.6l-.516-.894a5.632 5.632 0 001.218-1.219l.894.516a.6.6 0 10.6-1.039l-.893-.515c.23-.519.383-1.078.445-1.665H14.6a.6.6 0 100-1.2h-1.032a5.564 5.564 0 00-.445-1.665l.893-.516a.6.6 0 00-.6-1.039l-.894.516a5.633 5.633 0 00-1.218-1.218zM8 4.1a4.38 4.38 0 00-2.225.603 4.422 4.422 0 00-1.599 1.619A4.38 4.38 0 003.6 8.5a4.38 4.38 0 00.601 2.222 4.422 4.422 0 001.623 1.603A4.38 4.38 0 008 12.9a4.38 4.38 0 002.223-.602 4.423 4.423 0 001.602-1.622A4.38 4.38 0 0012.4 8.5a4.38 4.38 0 00-.602-2.224 4.422 4.422 0 00-1.623-1.602A4.38 4.38 0 008 4.1z\"\n clipRule=\"evenodd\"\n ></path>\n </svg>\n </Box>\n );\n};\n\nexport default GearIcon;\n","import React from 'react';\nimport { Google } from '../../icons/google';\nimport { Button, ButtonProps } from '..';\n\nexport interface GoogleButtonProps extends Partial<ButtonProps> {\n onClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `GoogleButton` component\n */\nexport const GoogleButton: React.FC<GoogleButtonProps> = ({\n onClick,\n type,\n}) => {\n return (\n <Button\n onClick={onClick}\n variant=\"secondary\"\n ariaLabel=\"google-login-button\"\n className=\"google-button\"\n leftIcon={<Google boxSize=\"18px\" />}\n text=\"Sign in with Google\"\n width=\"variable\"\n type={type}\n color=\"#000\"\n />\n );\n};\n","import { Image } from '@chakra-ui/react';\nimport React from 'react';\nimport path from './drive.png';\nexport interface GoogleDriveProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `GoogleDrive` icon component\n */\nexport const GoogleDrive: React.FC<GoogleDriveProps> = ({ boxSize }) => {\n return <Image src={path} boxSize={boxSize} />;\n};\n","var img = \"data:image/png;base64,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\";\n export default img;","import React from 'react';\nimport { ReactComponent as GroupIcon } from './group.svg';\n\nexport interface GroupProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Group` icon component\n */\nexport const Group: React.FC<GroupProps> = ({ boxSize }) => {\n return <GroupIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as HomeIcon } from './home.svg';\n\nexport interface HomeProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Home` icon component\n */\nexport const Home: React.FC<HomeProps> = ({ boxSize }) => {\n return <HomeIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as ImageIcon } from './image.svg';\n\nexport interface ImageProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Image` icon component\n */\nexport const Image: React.FC<ImageProps> = ({ boxSize }) => {\n return <ImageIcon boxSize={boxSize} />;\n};\n","import React, { ReactNode, useState } from 'react';\nimport {\n Box,\n Collapse,\n Flex,\n Grid,\n GridItem,\n IconButton,\n useMediaQuery,\n} from '@chakra-ui/react';\nimport { HamburgerIcon, CloseIcon } from '@chakra-ui/icons';\nimport { BorderedBox } from './BorderedBox';\n\nexport interface LayoutProps {\n Navigation?: ReactNode;\n Header?: ReactNode;\n MainContent?: ReactNode;\n navbarWidth?: string;\n}\n\n/**\n * A functional React component utilized to render the `Layout` component\n */\nexport const Layout: React.FC<LayoutProps> = ({\n Navigation,\n Header,\n MainContent,\n navbarWidth = '250px',\n}) => {\n const [isLargerThan1200] = useMediaQuery('(min-width: 1200px)');\n\n const [show, setShow] = useState(false);\n\n return (\n <Grid\n templateAreas={\n isLargerThan1200 ? `\"nav header\" \"nav main\"` : `\"header\" \"main\"`\n }\n gridTemplateRows=\"auto 1fr\"\n gridTemplateColumns={isLargerThan1200 ? `${navbarWidth} 1fr` : '100% 1fr'}\n h=\"100%\"\n width=\"100%\"\n gap=\"4\"\n bg=\"#f5f5f5\"\n >\n <GridItem area=\"header\" p=\"20px 20px 10px 10px\" minHeight=\"100px\">\n <BorderedBox\n borderRadius=\"md\"\n boxShadow=\"rgba(235,237,238,.75) 8px 0 30px 10px\"\n >\n <Flex\n flexDirection=\"column\"\n justifyContent=\"center\"\n width=\"100%\"\n pl={'32px'}\n py={5}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n {Header}\n {!isLargerThan1200 && (\n <IconButton\n size=\"md\"\n variant=\"unstyled\"\n alignSelf=\"flex-start\"\n aria-label=\"menu\"\n type=\"button\"\n onClick={() => setShow(!show)}\n icon={show ? <CloseIcon /> : <HamburgerIcon />}\n _focus={{\n boxShadow: 'none',\n }}\n />\n )}\n </Flex>\n {!isLargerThan1200 && (\n <Collapse in={show}>\n <Box marginTop={5}>{Navigation}</Box>\n </Collapse>\n )}\n </Flex>\n </BorderedBox>\n </GridItem>\n {isLargerThan1200 && (\n <GridItem area=\"nav\" width={navbarWidth}>\n <BorderedBox boxShadow=\"rgba(0, 0, 0, 0.035) 0px 2px 10px\">\n {Navigation}\n </BorderedBox>\n </GridItem>\n )}\n <GridItem area=\"main\" p=\"0 20px 20px 10px\">\n <BorderedBox\n borderRadius=\"md\"\n boxShadow=\"rgba(0, 0, 0, 0.035) 0px 2px 10px\"\n >\n {MainContent}\n </BorderedBox>\n </GridItem>\n </Grid>\n );\n};\n","/* eslint-disable jsx-a11y/anchor-is-valid */\nimport { Flex, Text } from '@chakra-ui/react';\nimport React, { useMemo } from 'react';\nimport colors from '../../theme/foundations/colors';\nimport { Page, Video } from '../icons';\n\nexport interface LinkProps {\n variant: 'video' | 'page';\n text: string;\n onClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `Link` component\n */\nexport const Link: React.FC<LinkProps> = ({ variant, text, onClick }) => {\n const getIcon = useMemo(() => {\n switch (variant) {\n case 'page':\n return <Page boxSize=\"12px\" />;\n case 'video':\n return <Video boxSize=\"12px\" />;\n }\n }, [variant]);\n\n return (\n <Flex alignItems=\"flex-start\" cursor=\"pointer\" onClick={onClick}>\n {getIcon}\n <Text variant=\"description-large\" pl=\"2px\" color={colors.fill.action}>\n {text}\n </Text>\n </Flex>\n );\n};\n","import React from 'react';\nimport { Flex, Spinner, Text } from '@chakra-ui/react';\nimport colors from '../../theme/foundations/colors';\n\nexport interface LoadingIndicatorProps {\n size?: 'sm' | 'md' | 'lg' | 'xs' | 'xl';\n text?: string;\n thickness?: string;\n speed?: string;\n className?: string;\n}\n\n/**\n * A functional React component utilized to render the `LoadingIndicator` component\n */\nexport const LoadingIndicator: React.FC<LoadingIndicatorProps> = ({\n size = 'xl',\n text = 'Loading',\n thickness = '3px',\n speed = '0.5s',\n className,\n}) => {\n return (\n <Flex\n flexDirection=\"column\"\n alignItems=\"center\"\n aria-label=\"loading-indicator\"\n className={`loading-indicator ${className ?? ''}`}\n >\n <Spinner\n size={size}\n color={colors.fill.action}\n flex=\"none\"\n thickness={thickness}\n speed={speed}\n mb={2}\n />\n {text && (\n <Text fontSize={size} lineHeight=\"shorter\" fontWeight=\"semibold\">\n {text}\n </Text>\n )}\n </Flex>\n );\n};\n","import React from 'react';\nimport { ReactComponent as MenuIcon } from './menu.svg';\n\nexport interface MenuProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Menu` icon component\n */\nexport const Menu: React.FC<MenuProps> = ({ boxSize }) => {\n return <MenuIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { Microsoft } from '../../icons/microsoft';\nimport { Button, ButtonProps } from '..';\n\nexport interface MicrosoftButtonProps extends Partial<ButtonProps> {\n onClick: () => void;\n}\n\n/**\n * A functional React component utilized to render the `MicrosoftButton` component\n */\nexport const MicrosoftButton: React.FC<MicrosoftButtonProps> = ({\n onClick,\n type,\n}) => {\n return (\n <Button\n onClick={onClick}\n variant=\"secondary\"\n ariaLabel=\"microsoft-login-button\"\n className=\"microsoft-button\"\n leftIcon={<Microsoft boxSize=\"18px\" />}\n text=\"Sign in with Microsoft\"\n width=\"variable\"\n type={type}\n color=\"#000\"\n />\n );\n};\n","import { Image } from '@chakra-ui/react';\nimport React from 'react';\nimport path from './onedrive.png';\n\nexport interface MicrosoftOneDriveProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `MicrosoftOneDrive` icon component\n */\nexport const MicrosoftOneDrive: React.FC<MicrosoftOneDriveProps> = ({\n boxSize,\n}) => {\n return <Image src={path} boxSize={boxSize} />;\n};\n","var img = \"data:image/png;base64,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\";\n export default img;","import React, { ReactNode } from 'react';\nimport {\n Modal as ChakraModal,\n ModalBody,\n ModalContent,\n ModalFooter,\n ModalHeader,\n ModalOverlay,\n Box,\n} from '@chakra-ui/react';\n\nexport interface ModalProps {\n title?: string;\n body?: ReactNode;\n footer?: ReactNode;\n isOpen: boolean;\n onClose: () => void;\n}\n\n/**\n * A functional React component utilized to render the `Modal` component\n */\nexport const Modal: React.FC<ModalProps> = ({\n title,\n body,\n footer,\n isOpen,\n onClose,\n}) => {\n return (\n <ChakraModal isOpen={isOpen} onClose={onClose}>\n <ModalOverlay />\n <ModalContent>\n <ModalHeader>{title}</ModalHeader>\n <ModalBody>{body}</ModalBody>\n <Box borderBottom=\"1px solid #D9D9D9\" />\n <ModalFooter>{footer}</ModalFooter>\n </ModalContent>\n </ChakraModal>\n );\n};\n","import React, { useMemo, useState, useEffect } from 'react';\nimport { Box, Flex } from '@chakra-ui/react';\nimport { NavigationMenuHeader } from './components/header';\nimport { NavigationMenuItem } from './components/items';\n\nexport type GroupMenuItems = {\n leftIcon: JSX.Element;\n label: string;\n href?: string;\n to?: string;\n rightIcon?: JSX.Element;\n onClick?: () => void;\n isExternal?: boolean;\n};\n\nexport type GroupedMenuItem = {\n groupSortValue: number;\n groupHeader?: string;\n groupMenuItems: GroupMenuItems[];\n};\n\nexport interface NavigationMenuProps {\n groupedMenuItems: GroupedMenuItem[];\n selectedMenuItem?: string;\n bottomMenuItem?: GroupMenuItems;\n}\n\n/**\n * A functional React component utilized to render the `NavigationMenu` component\n */\nexport const NavigationMenu: React.FC<NavigationMenuProps> = ({\n groupedMenuItems,\n selectedMenuItem,\n bottomMenuItem,\n}) => {\n const sortedGroupedMenuItems = useMemo(\n () => groupedMenuItems?.sort((a, b) => a.groupSortValue - b.groupSortValue),\n [groupedMenuItems]\n );\n\n const [_selectedMenuItem, setSelectedMenuItem] = useState<string>('');\n\n useEffect(() => {\n if (selectedMenuItem) setSelectedMenuItem(selectedMenuItem);\n }, [selectedMenuItem]);\n\n return (\n <Flex\n bg=\"#7474800D\"\n py=\"32px\"\n px=\"8px\"\n height=\"100%\"\n overflowY=\"auto\"\n width=\"220px\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n >\n {sortedGroupedMenuItems?.map((menuItemGroup, idx) => (\n <Box key={idx} _notLast={{ paddingBottom: '8px' }}>\n {menuItemGroup.groupHeader && (\n <NavigationMenuHeader label={menuItemGroup.groupHeader} />\n )}\n {menuItemGroup.groupMenuItems.map((item, idx) => (\n <NavigationMenuItem\n {...item}\n key={idx}\n isSelected={_selectedMenuItem === item.label}\n onClick={() => setSelectedMenuItem(item.label)}\n />\n ))}\n </Box>\n ))}\n {bottomMenuItem && (\n <NavigationMenuItem\n {...bottomMenuItem}\n key={bottomMenuItem.label}\n isSelected\n onClick={() => {\n if (bottomMenuItem.onClick) {\n bottomMenuItem.onClick();\n }\n }}\n />\n )}\n </Flex>\n );\n};\n","import React from 'react';\nimport { ReactComponent as QuestionIcon } from './question.svg';\n\nexport interface QuestionProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Question` icon component\n */\nexport const Question: React.FC<QuestionProps> = ({ boxSize }) => {\n return <QuestionIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as SearchIcon } from './search.svg';\n\nexport interface SearchProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Search` icon component\n */\nexport const Search: React.FC<SearchProps> = ({ boxSize }) => {\n return <SearchIcon boxSize={boxSize} />;\n};\n","import React, { useEffect } from 'react';\nimport { Select } from '@chakra-ui/react';\nimport {\n FormControl,\n FormErrorMessage,\n FormHelperText,\n} from '@chakra-ui/react';\nimport {\n Control,\n Controller,\n FieldValues,\n UseFormClearErrors,\n UseFormSetError,\n UseFormSetValue,\n} from 'react-hook-form';\nimport { FieldOptions, ValidationProps } from 'src/components/input/InputTypes';\n\nexport interface SelectNativeProps<T extends FieldValues>\n extends ValidationProps {\n isRequired: boolean;\n\n name: string;\n ariaLabel: string;\n placeholder?: string;\n defaultValue?: string;\n label?: string;\n className?: string;\n options?: FieldOptions;\n fullOptions?: FieldOptions;\n helperText?: React.ReactNode;\n control: Control<T, unknown>;\n onChange?: (value?: string) => void;\n disabled?: boolean;\n tooltipText?: string;\n setValue: UseFormSetValue<T>;\n setError: UseFormSetError<T>;\n clearErrors: UseFormClearErrors<T>;\n allowDefault?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `SelectNative` component.\n */\nexport const SelectNative: React.FC<SelectNativeProps<HTMLSelectElement>> = ({\n label,\n ariaLabel,\n className,\n placeholder,\n name,\n helperText,\n options,\n tooltipText,\n isInvalid,\n errorText,\n isRequired,\n defaultValue,\n fullOptions,\n control,\n disabled,\n onChange,\n setValue,\n setError,\n clearErrors,\n ...props\n}) => {\n // const [selectedOption, setSelectedOption] = useState(\n // options ? options[0] ?? '' : ''\n // );\n\n const style = {\n cursor: 'pointer',\n color: 'var(--chakra-colors-blue-500)',\n height: '48px',\n fontSize: '17px',\n lineHeight: '20px',\n fontWeight: 400,\n padding: '12px 16px 12px 0px',\n borderRadius: 0,\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\n borderLeft: 'none',\n borderRight: 'none',\n };\n\n const handleOnSelectItem = (selectedValue: string) => {\n const selectedOption = options?.find(\n ({ value: val }) => selectedValue === val\n );\n\n if (selectedOption) {\n if (onChange) {\n onChange(selectedOption.value);\n }\n setValue(name as string, selectedOption.value);\n } else {\n setValue(name as string, selectedValue);\n }\n };\n\n useEffect(() => {\n if (defaultValue) {\n handleOnSelectItem(defaultValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultValue]);\n return (\n <Controller\n control={control}\n name={name}\n rules={{ required: isRequired }}\n /** @ts-ignore: issues with implicit */\n render={({ field: { onBlur, onChange: fieldOnChange, ref, value } }) => (\n <FormControl id={name} isInvalid={isInvalid} position=\"relative\" py={0}>\n <Select\n {...props}\n required={isRequired}\n ref={ref}\n value={value}\n disabled={disabled ?? false}\n onChange={e => handleOnSelectItem(e.target.value)}\n style={style}\n >\n {options &&\n options.map(i => {\n return (\n <option value={i.value} key={i.sortValue}>\n {i.label}\n </option>\n );\n })}\n </Select>\n {isInvalid ? (\n <FormErrorMessage>{errorText}</FormErrorMessage>\n ) : (\n helperText && <FormHelperText>{helperText}</FormHelperText>\n )}\n </FormControl>\n )}\n />\n );\n};\n","import React from 'react';\nimport { ReactComponent as ServicesIcon } from './services.svg';\n\nexport interface ServicesProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Services` icon component\n */\nexport const Services: React.FC<ServicesProps> = ({ boxSize }) => {\n return <ServicesIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport colors from '../../../theme/foundations/colors';\nimport { ReactComponent as SettingsIcon } from './settings.svg';\n\nexport interface SettingsProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Settings` icon component\n */\nexport const Settings: React.FC<SettingsProps> = ({ boxSize }) => {\n return <SettingsIcon boxSize={boxSize} fill={colors.fill.action} />;\n};\n","import React from 'react';\nimport { Button, Spinner } from '@chakra-ui/react';\nimport { ButtonProps } from '..';\n\nexport interface SpinnerButtonProps extends ButtonProps {\n isLoading: boolean;\n}\n\n/**\n * A functional React component utilized to render the `SpinnerButton` component\n */\nexport const SpinnerButton: React.FC<SpinnerButtonProps> = ({\n isLoading,\n text,\n onClick,\n type,\n ariaLabel,\n variant = 'primary',\n disabled,\n className,\n}) => {\n return (\n <Button\n spinner={<Spinner size={'xs'} />}\n isLoading={isLoading}\n onClick={onClick}\n type={type}\n variant={variant}\n disabled={disabled}\n aria-label={ariaLabel}\n className={className}\n >\n {text}\n </Button>\n );\n};\n","import React from 'react';\nimport {\n ReadonlyTableColumns,\n TableBody,\n TableColumns,\n TableHeaders,\n} from './TableTypes';\nimport { generateTableColumnsAsConst } from './utils/generateTableColumns';\n\nimport {\n Table as ChakraTable,\n TableContainer,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n} from '@chakra-ui/react';\nimport { TableLoadingRows } from './components/loading';\nimport colors from '../../theme/foundations/colors';\nimport { EmptyTable } from './empty';\n\nexport interface TableProps<T extends ReadonlyTableColumns> {\n columns: TableColumns;\n headers?: TableHeaders<T>;\n body: TableBody<T>;\n loading?: boolean;\n loadMore?: () => void;\n placeholder?: string;\n}\n\n/**\n * A React component utilized to render the `Table` component\n */\nexport function Table<T extends ReadonlyTableColumns>({\n columns,\n headers,\n body,\n loading,\n loadMore,\n}: TableProps<T>) {\n const columnsAsConst = generateTableColumnsAsConst(columns);\n\n return (\n <TableContainer border=\"none\" overflowX=\"auto\" bg=\"white\" width=\"100%\">\n {body.length ? (\n <ChakraTable\n variant=\"unstyled\"\n width=\"100%\"\n style={{\n borderCollapse: 'separate',\n borderSpacing: '0px',\n }}\n >\n {headers && (\n <Thead>\n <Tr _odd={{ bg: colors.label.primary.dark }}>\n {columnsAsConst.map((column, idx) => (\n // @ts-ignore\n <Th key={idx}>{headers[column]}</Th>\n ))}\n </Tr>\n </Thead>\n )}\n <Tbody>\n {body.map((row, idx) => (\n <Tr key={idx}>\n {columnsAsConst.map((column, idx) => (\n // @ts-ignore\n <Td key={idx}>{row[column]}</Td>\n ))}\n </Tr>\n ))}\n </Tbody>\n </ChakraTable>\n ) : (\n <EmptyTable />\n )}\n {loadMore && loading !== undefined && body.length ? (\n <TableLoadingRows isLoading={loading} onLoadMore={loadMore} />\n ) : null}\n </TableContainer>\n );\n}\n","import { TableColumns } from '../TableTypes';\n\n/**\n * This function is responsible for returning an array as a const, so the generic type `TableBody`\n * may accept it as an argument and use the elements of the array as keys.\n */\nexport function generateTableColumnsAsConst<T extends TableColumns>(arr: T) {\n return [...arr] as const;\n}\n","import React from 'react';\nimport { ReactComponent as TableFillIcon } from './table-fill.svg';\n\nexport interface TableFillProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `TableFill` icon component\n */\nexport const TableFill: React.FC<TableFillProps> = ({ boxSize }) => {\n return <TableFillIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { ReactComponent as TableOutlineIcon } from './table-outline.svg';\n\nexport interface TableOutlineProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `TableOutline` icon component\n */\nexport const TableOutline: React.FC<TableOutlineProps> = ({ boxSize }) => {\n return <TableOutlineIcon boxSize={boxSize} />;\n};\n","import React, { PropsWithChildren, ReactNode } from 'react';\nimport { Tab, TabList, Tabs } from '@chakra-ui/react';\nimport colors from '../../theme/foundations/colors';\n\nexport interface TabsWrapperProps extends PropsWithChildren {\n navIndex: number;\n setNavIndex: (index: number) => void;\n navItems: ReactNode[];\n}\n\n/**\n * A functional React component utilized to render the `TableNavWrapper` component\n */\nexport const TabsWrapper: React.FC<TabsWrapperProps> = ({\n children,\n navItems,\n navIndex,\n setNavIndex,\n}) => {\n return (\n <Tabs size=\"lg\" variant=\"simple\" index={navIndex} onChange={setNavIndex}>\n <TabList\n flexDirection={{ base: 'column', sm: 'row' }}\n border=\"1px\"\n borderColor={colors.fill.light.quaternary}\n bg=\"white\"\n borderRadius=\"md\"\n borderBottom={0}\n borderBottomLeftRadius={0}\n borderBottomRightRadius={0}\n >\n {navItems.map((navItem, idx) => (\n <Tab key={idx}>{navItem}</Tab>\n ))}\n </TabList>\n {children}\n </Tabs>\n );\n};\n","import React from 'react';\nimport { ReactComponent as TaskIcon } from './task.svg';\nimport { IconProps } from '..';\n\n/**\n * A functional React component utilized to render the `Task` icon component\n */\nexport const Task: React.FC<IconProps> = ({ boxSize }) => {\n return <TaskIcon boxSize={boxSize} />;\n};\n","import React, { PropsWithChildren } from 'react';\nimport { Text as ChakraText } from '@chakra-ui/react';\nimport textTheme from '../../theme/components/text';\n\nexport interface TextProps extends PropsWithChildren {\n variant: keyof typeof textTheme.variants;\n}\n\n/**\n * A functional React component utilized to render the `Text` component. The component is mainly\n * controlled by by the `variant` prop which determines `fontSize`, `fontWeight`, etc.\n * Also extends `TypographyProps`.\n */\nexport const Text: React.FC<TextProps> = ({ variant, children }) => {\n return <ChakraText variant={variant}>{children}</ChakraText>;\n};\n","import React, { PropsWithChildren } from 'react';\nimport { Flex } from '@chakra-ui/react';\nimport { ToolbarBreadcrumbs } from './components/breadcrumbs';\nimport { NavigationButtons } from './components/navigation';\n\nexport type ToolbarLabelAndHandler = { label: string; handler: () => void };\n\nexport interface ToolbarProps extends PropsWithChildren {\n pageList: ToolbarLabelAndHandler[];\n currentPage: string;\n onBackClick?: () => void;\n onForwardClick?: () => void;\n backButtonDisabled?: boolean;\n forwardButtonDisabled?: boolean;\n}\n\n/**\n * A functional React component utilized to render the `Toolbar` component\n */\nexport const Toolbar: React.FC<ToolbarProps> = ({\n children,\n pageList,\n forwardButtonDisabled,\n backButtonDisabled,\n currentPage,\n onBackClick,\n onForwardClick,\n}) => {\n const hasNav = !!onBackClick && !!onForwardClick;\n\n return (\n <Flex flexDirection=\"column\" borderBottom=\"0.5px solid #3C3C432E\">\n <Flex\n height=\"52px\"\n px=\"32px\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n background=\"white\"\n >\n <Flex>\n {hasNav && (\n <NavigationButtons\n onBackClick={onBackClick}\n onForwardClick={onForwardClick}\n backButtonDisabled={backButtonDisabled}\n forwardButtonDisabled={forwardButtonDisabled}\n />\n )}\n <ToolbarBreadcrumbs pageList={pageList} currentPage={currentPage} />\n </Flex>\n <Flex alignItems=\"center\">{children} </Flex>\n </Flex>\n </Flex>\n );\n};\n","import React from 'react';\nimport { ReactComponent as TrashIcon } from './trash.svg';\n\nexport interface TrashProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Trash` icon component\n */\nexport const Trash: React.FC<TrashProps> = ({ boxSize }) => {\n return <TrashIcon boxSize={boxSize} />;\n};\n","import React from 'react';\nimport { Image } from '@chakra-ui/react';\nimport path from './vault.png';\n\nexport interface VaultProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Vault` icon component\n */\nexport const Vault: React.FC<VaultProps> = ({ boxSize }) => {\n return <Image src={path} boxSize={boxSize} />;\n};\n","var img = \"data:image/png;base64,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\";\n export default img;","import React from 'react';\nimport { Image } from '@chakra-ui/react';\nimport path from './workspace.png';\n\nexport interface WorkspaceProps {\n boxSize: number | string;\n}\n\n/**\n * A functional React component utilized to render the `Workspace` icon component\n */\nexport const Workspace: React.FC<WorkspaceProps> = ({ boxSize }) => {\n return <Image src={path} boxSize={boxSize} />;\n};\n","var img = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMQAAACvCAYAAACilXHyAAAAyHpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjabVBbDsMgDPvnFDsCeRTIcWhLpd1gx5/bpFO7zVKCiZETksbruaXHDiZNOtVWrJQMqKlxB2nZ0Y9MWY98YNHQ6F5PfQuBURKc4tdW4v1Zp4+BHx1suhi1JYT5Llh05vZlFI1kn4hB1jCyMBJ2gcKg+7dysVavX5hHvqN5pD3p8K2QufZzr9jeOqGPMA8hycgi6gPIHpKkgygyScXDLAaukDqCYxIs5N+eTqQ39hBaJbBMasIAAAGEaUNDUElDQyBwcm9maWxlAAB4nH2RPUjDQBzFX9NKRSoqdhARzFCd7KIijrUKRagQaoVWHUwu/YImDUmKi6PgWnDwY7Hq4OKsq4OrIAh+gLi6OCm6SIn/SwotYj047se7e4+7d4BQLzPNCsQATbfNVCIuZrKrYvAVAQygH6OIyswy5iQpiY7j6x4+vt5FeVbnc3+OXjVnMcAnEseYYdrEG8Qzm7bBeZ84zIqySnxOPGHSBYkfua54/Ma54LLAM8NmOjVPHCYWC22stDErmhrxNHFE1XTKFzIeq5y3OGvlKmvek78wlNNXlrlOcwQJLGIJEkQoqKKEMmxEadVJsZCi/XgH/7Drl8ilkKsERo4FVKBBdv3gf/C7Wys/NeklheJA14vjfIwBwV2gUXOc72PHaZwA/mfgSm/5K3Vg9pP0WkuLHAF928DFdUtT9oDLHWDoyZBN2ZX8NIV8Hng/o2/KAoO3QM+a11tzH6cPQJq6St4AB4fAeIGy1zu8u7u9t3/PNPv7AbVVcsFBK0qrAAANemlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6R0lNUD0iaHR0cDovL3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgIHhtcE1NOkRvY3VtZW50SUQ9ImdpbXA6ZG9jaWQ6Z2ltcDowZmRkZTViMy03MjIwLTRkNzEtODgwOC1jMzlkNjYwYmUzZmIiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ZGNhM2ZjYzgtYzFmZS00MGEwLWFkYzgtOTRmMThjNDg4MWRjIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MTQzMzEyY2MtOTk0YS00NDdmLTlhMzYtNjczODUxNTcwMzkwIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJNYWMgT1MiCiAgIEdJTVA6VGltZVN0YW1wPSIxNjgxNzQ5NzQzNTc0NzkwIgogICBHSU1QOlZlcnNpb249IjIuMTAuMzQiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICB0aWZmOk9yaWVudGF0aW9uPSIxIgogICB4bXA6Q3JlYXRvclRvb2w9IkdJTVAgMi4xMCIKICAgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMzowNDoxN1QwOTo0MjoyMi0wNzowMCIKICAgeG1wOk1vZGlmeURhdGU9IjIwMjM6MDQ6MTdUMDk6NDI6MjItMDc6MDAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NzExYTEyZC1iMzM5LTQ4N2UtOTRjOS1lYTdkOWQzMTIzMGMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTWFjIE9TKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMy0wNC0xN1QwOTo0MjoyMy0wNzowMCIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3JpcHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz56dk5QAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAACE4AAAhOAFFljFgAAAAB3RJTUUH5wQRECoXKi79PwAAIABJREFUeNrsvXm8plV1JbzWeW9VUSMUMyFONBRVYAvSIWJQwKSdkrZVSAtBjQxVxWSCMT9NjL/4pU0bk5i0YGS6t0r9WhOJgmjSRuUzwSGOJBrSMgi0OBEQqBGqiqq671nfH885Z+9znvcWdS9VaOS++Zkq6t53ep6zz9l77bXXImYfe/Vxz8SDiyXsS3AxoOMJ/hyBpwFaAfAAQvsTGANAAjsJrif0AwD3gfjnANwRpW+R3Cxg08+sOmjz7FXdew/OXoI9/7h7zQPzJB5D8UQSJxE4HsJyAvO7i6508QkSggR2AdH9UN0/d78BAIoEbwX0TQKfI8Ktw6BbfmblQdtnr/ZsQPzkngbv37BgcjK+WtLpJI4gcASEMZaLLZCUJLpgYEj/FkpAdD9PN0jIwQKB4HYSP4R0awA+MBwOv3DYRYetm736swHxk3Ea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\";\n export default img;","import React from 'react';\nimport { ChakraProvider, ChakraProviderProps } from '@chakra-ui/provider';\nimport customXQChakraTheme from '../customXQChakraTheme';\n\n/**\n * A functional React wrapper component utilized to consume the custom XQ theme via `ChakraProvider`\n */\nexport const XQThemeProvider: React.FC<ChakraProviderProps> = ({\n children,\n cssVarsRoot,\n}) => {\n return (\n <ChakraProvider\n theme={customXQChakraTheme}\n resetCSS\n cssVarsRoot={cssVarsRoot}\n >\n {children}\n </ChakraProvider>\n );\n};\n","/* eslint-disable no-redeclare */\nimport { AxiosError } from 'axios';\n\nexport type ErrorResponse = {\n message: string;\n};\n\nexport function formatErrorResponse(error: AxiosError): ErrorResponse;\nexport function formatErrorResponse(error: Error): ErrorResponse;\nexport function formatErrorResponse(error: any): ErrorResponse {\n // This is an error returned from the backend\n if (error.response?.data?.status) {\n return {\n message: error.response?.data?.status,\n };\n }\n\n // This is any generic error\n if (error instanceof Error) {\n return {\n message: error.message,\n };\n }\n\n // This would happen if a developer threw an error that isn't actually an error class. Don't do that...\n console.error(\n 'Caught an error that is not an instance of an error! Replacing with a proper error but please fix this.',\n error\n );\n\n return {\n message: 'An unknown error has occurred',\n };\n}\n","import { ToastPosition, useToast as useChakraToast } from '@chakra-ui/react';\nimport React, { useCallback } from 'react';\nimport { Toast, ToastProps } from '../components/toast';\n\nexport const useToast = () => {\n const toast = useChakraToast();\n\n return useCallback(\n (props: ToastProps & { position: ToastPosition }) =>\n toast({\n position: props.position,\n render: () => <Toast {...props} />,\n }),\n [toast]\n );\n};\n"],"names":["_path","Button","_ref","_ref$type","type","_ref$variant","variant","React","ChakraButton","onClick","disabled","ariaLabel","className","width","rightIcon","leftIcon","color","text","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","Memo","memo","forwardRef","props","ref","React.createElement","xmlns","height","fill","viewBox","stroke","strokeLinecap","strokeLinejoin","d","Error","ErrorIcon","boxSize","fillOpacity","Neutral","NeutralIcon","Positive","PositiveIcon","_path2","_path3","_path4","Warning","WarningIcon","colors","label","primary","light","dark","secondary","tertiary","error","blur","quaternary","border","focus","default","success","warning","action","semantic","transparent","current","black","white","lightBlue","coolGray","darkBlue","backdrop","whiteAlpha","50","100","200","300","400","500","600","700","800","900","blackAlpha","gray","red","orange","green","blue","Icon","step","status","getColors","useMemo","bg","Flex","borderRadius","alignItems","justifyContent","Text","fontSize","Label","Box","pl","typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","none","shorter","short","base","tall","taller","3","4","5","6","7","8","9","10","fontWeights","hairline","thin","medium","semibold","bold","extrabold","fonts","mono","fontSizes","xs","sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","_defs","Google","GoogleLogo","xmlnsXlink","id","patternContentUnits","xlinkHref","transform","Microsoft","MicrosoftLogo","StackedCheckbox","_ref2","value","onChange","Checkbox","defaultChecked","Boolean","defaultValue","e","checked","isChecked","alignSelf","StackedInput","_ref2$type","isRequired","rightElement","leftElement","allowDefault","_objectWithoutPropertiesLoose","_excluded","isMobile","InputGroup","Input","placeholder","undefined","onKeyDown","stopPropagation","preventDefault","StackedRadioGroup","_ref2$flexDirection","flexDirection","RadioGroup","name","options","map","option","mr","Radio","Dropdown","onSelectItem","dropdownRef","position","optionIndex","DropdownContent","idx","role","fontWeight","px","whiteSpace","my","borderTop","borderColor","cursor","py","_hover","scrollMargin","backdropFilter","backdropBlur","mt","maxH","overflowY","top","bottom","minWidth","zIndex","tabIndex","useOnClickOutside","handler","useEffect","listener","event","contains","document","addEventListener","removeEventListener","fillRule","clipRule","DropdownIcon","StackedSelect","setValue","handleOnChange","fullOptions","useRef","dropdownMenuRef","_useState","useState","isFocussed","setIsFocussed","_useState2","_options$find$label","_options$find","find","selectedOption","setSelectedOption","_useState3","setOptionIndex","_useState4","setPosition","_useState5","searchValue","setSearchValue","_useState6","debouncedSearchValue","setDebouncedSearchValue","boundingClientRect","_dropdownRef$current","getBoundingClientRect","_dropdownRef$current2","window","innerHeight","y","_find$label","_find","_dropdownMenuRef$curr3","findIndex","substring","toLowerCase","scrollTo","behavior","updateSearchValue","debounce","val","textShadow","autoComplete","update","concat","initialOptionIndex","_dropdownMenuRef$curr","_dropdownMenuRef$curr2","_","shouldDirty","shouldValidate","InputRightElement","handleOnSelectItem","StackedTextarea","Textarea","Close","CloseIcon","Token","onDelete","_ref$isMobile","backgroundColor","w","h","pr","truncate","trim","omission","StackedMultiSelect","watchedValue","useWatch","control","scrollRef","inputRef","isInit","setIsInit","localValues","setLocalValues","localOptions","setLocalOptions","shouldSideScroll","setShouldSideScroll","_useState7","_useState8","_useState9","_scrollRef$current","left","scrollWidth","split","filter","prevLocalOptions","localOption","includes","handleChange","newValue","_ref3","join","prevLocalOption","prevLocalValues","_inputRef$current","overflowX","style","scrollbarWidth","msOverflowStyle","sx","::-webkit-scrollbar","display","localValue","_ref4","sort","a","b","sortValue","prevLocalValue","handleDelete","padding","_focus","boxShadow","StackedPilledInput","_ref2$separators","separators","lastestFormValueToArray","setLatestFormValueToArray","inputWrapperRef","tokenIndex","setTokenIndex","setLocalValue","latestTokenElement","getElementById","scrollIntoView","block","inline","onHandleKeyDown","filteredUniqueValues","Array","from","Set","toString","prevTokenIndex","tokenElement","scrollBy","useOutsideClick","onBlur","lineHeight","borderLeft","borderRight","maxWidth","index","onRemoveTag","flex","alignContent","float","replace","onFocus","StackedSwitch","Switch","String","tooltipText","FormLabel","ml","Tooltip","placement","QuestionOutlineIcon","inputType","helperText","isInvalid","errorText","maxLength","setError","clearErrors","nonLabeledInputs","Controller","rules","required","render","_ref2$field","field","fieldOnChange","FormControl","StackedCheckBox","selectedInputField","FormErrorMessage","FormHelperText","ChevronRight","ChevronRightIcon","data-name","x1","x2","y1","y2","gradientTransform","gradientUnits","offset","stopColor","Video","VideoIcon","_rect","_rect2","Page","PageIcon","rx","stopOpacity","BorderedBox","_ref$borderRadius","mx","children","NavigationMenuHeader","NavigationMenuItem","to","isSelected","additionalProps","reactRouterLinkProps","as","RouterLink","isExternal","referrerPolicy","href","Link","textDecoration","TableLoadingRows","onLoadMore","direction","borderTopColor","isLoading","Spinner","size","IconButton","icon","HiOutlineRefresh","shadow","EmptyTable","getOpacity","ChakraTable","borderCollapse","borderSpacing","Tbody","Tr","Td","opacity","breakpoints","createBreakpoints","shadows","insetOutline","outline","outlineDanger600","inner","dark-lg","parts","baseStyle","container","description","textAlign","variants","positive","neutral","defaultProps","textTransform","solid","c","colorScheme","theme","transparentize","mode","subtle","darkBg","darkColor","lightColor","getColor","defineStyle","bgGradient","_disabled","pointerEvents","_active","outlineOffset","variantSecondary","variantTertiary","variantPrimaryFlat","gap","letterSpacing","variantSecondaryFlat","variantTertiaryFlat","variantPrimary","flat-primary","flat-secondary","flat-tertiary","_createMultiStyleConf","createMultiStyleConfigHelpers","checkboxAnatomy","keys","defineMultiStyleConfig","mobile","definePartsStyle","fontFamily","Badge","requiredIndicator","::placeholder","_placeholder","transition","sidebar","&.active","sidebarExact","subNavigation","mb","navlink","baseStyleInput","appearance","paddingBottom","> option","baseStyleTrack","p","_checked","baseStyleThumb","track","thumb","sizes","thead","th","tr","_odd","td","_first","borderTopLeftRadius","borderBottomLeftRadius","_last","borderTopRightRadius","borderBottomRightRadius","baseStyleRoot","orientation","baseStyleTab","isFitted","baseStyleTablist","_props$align","align","end","center","start","baseStyleTabpanel","root","tab","tablist","tabpanel","line","isVertical","borderProp","marginProp","_selected","_after","content","right","_tablist","_tab","enclosed","borderTopRadius","borderBottomColor","borderBottom","enclosed-colored","_notLast","soft-rounded","solid-rounded","unstyled","simple","paddingY","paddingX","title-small","title-medium","title-large","subtitle-small","subtitle-medium","subtitle-large","description-small","description-medium","description-large","customXQChakraTheme","extendTheme","components","Alert","Code","Form","FormError","Modal","background","header","pt","pb","body","footer","Select","Table","Tabs","resize","minHeight","styles","global","html, body, #root","overflow","*, *::before, *::after","*::placeholder","ToolbarBreadcrumbItem","page","pageLabel","breakpoint400","useMediaQuery","breakpoint600","breakpoint800","breakpoint1512","getPageLabel","ToolbarBreadcrumbs","pageList","currentPage","filteredPageList","sliceIndex","slice","getPageType","useCallback","LeftArrowButton","LeftArrow","strokeOpacity","RightArrowButton","RightArrow","NavigationButtons","onBackClick","onForwardClick","forwardButtonDisabled","backButtonDisabled","Toast","message","buttonText","primaryDisabled","primaryOnClick","primaryText","secondaryOnClick","secondaryText","AlertDescription","steps","activeStepIndex","getStatus","stepIndex","flexDir","title","_ref$height","marginBottom","Children","child","isValidElement","CheckmarkIcon","ChevronDownIcon","ClockIcon","FileFillIcon","FileOutlineIcon","FolderAddFillIcon","FolderAddOutlineIcon","_ref$gradient","gradient","FolderFillGradientIcon","FolderFillIcon","FolderOutlineIcon","formHandler","onSubmit","FormProvider","form","_ref$columns","columns","_ref$spacing","spacing","SimpleGrid","formStructure","section","formState","errors","Image","src","GroupIcon","HomeIcon","ImageIcon","Navigation","Header","MainContent","_ref$navbarWidth","navbarWidth","isLargerThan1200","show","setShow","Grid","templateAreas","gridTemplateRows","gridTemplateColumns","GridItem","area","HamburgerIcon","Collapse","in","marginTop","getIcon","_ref$size","_ref$text","_ref$thickness","thickness","_ref$speed","speed","MenuIcon","ChakraModal","isOpen","onClose","ModalOverlay","ModalContent","ModalHeader","ModalBody","ModalFooter","groupedMenuItems","selectedMenuItem","bottomMenuItem","sortedGroupedMenuItems","groupSortValue","_selectedMenuItem","setSelectedMenuItem","menuItemGroup","groupHeader","groupMenuItems","item","QuestionIcon","SearchIcon","selectedValue","_ref3$field","ServicesIcon","SettingsIcon","spinner","headers","loading","loadMore","columnsAsConst","TableContainer","Thead","column","Th","row","TableFillIcon","TableOutlineIcon","navIndex","setNavIndex","TabList","navItems","navItem","Tab","TaskIcon","ChakraText","TrashIcon","ChakraProvider","resetCSS","cssVarsRoot","_error$response2","_error$response2$data","_error$response","response","_error$response$data","data","console","toast","useChakraToast"],"mappings":"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"}
1
+ {"version":3,"file":"ui-core.cjs.production.min.js","sources":["../src/components/icons/error/error.svg","../src/components/button/index.tsx","../src/components/icons/neutral/neutral.svg","../src/components/icons/error/index.tsx","../src/components/icons/positive/positive.svg","../src/components/icons/neutral/index.tsx","../src/components/icons/warning/warning.svg","../src/components/icons/positive/index.tsx","../src/components/icons/google/google.svg","../src/components/icons/warning/index.tsx","../src/theme/foundations/colors.ts","../src/components/breadcrumbs/components/icon/index.tsx","../src/components/breadcrumbs/components/label/index.tsx","../src/theme/foundations/typography.ts","../src/components/icons/microsoft/microsoft.svg","../src/components/icons/google/index.tsx","../src/components/icons/microsoft/index.tsx","../src/components/input/StackedCheckbox/StackedCheckbox.tsx","../src/components/icons/dropdown/dropdown.svg","../src/components/input/StackedInput/StackedInput.tsx","../src/components/input/StackedRadio/StackedRadioGroup.tsx","../src/components/input/components/dropdown/index.tsx","../src/hooks/useOnOutsideClick.tsx","../src/components/icons/close/close.svg","../src/components/icons/dropdown/index.tsx","../src/components/input/StackedSelect/index.tsx","../src/components/input/StackedTextarea/StackedTextarea.tsx","../src/components/icons/checkmark/checkmark.svg","../src/components/icons/close/index.tsx","../src/components/input/components/token/index.tsx","../src/components/input/StackedMultiSelect/index.tsx","../src/components/input/StackedPilledInput/index.tsx","../src/components/input/StackedSwitch/index.tsx","../src/components/input/components/label/index.tsx","../src/components/input/index.tsx","../src/components/icons/chevron/down/chevron-down.svg","../src/components/icons/chevron/right/chevron-right.svg","../src/components/icons/clock/clock.svg","../src/components/icons/chevron/right/index.tsx","../src/components/icons/file/fill/file-fill.svg","../src/components/icons/file/outline/file-outline.svg","../src/components/icons/folder/fill/folder-fill.svg","../src/components/icons/folder/fill/folder-fill-gradient.svg","../src/components/icons/folder/outline/folder-outline.svg","../src/components/icons/folder/add/fill/folder-add-fill.svg","../src/components/icons/folder/add/outline/folder-add-outline.svg","../src/components/icons/group/group.svg","../src/components/icons/home/home.svg","../src/components/icons/image/image.svg","../src/components/icons/menu/menu.svg","../src/components/icons/search/search.svg","../src/components/icons/settings/settings.svg","../src/components/icons/table/fill/table-fill.svg","../src/components/icons/table/outline/table-outline.svg","../src/components/icons/trash/trash.svg","../src/components/icons/services/services.svg","../src/components/icons/question/question.svg","../src/components/icons/video/video.svg","../src/components/icons/page/page.svg","../src/components/icons/video/index.tsx","../src/components/icons/task/task.svg","../src/components/icons/page/index.tsx","../src/components/layout/BorderedBox/index.tsx","../src/components/navigation/components/header/index.tsx","../src/components/navigation/components/items/index.tsx","../src/components/table/components/loading/index.tsx","../src/components/table/empty/index.tsx","../src/theme/foundations/breakpoints.ts","../src/theme/foundations/shadows.ts","../src/theme/components/alert.ts","../src/theme/components/badge.ts","../src/theme/components/button.ts","../src/theme/components/checkbox.ts","../src/theme/components/code.ts","../src/theme/components/form.ts","../src/theme/components/form-error.ts","../src/theme/components/form-label.ts","../src/theme/components/input.ts","../src/theme/components/link.ts","../src/theme/components/select.ts","../src/theme/components/switch.ts","../src/theme/components/table.ts","../src/theme/components/tabs.ts","../src/components/toolbar/components/navigation/components/button/left/left-arrow.svg","../src/theme/components/textarea.ts","../src/theme/components/text.ts","../src/theme/customXQChakraTheme.ts","../src/theme/components/modal.ts","../src/theme/styles.ts","../src/components/toolbar/components/breadcrumbs/item/index.tsx","../src/components/toolbar/components/breadcrumbs/index.tsx","../src/components/toolbar/components/navigation/components/button/right/right-arrow.svg","../src/components/toolbar/components/navigation/components/button/left/index.tsx","../src/components/toolbar/components/navigation/components/button/right/index.tsx","../src/components/toolbar/components/navigation/index.tsx","../src/components/toast/index.tsx","../src/components/modal/components/action/index.tsx","../src/components/banner/index.tsx","../src/components/breadcrumbs/index.tsx","../src/components/card/index.tsx","../src/components/icons/checkmark/index.tsx","../src/components/icons/chevron/down/index.tsx","../src/components/icons/clock/index.tsx","../src/components/icons/file/fill/index.tsx","../src/components/icons/file/outline/index.tsx","../src/components/icons/folder/add/fill/index.tsx","../src/components/icons/folder/add/outline/index.tsx","../src/components/icons/folder/fill/index.tsx","../src/components/icons/folder/outline/index.tsx","../src/components/form/index.tsx","../src/components/form/section/index.tsx","../src/components/icons/gear/GearIcon.tsx","../src/components/button/google/index.tsx","../src/components/icons/google/drive/index.tsx","../src/components/icons/google/drive/drive.png","../src/components/icons/group/index.tsx","../src/components/icons/home/index.tsx","../src/components/icons/image/index.tsx","../src/components/layout/index.tsx","../src/components/link/index.tsx","../src/components/loading/index.tsx","../src/components/icons/menu/index.tsx","../src/components/button/microsoft/index.tsx","../src/components/icons/microsoft/onedrive/index.tsx","../src/components/icons/microsoft/onedrive/onedrive.png","../src/components/modal/index.tsx","../src/components/navigation/index.tsx","../src/components/icons/question/index.tsx","../src/components/icons/search/index.tsx","../src/components/select/index.tsx","../src/components/icons/services/index.tsx","../src/components/icons/settings/index.tsx","../src/components/button/spinner/index.tsx","../src/components/table/index.tsx","../src/components/table/utils/generateTableColumns.ts","../src/components/icons/table/fill/index.tsx","../src/components/icons/table/outline/index.tsx","../src/components/tabs/index.tsx","../src/components/icons/task/index.tsx","../src/components/text/index.tsx","../src/components/toolbar/index.tsx","../src/components/icons/trash/index.tsx","../src/components/icons/vault/index.tsx","../src/components/icons/vault/vault.png","../src/components/icons/workspace/index.tsx","../src/components/icons/workspace/workspace.png","../src/theme/provider/index.tsx","../src/components/form/utils/formErrors.ts","../src/hooks/useToast.tsx"],"sourcesContent":["export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5.5%205.5L8.5%208.5M8.5%205.5L5.5%208.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%23F96057%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { Button as ChakraButton } from '@chakra-ui/react';\r\nimport buttonTheme from '../../theme/components/button';\r\n\r\nexport interface ButtonProps {\r\n text: string;\r\n onClick?: () => void;\r\n width: 'variable' | 'fixed';\r\n variant?: keyof typeof buttonTheme.variants;\r\n type?: 'button' | 'submit' | 'reset';\r\n ariaLabel: string;\r\n disabled?: boolean;\r\n className?: string;\r\n leftIcon?: JSX.Element;\r\n rightIcon?: JSX.Element;\r\n color?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Button` component\r\n */\r\nexport const Button: React.FC<ButtonProps> = ({\r\n onClick,\r\n text,\r\n type = 'button',\r\n ariaLabel,\r\n variant = 'primary',\r\n disabled,\r\n className,\r\n width,\r\n rightIcon,\r\n leftIcon,\r\n color,\r\n}) => {\r\n return (\r\n <ChakraButton\r\n onClick={onClick}\r\n type={type}\r\n variant={variant}\r\n disabled={disabled}\r\n aria-label={ariaLabel}\r\n className={className}\r\n width={width === 'fixed' ? '100%' : 'fit-content'}\r\n rightIcon={rightIcon}\r\n leftIcon={leftIcon}\r\n color={color}\r\n >\r\n {text}\r\n </ChakraButton>\r\n );\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%204.5V4C6.72386%204%206.5%204.22386%206.5%204.5H7ZM7.005%204.5H7.505C7.505%204.22386%207.28114%204%207.005%204V4.5ZM7.005%204.505V5.005C7.28114%205.005%207.505%204.78114%207.505%204.505H7.005ZM7%204.505H6.5C6.5%204.78114%206.72386%205.005%207%205.005V4.505ZM6.27639%206.05279C6.0294%206.17628%205.92929%206.47662%206.05279%206.72361C6.17628%206.9706%206.47662%207.07071%206.72361%206.94721L6.27639%206.05279ZM6.52766%206.48617L6.30405%206.03896L6.52766%206.48617ZM7.23634%207.05465L7.72141%207.17592L7.23634%207.05465ZM6.76366%208.94535L6.27859%208.82408L6.76366%208.94535ZM7.47234%209.51383L7.69595%209.96104L7.69595%209.96104L7.47234%209.51383ZM7.72361%209.94721C7.9706%209.82371%208.07071%209.52337%207.94721%209.27639C7.82371%209.0294%207.52337%208.92929%207.27639%209.05279L7.72361%209.94721ZM12.5%207C12.5%2010.0376%2010.0376%2012.5%207%2012.5V13.5C10.5899%2013.5%2013.5%2010.5899%2013.5%207H12.5ZM7%2012.5C3.96243%2012.5%201.5%2010.0376%201.5%207H0.5C0.5%2010.5899%203.41015%2013.5%207%2013.5V12.5ZM1.5%207C1.5%203.96243%203.96243%201.5%207%201.5V0.5C3.41015%200.5%200.5%203.41015%200.5%207H1.5ZM7%201.5C10.0376%201.5%2012.5%203.96243%2012.5%207H13.5C13.5%203.41015%2010.5899%200.5%207%200.5V1.5ZM7%205H7.005V4H7V5ZM6.505%204.5V4.505H7.505V4.5H6.505ZM7.005%204.005H7V5.005H7.005V4.005ZM7.5%204.505V4.5H6.5V4.505H7.5ZM6.72361%206.94721L6.75127%206.93338L6.30405%206.03896L6.27639%206.05279L6.72361%206.94721ZM6.75127%206.93338L6.27859%208.82408L7.24873%209.06662L7.72141%207.17592L6.75127%206.93338ZM7.69595%209.96104L7.72361%209.94721L7.27639%209.05279L7.24873%209.06662L7.69595%209.96104ZM6.27859%208.82408C6.07138%209.65293%206.93179%2010.3431%207.69595%209.96104L7.24873%209.06662L6.27859%208.82408ZM6.75127%206.93338L7.72141%207.17592C7.92862%206.34708%207.06821%205.65688%206.30405%206.03896L6.75127%206.93338Z%22%20fill%3D%22current%22%20fill-opacity%3D%220.6%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as ErrorIcon } from './error.svg';\r\n\r\nexport interface ErrorProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Error` icon component\r\n */\r\nexport const Error: React.FC<ErrorProps> = ({ boxSize }) => {\r\n return <ErrorIcon boxSize={boxSize} />;\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%207.5L6.5%209L9%205.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%2334C759%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as NeutralIcon } from './neutral.svg';\r\n\r\nexport interface NeutralProps {\r\n boxSize: number | string;\r\n color?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Neutral` icon component\r\n */\r\nexport const Neutral: React.FC<NeutralProps> = ({ color, boxSize }) => {\r\n return <NeutralIcon boxSize={boxSize} fill={color || '#3C3C43'} />;\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%205V7.5M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207ZM7%209.5H7.005V9.505H7V9.5Z%22%20stroke%3D%22%23F8CE52%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as PositiveIcon } from './positive.svg';\r\n\r\nexport interface PositiveProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Positive` icon component\r\n */\r\nexport const Positive: React.FC<PositiveProps> = ({ boxSize }) => {\r\n return <PositiveIcon boxSize={boxSize} />;\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20533.5%20544.3%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20%20%20%20d%3D%22M533.5%20278.4c0-18.5-1.5-37.1-4.7-55.3H272.1v104.8h147c-6.1%2033.8-25.7%2063.7-54.4%2082.7v68h87.7c51.5-47.4%2081.1-117.4%2081.1-200.2z%22%20%20%20%20fill%3D%22%234285f4%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M272.1%20544.3c73.4%200%20135.3-24.1%20180.4-65.7l-87.7-68c-24.4%2016.6-55.9%2026-92.6%2026-71%200-131.2-47.9-152.8-112.3H28.9v70.1c46.2%2091.9%20140.3%20149.9%20243.2%20149.9z%22%20%20%20%20fill%3D%22%2334a853%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M119.3%20324.3c-11.4-33.8-11.4-70.4%200-104.2V150H28.9c-38.6%2076.9-38.6%20167.5%200%20244.4l90.4-70.1z%22%20%20%20%20fill%3D%22%23fbbc04%22%20%20%2F%3E%3Cpath%20%20%20%20d%3D%22M272.1%20107.7c38.8-.6%2076.3%2014%20104.4%2040.8l77.7-77.7C405%2024.6%20339.7-.8%20272.1%200%20169.2%200%2075.1%2058%2028.9%20150l90.4%2070.1c21.5-64.5%2081.8-112.4%20152.8-112.4z%22%20%20%20%20fill%3D%22%23ea4335%22%20%20%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as WarningIcon } from './warning.svg';\r\n\r\nexport interface WarningProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Warning` icon component\r\n */\r\nexport const Warning: React.FC<WarningProps> = ({ boxSize }) => {\r\n return <WarningIcon boxSize={boxSize} />;\r\n};\r\n","export interface ColorHues {\r\n 50: string;\r\n 100: string;\r\n 200: string;\r\n 300: string;\r\n 400: string;\r\n 500: string;\r\n 600: string;\r\n 700: string;\r\n 800: string;\r\n 900: string;\r\n}\r\n\r\nconst blue: ColorHues = {\r\n 50: 'hsl(209, 100%, 95%)',\r\n 100: 'hsl(209, 100%, 90%)',\r\n 200: 'hsl(209, 100%, 80%)',\r\n 300: 'hsl(209, 100%, 70%)',\r\n 400: 'hsl(209, 100%, 60%)',\r\n 500: 'hsl(209, 100%, 50%)',\r\n 600: 'hsl(209, 100%, 40%)',\r\n 700: 'hsl(209, 100%, 30%)',\r\n 800: 'hsl(209, 100%, 20%)',\r\n 900: 'hsl(209, 100%, 10%)',\r\n};\r\n\r\nconst red: ColorHues = {\r\n 50: 'hsl(0, 100%, 98%)',\r\n 100: 'hsl(0, 95%, 92%)',\r\n 200: 'hsl(0, 97%, 85%)',\r\n 300: 'hsl(0, 95%, 75%)',\r\n 400: 'hsl(0, 88%, 68%)',\r\n 500: 'hsl(0, 76%, 57%)',\r\n 600: 'hsl(0, 61%, 48%)',\r\n 700: 'hsl(0, 56%, 39%)',\r\n 800: 'hsl(0, 54%, 33%)',\r\n 900: 'hsl(357, 62%, 24%)',\r\n};\r\n\r\nconst orange: ColorHues = {\r\n 50: 'hsl(40, 100%, 97%)',\r\n 100: 'hsl(39, 96%, 89%)',\r\n 200: 'hsl(38, 93%, 77%)',\r\n 300: 'hsl(33, 90%, 65%)',\r\n 400: 'hsl(27, 84%, 57%)',\r\n 500: 'hsl(24, 75%, 50%)',\r\n 600: 'hsl(20, 71%, 44%)',\r\n 700: 'hsl(16, 65%, 37%)',\r\n 800: 'hsl(14, 61%, 30%)',\r\n 900: 'hsl(14, 60%, 25%)',\r\n};\r\n\r\nconst green: ColorHues = {\r\n 50: 'hsl(140, 60%, 96%)',\r\n 100: 'hsl(141, 65%, 92%)',\r\n 200: 'hsl(141, 63%, 88%)',\r\n 300: 'hsl(141, 64%, 80%)',\r\n 400: 'hsl(140, 64%, 73%)',\r\n 500: 'hsl(140, 64%, 61%)',\r\n 600: 'hsl(140, 42%, 48%)',\r\n 700: 'hsl(140, 42%, 36%)',\r\n 800: 'hsl(141, 42%, 24%)',\r\n 900: 'hsl(138, 42%, 6%)',\r\n};\r\n\r\nconst label = {\r\n primary: { light: '#000000', dark: '#FFFFFF' },\r\n secondary: { light: '#3C3C4399' },\r\n tertiary: { light: '', dark: '#EBEBF52E' },\r\n error: '#FF0000',\r\n};\r\n\r\nconst border = {\r\n focus: '#3A6CD980',\r\n default: '#D9D9D9',\r\n light: '#99999919A',\r\n};\r\n\r\nconst blur = {\r\n quaternary: { light: '', dark: '#2A2A2A73' },\r\n tertiary: { light: '', dark: '#111111A6' },\r\n};\r\n\r\nconst fill = {\r\n light: {\r\n primary: '#74748033',\r\n secondary: '#74748029',\r\n tertiary: '#7474801F',\r\n quaternary: '#7474800D',\r\n },\r\n success: '#d8f1b8',\r\n error: '#ffbdb9',\r\n warning: '#ffefb4',\r\n action: '#0082ff',\r\n};\r\n\r\nconst semantic = {\r\n action: '#488ef7',\r\n success: '#5fcf65',\r\n warning: '#f8c352',\r\n error: '#f96057',\r\n};\r\n\r\nexport const colors = {\r\n label,\r\n blur,\r\n border,\r\n fill,\r\n semantic,\r\n transparent: 'transparent',\r\n current: 'currentColor',\r\n black: '#000000',\r\n white: '#FFFFFF',\r\n lightBlue: '#29abe2',\r\n coolGray: '#F6F7FB',\r\n darkBlue: '#292f4c',\r\n backdrop: '#fbfcff',\r\n whiteAlpha: {\r\n 50: 'rgba(255, 255, 255, 0.04)',\r\n 100: 'rgba(255, 255, 255, 0.06)',\r\n 200: 'rgba(255, 255, 255, 0.08)',\r\n 300: 'rgba(255, 255, 255, 0.16)',\r\n 400: 'rgba(255, 255, 255, 0.24)',\r\n 500: 'rgba(255, 255, 255, 0.36)',\r\n 600: 'rgba(255, 255, 255, 0.48)',\r\n 700: 'rgba(255, 255, 255, 0.64)',\r\n 800: 'rgba(255, 255, 255, 0.80)',\r\n 900: 'rgba(255, 255, 255, 0.92)',\r\n },\r\n\r\n blackAlpha: {\r\n 50: 'rgba(0, 0, 0, 0.04)',\r\n 100: 'rgba(0, 0, 0, 0.06)',\r\n 200: 'rgba(0, 0, 0, 0.08)',\r\n 300: 'rgba(0, 0, 0, 0.16)',\r\n 400: 'rgba(0, 0, 0, 0.24)',\r\n 500: 'rgba(0, 0, 0, 0.36)',\r\n 600: 'rgba(0, 0, 0, 0.48)',\r\n 700: 'rgba(0, 0, 0, 0.64)',\r\n 800: 'rgba(0, 0, 0, 0.80)',\r\n 900: 'rgba(0, 0, 0, 0.92)',\r\n },\r\n\r\n gray: {\r\n 50: 'hsl(240, 3%, 94%)',\r\n 100: 'hsl(210, 3%, 87%)',\r\n 200: 'hsl(220, 4%, 69%)', // #ADAFB3\r\n 300: 'hsl(225, 4%, 56%)',\r\n 400: 'hsl(222, 4%, 44%)',\r\n 500: 'hsl(224, 6%, 38%)',\r\n 600: 'hsl(227, 6%, 30%)',\r\n 700: 'hsl(230, 5%, 23%)', // #38393E\r\n 800: 'hsl(216, 6%, 15%)',\r\n 900: 'hsl(240, 5%, 4%)',\r\n },\r\n\r\n red,\r\n orange,\r\n green,\r\n blue,\r\n};\r\n\r\nexport type Colors = typeof colors;\r\n\r\nexport default colors as Colors;\r\n","import React, { useMemo } from 'react';\r\nimport { Flex, Text } from '@chakra-ui/react';\r\nimport colors from '../../../../theme/foundations/colors';\r\n\r\nexport interface IconProps {\r\n step: number;\r\n status: 'complete' | 'active' | 'inactive';\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Icon` for the `Breadcrumbs` component.\r\n */\r\nexport const Icon: React.FC<IconProps> = ({ step, status }) => {\r\n const getColors = useMemo(() => {\r\n switch (status) {\r\n case 'active':\r\n return { bg: '#0082FF', color: colors.label.primary.dark };\r\n case 'complete':\r\n return { bg: '#7474800D', color: colors.label.primary.light };\r\n case 'inactive':\r\n return { bg: '#7474800D', color: colors.label.primary.light };\r\n }\r\n }, [status]);\r\n\r\n return (\r\n <Flex\r\n boxSize=\"20px\"\r\n bg={getColors.bg}\r\n borderRadius=\"100%\"\r\n alignItems=\"center\"\r\n justifyContent=\"center\"\r\n >\r\n <Text fontSize=\"12px\" color={getColors.color}>\r\n {step}\r\n </Text>\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Box, Text } from '@chakra-ui/react';\r\nimport colors from '../../../../theme/foundations/colors';\r\n\r\nexport interface LabelProps {\r\n label: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Label` for the `Breadcrumbs` component.\r\n */\r\nexport const Label: React.FC<LabelProps> = ({ label }) => {\r\n return (\r\n <Box pl=\"8px\">\r\n <Text color={colors.label.primary.light} fontSize=\"13px\">\r\n {label}\r\n </Text>\r\n </Box>\r\n );\r\n};\r\n","const typography = {\r\n letterSpacings: {\r\n tighter: '-0.05em',\r\n tight: '-0.025em',\r\n normal: '0',\r\n wide: '0.025em',\r\n wider: '0.05em',\r\n widest: '0.1em',\r\n },\r\n\r\n lineHeights: {\r\n normal: 'normal',\r\n none: 1,\r\n shorter: 1.25,\r\n short: 1.375,\r\n base: 1.5,\r\n tall: 1.625,\r\n taller: '2',\r\n '3': '.75rem',\r\n '4': '1rem',\r\n '5': '1.25rem',\r\n '6': '1.5rem',\r\n '7': '1.75rem',\r\n '8': '2rem',\r\n '9': '2.25rem',\r\n '10': '2.5rem',\r\n },\r\n\r\n fontWeights: {\r\n hairline: 100,\r\n thin: 200,\r\n light: 300,\r\n normal: 400,\r\n medium: 500,\r\n semibold: 600,\r\n bold: 700,\r\n extrabold: 800,\r\n black: 900,\r\n },\r\n\r\n fonts: {\r\n base: `proxima-nova, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`,\r\n mono: `SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace`,\r\n },\r\n\r\n fontSizes: {\r\n xs: '0.75rem',\r\n sm: '0.875rem',\r\n md: '1rem',\r\n lg: '1.125rem',\r\n xl: '1.25rem',\r\n '2xl': '1.5rem',\r\n '3xl': '1.875rem',\r\n '4xl': '2.25rem',\r\n '5xl': '3rem',\r\n '6xl': '4rem',\r\n },\r\n};\r\n\r\nexport type Typography = typeof typography;\r\n\r\nexport default typography;\r\n","export default \"78c9d6fd7766410f.svg\"","import React from 'react';\r\nimport { ReactComponent as GoogleLogo } from './google.svg';\r\n\r\nexport interface GoogleProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Google` icon component\r\n */\r\nexport const Google: React.FC<GoogleProps> = ({ boxSize }) => {\r\n return <GoogleLogo width={boxSize} height={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as MicrosoftLogo } from './microsoft.svg';\r\n\r\nexport interface MicrosoftProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Microsoft` icon component\r\n */\r\nexport const Microsoft: React.FC<MicrosoftProps> = ({ boxSize }) => {\r\n return <MicrosoftLogo boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { Checkbox, Text } from '@chakra-ui/react';\r\nimport { InputFieldProps } from '../InputTypes';\r\n\r\nexport interface StackedCheckboxProps extends InputFieldProps {\r\n label: string;\r\n variant: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedCheckbox` component.\r\n */\r\nconst StackedCheckbox = React.forwardRef<\r\n HTMLInputElement,\r\n StackedCheckboxProps\r\n>(({ value, label, onChange, disabled, variant }, _ref) => {\r\n if (value === null) return null;\r\n\r\n return (\r\n <Checkbox\r\n ref={_ref}\r\n defaultChecked={Boolean(value)}\r\n defaultValue={value}\r\n onChange={e => {\r\n if (onChange) return onChange(e.target.checked as any);\r\n }}\r\n isChecked={Boolean(value)}\r\n disabled={disabled}\r\n variant={variant}\r\n >\r\n {/* solved like this because of bug in chakra\r\n https://github.com/chakra-ui/chakra-ui/issues/7328 */}\r\n <Text\r\n fontSize={variant === 'mobile' ? '17px' : '13px'}\r\n alignSelf=\"center\"\r\n >\r\n {label}\r\n </Text>\r\n {/* {label} */}\r\n </Checkbox>\r\n );\r\n});\r\n\r\nexport default StackedCheckbox;\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M2%2012C0.89543%2012%20-3.91405e-08%2011.1046%20-8.74228e-08%2010L-4.37114e-07%202C-4.85396e-07%200.895431%200.89543%20-3.91405e-08%202%20-8.74228e-08L10%20-4.37114e-07C11.1046%20-4.85396e-07%2012%200.89543%2012%202L12%2010C12%2011.1046%2011.1046%2012%2010%2012L2%2012ZM6%202.5C6.13261%202.5%206.25979%202.55268%206.35355%202.64645L7.85355%204.14645C8.04881%204.34171%208.04881%204.65829%207.85355%204.85355C7.65829%205.04882%207.34171%205.04882%207.14645%204.85355L6%203.70711L4.85355%204.85355C4.65829%205.04882%204.34171%205.04882%204.14645%204.85355C3.95118%204.65829%203.95118%204.34171%204.14645%204.14645L5.64645%202.64645C5.74021%202.55268%205.86739%202.5%206%202.5ZM5.64645%209.35355C5.74021%209.44732%205.86739%209.5%206%209.5C6.13261%209.5%206.25978%209.44732%206.35355%209.35355L7.85355%207.85355C8.04882%207.65829%208.04882%207.34171%207.85355%207.14645C7.65829%206.95118%207.34171%206.95118%207.14645%207.14645L6%208.29289L4.85355%207.14645C4.65829%206.95118%204.34171%206.95118%204.14645%207.14645C3.95118%207.34171%203.95118%207.65829%204.14645%207.85355L5.64645%209.35355Z%22%20fill%3D%22current%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { Input, InputGroup } from '@chakra-ui/react';\r\nimport { InputFieldProps } from '../InputTypes';\r\n\r\nexport interface StackedInputProps extends InputFieldProps {\r\n isRequired?: boolean;\r\n allowDefault?: boolean;\r\n leftElement?: React.ReactNode;\r\n rightElement?: React.ReactNode;\r\n variant?: string;\r\n label?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedInput` component.\r\n */\r\nconst StackedInput = React.forwardRef<HTMLInputElement, StackedInputProps>(\r\n (\r\n {\r\n type = 'text',\r\n isRequired,\r\n rightElement,\r\n leftElement,\r\n defaultValue,\r\n allowDefault,\r\n variant,\r\n label,\r\n ...props\r\n },\r\n _ref\r\n ) => {\r\n const isMobile = variant === 'mobile';\r\n const placeholder = isMobile && label ? label : undefined;\r\n return (\r\n <InputGroup>\r\n {leftElement && leftElement}\r\n {label}\r\n <Input\r\n {...props}\r\n placeholder={placeholder}\r\n type={type}\r\n isRequired={isRequired}\r\n ref={_ref}\r\n defaultValue={defaultValue}\r\n fontSize={isMobile ? '17px' : '13px'}\r\n variant={variant}\r\n onKeyDown={e => {\r\n if (e.key === 'Enter' && !allowDefault) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n }}\r\n />\r\n {rightElement && rightElement}\r\n </InputGroup>\r\n );\r\n }\r\n);\r\n\r\nexport default StackedInput;\r\n","import React from 'react';\r\nimport { Flex, InputGroup, Radio, RadioGroup } from '@chakra-ui/react';\r\nimport { FieldOptions, SelectFieldProps } from '../InputTypes';\r\n\r\nexport interface StackedRadioGroupProps extends SelectFieldProps {\r\n flexDirection?: 'row' | 'column';\r\n\r\n options: FieldOptions;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedRadio` component.\r\n */\r\nconst StackedRadioGroup = React.forwardRef<\r\n HTMLInputElement,\r\n StackedRadioGroupProps\r\n>(({ id, flexDirection = 'row', options }, _ref) => {\r\n return (\r\n <InputGroup>\r\n <RadioGroup name={id}>\r\n {options.map(option => (\r\n <Flex\r\n mr=\"30px\"\r\n alignItems=\"center\"\r\n key={option.value}\r\n flexDirection={flexDirection}\r\n >\r\n <Radio ref={_ref} value={option.value}>\r\n {option.label}\r\n </Radio>\r\n </Flex>\r\n ))}\r\n </RadioGroup>\r\n </InputGroup>\r\n );\r\n});\r\n\r\nexport default StackedRadioGroup;\r\n","import React, { RefObject, useMemo } from 'react';\r\nimport { Box, Flex } from '@chakra-ui/react';\r\nimport colors from '../../../../../src/theme/foundations/colors';\r\nimport { FieldOption, FieldOptions } from '../../InputTypes';\r\n\r\nexport interface DropdownProps {\r\n onSelectItem: (option: FieldOption) => void;\r\n options: FieldOptions;\r\n dropdownRef: RefObject<HTMLDivElement>;\r\n position: 'top' | 'bottom';\r\n optionIndex?: number | null;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Dropdown` component\r\n */\r\nexport const Dropdown: React.FC<DropdownProps> = ({\r\n onSelectItem,\r\n options,\r\n dropdownRef,\r\n position,\r\n optionIndex,\r\n}) => {\r\n const DropdownContent = useMemo(() => {\r\n return options.map((option, idx) => (\r\n <Box key={idx} width=\"100%\" role=\"combobox\">\r\n {option.value === 'section_header' &&\r\n options[idx + 1] &&\r\n options[idx + 1].value !== 'section_header' && (\r\n <Box\r\n color={colors.label.secondary.light}\r\n fontSize=\"13px\"\r\n width=\"100%\"\r\n fontWeight=\"bold\"\r\n px=\"8px\"\r\n bg=\"inherit\"\r\n whiteSpace=\"nowrap\"\r\n >\r\n {idx > 0 && (\r\n <Box\r\n width=\"100%\"\r\n my=\"3px\"\r\n borderTop=\"2px solid\"\r\n borderColor={colors.border.default}\r\n />\r\n )}\r\n {option.label}\r\n </Box>\r\n )}\r\n {option.value !== 'section_header' && (\r\n <Box\r\n cursor=\"pointer\"\r\n borderRadius=\"inherit\"\r\n onClick={() => onSelectItem(option)}\r\n key={option.value}\r\n fontSize=\"13px\"\r\n px=\"8px\"\r\n py=\"4px\"\r\n width=\"100%\"\r\n color={\r\n optionIndex === idx\r\n ? colors.label.primary.dark\r\n : colors.label.primary.light\r\n }\r\n _hover={{\r\n color: colors.label.primary.dark,\r\n bg: colors.fill.action,\r\n borderRadius: '4px',\r\n width: '100%',\r\n }}\r\n bg={optionIndex === idx ? colors.fill.action : 'inherit'}\r\n whiteSpace=\"nowrap\"\r\n id={option.value}\r\n >\r\n {option.label}\r\n </Box>\r\n )}\r\n </Box>\r\n ));\r\n }, [onSelectItem, optionIndex, options]);\r\n\r\n if (!options) return null;\r\n\r\n return (\r\n <Flex\r\n flexDirection=\"column\"\r\n ref={dropdownRef}\r\n scrollMargin=\"15px\"\r\n bg={colors.fill.light.quaternary}\r\n backdropFilter=\"auto\"\r\n backdropBlur=\"64px\"\r\n borderRadius=\"4px\"\r\n border=\"0.25px solid\"\r\n borderColor={colors.fill.light.tertiary}\r\n mt=\"3px\"\r\n maxH=\"240px\"\r\n overflowY=\"auto\"\r\n px=\"8px\"\r\n py=\"4px\"\r\n position=\"absolute\"\r\n top={position === 'top' ? 26 : undefined}\r\n bottom={position === 'bottom' ? 30 : undefined}\r\n width=\"fit-content\"\r\n minWidth=\"100%\"\r\n zIndex={100}\r\n tabIndex={-2000}\r\n >\r\n {DropdownContent}\r\n </Flex>\r\n );\r\n};\r\n","import { RefObject, useEffect } from 'react';\r\n\r\nexport function useOnClickOutside(ref: RefObject<any>, handler: () => void) {\r\n useEffect(\r\n () => {\r\n const listener: EventListener = event => {\r\n // Do nothing if clicking ref's element or descendent elements\r\n if (!ref.current || ref.current.contains(event.target)) {\r\n return;\r\n }\r\n\r\n handler();\r\n };\r\n\r\n document.addEventListener('mousedown', listener);\r\n document.addEventListener('touchstart', listener);\r\n\r\n return () => {\r\n document.removeEventListener('mousedown', listener);\r\n document.removeEventListener('touchstart', listener);\r\n };\r\n },\r\n // Add ref and handler to effect dependencies\r\n // It's worth noting that because passed in handler is a new ...\r\n // ... function on every render that will cause this effect ...\r\n // ... callback/cleanup to run every render. It's not a big deal ...\r\n // ... but to optimize you can wrap handler in useCallback before ...\r\n // ... passing it into this hook.\r\n [ref, handler]\r\n );\r\n}\r\n","export default \"data:image/svg+xml,%3Csvg%20%20viewBox%3D%220%200%2056%2056%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M27.9995%2056C43.4635%2056%2055.9995%2043.464%2055.9995%2028C55.9995%2012.536%2043.4635%200%2027.9995%200C12.5355%200%20-0.000488281%2012.536%20-0.000488281%2028C-0.000488281%2043.464%2012.5355%2056%2027.9995%2056ZM21.9807%2018.2688C20.9555%2017.2437%2019.2935%2017.2437%2018.2684%2018.2688C17.2432%2019.294%2017.2432%2020.956%2018.2684%2021.9812L24.2872%2028L18.2684%2034.0188C17.2432%2035.044%2017.2432%2036.706%2018.2684%2037.7312C19.2935%2038.7563%2020.9555%2038.7563%2021.9807%2037.7312L27.9995%2031.7123L34.0184%2037.7312C35.0435%2038.7563%2036.7055%2038.7563%2037.7307%2037.7312C38.7558%2036.706%2038.7558%2035.044%2037.7307%2034.0188L31.7118%2028L37.7307%2021.9812C38.7558%2020.956%2038.7558%2019.294%2037.7307%2018.2688C36.7055%2017.2437%2035.0435%2017.2437%2034.0184%2018.2688L27.9995%2024.2877L21.9807%2018.2688Z%22%20fill%3D%22%233C3C43%22%20fill-opacity%3D%220.6%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as DropdownIcon } from './dropdown.svg';\r\n\r\nexport interface DropdownProps {\r\n boxSize: number | string;\r\n disabled?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Dropdown` icon component\r\n */\r\nexport const Dropdown: React.FC<DropdownProps> = ({ boxSize, disabled }) => {\r\n return (\r\n <DropdownIcon boxSize={boxSize} fill={disabled ? '#3C3C4399' : '#0082FF'} />\r\n );\r\n};\r\n","import React, {\r\n KeyboardEventHandler,\r\n useEffect,\r\n useRef,\r\n useMemo,\r\n useState,\r\n} from 'react';\r\nimport { Box, Input, InputGroup, InputRightElement } from '@chakra-ui/react';\r\nimport { FieldOptions } from '../InputTypes';\r\nimport { StackedInputProps } from '../StackedInput/StackedInput';\r\nimport colors from '../../../theme/foundations/colors';\r\nimport { UseFormSetValue, FieldValues, Control } from 'react-hook-form';\r\nimport { Dropdown } from '../components/dropdown';\r\nimport { useOnClickOutside } from '../../../hooks/useOnOutsideClick';\r\nimport { Dropdown as DropdownIcon } from '../../icons/dropdown';\r\nimport { debounce } from 'lodash';\r\n\r\nexport interface StackedSelectProps extends StackedInputProps {\r\n options: FieldOptions;\r\n fullOptions?: FieldOptions;\r\n setValue: UseFormSetValue<FieldValues>;\r\n control: Control<FieldValues, any>;\r\n handleOnChange: (value?: string) => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedSelect` component.\r\n */\r\nconst StackedSelect = React.forwardRef<HTMLInputElement, StackedSelectProps>(\r\n (\r\n {\r\n isRequired,\r\n options,\r\n name,\r\n setValue,\r\n handleOnChange,\r\n disabled,\r\n value,\r\n fullOptions,\r\n ...props\r\n },\r\n _ref\r\n ) => {\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const dropdownMenuRef = useRef<HTMLDivElement>(null);\r\n\r\n const [isFocussed, setIsFocussed] = useState(false);\r\n const [selectedOption, setSelectedOption] = useState(\r\n options.find(option => option.value === value)?.label ?? ''\r\n );\r\n const [optionIndex, setOptionIndex] = useState<number | null>(null);\r\n const [position, setPosition] = useState<'top' | 'bottom'>('top');\r\n const [searchValue, setSearchValue] = useState('');\r\n const [debouncedSearchValue, setDebouncedSearchValue] = useState('');\r\n\r\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\r\n\r\n useEffect(() => {\r\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\r\n\r\n if (window.innerHeight - (boundingClientRect?.y + 240) >= 0) {\r\n setPosition('top');\r\n } else {\r\n setPosition('bottom');\r\n }\r\n }, [boundingClientRect]);\r\n\r\n useEffect(() => {\r\n setSelectedOption(\r\n (fullOptions || options).find(option => option.value === value)\r\n ?.label ?? ''\r\n );\r\n }, [fullOptions, value]);\r\n\r\n useOnClickOutside(dropdownRef, () => setIsFocussed(false));\r\n\r\n const handleOnSelectItem = (option: {\r\n label: string;\r\n value: string;\r\n sortValue: number;\r\n }) => {\r\n if (handleOnChange) {\r\n handleOnChange(option.value);\r\n }\r\n setValue(name as string, option.value);\r\n setSelectedOption(option.label);\r\n setIsFocussed(false);\r\n };\r\n\r\n const handleOnKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\r\n const initialOptionIndex = options[0].value === 'section_header' ? 1 : 0;\r\n\r\n if (\r\n !isFocussed &&\r\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\r\n ) {\r\n setIsFocussed(true);\r\n return setOptionIndex(initialOptionIndex);\r\n }\r\n\r\n if (isFocussed) {\r\n if (\r\n optionIndex === null &&\r\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\r\n ) {\r\n return setOptionIndex(initialOptionIndex);\r\n }\r\n\r\n if (e.key === 'ArrowUp' && optionIndex !== null && optionIndex > 0) {\r\n const incrementValue =\r\n options[optionIndex - 1] &&\r\n options[optionIndex - 1].value === 'section_header'\r\n ? 2\r\n : 1;\r\n setOptionIndex(optionIndex - incrementValue);\r\n\r\n return dropdownMenuRef.current?.scrollTo({\r\n top: optionIndex * 24,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n if (\r\n e.key === 'ArrowDown' &&\r\n optionIndex !== null &&\r\n optionIndex < options.length\r\n ) {\r\n const incrementValue =\r\n options[optionIndex + 1] &&\r\n options[optionIndex + 1].value === 'section_header'\r\n ? 2\r\n : 1;\r\n setOptionIndex(optionIndex + incrementValue);\r\n\r\n return dropdownMenuRef.current?.scrollTo({\r\n top: optionIndex * 24,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n if (e.key === 'Enter' && optionIndex !== null) {\r\n const option = options.find((_, idx) => optionIndex === idx);\r\n if (!option) return;\r\n\r\n if (handleOnChange) {\r\n handleOnChange(option.value);\r\n }\r\n\r\n setSelectedOption(option?.label);\r\n setValue(name as string, option.value, {\r\n shouldDirty: true,\r\n shouldValidate: true,\r\n });\r\n\r\n return setIsFocussed(false);\r\n }\r\n\r\n if (e.key === 'Tab') {\r\n return setIsFocussed(false);\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (searchValue.length) {\r\n const idx = options.findIndex(\r\n option =>\r\n option.label.substring(0, searchValue.length).toLowerCase() ===\r\n searchValue.toLowerCase()\r\n );\r\n\r\n dropdownMenuRef.current?.scrollTo({\r\n top: idx * 24,\r\n behavior: 'smooth',\r\n });\r\n\r\n setSearchValue('');\r\n setDebouncedSearchValue('');\r\n }\r\n }, [options, searchValue]);\r\n\r\n const updateSearchValue = useMemo(() => {\r\n return debounce(val => {\r\n setSearchValue(val);\r\n }, 1000);\r\n }, []);\r\n\r\n const update = (value: string) => {\r\n updateSearchValue(value);\r\n setDebouncedSearchValue(value);\r\n };\r\n\r\n return (\r\n <Box ref={dropdownRef} position=\"relative\">\r\n <InputGroup>\r\n <Input\r\n isRequired={isRequired}\r\n {...props}\r\n ref={_ref}\r\n onClick={() => setIsFocussed(!isFocussed)}\r\n cursor=\"pointer\"\r\n color=\"transparent\"\r\n fontSize=\"13px\"\r\n textShadow={`0 0 0 ${colors.label.primary.light}`}\r\n value={selectedOption}\r\n disabled={disabled}\r\n autoComplete=\"off\"\r\n onChange={e => update(debouncedSearchValue.concat(e.target.value))}\r\n onKeyDown={handleOnKeyDown}\r\n />\r\n <InputRightElement\r\n cursor={disabled ? 'not-allowed' : 'pointer'}\r\n onClick={() => !disabled && setIsFocussed(!isFocussed)}\r\n >\r\n <DropdownIcon boxSize=\"16px\" disabled={disabled} />\r\n </InputRightElement>\r\n </InputGroup>\r\n {isFocussed && (\r\n <Dropdown\r\n position={position}\r\n dropdownRef={dropdownMenuRef}\r\n onSelectItem={option => handleOnSelectItem(option)}\r\n options={options}\r\n optionIndex={optionIndex}\r\n />\r\n )}\r\n </Box>\r\n );\r\n }\r\n);\r\n\r\nexport default StackedSelect;\r\n","import React from 'react';\r\nimport { Flex, Textarea } from '@chakra-ui/react';\r\nimport { TextareaFieldProps } from '../InputTypes';\r\n\r\nexport interface StackedTextareaProps extends TextareaFieldProps {\r\n isRequired?: boolean;\r\n allowDefault?: boolean;\r\n variant: string;\r\n label?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedTextarea` component.\r\n */\r\nconst StackedTextarea = React.forwardRef<\r\n HTMLTextAreaElement,\r\n StackedTextareaProps\r\n>(({ isRequired, allowDefault, variant, label, ...props }, _ref) => {\r\n const isMobile = variant === 'mobile';\r\n if (isMobile) {\r\n return (\r\n <Flex>\r\n <Textarea\r\n ref={_ref}\r\n {...props}\r\n variant={variant}\r\n fontSize=\"17px\"\r\n placeholder={label ?? ''}\r\n onKeyDown={e => {\r\n if (e.key === 'Enter' && !allowDefault) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n }}\r\n />\r\n </Flex>\r\n );\r\n }\r\n return (\r\n <Textarea\r\n ref={_ref}\r\n {...props}\r\n variant={variant}\r\n fontSize=\"13px\"\r\n onKeyDown={e => {\r\n if (e.key === 'Enter' && !allowDefault) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n }}\r\n />\r\n );\r\n});\r\n\r\nexport default StackedTextarea;\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2210%22%20viewBox%3D%220%200%2012%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.7467%200.127888C12.0291%200.33708%2012.0836%200.729242%2011.8685%201.00381L5.01133%209.75378C4.89891%209.89724%204.72822%209.98649%204.54313%209.99859C4.35804%2010.0107%204.17659%209.94447%204.04542%209.81694L0.188288%206.06695C-0.0627627%205.82288%20-0.0627627%205.42715%200.188288%205.18307C0.439339%204.939%200.846372%204.939%201.09742%205.18307L4.43443%208.42738L10.8458%200.246255C11.0609%20-0.0283092%2011.4643%20-0.0813041%2011.7467%200.127888Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as CloseIcon } from './close.svg';\r\n\r\nexport interface CloseProps {\r\n boxSize: number | string;\r\n onClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Close` icon component\r\n */\r\nexport const Close: React.FC<CloseProps> = ({ boxSize, onClick }) => {\r\n return (\r\n <CloseIcon\r\n width={boxSize}\r\n height={boxSize}\r\n onClick={onClick}\r\n cursor=\"pointer\"\r\n />\r\n );\r\n};\r\n","import { Flex, Text } from '@chakra-ui/react';\r\nimport { truncate } from 'lodash';\r\nimport React from 'react';\r\nimport { Close } from '../../../icons/close';\r\nimport colors from '../../../../../src/theme/foundations/colors';\r\n\r\nexport interface TokenProps {\r\n label: any;\r\n onDelete: any;\r\n isMobile?: boolean;\r\n}\r\n\r\n// For v1 we are truncating the label at 15 characters to avoid overflow\r\nconst Token: React.FC<TokenProps> = ({ label, onDelete, isMobile = false }) => {\r\n return (\r\n <Flex\r\n key={label}\r\n borderRadius={'full'}\r\n backgroundColor=\"#7676801F\"\r\n alignItems=\"center\"\r\n width=\"fit-content\"\r\n w=\"auto\"\r\n h={isMobile ? '18px' : '16px'}\r\n pl=\"6px\"\r\n pr=\"2px\"\r\n py=\"2px\"\r\n position=\"relative\"\r\n >\r\n <Text\r\n whiteSpace=\"nowrap\"\r\n color={colors.label.primary.light}\r\n fontSize={isMobile ? '17px' : '13px'}\r\n pr=\"4px\"\r\n >\r\n {truncate(label.trim(), {\r\n length: 15,\r\n omission: '...',\r\n })}\r\n </Text>\r\n <Close boxSize={isMobile ? '17px' : '11px'} onClick={onDelete} />\r\n </Flex>\r\n );\r\n};\r\n\r\nexport default Token;\r\n","import React, {\r\n KeyboardEventHandler,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from 'react';\r\nimport { Box, Flex, Text, Input } from '@chakra-ui/react';\r\nimport { debounce } from 'lodash';\r\nimport {\r\n FieldOption,\r\n FieldOptions,\r\n ReactSelectFieldProps,\r\n} from '../InputTypes';\r\nimport colors from '../../../theme/foundations/colors';\r\nimport {\r\n Control,\r\n FieldValues,\r\n UseFormClearErrors,\r\n UseFormSetError,\r\n UseFormSetValue,\r\n useWatch,\r\n} from 'react-hook-form';\r\nimport { Dropdown as DropdownIcon } from '../../icons/dropdown';\r\nimport { Dropdown } from '../components/dropdown';\r\nimport Token from '../components/token';\r\nimport { useOnClickOutside } from '../../../hooks/useOnOutsideClick';\r\n\r\nexport interface StackedMultiSelectProps extends ReactSelectFieldProps {\r\n options: FieldOptions;\r\n setValue: UseFormSetValue<FieldValues>;\r\n setError: UseFormSetError<FieldValues>;\r\n clearErrors: UseFormClearErrors<FieldValues>;\r\n control: Control<FieldValues, any>;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedMultiSelect` component.\r\n */\r\nconst StackedMultiSelect = React.forwardRef<\r\n HTMLInputElement,\r\n StackedMultiSelectProps\r\n>(({ options, setValue, control, name, placeholder, disabled }, _ref) => {\r\n const watchedValue = useWatch({ control, name: name as string });\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const dropdownMenuRef = useRef<HTMLDivElement>(null);\r\n const scrollRef = useRef<HTMLDivElement>(null);\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n\r\n const [isInit, setIsInit] = useState(false);\r\n const [localValues, setLocalValues] = useState<FieldOptions>([]);\r\n const [localOptions, setLocalOptions] = useState<FieldOptions>(options);\r\n const [isFocussed, setIsFocussed] = useState(false);\r\n const [shouldSideScroll, setShouldSideScroll] = useState(false);\r\n const [optionIndex, setOptionIndex] = useState<number | null>(null);\r\n\r\n const [position, setPosition] = useState<'top' | 'bottom'>('top');\r\n const [searchValue, setSearchValue] = useState('');\r\n const [debouncedSearchValue, setDebouncedSearchValue] = useState('');\r\n\r\n const boundingClientRect = dropdownRef.current?.getBoundingClientRect() as DOMRect;\r\n\r\n useEffect(() => {\r\n if (window.innerHeight - (boundingClientRect?.y + 240) >= 0) {\r\n setPosition('top');\r\n } else {\r\n setPosition('bottom');\r\n }\r\n }, [boundingClientRect]);\r\n\r\n useOnClickOutside(dropdownRef, () => setIsFocussed(false));\r\n\r\n // gets latest watched form value (common delimited) from RHF state and creates a list\r\n useEffect(() => {\r\n if (watchedValue !== undefined && !watchedValue.length && !isInit) {\r\n setLocalValues([]);\r\n setIsInit(true);\r\n }\r\n\r\n if (watchedValue !== undefined && watchedValue?.length && !isInit) {\r\n if (shouldSideScroll) {\r\n (scrollRef.current as HTMLDivElement).scrollTo({\r\n left: scrollRef.current?.scrollWidth,\r\n behavior: 'smooth',\r\n });\r\n setShouldSideScroll(false);\r\n }\r\n\r\n if (isInit) return;\r\n\r\n setLocalValues(\r\n watchedValue\r\n .split(',')\r\n .filter(Boolean)\r\n .map((value: string) =>\r\n options.find(option => option.value === value)\r\n )\r\n );\r\n // Filter out options that are already selected\r\n setLocalOptions(prevLocalOptions =>\r\n prevLocalOptions.filter(\r\n localOption =>\r\n !watchedValue\r\n .split(',')\r\n .filter(Boolean)\r\n .map((value: string) =>\r\n options.find(option => option.value === value)\r\n )\r\n .includes(localOption)\r\n )\r\n );\r\n\r\n setIsInit(true);\r\n }\r\n }, [\r\n isInit,\r\n localOptions,\r\n localValues,\r\n options,\r\n shouldSideScroll,\r\n watchedValue,\r\n ]);\r\n\r\n const handleChange = (option: FieldOption) => {\r\n setShouldSideScroll(true);\r\n const newValue = [...localValues, option]\r\n .map(({ value }) => value)\r\n .join(',');\r\n\r\n setValue(name as string, newValue, {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n\r\n setLocalOptions(prevLocalOptions =>\r\n prevLocalOptions.filter(prevLocalOption => prevLocalOption !== option)\r\n );\r\n\r\n setLocalValues(prevLocalValues => [...prevLocalValues, option]);\r\n };\r\n\r\n const handleDelete = (option: FieldOption) => {\r\n const newValue = localValues\r\n .filter(localValue => localValue !== option)\r\n .map(({ value }) => value)\r\n .join(',');\r\n\r\n setValue(name as string, newValue, {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n\r\n setLocalOptions(prevLocalOptions =>\r\n [...prevLocalOptions, option].sort((a, b) => a.sortValue - b.sortValue)\r\n );\r\n\r\n setLocalValues(prevLocalValues =>\r\n prevLocalValues.filter(prevLocalValue => prevLocalValue !== option)\r\n );\r\n };\r\n\r\n const handleOnKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\r\n const initialOptionIndex = options[0].value === 'section_header' ? 1 : 0;\r\n\r\n if (\r\n !isFocussed &&\r\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\r\n ) {\r\n setIsFocussed(true);\r\n return setOptionIndex(initialOptionIndex);\r\n }\r\n\r\n if (isFocussed) {\r\n if (\r\n optionIndex === null &&\r\n (e.key === 'Enter' || e.key === 'ArrowUp' || e.key === 'ArrowDown')\r\n ) {\r\n return setOptionIndex(initialOptionIndex);\r\n }\r\n\r\n if (e.key === 'ArrowUp' && optionIndex !== null && optionIndex > 0) {\r\n const incrementValue =\r\n localOptions[optionIndex - 1] &&\r\n localOptions[optionIndex - 1].value === 'section_header'\r\n ? 2\r\n : 1;\r\n setOptionIndex(optionIndex - incrementValue);\r\n\r\n return dropdownMenuRef.current?.scrollTo({\r\n top: optionIndex * 24,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n if (\r\n e.key === 'ArrowDown' &&\r\n optionIndex !== null &&\r\n optionIndex < localOptions.length\r\n ) {\r\n const incrementValue =\r\n localOptions[optionIndex + 1] &&\r\n localOptions[optionIndex + 1].value === 'section_header'\r\n ? 2\r\n : 1;\r\n setOptionIndex(optionIndex + incrementValue);\r\n\r\n return dropdownMenuRef.current?.scrollTo({\r\n top: optionIndex * 24,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n if (e.key === 'Enter' && optionIndex !== null) {\r\n const option = localOptions.find((_, idx) => optionIndex === idx);\r\n if (!option) return;\r\n\r\n handleChange(option);\r\n\r\n return setIsFocussed(false);\r\n }\r\n\r\n if (e.key === 'Tab') {\r\n return setIsFocussed(false);\r\n }\r\n\r\n return update(debouncedSearchValue.concat(e.key));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (searchValue.length) {\r\n const idx = options.findIndex(\r\n option =>\r\n option.label.substring(0, searchValue.length).toLowerCase() ===\r\n searchValue.toLowerCase()\r\n );\r\n\r\n dropdownMenuRef.current?.scrollTo({\r\n top: idx * 24,\r\n behavior: 'smooth',\r\n });\r\n\r\n setSearchValue('');\r\n setDebouncedSearchValue('');\r\n }\r\n }, [options, searchValue]);\r\n\r\n const updateSearchValue = useMemo(() => {\r\n return debounce(val => {\r\n setSearchValue(val);\r\n }, 1000);\r\n }, []);\r\n\r\n const update = (value: string) => {\r\n updateSearchValue(value);\r\n setDebouncedSearchValue(value);\r\n };\r\n\r\n return (\r\n <Box ref={dropdownRef} position=\"relative\" onKeyDown={handleOnKeyDown}>\r\n <Flex\r\n fontSize=\"13px\"\r\n h=\"26px\"\r\n border={isFocussed ? '2px solid' : '.5px solid'}\r\n borderColor={isFocussed ? colors.border.focus : colors.border.default}\r\n py=\"5px\"\r\n pl=\"8px\"\r\n borderRadius=\"4px\"\r\n alignItems=\"center\"\r\n justifyContent=\"space-between\"\r\n onClick={() => {\r\n if (!disabled) {\r\n if (isFocussed) {\r\n return setIsFocussed(false);\r\n }\r\n\r\n inputRef.current?.focus();\r\n setIsFocussed(true);\r\n }\r\n }}\r\n bg={disabled ? colors.fill.light.quaternary : '#ffffff'}\r\n cursor={disabled ? 'not-allowed' : 'pointer'}\r\n >\r\n <Flex\r\n alignItems=\"center\"\r\n h=\"inherit\"\r\n width=\"90%\"\r\n overflowX=\"scroll\"\r\n style={{\r\n scrollbarWidth: 'none' /* Firefox */,\r\n msOverflowStyle: 'none',\r\n }}\r\n sx={{\r\n '::-webkit-scrollbar': {\r\n display: 'none',\r\n },\r\n }}\r\n ref={scrollRef}\r\n >\r\n {localValues.length ? (\r\n localValues.map((option, idx) => (\r\n <Box\r\n key={idx}\r\n mr=\"4px\"\r\n width=\"fit-content\"\r\n h=\"16px\"\r\n borderRadius=\"full\"\r\n >\r\n <Token\r\n label={option.label}\r\n onDelete={() => handleDelete(option)}\r\n />\r\n </Box>\r\n ))\r\n ) : (\r\n <Text color={colors.label.secondary.light} fontSize=\"13px\">\r\n {placeholder}\r\n </Text>\r\n )}\r\n </Flex>\r\n <Input\r\n padding={0}\r\n border=\"none\"\r\n height=\"0\"\r\n width=\"0\"\r\n autoComplete=\"off\"\r\n type=\"text\"\r\n ref={inputRef}\r\n tabIndex={-1}\r\n _focus={{ boxShadow: 'none !important' }}\r\n />\r\n <Flex mr=\"4px\" justifyContent=\"center\" alignItems=\"center\">\r\n <DropdownIcon boxSize=\"16px\" disabled={disabled} />\r\n </Flex>\r\n </Flex>\r\n {isFocussed && (\r\n <Dropdown\r\n dropdownRef={dropdownMenuRef}\r\n onSelectItem={option => handleChange(option)}\r\n options={localOptions}\r\n position={position}\r\n optionIndex={optionIndex}\r\n />\r\n )}\r\n </Box>\r\n );\r\n});\r\n\r\nexport default StackedMultiSelect;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { Box, Flex, Input, Text, useOutsideClick } from '@chakra-ui/react';\r\nimport { InputFieldProps } from '../InputTypes';\r\nimport {\r\n Control,\r\n FieldValues,\r\n UseFormClearErrors,\r\n UseFormSetError,\r\n UseFormSetValue,\r\n useWatch,\r\n} from 'react-hook-form';\r\nimport colors from '../../../theme/foundations/colors';\r\nimport Token from '../components/token';\r\n\r\nexport interface StackedPilledInputProps extends InputFieldProps {\r\n setValue: UseFormSetValue<FieldValues>;\r\n setError: UseFormSetError<FieldValues>;\r\n clearErrors: UseFormClearErrors<FieldValues>;\r\n control: Control<FieldValues, any>;\r\n separators?: string[];\r\n variant?: string;\r\n label?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedPilledInput` component.\r\n */\r\nconst StackedPilledInput = React.forwardRef<\r\n HTMLInputElement,\r\n StackedPilledInputProps\r\n>(\r\n (\r\n {\r\n name,\r\n setValue,\r\n control,\r\n placeholder,\r\n disabled,\r\n separators = ['Enter', ' ', ',', ';', 'Tab'],\r\n variant,\r\n label,\r\n },\r\n _ref\r\n ) => {\r\n const watchedValue = useWatch({ control, name: name as string });\r\n const [lastestFormValueToArray, setLatestFormValueToArray] = useState<\r\n string[]\r\n >([]);\r\n\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n const inputWrapperRef = useRef(null);\r\n const scrollRef = useRef<HTMLDivElement>(null);\r\n\r\n const [tokenIndex, setTokenIndex] = useState<number | null>(null);\r\n const [isFocussed, setIsFocussed] = useState(false);\r\n const [localValue, setLocalValue] = useState('');\r\n\r\n const latestTokenElement = document.getElementById(\r\n `${name}_token_${lastestFormValueToArray.length - 1}`\r\n );\r\n\r\n // gets latest watched form value (common delimited) from RHF state and creates a list\r\n useEffect(() => {\r\n if (watchedValue !== undefined && !watchedValue.length) {\r\n setLatestFormValueToArray([]);\r\n }\r\n\r\n if (watchedValue !== undefined && watchedValue?.length) {\r\n setLatestFormValueToArray(\r\n watchedValue.split(';').join(',').split(',').filter(Boolean)\r\n );\r\n\r\n if (latestTokenElement) {\r\n latestTokenElement.scrollIntoView({\r\n block: 'end',\r\n inline: 'center',\r\n behavior: 'smooth',\r\n });\r\n }\r\n }\r\n }, [latestTokenElement, watchedValue]);\r\n\r\n const handleOnChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n if (tokenIndex === null) {\r\n setLocalValue(\r\n e.target.value.trim().replace(',', '').replace(';', '').length\r\n ? e.target.value\r\n : ''\r\n );\r\n }\r\n };\r\n\r\n const onHandleKeyDown = (e: React.KeyboardEvent) => {\r\n if (e.key === 'Enter') {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n if (separators.includes(e.key)) {\r\n if (\r\n e.key === 'Enter' &&\r\n !localValue.trim().length &&\r\n tokenIndex !== null\r\n ) {\r\n setLocalValue(lastestFormValueToArray[tokenIndex]);\r\n\r\n const filteredUniqueValues = Array.from(\r\n new Set(\r\n lastestFormValueToArray.filter(\r\n (value) => value !== lastestFormValueToArray[tokenIndex]\r\n )\r\n )\r\n );\r\n\r\n setValue(name as string, filteredUniqueValues.toString(), {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n\r\n return setTokenIndex(null);\r\n }\r\n\r\n const filteredUniqueValues = Array.from(\r\n new Set([\r\n ...lastestFormValueToArray,\r\n ...localValue.trim().split(';').join(',').split(','),\r\n ])\r\n );\r\n\r\n setLocalValue('');\r\n\r\n return setValue(name as string, filteredUniqueValues.toString(), {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n }\r\n\r\n if (!localValue.trim().length && lastestFormValueToArray.length) {\r\n if (e.key === 'Backspace' && tokenIndex !== null) {\r\n setLocalValue(\r\n lastestFormValueToArray[tokenIndex].substring(\r\n 0,\r\n lastestFormValueToArray[tokenIndex].length\r\n )\r\n );\r\n\r\n const filteredUniqueValues = Array.from(\r\n new Set(\r\n [...lastestFormValueToArray].filter(\r\n (value) => value !== lastestFormValueToArray[tokenIndex]\r\n )\r\n )\r\n );\r\n\r\n setValue(name as string, filteredUniqueValues.toString(), {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n\r\n return setTokenIndex(null);\r\n }\r\n\r\n if (e.key === 'ArrowLeft') {\r\n if (tokenIndex === 0) return;\r\n\r\n if (!tokenIndex) {\r\n return setTokenIndex(lastestFormValueToArray.length - 1);\r\n }\r\n\r\n setTokenIndex((prevTokenIndex) => (prevTokenIndex as number) - 1);\r\n\r\n const tokenElement = document.getElementById(\r\n `${name}_token_${tokenIndex}`\r\n );\r\n\r\n if (!tokenElement || !scrollRef.current) return;\r\n\r\n return scrollRef.current.scrollBy({\r\n left: -1 * tokenElement.getBoundingClientRect().width,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n if (e.key === 'ArrowRight') {\r\n if (tokenIndex === null) return;\r\n\r\n if (tokenIndex === lastestFormValueToArray.length - 1) {\r\n return setTokenIndex(null);\r\n }\r\n setTokenIndex((prevTokenIndex) => (prevTokenIndex as number) + 1);\r\n\r\n const tokenElement = document.getElementById(\r\n `${name}_token_${tokenIndex}`\r\n );\r\n\r\n if (!tokenElement || !scrollRef.current) return;\r\n\r\n return scrollRef.current.scrollBy({\r\n left: tokenElement.getBoundingClientRect().width,\r\n behavior: 'smooth',\r\n });\r\n }\r\n }\r\n };\r\n\r\n const onRemoveTag = (index: number) => {\r\n const filteredUniqueValues = lastestFormValueToArray.filter(\r\n (_, i) => i !== index\r\n );\r\n\r\n setLatestFormValueToArray(filteredUniqueValues);\r\n\r\n setValue(name as string, filteredUniqueValues.toString(), {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n };\r\n\r\n const onBlur = () => {\r\n if (localValue.trim().length) {\r\n const filteredUniqueValues = Array.from(\r\n new Set([...lastestFormValueToArray, ...localValue.trim().split(',')])\r\n );\r\n\r\n setValue(name as string, filteredUniqueValues.toString(), {\r\n shouldValidate: true,\r\n shouldDirty: true,\r\n });\r\n setLocalValue('');\r\n }\r\n setIsFocussed(false);\r\n };\r\n\r\n useOutsideClick({\r\n ref: inputWrapperRef,\r\n handler: () => {\r\n onBlur();\r\n },\r\n });\r\n const isMobile = variant === 'mobile';\r\n\r\n return (\r\n <Box position=\"relative\">\r\n <Flex\r\n fontSize={isMobile ? '17px' : '13px'}\r\n border={isFocussed ? '2px solid' : '.5px solid'}\r\n borderColor={isFocussed ? colors.border.focus : colors.border.default}\r\n pl=\"8px\"\r\n borderRadius={isMobile ? '0' : '4px'}\r\n alignItems=\"center\"\r\n justifyContent=\"space-between\"\r\n style={\r\n isMobile\r\n ? {\r\n cursor: 'pointer',\r\n height: '48px',\r\n fontSize: '17px',\r\n lineHeight: '20px',\r\n fontWeight: 400,\r\n padding: '12px 16px 12px 0px',\r\n borderRadius: 0,\r\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n }\r\n : undefined\r\n }\r\n onClick={() => {\r\n if (isFocussed && tokenIndex !== null) {\r\n setTokenIndex(null);\r\n }\r\n\r\n if (!disabled) {\r\n inputRef.current?.focus();\r\n }\r\n }}\r\n bg={disabled ? colors.fill.light.quaternary : '#ffffff'}\r\n cursor={disabled ? 'not-allowed' : 'pointer'}\r\n ref={inputWrapperRef}\r\n h={isMobile ? '48px' : '26px'}\r\n >\r\n <Flex\r\n h=\"100%\"\r\n alignItems=\"center\"\r\n overflowX=\"scroll\"\r\n overflowY=\"hidden\"\r\n maxWidth={isFocussed ? '80%' : '100%'}\r\n style={{\r\n scrollbarWidth: 'none' /* Firefox */,\r\n msOverflowStyle: 'none',\r\n }}\r\n sx={{\r\n '::-webkit-scrollbar': {\r\n display: 'none',\r\n },\r\n }}\r\n ref={scrollRef}\r\n zIndex={100}\r\n onKeyDown={onHandleKeyDown}\r\n >\r\n {lastestFormValueToArray.length\r\n ? lastestFormValueToArray.map((label, index) => (\r\n <Box\r\n key={index}\r\n mr=\"4px\"\r\n border={\r\n tokenIndex === index\r\n ? `1px solid ${colors.border.focus}`\r\n : 'none'\r\n }\r\n borderRadius=\"full\"\r\n onClick={() => setTokenIndex(index)}\r\n width=\"100%\"\r\n id={`${name}_token_${index}`}\r\n >\r\n <Token\r\n label={label}\r\n onDelete={(e: any) => {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n onRemoveTag(index);\r\n }}\r\n isMobile={isMobile}\r\n />\r\n </Box>\r\n ))\r\n : null}\r\n {!lastestFormValueToArray.length && !isFocussed ? (\r\n <Text\r\n color={colors.label.secondary.light}\r\n fontSize={isMobile ? '17px' : '13px'}\r\n >\r\n {placeholder}\r\n </Text>\r\n ) : null}\r\n </Flex>\r\n {!disabled && (\r\n <Flex flex={1} minWidth={isFocussed && !tokenIndex ? '20%' : 0}>\r\n <Input\r\n onKeyDown={onHandleKeyDown}\r\n type=\"text\"\r\n padding={0}\r\n alignContent=\"flex-start\"\r\n float=\"right\"\r\n border=\"none\"\r\n height=\"auto\"\r\n color={\r\n tokenIndex !== null ? 'transparent' : colors.label.primary\r\n }\r\n _focus={{ boxShadow: 'none !important' }}\r\n value={localValue}\r\n onChange={handleOnChange}\r\n ref={inputRef}\r\n onFocus={() => setIsFocussed(true)}\r\n onBlur={() => {\r\n setIsFocussed(false);\r\n return setTokenIndex(null);\r\n }}\r\n placeholder={\r\n isMobile && label && lastestFormValueToArray.length === 0\r\n ? (label as string)\r\n : ''\r\n }\r\n variant={variant}\r\n style={isMobile ? { border: 'none' } : undefined}\r\n />\r\n </Flex>\r\n )}\r\n </Flex>\r\n </Box>\r\n );\r\n }\r\n);\r\n\r\nexport default StackedPilledInput;\r\n","import React from 'react';\r\nimport { Switch, SwitchProps } from '@chakra-ui/react';\r\nimport colors from '../../../theme/foundations/colors';\r\n\r\nexport interface StackedSwitchProps extends SwitchProps {}\r\n\r\n/**\r\n * A functional React component utilized to render the `StackedSwitch` component.\r\n */\r\nconst StackedSwitch = React.forwardRef<HTMLInputElement, StackedSwitchProps>(\r\n ({ isRequired, onChange, value }, _ref) => {\r\n if (value === null) return null;\r\n\r\n return (\r\n <Switch\r\n h=\"21px\"\r\n _focus={{\r\n border: '2px solid',\r\n borderColor: colors.border.focus,\r\n }}\r\n ref={_ref}\r\n isRequired={isRequired}\r\n value={String(value)}\r\n defaultChecked={Boolean(value)}\r\n onChange={e => {\r\n if (onChange) return onChange(e.target.checked as any);\r\n }}\r\n />\r\n );\r\n }\r\n);\r\n\r\nexport default StackedSwitch;\r\n","import React from 'react';\r\nimport { Box, FormLabel, Tooltip } from '@chakra-ui/react';\r\nimport colors from '../../../../../src/theme/foundations/colors';\r\nimport { QuestionOutlineIcon } from '@chakra-ui/icons';\r\n\r\nexport interface LabelProps {\r\n label: string;\r\n tooltipText?: string;\r\n isRequired?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Label` component\r\n */\r\nexport const Label: React.FC<LabelProps> = ({\r\n tooltipText,\r\n isRequired,\r\n label,\r\n}) => {\r\n return (\r\n <FormLabel display=\"flex\" ml=\"0\">\r\n {label}\r\n {isRequired && (\r\n <Box ml={1} color={colors.label.error}>\r\n *\r\n </Box>\r\n )}\r\n {!!tooltipText && (\r\n <Tooltip label={tooltipText} placement=\"top\">\r\n <QuestionOutlineIcon boxSize=\"13px\" ml=\"8px\" />\r\n </Tooltip>\r\n )}\r\n </FormLabel>\r\n );\r\n};\r\n","import React from 'react';\r\nimport StackedCheckBox from './StackedCheckbox/StackedCheckbox';\r\nimport StackedInput from './StackedInput/StackedInput';\r\nimport StackedRadioGroup from './StackedRadio/StackedRadioGroup';\r\nimport StackedSelect from './StackedSelect';\r\nimport StackedTextarea from './StackedTextarea/StackedTextarea';\r\nimport { FieldOptions, ValidationProps, InputType } from './InputTypes';\r\nimport {\r\n FormControl,\r\n FormErrorMessage,\r\n FormHelperText,\r\n} from '@chakra-ui/react';\r\nimport {\r\n Control,\r\n Controller,\r\n FieldValues,\r\n Path,\r\n PathValue,\r\n RefCallBack,\r\n UseFormClearErrors,\r\n UseFormSetError,\r\n UseFormSetValue,\r\n} from 'react-hook-form';\r\nimport StackedMultiSelect from './StackedMultiSelect';\r\nimport StackedPilledInput from './StackedPilledInput';\r\nimport StackedSwitch from './StackedSwitch';\r\nimport { Label } from './components/label';\r\n\r\nexport interface InputProps<T extends FieldValues> extends ValidationProps {\r\n inputType: InputType;\r\n name: string;\r\n ariaLabel: string;\r\n placeholder?: string;\r\n defaultValue?: string;\r\n label?: string;\r\n className?: string;\r\n options?: FieldOptions;\r\n fullOptions?: FieldOptions;\r\n maxLength?: number;\r\n helperText?: React.ReactNode;\r\n control: Control<T, unknown>;\r\n onChange?: (value?: string) => void;\r\n disabled?: boolean;\r\n tooltipText?: string;\r\n setValue: UseFormSetValue<T>;\r\n setError: UseFormSetError<T>;\r\n clearErrors: UseFormClearErrors<T>;\r\n leftElement?: React.ReactNode;\r\n allowDefault?: boolean;\r\n rightElement?: React.ReactNode;\r\n variant: string;\r\n separators?: string[];\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Input` component. Utilizes a switch statement\r\n * to render the correct input based on the `inputType`.\r\n */\r\nexport function Input<T extends FieldValues>({\r\n inputType,\r\n label,\r\n ariaLabel,\r\n className,\r\n placeholder,\r\n name,\r\n helperText,\r\n options,\r\n tooltipText,\r\n isInvalid,\r\n errorText,\r\n isRequired,\r\n maxLength,\r\n defaultValue,\r\n fullOptions,\r\n control,\r\n disabled,\r\n rightElement,\r\n leftElement,\r\n allowDefault,\r\n variant = 'default',\r\n onChange,\r\n setValue,\r\n setError,\r\n clearErrors,\r\n separators,\r\n}: InputProps<T>) {\r\n const selectedInputField = (\r\n onChange: () => void,\r\n onBlur: () => void,\r\n ref: RefCallBack,\r\n value: string\r\n ) => {\r\n switch (inputType) {\r\n case 'text':\r\n return (\r\n <StackedInput\r\n className={`input-${inputType} ${className ?? ''}`}\r\n aria-label={ariaLabel}\r\n name={name}\r\n id={name}\r\n placeholder={placeholder}\r\n maxLength={maxLength}\r\n isRequired={isRequired}\r\n isInvalid={isInvalid}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n rightElement={rightElement}\r\n leftElement={leftElement}\r\n disabled={disabled}\r\n defaultValue={defaultValue}\r\n value={value}\r\n allowDefault={allowDefault}\r\n variant={variant}\r\n label={label as string}\r\n />\r\n );\r\n case 'radio':\r\n return (\r\n <StackedRadioGroup\r\n className={`input-${inputType} ${className ?? ''}`}\r\n name={name}\r\n id={name}\r\n isInvalid={isInvalid}\r\n options={options as FieldOptions}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n disabled={disabled}\r\n value={value}\r\n />\r\n );\r\n case 'select':\r\n return (\r\n <StackedSelect\r\n className={`input-${inputType} ${className ?? ''}`}\r\n name={name}\r\n id={name}\r\n isRequired={isRequired}\r\n isInvalid={isInvalid}\r\n options={options as FieldOptions}\r\n handleOnChange={onChange}\r\n onBlur={onBlur}\r\n setValue={setValue as UseFormSetValue<FieldValues>}\r\n control={control as Control<FieldValues, any>}\r\n ref={ref}\r\n disabled={disabled}\r\n value={value}\r\n defaultValue={defaultValue}\r\n placeholder={placeholder}\r\n fullOptions={fullOptions}\r\n />\r\n );\r\n case 'textarea':\r\n return (\r\n <StackedTextarea\r\n className={`input-${inputType} ${className ?? ''}`}\r\n aria-label={ariaLabel}\r\n name={name}\r\n id={name}\r\n placeholder={placeholder}\r\n maxLength={maxLength}\r\n isRequired={isRequired}\r\n isInvalid={isInvalid}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n disabled={disabled}\r\n value={value}\r\n variant={variant}\r\n label={label as string}\r\n />\r\n );\r\n case 'checkbox':\r\n return (\r\n <StackedCheckBox\r\n className={`input-${inputType} ${className ?? ''}`}\r\n name={name}\r\n id={name}\r\n isInvalid={isInvalid}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n value={value}\r\n defaultValue={defaultValue}\r\n label={label as string}\r\n disabled={disabled}\r\n variant={variant}\r\n />\r\n );\r\n case 'multi-select':\r\n return (\r\n <StackedMultiSelect\r\n className={`input-${inputType} ${className ?? ''}`}\r\n name={name}\r\n id={name}\r\n isInvalid={isInvalid}\r\n options={options as FieldOptions}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n disabled={disabled}\r\n value={value}\r\n setValue={setValue as UseFormSetValue<FieldValues>}\r\n control={control as Control<FieldValues, any>}\r\n setError={setError as UseFormSetError<FieldValues>}\r\n clearErrors={clearErrors as UseFormClearErrors<FieldValues>}\r\n placeholder={placeholder}\r\n />\r\n );\r\n case 'pilled-text':\r\n return (\r\n <StackedPilledInput\r\n className={`input-${inputType} ${className ?? ''}`}\r\n aria-label={ariaLabel}\r\n name={name}\r\n id={name}\r\n isInvalid={isInvalid}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n disabled={disabled}\r\n value={value}\r\n placeholder={placeholder}\r\n setValue={setValue as UseFormSetValue<FieldValues>}\r\n setError={setError as UseFormSetError<FieldValues>}\r\n clearErrors={clearErrors as UseFormClearErrors<FieldValues>}\r\n control={control as Control<FieldValues, any>}\r\n maxLength={maxLength}\r\n variant={variant}\r\n label={label}\r\n separators={separators}\r\n />\r\n );\r\n case 'switch':\r\n return (\r\n <StackedSwitch\r\n className={`input-${inputType} ${className ?? ''}`}\r\n name={name}\r\n id={name}\r\n isInvalid={isInvalid}\r\n onChange={onChange}\r\n onBlur={onBlur}\r\n ref={ref}\r\n value={value}\r\n defaultValue={defaultValue}\r\n />\r\n );\r\n default:\r\n return null;\r\n }\r\n };\r\n const nonLabeledInputs = ['checkbox'];\r\n\r\n return (\r\n <Controller\r\n control={control}\r\n name={name as Path<T>}\r\n defaultValue={defaultValue as PathValue<T, Path<T>>}\r\n rules={{ required: isRequired }}\r\n /** @ts-ignore: issues with implicit */\r\n render={({ field: { onBlur, onChange: fieldOnChange, ref, value } }) => (\r\n <FormControl\r\n id={name}\r\n isInvalid={isInvalid}\r\n position=\"relative\"\r\n py={\r\n (!nonLabeledInputs.includes(inputType) &&\r\n variant !== 'mobile' &&\r\n label) ||\r\n helperText ||\r\n isInvalid\r\n ? 5\r\n : 0\r\n }\r\n >\r\n {label &&\r\n !nonLabeledInputs.includes(inputType) &&\r\n variant !== 'mobile' && (\r\n <Label\r\n tooltipText={tooltipText}\r\n label={label}\r\n isRequired={isRequired}\r\n />\r\n )}\r\n {selectedInputField(\r\n onChange ? onChange : fieldOnChange,\r\n onBlur,\r\n ref,\r\n value\r\n )}\r\n {isInvalid ? (\r\n <FormErrorMessage>{errorText}</FormErrorMessage>\r\n ) : (\r\n helperText && <FormHelperText>{helperText}</FormHelperText>\r\n )}\r\n </FormControl>\r\n )}\r\n />\r\n );\r\n}\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%226%22%20viewBox%3D%220%200%208%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.184136%200.767507C0.422999%200.537831%200.802824%200.545278%201.0325%200.784142L4%203.93434L6.9675%200.784142C7.19718%200.545279%207.577%200.537831%207.81587%200.767507C8.05473%200.997183%208.06218%201.37701%207.8325%201.61587L4.4325%205.21587C4.31938%205.33352%204.16321%205.40001%204%205.40001C3.83679%205.40001%203.68062%205.33352%203.5675%205.21587L0.167501%201.61587C-0.0621751%201.37701%20-0.0547276%200.997183%200.184136%200.767507Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%226%22%20height%3D%228%22%20viewBox%3D%220%200%206%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.767599%207.81586C0.537923%207.577%200.54537%207.19718%200.784233%206.9675L3.93443%204L0.784233%201.0325C0.54537%200.802823%200.537922%200.422997%200.767598%200.184134C0.997274%20-0.0547285%201.3771%20-0.0621767%201.61596%200.167499L5.21596%203.5675C5.33361%203.68062%205.4001%203.83679%205.4001%204C5.4001%204.16321%205.33361%204.31938%205.21596%204.4325L1.61596%207.8325C1.3771%208.06218%200.997275%208.05473%200.767599%207.81586Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%203V7H10M13%207C13%2010.3137%2010.3137%2013%207%2013C3.68629%2013%201%2010.3137%201%207C1%203.68629%203.68629%201%207%201C10.3137%201%2013%203.68629%2013%207Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as ChevronRightIcon } from './chevron-right.svg';\r\n\r\nexport interface ChevronRightProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `ChevronRight` icon component\r\n */\r\nexport const ChevronRight: React.FC<ChevronRightProps> = ({ boxSize }) => {\r\n return <ChevronRightIcon boxSize={boxSize} />;\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.75%200C1.05964%200%200.5%200.559644%200.5%201.25V12.75C0.5%2013.4404%201.05964%2014%201.75%2014H10.25C10.9404%2014%2011.5%2013.4404%2011.5%2012.75V7.5C11.5%206.11929%2010.3807%205%209%205H7.75C7.05964%205%206.5%204.44036%206.5%203.75V2.5C6.5%201.11929%205.38071%200%204%200H1.75Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M6.64746%200.210603C7.17864%200.824319%207.5%201.62463%207.5%202.5V3.75C7.5%203.88807%207.61193%204%207.75%204H9C9.87537%204%2010.6757%204.32136%2011.2894%204.85254C10.6975%202.58658%208.91342%200.802516%206.64746%200.210603Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.0461%208.47693V6.75385C11.0461%205.53033%2010.0542%204.53847%208.83072%204.53847H7.84611C7.43826%204.53847%207.10764%204.20785%207.10764%203.80001V2.81539C7.10764%201.59187%206.11578%200.600006%204.89226%200.600006H3.66149M5.13841%200.600006H1.93841C1.53057%200.600006%201.19995%200.930626%201.19995%201.33847V12.6615C1.19995%2013.0694%201.53057%2013.4%201.93841%2013.4H10.3076C10.7155%2013.4%2011.0461%2013.0694%2011.0461%2012.6615V6.5077C11.0461%203.24497%208.40114%200.600006%205.13841%200.600006Z%22%20stroke%3D%22white%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.0001%200.399994C1.2269%200.399994%200.600098%201.02679%200.600098%201.79999V4.40872C1.00422%204.14999%201.48464%203.99999%202.0001%203.99999H12.0001C12.5156%203.99999%2012.996%204.14999%2013.4001%204.40872V3.39999C13.4001%202.6268%2012.7733%201.99999%2012.0001%201.99999H8.13147C8.07842%201.99999%208.02755%201.97892%207.99005%201.94142L6.85868%200.810044C6.59613%200.547493%206.24003%200.399994%205.86873%200.399994H2.0001Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M2.0001%205.19999C1.2269%205.19999%200.600098%205.8268%200.600098%206.59999V10.2C0.600098%2010.9732%201.2269%2011.6%202.0001%2011.6H12.0001C12.7733%2011.6%2013.4001%2010.9732%2013.4001%2010.2V6.59999C13.4001%205.8268%2012.7733%205.19999%2012.0001%205.19999H2.0001Z%22%20fill%3D%22%230082ff%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22Layer_1%22%20data-name%3D%22Layer%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20viewBox%3D%220%200%20102.4%2089.6%22%3E%20%20%3Cdefs%3E%20%20%20%20%3Cstyle%3E%20%20%20%20%20%20.cls-1%20%7B%20%20%20%20%20%20%20%20fill%3A%20url%28%23linear-gradient-2%29%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-1%2C%20.cls-2%20%7B%20%20%20%20%20%20%20%20fill-opacity%3A%20.8%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-3%20%7B%20%20%20%20%20%20%20%20fill%3A%20%23fff%3B%20%20%20%20%20%20%7D%20%20%20%20%20%20.cls-2%20%7B%20%20%20%20%20%20%20%20fill%3A%20url%28%23linear-gradient%29%3B%20%20%20%20%20%20%7D%20%20%20%20%3C%2Fstyle%3E%20%20%20%20%3ClinearGradient%20id%3D%22linear-gradient%22%20x1%3D%2267.42%22%20y1%3D%2297.14%22%20x2%3D%2214.33%22%20y2%3D%2213.53%22%20gradientTransform%3D%22translate%280%2091.6%29%20scale%281%20-1%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff81e2%22%2F%3E%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230082ff%22%2F%3E%20%20%20%20%3C%2FlinearGradient%3E%20%20%20%20%3ClinearGradient%20id%3D%22linear-gradient-2%22%20x1%3D%2287.33%22%20y1%3D%2284.5%22%20x2%3D%2234.24%22%20y2%3D%22.89%22%20gradientTransform%3D%22translate%280%2091.6%29%20scale%281%20-1%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff81e2%22%2F%3E%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230082ff%22%2F%3E%20%20%20%20%3C%2FlinearGradient%3E%20%20%3C%2Fdefs%3E%20%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22m11.2%2C0C5.01%2C0%2C0%2C5.01%2C0%2C11.2v20.87c3.23-2.07%2C7.08-3.27%2C11.2-3.27h80c4.12%2C0%2C7.97%2C1.2%2C11.2%2C3.27v-8.07c0-6.19-5.01-11.2-11.2-11.2h-30.95c-.42%2C0-.83-.17-1.13-.47l-9.05-9.05c-2.1-2.1-4.95-3.28-7.92-3.28H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22m11.2%2C0C5.01%2C0%2C0%2C5.01%2C0%2C11.2v20.87c3.23-2.07%2C7.08-3.27%2C11.2-3.27h80c4.12%2C0%2C7.97%2C1.2%2C11.2%2C3.27v-8.07c0-6.19-5.01-11.2-11.2-11.2h-30.95c-.42%2C0-.83-.17-1.13-.47l-9.05-9.05c-2.1-2.1-4.95-3.28-7.92-3.28H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22m11.2%2C38.4c-6.19%2C0-11.2%2C5.01-11.2%2C11.2v28.8c0%2C6.19%2C5.01%2C11.2%2C11.2%2C11.2h80c6.19%2C0%2C11.2-5.01%2C11.2-11.2v-28.8c0-6.19-5.01-11.2-11.2-11.2H11.2Z%22%2F%3E%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22m11.2%2C38.4c-6.19%2C0-11.2%2C5.01-11.2%2C11.2v28.8c0%2C6.19%2C5.01%2C11.2%2C11.2%2C11.2h80c6.19%2C0%2C11.2-5.01%2C11.2-11.2v-28.8c0-6.19-5.01-11.2-11.2-11.2H11.2Z%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1%206.53846V6.07692C1%205.31222%201.61991%204.69231%202.38462%204.69231H11.6154C12.3801%204.69231%2013%205.31222%2013%206.07692V6.53846M7.65271%202.57579L6.34729%201.27036C6.17418%201.09725%205.93939%201%205.69457%201H2.38462C1.61991%201%201%201.61991%201%202.38462V9.76923C1%2010.5339%201.61991%2011.1538%202.38462%2011.1538H11.6154C12.3801%2011.1538%2013%2010.5339%2013%209.76923V4.23077C13%203.46607%2012.3801%202.84615%2011.6154%202.84615H8.30543C8.06061%202.84615%207.82582%202.7489%207.65271%202.57579Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8%207V11M10%209H6M8.70711%204.20711L7.29289%202.79289C7.10536%202.60536%206.851%202.5%206.58579%202.5H3C2.17157%202.5%201.5%203.17157%201.5%204V12C1.5%2012.8284%202.17157%2013.5%203%2013.5H13C13.8284%2013.5%2014.5%2012.8284%2014.5%2012V6C14.5%205.17157%2013.8284%204.5%2013%204.5H9.41421C9.149%204.5%208.89464%204.39464%208.70711%204.20711Z%22%20stroke%3D%22white%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%205V9M9%207H5M7.70711%202.20711L6.29289%200.792893C6.10536%200.605357%205.851%200.5%205.58579%200.5H2C1.17157%200.5%200.5%201.17157%200.5%202V10C0.5%2010.8284%201.17157%2011.5%202%2011.5H12C12.8284%2011.5%2013.5%2010.8284%2013.5%2010V4C13.5%203.17157%2012.8284%202.5%2012%202.5H8.41421C8.149%202.5%207.89464%202.39464%207.70711%202.20711Z%22%20stroke%3D%22%233C3C4399%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2214%22%20viewBox%3D%220%200%2015%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M9.35643%2011.6759C9.92846%2011.8425%2010.5334%2011.9317%2011.1592%2011.9317C12.1747%2011.9317%2013.1354%2011.6966%2013.9897%2011.2778C13.9913%2011.2384%2013.9921%2011.1989%2013.9921%2011.1591C13.9921%209.59453%2012.7238%208.32618%2011.1592%208.32618C10.1853%208.32618%209.32622%208.81758%208.81633%209.56595M9.35643%2011.6759V11.6742C9.35643%2010.9099%209.16058%2010.1913%208.81633%209.56595M9.35643%2011.6759C9.35642%2011.7004%209.3562%2011.7249%209.35579%2011.7493C8.07722%2012.5191%206.57945%2012.9619%204.97826%2012.9619C3.37707%2012.9619%201.87931%2012.5191%200.60073%2011.7493C0.60031%2011.7243%200.600098%2011.6993%200.600098%2011.6742C0.600098%209.25619%202.56027%207.29602%204.97826%207.29602C6.63195%207.29602%208.0715%208.21286%208.81633%209.56595M7.29611%202.91786C7.29611%204.19797%206.25838%205.23571%204.97826%205.23571C3.69815%205.23571%202.66041%204.19797%202.66041%202.91786C2.66041%201.63774%203.69815%200.600006%204.97826%200.600006C6.25838%200.600006%207.29611%201.63774%207.29611%202.91786ZM12.962%204.46309C12.962%205.45874%2012.1548%206.26587%2011.1592%206.26587C10.1636%206.26587%209.35643%205.45874%209.35643%204.46309C9.35643%203.46745%2010.1636%202.66032%2011.1592%202.66032C12.1548%202.66032%2012.962%203.46745%2012.962%204.46309Z%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2214%22%20viewBox%3D%220%200%2015%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20stroke%3D%22%230082ff%22%20d%3D%22M0.800049%207.26691L6.67788%201.38908C6.96626%201.10069%207.43383%201.10069%207.72222%201.38908L13.6%207.26691M2.27697%205.78999V12.4361C2.27697%2012.844%202.60759%2013.1746%203.01543%2013.1746H5.72313V9.9746C5.72313%209.56676%206.05375%209.23614%206.46159%209.23614H7.93851C8.34635%209.23614%208.67697%209.56676%208.67697%209.9746V13.1746H11.3847C11.7925%2013.1746%2012.1231%2012.844%2012.1231%2012.4361V5.78999M4.73851%2013.1746H10.1539%22%20%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2212%22%20viewBox%3D%220%200%2016%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.800049%202.19999C0.800049%201.20588%201.60594%200.399994%202.60005%200.399994H13.4C14.3942%200.399994%2015.2%201.20588%2015.2%202.19999V9.79999C15.2%2010.7941%2014.3942%2011.6%2013.4%2011.6H2.60005C1.60594%2011.6%200.800049%2010.7941%200.800049%209.79999V2.19999ZM2.00005%206.84852V9.79999C2.00005%2010.1314%202.26868%2010.4%202.60005%2010.4H13.4C13.7314%2010.4%2014%2010.1314%2014%209.79999V7.64852L12.2243%205.87279C11.99%205.63847%2011.6101%205.63847%2011.3758%205.87279L9.84858%207.39999L10.2243%207.77573C10.4586%208.01004%2010.4586%208.38994%2010.2243%208.62426C9.99%208.85857%209.6101%208.85857%209.37578%208.62426L5.22431%204.47279C4.99%204.23847%204.6101%204.23847%204.37578%204.47279L2.00005%206.84852ZM9.60005%203.59999C9.60005%204.04182%209.24188%204.39999%208.80005%204.39999C8.35822%204.39999%208.00005%204.04182%208.00005%203.59999C8.00005%203.15817%208.35822%202.79999%208.80005%202.79999C9.24188%202.79999%209.60005%203.15817%209.60005%203.59999Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20viewBox%3D%220%200%2010%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0%200.8C0%200.468629%200.268629%200.2%200.6%200.2H9C9.33137%200.2%209.6%200.468629%209.6%200.8C9.6%201.13137%209.33137%201.4%209%201.4H0.6C0.268629%201.4%200%201.13137%200%200.8ZM0%205C0%204.66863%200.268629%204.4%200.6%204.4H9C9.33137%204.4%209.6%204.66863%209.6%205C9.6%205.33137%209.33137%205.6%209%205.6H0.6C0.268629%205.6%200%205.33137%200%205ZM0%209.2C0%208.86863%200.268629%208.6%200.6%208.6H9C9.33137%208.6%209.6%208.86863%209.6%209.2C9.6%209.53137%209.33137%209.8%209%209.8H0.6C0.268629%209.8%200%209.53137%200%209.2Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.2001%201.8C3.77005%201.8%201.8001%203.76995%201.8001%206.2C1.8001%208.63005%203.77005%2010.6%206.2001%2010.6C7.41529%2010.6%208.51447%2010.1082%209.31137%209.31127C10.1083%208.51437%2010.6001%207.41519%2010.6001%206.2C10.6001%203.76995%208.63015%201.8%206.2001%201.8ZM0.600098%206.2C0.600098%203.10721%203.1073%200.6%206.2001%200.6C9.29289%200.6%2011.8001%203.10721%2011.8001%206.2C11.8001%207.53002%2011.3358%208.75245%2010.5615%209.71285L13.2244%2012.3757C13.4587%2012.6101%2013.4587%2012.9899%2013.2244%2013.2243C12.99%2013.4586%2012.6101%2013.4586%2012.3758%2013.2243L9.71295%2010.5614C8.75255%2011.3358%207.53012%2011.8%206.2001%2011.8C3.1073%2011.8%200.600098%209.29279%200.600098%206.2Z%22%20fill%3D%22%233C3C4399%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22%230082ff%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.4194%207.39998C10.7956%207.39998%2011.081%207.05374%2010.9292%206.70955C10.433%205.58495%209.30821%204.79999%208.00005%204.79999C7.88306%204.79999%207.76754%204.80627%207.6538%204.8185C7.27948%204.85878%207.12204%205.27922%207.31028%205.60526L8.17326%207.09998C8.28044%207.28562%208.47851%207.39998%208.69287%207.39998L10.4194%207.39998Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M6.27163%206.20627C6.08334%205.88013%205.64026%205.80621%205.4176%206.10992C5.02933%206.63952%204.80005%207.29298%204.80005%207.99999C4.80005%208.70702%205.02935%209.36049%205.41763%209.8901C5.6403%2010.1938%206.08337%2010.1199%206.27166%209.79375L7.13406%208.30003C7.24124%208.11439%207.24124%207.88567%207.13406%207.70003L6.27163%206.20627Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20d%3D%22M7.31033%2010.3947C7.12209%2010.7208%207.27954%2011.1412%207.65386%2011.1815C7.76758%2011.1937%207.88308%2011.2%208.00005%2011.2C9.30822%2011.2%2010.433%2010.415%2010.9292%209.29041C11.0811%208.94622%2010.7956%208.59998%2010.4194%208.59998H8.69293C8.47857%208.59998%208.2805%208.71434%208.17332%208.89998L7.31033%2010.3947Z%22%20fill%3D%22%230082ff%22%2F%3E%3Cpath%20stroke%3D%22%230082ff%22%20fill%3D%22%230082ff%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.3037%203.47778L11.8196%202.58421C11.9853%202.29723%2011.8869%201.93028%2011.6%201.76459C11.313%201.59891%2010.946%201.69723%2010.7803%201.98421L10.2649%202.87691C9.74658%202.6474%209.18685%202.49426%208.60005%202.43175V1.39999C8.60005%201.06862%208.33142%200.799988%208.00005%200.799988C7.66868%200.799988%207.40005%201.06862%207.40005%201.39999V2.43175C6.81324%202.49426%206.25351%202.6474%205.73514%202.87691L5.21975%201.98423C5.05406%201.69725%204.68711%201.59893%204.40013%201.76461C4.11316%201.9303%204.01483%202.29725%204.18052%202.58423L4.69641%203.47779C4.23032%203.81887%203.81892%204.23026%203.47785%204.69636L2.58412%204.18036C2.29714%204.01468%201.93019%204.113%201.7645%204.39998C1.59882%204.68695%201.69714%205.05391%201.98412%205.21959L2.87697%205.73508C2.64746%206.25346%202.49432%206.81318%202.43181%207.39999H1.40005C1.06868%207.39999%200.800049%207.66862%200.800049%207.99999C0.800049%208.33136%201.06868%208.59999%201.40005%208.59999H2.43181C2.49432%209.18679%202.64746%209.74651%202.87696%2010.2649L1.98412%2010.7804C1.69714%2010.946%201.59882%2011.313%201.7645%2011.6C1.93019%2011.887%202.29714%2011.9853%202.58412%2011.8196L3.47783%2011.3036C3.81889%2011.7697%204.23025%2012.181%204.6963%2012.5221L4.18035%2013.4157C4.01466%2013.7027%204.11299%2014.0697%204.39996%2014.2354C4.68694%2014.401%205.05389%2014.3027%205.21958%2014.0157L5.73501%2013.123C6.25342%2013.3525%206.81319%2013.5057%207.40005%2013.5682V14.6C7.40005%2014.9314%207.66868%2015.2%208.00005%2015.2C8.33142%2015.2%208.60005%2014.9314%208.60005%2014.6V13.5682C9.1869%2013.5057%209.74667%2013.3525%2010.2651%2013.123L10.7805%2014.0158C10.9462%2014.3027%2011.3132%2014.4011%2011.6001%2014.2354C11.8871%2014.0697%2011.9854%2013.7027%2011.8197%2013.4158L11.3038%2012.5221C11.7698%2012.1811%2012.1812%2011.7697%2012.5222%2011.3037L13.4159%2011.8196C13.7028%2011.9853%2014.0698%2011.887%2014.2355%2011.6C14.4012%2011.313%2014.3028%2010.946%2014.0159%2010.7804L13.1231%2010.2649C13.3526%209.74655%2013.5058%209.18681%2013.5683%208.59999H14.6C14.9314%208.59999%2015.2%208.33136%2015.2%207.99999C15.2%207.66862%2014.9314%207.39999%2014.6%207.39999H13.5683C13.5058%206.81316%2013.3526%206.25341%2013.1231%205.73502L14.0159%205.21959C14.3028%205.05391%2014.4012%204.68695%2014.2355%204.39998C14.0698%204.113%2013.7028%204.01468%2013.4159%204.18036L12.5222%204.6963C12.1811%204.23023%2011.7698%203.81885%2011.3037%203.47778ZM8.00005%203.59999C7.20901%203.59999%206.46672%203.80874%205.82527%204.17415C5.81706%204.17944%205.80868%204.18455%205.80013%204.18948C5.79187%204.19425%205.78355%204.1988%205.77516%204.20314C5.12539%204.58471%204.58225%205.12831%204.20124%205.77844C4.19744%205.78567%204.19349%205.79285%204.18937%205.79998C4.18509%205.80739%204.18067%205.81469%204.17613%205.82185C3.80953%206.46407%203.60005%207.20756%203.60005%207.99999C3.60005%208.79233%203.80948%209.53575%204.17601%2010.1779C4.1806%2010.1851%204.18505%2010.1925%204.18937%2010.2C4.19353%2010.2072%204.19752%2010.2144%204.20134%2010.2217C4.5826%2010.8722%205.12617%2011.416%205.77644%2011.7976C5.78434%2011.8017%205.79218%2011.806%205.79996%2011.8105C5.80805%2011.8152%205.81598%2011.82%205.82377%2011.825C6.46556%2012.1909%207.20839%2012.4%208.00005%2012.4C8.79182%2012.4%209.53475%2012.1909%2010.1766%2011.8248C10.1843%2011.8199%2010.1921%2011.8151%2010.2001%2011.8105C10.2078%2011.8061%2010.2156%2011.8018%2010.2234%2011.7977C10.8731%2011.4165%2011.4163%2010.8734%2011.7976%2010.2237C11.8017%2010.2157%2011.8061%2010.2078%2011.8106%2010.2C11.8153%2010.1918%2011.8202%2010.1838%2011.8252%2010.176C12.191%209.53427%2012.4%208.79154%2012.4%207.99999C12.4%207.20836%2012.191%206.46555%2011.8251%205.82378C11.8201%205.81599%2011.8153%205.80806%2011.8106%205.79998C11.8061%205.79219%2011.8018%205.78434%2011.7977%205.77644C11.4167%205.12711%2010.8739%204.58418%2010.2247%204.20299C10.2164%204.19869%2010.2081%204.19419%2010.2%204.18947C10.1915%204.18458%2010.1832%204.17952%2010.1751%204.17429C9.53356%203.80879%208.79119%203.59999%208.00005%203.59999Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2212%22%20viewBox%3D%220%200%2016%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.791992%202.19199C0.791992%201.19788%201.60589%200.400002%202.6%200.400002H13.4C14.3941%200.400002%2015.2%201.20589%2015.2%202.2L15.208%209.8C15.208%2010.7941%2014.4021%2011.6%2013.408%2011.6C10.3413%2011.6%205.67467%2011.6%202.60801%2011.6C1.6139%2011.6%200.8%2010.7861%200.8%209.79199L0.791992%202.19199ZM7.4%209.80801V9.30801C7.4%208.97664%207.13137%208.70801%206.8%208.70801H2.6C2.26863%208.70801%202%208.97664%202%209.30801V9.8C2%2010.1314%202.26863%2010.4%202.6%2010.4H6.89827C7.18289%2010.3531%207.4%2010.1059%207.4%209.80801ZM8.6%209.80801C8.6%2010.1059%208.81711%2010.3531%209.10173%2010.4H13.4C13.7314%2010.4%2014%2010.1314%2014%209.8V9.30801C14%208.97664%2013.7314%208.70801%2013.4%208.70801H9.2C8.86863%208.70801%208.6%208.97664%208.6%209.30801V9.80801ZM14%206.90401V6.40401C14%206.07264%2013.7314%205.80401%2013.4%205.80401H9.2C8.86863%205.80401%208.6%206.07264%208.6%206.40401V6.90401C8.6%207.23538%208.86863%207.50401%209.2%207.50401H13.4C13.7314%207.50401%2014%207.23538%2014%206.90401ZM7.4%206.90401V6.40401C7.4%206.07264%207.13137%205.80401%206.8%205.80401H2.6C2.26863%205.80401%202%206.07264%202%206.40401V6.90401C2%207.23538%202.26863%207.50401%202.6%207.50401H6.8C7.13137%207.50401%207.4%207.23538%207.4%206.90401ZM14%204V3.5C14%203.16863%2013.7314%202.9%2013.4%202.9H9.2C8.86863%202.9%208.6%203.16863%208.6%203.5V4C8.6%204.33137%208.86863%204.6%209.2%204.6H13.4C13.7314%204.6%2014%204.33137%2014%204ZM7.4%204V3.5C7.4%203.16863%207.13137%202.9%206.8%202.9H2.6C2.26863%202.9%202%203.16863%202%203.5V4C2%204.33137%202.26863%204.6%202.6%204.6H6.8C7.13137%204.6%207.4%204.33137%207.4%204Z%22%20fill%3D%22%233C3C432E%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2212%22%20viewBox%3D%220%200%2014%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.25%2011H12.75M1.25%2011C0.835786%2011%200.5%2010.6642%200.5%2010.25M1.25%2011H6.25C6.66421%2011%207%2010.6642%207%2010.25M0.5%2010.25V1.75M0.5%2010.25V9.25C0.5%208.83579%200.835787%208.5%201.25%208.5M13.5%2010.25V1.75M13.5%2010.25C13.5%2010.6642%2013.1642%2011%2012.75%2011M13.5%2010.25V9.25C13.5%208.83579%2013.1642%208.5%2012.75%208.5M12.75%2011H7.75C7.33579%2011%207%2010.6642%207%2010.25M13.5%201.75C13.5%201.33579%2013.1642%201%2012.75%201H1.25C0.835786%201%200.5%201.33579%200.5%201.75M13.5%201.75V2.75C13.5%203.16421%2013.1642%203.5%2012.75%203.5M0.5%201.75V2.75C0.5%203.16421%200.835786%203.5%201.25%203.5M1.25%203.5H12.75M1.25%203.5H6.25C6.66421%203.5%207%203.83579%207%204.25M1.25%203.5C0.835786%203.5%200.5%203.83579%200.5%204.25V5.25C0.5%205.66421%200.835787%206%201.25%206M12.75%203.5H7.75C7.33579%203.5%207%203.83579%207%204.25M12.75%203.5C13.1642%203.5%2013.5%203.83579%2013.5%204.25V5.25C13.5%205.66421%2013.1642%206%2012.75%206M1.25%206H6.25M1.25%206C0.835787%206%200.5%206.33579%200.5%206.75V7.75C0.5%208.16421%200.835787%208.5%201.25%208.5M7%205.25V4.25M7%205.25C7%205.66421%206.66421%206%206.25%206M7%205.25C7%205.66421%207.33579%206%207.75%206M6.25%206C6.66421%206%207%206.33579%207%206.75M7.75%206H12.75M7.75%206C7.33579%206%207%206.33579%207%206.75M12.75%206C13.1642%206%2013.5%206.33579%2013.5%206.75V7.75C13.5%208.16421%2013.1642%208.5%2012.75%208.5M1.25%208.5H6.25M7%207.75V6.75M7%207.75C7%208.16421%206.66421%208.5%206.25%208.5M7%207.75C7%208.16421%207.33579%208.5%207.75%208.5M6.25%208.5C6.66421%208.5%207%208.83579%207%209.25M7%2010.25V9.25M7%209.25C7%208.83579%207.33579%208.5%207.75%208.5M7.75%208.5H12.75%22%20stroke%3D%22%233C3C4399%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.76331%205.15385L7.5503%2010.6923M4.60355%2010.6923L4.39053%205.15385M10.5247%203.17881C10.7352%203.21059%2010.9449%203.2446%2011.1538%203.28079M10.5247%203.17881L9.86757%2011.7216C9.81208%2012.443%209.21055%2013%208.48703%2013H3.66681C2.9433%2013%202.34177%2012.443%202.28628%2011.7216L1.62914%203.17881M10.5247%203.17881C9.81921%203.07227%209.10554%202.99068%208.38461%202.93497M1%203.28079C1.20897%203.2446%201.41869%203.21059%201.62914%203.17881M1.62914%203.17881C2.33463%203.07227%203.0483%202.99068%203.76923%202.93497M8.38461%202.93497V2.37119C8.38461%201.64543%207.82421%201.03953%207.09882%201.01632C6.75952%201.00547%206.41886%201%206.07692%201C5.73498%201%205.39432%201.00547%205.05502%201.01632C4.32963%201.03953%203.76923%201.64543%203.76923%202.37119V2.93497M8.38461%202.93497C7.62311%202.87612%206.85352%202.84615%206.07692%202.84615C5.30033%202.84615%204.53073%202.87612%203.76923%202.93497%22%20stroke%3D%22%230082ff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.5%203.05796C8.5%202.82119%208.62403%202.60718%208.76747%202.4188C8.91473%202.2254%209%201.996%209%201.75C9%201.05964%208.32843%200.5%207.5%200.5C6.67157%200.5%206%201.05964%206%201.75C6%201.996%206.08527%202.2254%206.23253%202.4188C6.37597%202.60718%206.5%202.82119%206.5%203.05796V3.05796C6.5%203.29881%206.30277%203.49331%206.06202%203.48638C5.12626%203.45942%204.20056%203.3923%203.2866%203.28666C3.41084%204.36184%203.48179%205.45325%203.49674%206.55818C3.50004%206.80215%203.30195%206.99997%203.05796%207V7C2.82119%207%202.60718%206.87597%202.4188%206.73253C2.2254%206.58527%201.996%206.5%201.75%206.5C1.05964%206.5%200.5%207.17157%200.5%208C0.5%208.82843%201.05964%209.5%201.75%209.5C1.996%209.5%202.2254%209.41473%202.4188%209.26747C2.60718%209.12403%202.82119%209%203.05796%209V9C3.26409%209%203.42771%209.17385%203.4126%209.37942C3.32871%2010.5208%203.18495%2011.6455%202.98445%2012.7504C3.99638%2012.8771%205.02301%2012.9566%206.06204%2012.9865C6.30283%2012.9934%206.50008%2012.7989%206.50008%2012.558V12.558C6.50008%2012.3212%206.37604%2012.1072%206.23261%2011.9188C6.08535%2011.7254%206.00008%2011.496%206.00008%2011.25C6.00008%2010.5597%206.67165%2010%207.50008%2010C8.3285%2010%209.00008%2010.5597%209.00008%2011.25C9.00008%2011.496%208.9148%2011.7254%208.76755%2011.9188C8.62411%2012.1072%208.50008%2012.3212%208.50008%2012.558V12.558C8.50008%2012.7799%208.68543%2012.9571%208.90697%2012.9441C10.1328%2012.8721%2011.3401%2012.731%2012.5251%2012.5248C12.7047%2011.4926%2012.8349%2010.4435%2012.9131%209.37989C12.9282%209.17408%2012.7644%209.00003%2012.558%209.00003V9.00003C12.3213%209.00003%2012.1073%209.12406%2011.9189%209.2675C11.7255%209.41476%2011.4961%209.50003%2011.2501%209.50003C10.5597%209.50003%2010.0001%208.82846%2010.0001%208.00003C10.0001%207.1716%2010.5597%206.50003%2011.2501%206.50003C11.4961%206.50003%2011.7255%206.5853%2011.9189%206.73256C12.1073%206.876%2012.3213%207.00003%2012.558%207.00003V7.00003C12.8023%207.00003%2013.0006%206.80203%2012.9972%206.55783C12.9809%205.34942%2012.8975%204.15715%2012.7508%202.98465C11.4935%203.21277%2010.2107%203.36743%208.90685%203.44404C8.68533%203.45705%208.5%203.27986%208.5%203.05796V3.05796Z%22%20stroke%3D%22%230082FF%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.5%207C0.5%203.41015%203.41015%200.5%207%200.5C10.5899%200.5%2013.5%203.41015%2013.5%207C13.5%2010.5899%2010.5899%2013.5%207%2013.5C3.41015%2013.5%200.5%2010.5899%200.5%207ZM8.08511%204.38885C7.49258%203.87038%206.50773%203.87038%205.91519%204.38885C5.70737%204.57069%205.39149%204.54963%205.20965%204.34182C5.02781%204.134%205.04887%203.81812%205.25669%203.63627C6.22625%202.78791%207.77406%202.78791%208.74362%203.63627C9.75233%204.5189%209.75233%205.9811%208.74362%206.86373C8.57251%207.01344%208.38406%207.13608%208.18537%207.23224C7.73452%207.45043%207.50015%207.74812%207.50015%208V8.5C7.50015%208.77614%207.27629%209%207.00015%209C6.72401%209%206.50015%208.77614%206.50015%208.5V8C6.50015%207.14731%207.20634%206.5951%207.74974%206.33211C7.8715%206.27318%207.98433%206.19933%208.08511%206.11115C8.6385%205.62694%208.6385%204.87306%208.08511%204.38885ZM7%2011C7.27614%2011%207.5%2010.7761%207.5%2010.5C7.5%2010.2239%207.27614%2010%207%2010C6.72386%2010%206.5%2010.2239%206.5%2010.5C6.5%2010.7761%206.72386%2011%207%2011Z%22%20fill%3D%22%230082FF%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.600098%207.00001C0.600098%203.46538%203.46548%200.600006%207.0001%200.600006C10.5347%200.600006%2013.4001%203.46538%2013.4001%207.00001C13.4001%2010.5346%2010.5347%2013.4%207.0001%2013.4C3.46548%2013.4%200.600098%2010.5346%200.600098%207.00001ZM5.71258%204.67338C5.90523%204.5682%206.13993%204.57661%206.32455%204.6953L9.12455%206.4953C9.29629%206.6057%209.4001%206.79585%209.4001%207.00001C9.4001%207.20416%209.29629%207.39431%209.12455%207.50471L6.32455%209.30471C6.13993%209.4234%205.90523%209.43181%205.71258%209.32663C5.51994%209.22146%205.4001%209.01949%205.4001%208.80001V5.20001C5.4001%204.98052%205.51994%204.77855%205.71258%204.67338Z%22%20fill%3D%22%230082FF%22%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2214%22%20viewBox%3D%220%200%2012%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11%208.5V6.75C11%205.50736%209.99264%204.5%208.75%204.5H7.75C7.33579%204.5%207%204.16421%207%203.75V2.75C7%201.50736%205.99264%200.5%204.75%200.5H3.5M5%200.5H1.75C1.33579%200.5%201%200.835786%201%201.25V12.75C1%2013.1642%201.33579%2013.5%201.75%2013.5H10.25C10.6642%2013.5%2011%2013.1642%2011%2012.75V6.5C11%203.18629%208.31371%200.5%205%200.5Z%22%20stroke%3D%22%230082FF%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as VideoIcon } from './video.svg';\r\n\r\nexport interface VideoProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Video` icon component\r\n */\r\nexport const Video: React.FC<VideoProps> = ({ boxSize }) => {\r\n return <VideoIcon boxSize={boxSize} />;\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22%23FFB300%22%2F%3E%3Crect%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22url%28%23paint0_linear_2027_23020%29%22%20fill-opacity%3D%220.16%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.8421%209.59139C12.412%209.28926%2012.8002%208.68997%2012.8002%208.00001C12.8002%207.31005%2012.412%206.71077%2011.8421%206.40864C12.0315%205.79203%2011.8822%205.09376%2011.3943%204.60589C10.9064%204.11801%2010.2082%203.96874%209.59156%204.15809C9.28944%203.5882%208.69015%203.20001%208.0002%203.20001C7.31024%203.20001%206.71094%203.58821%206.40882%204.1581C5.79221%203.96877%205.09396%204.11803%204.60608%204.60591C4.11821%205.09378%203.96894%205.79203%204.15828%206.40864C3.58839%206.71077%203.2002%207.31006%203.2002%208.00001C3.2002%208.68997%203.58839%209.28926%204.15828%209.59138C3.96894%2010.208%204.1182%2010.9063%204.60608%2011.3941C5.09396%2011.882%205.79221%2012.0313%206.40882%2011.8419C6.71095%2012.4118%207.31024%2012.8%208.0002%2012.8C8.69016%2012.8%209.28945%2012.4118%209.59157%2011.8419C10.2082%2012.0313%2010.9064%2011.882%2011.3943%2011.3941C11.8822%2010.9062%2012.0314%2010.208%2011.8421%209.59139ZM10.3141%206.91469C10.4603%206.7137%2010.4159%206.43226%2010.2149%206.28608C10.0139%206.1399%209.73244%206.18434%209.58626%206.38534L7.49601%209.25943L6.36839%208.13181C6.19266%207.95608%205.90773%207.95608%205.732%208.13181C5.55626%208.30755%205.55626%208.59247%205.732%208.76821L7.232%2010.2682C7.32506%2010.3613%207.45419%2010.4089%207.5854%2010.3986C7.7166%2010.3883%207.83672%2010.3211%207.91413%2010.2147L10.3141%206.91469Z%22%20fill%3D%22white%22%2F%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22paint0_linear_2027_23020%22%20x1%3D%228%22%20y1%3D%220%22%20x2%3D%228%22%20y2%3D%2216%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { ReactComponent as PageIcon } from './page.svg';\r\n\r\nexport interface PageProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Page` icon component\r\n */\r\nexport const Page: React.FC<PageProps> = ({ boxSize }) => {\r\n return <PageIcon boxSize={boxSize} />;\r\n};\r\n","import React, { PropsWithChildren } from 'react';\r\nimport { Box } from '@chakra-ui/react';\r\n\r\nexport interface BorderBox extends PropsWithChildren {\r\n boxShadow: string;\r\n borderRadius?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `BorderedBox` component\r\n */\r\nexport const BorderedBox: React.FC<BorderBox> = ({\r\n children,\r\n boxShadow,\r\n borderRadius = 'none',\r\n}) => {\r\n return (\r\n <Box\r\n boxShadow={boxShadow}\r\n borderRadius={borderRadius}\r\n bg=\"white\"\r\n mx=\"auto\"\r\n width=\"100%\"\r\n height=\"100%\"\r\n display=\"flex\"\r\n >\r\n {children}\r\n </Box>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Flex } from '@chakra-ui/react';\r\nimport colors from '../../../../theme/foundations/colors';\r\n\r\nexport interface NavigationMenuHeaderProps {\r\n label: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `NavigationMenuHeader` component\r\n */\r\n\r\nexport const NavigationMenuHeader: React.FC<NavigationMenuHeaderProps> = ({\r\n label,\r\n}) => {\r\n return (\r\n <Flex\r\n alignItems=\"center\"\r\n height=\"26px\"\r\n width=\"204px\"\r\n fontSize=\"12px\"\r\n color={colors.label.secondary.light}\r\n >\r\n {label}\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Box, Flex, Link } from '@chakra-ui/react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport colors from '../../../../theme/foundations/colors';\r\n\r\nexport interface NavigationMenuItemProps {\r\n leftIcon: JSX.Element;\r\n label: string;\r\n to?: string;\r\n href?: string;\r\n isSelected: boolean;\r\n onClick: () => void;\r\n rightIcon?: JSX.Element;\r\n isExternal?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `NavigationMenuItem` component\r\n */\r\nexport const NavigationMenuItem: React.FC<NavigationMenuItemProps> = ({\r\n label,\r\n leftIcon,\r\n href,\r\n to,\r\n rightIcon,\r\n isExternal,\r\n isSelected,\r\n onClick,\r\n}) => {\r\n let additionalProps = {};\r\n\r\n let reactRouterLinkProps = {};\r\n\r\n if (to) {\r\n reactRouterLinkProps = {\r\n to,\r\n as: RouterLink,\r\n };\r\n }\r\n\r\n if (isExternal) {\r\n additionalProps = {\r\n ...additionalProps,\r\n referrerPolicy: 'no-referrer',\r\n target: '_blank',\r\n href,\r\n isExternal: true,\r\n };\r\n }\r\n\r\n return (\r\n <Link\r\n {...reactRouterLinkProps}\r\n {...additionalProps}\r\n onClick={onClick}\r\n display=\"flex\"\r\n alignItems=\"center\"\r\n justifyContent=\"space-between\"\r\n py=\"5px\"\r\n px=\"4px\"\r\n height=\"26px\"\r\n width=\"204px\"\r\n color={colors.label.primary}\r\n bg={isSelected ? colors.fill.light.quaternary : 'transparent'}\r\n borderRadius=\"4px\"\r\n fontSize=\"13px\"\r\n textDecoration=\"none\"\r\n _hover={{ textDecoration: 'none' }}\r\n >\r\n <Flex alignItems=\"center\">\r\n <Box mr=\"4px\">{leftIcon}</Box> {label}\r\n </Flex>\r\n {rightIcon}\r\n </Link>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Flex, IconButton, Spinner } from '@chakra-ui/react';\r\nimport { HiOutlineRefresh } from 'react-icons/hi';\r\nimport colors from '../../../../theme/foundations/colors';\r\nimport typography from '../../../../theme/foundations/typography';\r\n\r\ninterface TableLoadingRowsProps {\r\n isLoading: boolean;\r\n onLoadMore: () => void;\r\n}\r\n\r\n/**\r\n * A loading spinner rendered after the table to indicate more rows are being loaded.\r\n */\r\nexport const TableLoadingRows: React.FC<TableLoadingRowsProps> = ({\r\n isLoading,\r\n onLoadMore,\r\n}) => {\r\n return (\r\n <Flex\r\n width=\"full\"\r\n direction=\"column\"\r\n justifyContent=\"center\"\r\n alignItems=\"center\"\r\n height={20}\r\n borderTopColor={colors.fill.light.quaternary}\r\n >\r\n {isLoading ? (\r\n <Spinner size=\"lg\" color={colors.fill.action} />\r\n ) : (\r\n <IconButton\r\n aria-label=\"Fetch more rows\"\r\n icon={<HiOutlineRefresh />}\r\n fontSize={typography.fontSizes['3xl']}\r\n bg=\"transparent\"\r\n shadow=\"none\"\r\n color={colors.fill.action}\r\n type=\"button\"\r\n variant=\"outline\"\r\n onClick={onLoadMore}\r\n />\r\n )}\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Table as ChakraTable, Tbody, Td, Tr } from '@chakra-ui/react';\r\n\r\n/**\r\n * A React component utilized to render the `EmptyTable` component\r\n */\r\nexport const EmptyTable: React.FC = () => {\r\n const getOpacity = (index: number) => {\r\n switch (index) {\r\n case 1:\r\n return 0.7;\r\n case 3:\r\n return 0.6;\r\n case 5:\r\n return 0.5;\r\n case 7:\r\n return 0.4;\r\n case 9:\r\n return 0.3;\r\n case 11:\r\n return 0.2;\r\n case 13:\r\n return 0.1;\r\n default:\r\n return 1;\r\n }\r\n };\r\n\r\n return (\r\n <ChakraTable\r\n variant=\"unstyled\"\r\n width=\"100%\"\r\n style={{\r\n borderCollapse: 'separate',\r\n borderSpacing: '0px',\r\n }}\r\n >\r\n <Tbody>\r\n {Array.from({ length: 14 }, (_, i) => i + 1).map(i => (\r\n <Tr key={i}>\r\n <Td height=\"26px\" opacity={getOpacity(i)}></Td>\r\n </Tr>\r\n ))}\r\n </Tbody>\r\n </ChakraTable>\r\n );\r\n};\r\n","import {\r\n createBreakpoints,\r\n BaseBreakpointConfig,\r\n} from '@chakra-ui/theme-tools';\r\n\r\n/**\r\n * Breakpoints for responsive design\r\n */\r\nconst breakpointValues: BaseBreakpointConfig = {\r\n sm: '30em',\r\n md: '48em',\r\n lg: '62em',\r\n xl: '80em',\r\n};\r\n\r\nconst breakpoints = createBreakpoints(breakpointValues);\r\n\r\nexport default breakpoints;\r\n","import colors from './colors';\r\n\r\nconst shadows = {\r\n xs: '0 0 0 1px rgba(0, 0, 0, 0.05)',\r\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\r\n base: '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)',\r\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\r\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\r\n xl:\r\n '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\r\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\r\n insetOutline: `inset 0 0 0 2px ${colors.fill.action}`,\r\n outline: `0 0 0 2px ${colors.fill.action}`,\r\n outlineDanger600: `0 0 0 2px ${colors.fill.error}`,\r\n inner: 'inset 0 2px 4px 0 rgba(0,0,0,0.06)',\r\n none: 'none',\r\n 'dark-lg':\r\n 'rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px',\r\n};\r\n\r\nexport type Shadows = typeof shadows;\r\n\r\nexport default shadows;\r\n","import colors from '../foundations/colors';\r\n\r\nconst parts = ['container', 'description', 'icon'];\r\n\r\nconst baseStyle = {\r\n container: {\r\n px: '8px',\r\n py: '8px',\r\n },\r\n\r\n description: {\r\n width: '100%',\r\n fontSize: '13px',\r\n textAlign: 'left',\r\n color: colors.label.primary.light,\r\n lineHeight: '16px',\r\n },\r\n};\r\n\r\nfunction variantPositive() {\r\n return {\r\n container: { bg: colors.fill.success },\r\n };\r\n}\r\n\r\nfunction variantWarning() {\r\n return {\r\n container: { bg: colors.fill.warning },\r\n };\r\n}\r\n\r\nfunction variantError() {\r\n return {\r\n container: { bg: colors.fill.error },\r\n };\r\n}\r\n\r\nfunction variantNeutral() {\r\n return {\r\n container: { bg: colors.fill.light.tertiary },\r\n };\r\n}\r\n\r\nconst variants = {\r\n positive: variantPositive,\r\n warning: variantWarning,\r\n error: variantError,\r\n neutral: variantNeutral,\r\n};\r\n\r\nconst defaultProps = {\r\n variant: 'positive',\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { getColor, mode, transparentize } from '@chakra-ui/theme-tools';\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\ntype Dict = Record<string, any>;\r\n\r\nconst baseStyle = {\r\n px: 1,\r\n textTransform: 'uppercase',\r\n fontSize: 'xs',\r\n borderRadius: 'sm',\r\n fontWeight: 'bold',\r\n};\r\n\r\nfunction variantSolid(props: Dict) {\r\n const { colorScheme: c, theme } = props;\r\n const dark = transparentize(`${c}.500`, 0.6)(theme);\r\n return {\r\n bg: mode(`${c}.500`, dark)(props),\r\n color: mode(`white`, `whiteAlpha.800`)(props),\r\n };\r\n}\r\n\r\nfunction variantSubtle(props: Dict) {\r\n const { colorScheme: c, theme } = props;\r\n const darkBg = transparentize(`${c}.200`, 0.16)(theme);\r\n return {\r\n bg: mode(`${c}.100`, darkBg)(props),\r\n color: mode(`${c}.800`, `${c}.200`)(props),\r\n };\r\n}\r\n\r\nfunction variantOutline(props: Dict) {\r\n const { colorScheme: c, theme } = props;\r\n const darkColor = transparentize(`${c}.200`, 0.8)(theme);\r\n const lightColor = getColor(theme, `${c}.500`);\r\n const color = mode(lightColor, darkColor)(props);\r\n\r\n return {\r\n color,\r\n boxShadow: `inset 0 0 0px 1px ${color}`,\r\n };\r\n}\r\n\r\nconst variants = {\r\n solid: variantSolid,\r\n subtle: variantSubtle,\r\n outline: variantOutline,\r\n};\r\n\r\nconst defaultProps = {\r\n variant: 'subtle',\r\n colorScheme: 'gray',\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { defineStyle } from '@chakra-ui/system';\r\nimport colors from '../foundations/colors';\r\n\r\nconst baseStyle = defineStyle({\r\n borderRadius: '4px',\r\n fontSize: '13px',\r\n fontWeight: 400,\r\n bg: colors.fill.action,\r\n color: colors.label.primary.dark,\r\n h: '26px',\r\n border: 'none',\r\n px: '8px',\r\n py: '4px',\r\n bgGradient: 'linear-gradient(#FFFFFF29, #FFFFFF00)',\r\n shadow: '0.5px 0.5px 1px 1px #0000001A',\r\n _disabled: {\r\n backgroundColor: 'gray.100',\r\n borderColor: 'gray.100',\r\n color: 'gray.500',\r\n pointerEvents: 'none',\r\n },\r\n _hover: {\r\n bg: colors.fill.action,\r\n },\r\n _active: {\r\n color: colors.label.primary.dark,\r\n bg: colors.fill.action,\r\n bgGradient: colors.fill.light.quaternary,\r\n },\r\n _focus: {\r\n outline: `2px solid ${colors.border.focus}`,\r\n outlineOffset: '0px',\r\n },\r\n});\r\n\r\nconst variantPrimary = () => {\r\n return { ...baseStyle };\r\n};\r\n\r\nconst variantSecondary = () => {\r\n return {\r\n ...baseStyle,\r\n color: colors.black,\r\n bg: colors.label.primary.dark,\r\n _hover: {\r\n bg: colors.label.primary.dark,\r\n },\r\n _active: {\r\n color: colors.black,\r\n bg: colors.label.primary.dark,\r\n bgGradient: colors.fill.light.quaternary,\r\n },\r\n _focus: {\r\n bg: colors.label.primary.dark,\r\n },\r\n };\r\n};\r\n\r\nconst variantTertiary = () => {\r\n return {\r\n ...baseStyle,\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.quaternary.dark,\r\n _hover: {\r\n bg: colors.blur.quaternary.dark,\r\n },\r\n _active: {\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.tertiary.dark,\r\n },\r\n _focus: {\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.quaternary.dark,\r\n },\r\n _disabled: {\r\n backgroundColor: colors.blur.quaternary.dark,\r\n color: colors.blur.tertiary.dark,\r\n },\r\n };\r\n};\r\n\r\nconst variantPrimaryFlat = () => {\r\n return {\r\n ...baseStyle,\r\n bg: colors.fill.action,\r\n bgGradient: null,\r\n minWidth: '120px',\r\n padding: '10px 16px',\r\n borderRadius: '8px',\r\n border: '0.5px',\r\n gap: '8px',\r\n height: '44px',\r\n // margin: '8px',\r\n fontSize: '17px',\r\n fontWeight: '500',\r\n lineHeight: '24px',\r\n letterSpacing: '0.02em',\r\n textAlign: 'center',\r\n boxShadow: '0px 0.5px 1px 0.5px #0000001A',\r\n };\r\n};\r\n\r\nconst variantSecondaryFlat = () => {\r\n return {\r\n ...variantPrimaryFlat(),\r\n fontWeight: '400',\r\n color: colors.black,\r\n bg: colors.label.primary.dark,\r\n _hover: {\r\n bg: colors.label.primary.dark,\r\n },\r\n _active: {\r\n color: colors.black,\r\n bg: colors.label.primary.dark,\r\n bgGradient: colors.fill.light.quaternary,\r\n },\r\n _focus: {\r\n bg: colors.label.primary.dark,\r\n },\r\n };\r\n};\r\nconst variantTertiaryFlat = () => {\r\n return {\r\n ...variantPrimaryFlat(),\r\n fontWeight: '400',\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.quaternary.dark,\r\n _hover: {\r\n bg: colors.blur.quaternary.dark,\r\n },\r\n _active: {\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.tertiary.dark,\r\n },\r\n _focus: {\r\n color: colors.label.primary.dark,\r\n bg: colors.blur.quaternary.dark,\r\n },\r\n _disabled: {\r\n backgroundColor: colors.blur.quaternary.dark,\r\n color: colors.blur.tertiary.dark,\r\n },\r\n };\r\n};\r\n\r\nconst variants = {\r\n primary: variantPrimary(),\r\n secondary: variantSecondary(),\r\n tertiary: variantTertiary(),\r\n 'flat-primary': variantPrimaryFlat(),\r\n 'flat-secondary': variantSecondaryFlat(),\r\n 'flat-tertiary': variantTertiaryFlat(),\r\n};\r\n\r\nconst defaultProps = {\r\n variant: 'primary',\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { checkboxAnatomy } from '@chakra-ui/anatomy';\r\nimport { createMultiStyleConfigHelpers } from '@chakra-ui/react';\r\n\r\nconst {\r\n definePartsStyle,\r\n defineMultiStyleConfig,\r\n} = createMultiStyleConfigHelpers(checkboxAnatomy.keys);\r\n\r\nconst roundedCheckbox = definePartsStyle({\r\n control: {\r\n //borderRadius: 50,\r\n },\r\n label: {\r\n fontSize: '17px',\r\n fontWeight: 400,\r\n lineHeight: '20px',\r\n padding: '12px 16px 12px 0px',\r\n },\r\n height: '44px',\r\n});\r\n\r\nconst variants = {\r\n mobile: roundedCheckbox,\r\n};\r\n\r\nexport default defineMultiStyleConfig({\r\n variants,\r\n});\r\n","import Badge from './badge';\r\n\r\nconst { variants, defaultProps } = Badge;\r\n\r\nconst baseStyle = {\r\n fontFamily: 'mono',\r\n fontSize: 'sm',\r\n px: '0.2em',\r\n borderRadius: 'sm',\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import colors from '../foundations/colors';\r\n\r\nconst parts = ['requiredIndicator', 'helperText'];\r\n\r\nfunction baseStyleRequiredIndicator() {\r\n return {\r\n ml: 1,\r\n color: colors.label.error,\r\n };\r\n}\r\n\r\nfunction baseStyleHelperText() {\r\n return {\r\n // mt: 1,\r\n ml: 1,\r\n color: colors.label.secondary.light,\r\n fontSize: '11px',\r\n };\r\n}\r\n\r\nconst baseStyle = () => ({\r\n requiredIndicator: baseStyleRequiredIndicator(),\r\n helperText: baseStyleHelperText(),\r\n});\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n};\r\n","import colors from '../foundations/colors';\r\n\r\nconst parts = ['text', 'icon'];\r\n\r\nfunction baseStyleText() {\r\n return {\r\n color: colors.label.error,\r\n position: 'absolute',\r\n bottom: 0,\r\n // mt: 1,\r\n ml: 1,\r\n fontSize: '11px',\r\n };\r\n}\r\n\r\nfunction baseStyleIcon() {\r\n return {\r\n ml: 1,\r\n color: colors.label.error,\r\n };\r\n}\r\n\r\nconst baseStyle = () => ({\r\n text: baseStyleText(),\r\n icon: baseStyleIcon(),\r\n});\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n};\r\n","import colors from '../foundations/colors';\r\n\r\nconst baseStyle = {\r\n fontSize: '11px',\r\n fontWeight: 400,\r\n position: 'absolute',\r\n top: 0,\r\n display: 'flex',\r\n ml: 1,\r\n // mb: 1,\r\n color: colors.label.primary.light,\r\n opacity: 1,\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n};\r\n","import colors from '../foundations/colors';\r\n\r\nconst parts = ['field'];\r\n\r\nconst baseStyle = {\r\n field: {\r\n fontSize: '13px',\r\n h: '26px',\r\n '::placeholder': {\r\n color: colors.label.secondary.light,\r\n },\r\n py: '5px',\r\n px: '8px',\r\n border: '.5px solid',\r\n borderColor: colors.border.default,\r\n _disabled: {\r\n opacity: 1,\r\n cursor: 'not-allowed',\r\n bg: colors.fill.light.quaternary,\r\n color: colors.label.secondary.light,\r\n border: '1px solid',\r\n borderColor: '#9999991A',\r\n },\r\n _focus: {\r\n bg: '#ffffff',\r\n border: '2px solid',\r\n borderColor: colors.border.focus,\r\n },\r\n _placeholder: {\r\n color: colors.label.secondary.light,\r\n },\r\n },\r\n};\r\n\r\nconst mobileInputs = {\r\n ...baseStyle,\r\n field: {\r\n fontSize: '17px',\r\n py: '14px',\r\n px: '16px',\r\n cursor: 'pointer',\r\n lineHeight: '21px',\r\n fontWeight: 400,\r\n borderRadius: 0,\r\n height: '48px',\r\n padding: '12px 16px 12px 0px',\r\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\r\n borderColor: 'rgba(153, 153, 153, 0.1)',\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n },\r\n};\r\n\r\nconst variants = { default: baseStyle, mobile: mobileInputs };\r\n\r\nconst defaultProps = {\r\n variant: 'default',\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { getColor } from '@chakra-ui/theme-tools';\r\nimport colors from '../foundations/colors';\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\ntype Dict = Record<string, any>;\r\n\r\nconst baseStyle = {\r\n color: colors.fill.action,\r\n textDecoration: 'underline',\r\n transition: 'none',\r\n _hover: {\r\n color: 'orange.500',\r\n },\r\n};\r\n\r\nfunction variantSidebar() {\r\n return {\r\n display: 'flex',\r\n alignItems: 'center',\r\n // height: '56px',\r\n pl: 4,\r\n pr: 4,\r\n py: 2,\r\n color: 'gray.500',\r\n lineHeight: 1.5,\r\n outline: 'none',\r\n transition: 'none',\r\n textDecoration: 'none',\r\n _focus: {\r\n boxShadow: 'none',\r\n },\r\n _hover: {\r\n color: 'primary.500',\r\n textDecoration: 'none',\r\n },\r\n '&.active': {\r\n color: 'primary.500',\r\n fontWeight: 'semibold',\r\n },\r\n };\r\n}\r\n\r\n// This variant represent the same as the sidebar one above but when the route matches exactly\r\n// and not only for a child sub route match. I did it as a separate variant instead of a\r\n// prop to get around React complaining that the dom element was not recognized.\r\nfunction variantSidebarExact() {\r\n // props: Dict\r\n const base = variantSidebar();\r\n // const { theme } = props;\r\n // const primaryColor = getColor(theme, 'primary.500');\r\n\r\n return {\r\n ...base,\r\n '&.active': {\r\n // ...base['&.active'],\r\n // boxShadow: `inset 3px 0 0 0 ${primaryColor}`,\r\n },\r\n };\r\n}\r\n\r\nfunction variantSubNavigation(props: Dict) {\r\n const { theme } = props;\r\n const primaryColor = getColor(theme, 'primary.500');\r\n\r\n return {\r\n display: 'block',\r\n pl: 10,\r\n mb: 3,\r\n color: 'gray.900',\r\n lineHeight: 'shorter',\r\n fontSize: 'sm',\r\n outline: 'none',\r\n transition: 'none',\r\n textDecoration: 'none',\r\n _focus: {\r\n boxShadow: 'none',\r\n },\r\n _hover: {\r\n color: 'primary.500',\r\n textDecoration: 'none',\r\n },\r\n '&.active': {\r\n color: 'primary.500',\r\n boxShadow: `inset 3px 0 0 0 ${primaryColor}`,\r\n fontWeight: 'semibold',\r\n },\r\n };\r\n}\r\n\r\nfunction variantNavlink(props: Dict) {\r\n const { colorScheme: c, size } = props;\r\n\r\n return {\r\n color: 'gray.500',\r\n fontWeight: 'normal',\r\n textDecoration: 'none',\r\n fontSize: size || 'md',\r\n _hover: {\r\n color: `${c}.500`,\r\n textDecoration: 'none',\r\n },\r\n '&.active': {\r\n color: `${c}.500`,\r\n },\r\n };\r\n}\r\n\r\nconst variants = {\r\n sidebar: variantSidebar,\r\n sidebarExact: variantSidebarExact,\r\n subNavigation: variantSubNavigation,\r\n navlink: variantNavlink,\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n variants,\r\n};\r\n","import Input from './input';\r\n\r\nconst { defaultProps, variants } = Input;\r\n\r\nconst parts = ['field', 'icon'];\r\n\r\nfunction baseStyleField() {\r\n return {\r\n ...Input.baseStyle.field,\r\n appearance: 'none',\r\n paddingBottom: '1px',\r\n lineHeight: 'normal',\r\n bg: 'white',\r\n '> option': {\r\n // bg: mode('white', 'gray.700')(props),\r\n },\r\n };\r\n}\r\n\r\nconst baseStyleInput = {\r\n color: 'currentColor',\r\n fontSize: '1.25rem',\r\n _disabled: { opacity: 0.5 },\r\n};\r\n\r\nconst baseStyle = () => ({\r\n field: baseStyleField(),\r\n icon: baseStyleInput,\r\n});\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { mode, getColor } from '@chakra-ui/theme-tools';\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\ntype Dict = Record<string, any>;\r\n\r\nconst parts = ['track', 'thumb'];\r\n\r\nfunction baseStyleTrack(props: Dict) {\r\n const { colorScheme: c, theme } = props;\r\n\r\n return {\r\n borderRadius: 'full',\r\n p: '2px',\r\n transition: 'all 120ms',\r\n bg: mode('gray.300', 'whiteAlpha.400')(props),\r\n _focus: {\r\n boxShadow: `0 0 0 3px ${getColor(theme, 'gray.100')}`,\r\n },\r\n _disabled: {\r\n opacity: 0.4,\r\n cursor: 'not-allowed',\r\n },\r\n _checked: {\r\n bg: mode(`${c}.500`, `${c}.200`)(props),\r\n _focus: {\r\n boxShadow: `0 0 0 3px ${getColor(theme, `${c}.200`)}`,\r\n },\r\n },\r\n };\r\n}\r\n\r\nconst baseStyleThumb = {\r\n bg: 'white',\r\n transition: 'transform 250ms',\r\n borderRadius: 'full',\r\n transform: 'translateX(0)',\r\n};\r\n\r\nconst baseStyle = (props: Dict) => ({\r\n track: baseStyleTrack(props),\r\n thumb: baseStyleThumb,\r\n});\r\n\r\nconst sizes = {\r\n sm: {\r\n track: { w: '1.375rem', h: '0.75rem' },\r\n thumb: {\r\n w: '0.75rem',\r\n h: '0.75rem',\r\n _checked: {\r\n transform: 'translateX(0.625rem)',\r\n },\r\n },\r\n },\r\n\r\n md: {\r\n track: { w: '1.875rem', h: '1rem' },\r\n thumb: {\r\n w: '1rem',\r\n h: '1rem',\r\n _checked: {\r\n transform: 'translateX(0.875rem)',\r\n },\r\n },\r\n },\r\n\r\n lg: {\r\n track: { w: '2.875rem', h: '1.5rem' },\r\n thumb: {\r\n w: '1.5rem',\r\n h: '1.5rem',\r\n _checked: {\r\n transform: 'translateX(1.375rem)',\r\n },\r\n },\r\n },\r\n};\r\n\r\nconst defaultProps = {\r\n size: 'md',\r\n colorScheme: 'blue',\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n sizes,\r\n defaultProps,\r\n};\r\n","import colors from '../foundations/colors';\r\n\r\nconst parts = ['th', 'td', 'tr', 'body', 'thead'];\r\n\r\nconst baseStyle = {\r\n thead: { bg: colors.label.primary.dark },\r\n th: {\r\n bg: colors.label.primary.dark,\r\n padding: '5px 8px !important',\r\n fontSize: '13px',\r\n },\r\n tr: {\r\n fontSize: '13px',\r\n h: '26px',\r\n lineHeight: 'normal',\r\n _odd: {\r\n td: {\r\n h: '26px ',\r\n lineHeight: 'normal',\r\n bg: colors.fill.light.quaternary,\r\n _first: {\r\n borderTopLeftRadius: 'md',\r\n borderBottomLeftRadius: 'md',\r\n },\r\n _last: {\r\n borderTopRightRadius: 'md',\r\n borderBottomRightRadius: 'md',\r\n },\r\n },\r\n },\r\n },\r\n td: {\r\n padding: '5px 8px !important',\r\n lineHeight: 'normal',\r\n h: '26px',\r\n },\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n};\r\n","import { getColor, mode } from '@chakra-ui/theme-tools';\r\nimport colors from '../foundations/colors';\r\n\r\nconst parts = ['root', 'tablist', 'tab', 'tabpanel', 'indicator'];\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\ntype Dict = Record<string, any>;\r\n\r\nfunction baseStyleRoot(props: Dict) {\r\n const { orientation } = props;\r\n return {\r\n display: orientation === 'vertical' ? 'flex' : 'block',\r\n };\r\n}\r\n\r\nfunction baseStyleTab(props: Dict) {\r\n const { isFitted } = props;\r\n\r\n return {\r\n flex: isFitted ? 1 : undefined,\r\n transition: 'all 0.2s',\r\n _focus: {\r\n zIndex: 1,\r\n boxShadow: 'outline',\r\n },\r\n };\r\n}\r\n\r\nfunction baseStyleTablist(props: Dict) {\r\n const { align = 'start', orientation } = props;\r\n\r\n const alignments: Record<string, string> = {\r\n end: 'flex-end',\r\n center: 'center',\r\n start: 'flex-start',\r\n };\r\n\r\n return {\r\n justifyContent: alignments[align],\r\n flexDirection: orientation === 'vertical' ? 'column' : 'row',\r\n };\r\n}\r\n\r\nconst baseStyleTabpanel = { p: 4 };\r\n\r\nconst baseStyle = (props: Dict) => {\r\n return {\r\n root: baseStyleRoot(props),\r\n tab: baseStyleTab(props),\r\n tablist: baseStyleTablist(props),\r\n tabpanel: baseStyleTabpanel,\r\n };\r\n};\r\n\r\nconst sizes = {\r\n sm: {\r\n tab: {\r\n py: '0.25rem',\r\n px: 6,\r\n fontSize: '0.85rem',\r\n },\r\n },\r\n md: {\r\n tab: {\r\n fontSize: '1rem',\r\n py: '0.75rem',\r\n px: 6,\r\n },\r\n },\r\n lg: {\r\n tab: {\r\n fontSize: { base: '1rem', sm: '1.15rem' },\r\n py: '0.75rem',\r\n px: 6,\r\n },\r\n },\r\n};\r\n\r\nfunction variantLine(props: Dict) {\r\n const { colorScheme: c, orientation } = props;\r\n const isVertical = orientation === 'vertical';\r\n const borderProp = isVertical ? 'borderLeft' : 'borderBottom';\r\n const marginProp = isVertical ? 'ml' : 'mb';\r\n\r\n const _selected = {\r\n color: mode(`${c}.600`, `${c}.300`)(props),\r\n _after: {\r\n content: '\"\"',\r\n display: 'block',\r\n position: 'absolute',\r\n bottom: '-1px',\r\n left: 0,\r\n right: 0,\r\n height: '3px',\r\n bg: 'currentColor',\r\n },\r\n };\r\n\r\n return {\r\n tablist: {\r\n [borderProp]: '1px solid',\r\n borderColor: 'gray.100',\r\n },\r\n tab: {\r\n position: 'relative',\r\n [borderProp]: 0,\r\n borderColor: 'transparent',\r\n [marginProp]: 0,\r\n // set by React Router NavLink component\r\n '&.active': _selected,\r\n _selected,\r\n _active: {\r\n bg: mode(`${c}.50`, 'whiteAlpha.300')(props),\r\n },\r\n _disabled: {\r\n opacity: 0.4,\r\n cursor: 'not-allowed',\r\n },\r\n },\r\n };\r\n}\r\n\r\nfunction variantEnclosed(props: Dict) {\r\n const { colorScheme: c } = props;\r\n return {\r\n tab: {\r\n borderTopRadius: 'md',\r\n border: '1px solid',\r\n borderColor: 'transparent',\r\n mb: '-1px',\r\n _selected: {\r\n color: mode(`${c}.600`, `${c}.300`)(props),\r\n borderColor: 'inherit',\r\n borderBottomColor: mode(`white`, `gray.800`)(props),\r\n },\r\n },\r\n tablist: {\r\n mb: '-1px',\r\n borderBottom: '1px solid',\r\n borderColor: 'gray.100',\r\n },\r\n };\r\n}\r\n\r\nfunction variantEnclosedColored(props: Dict) {\r\n const { colorScheme: c } = props;\r\n return {\r\n tab: {\r\n border: '1px solid',\r\n borderColor: 'inherit',\r\n bg: mode(`gray.50`, `whiteAlpha.50`)(props),\r\n mb: '-1px',\r\n _notLast: {\r\n mr: '-1px',\r\n },\r\n _selected: {\r\n bg: mode(`#fff`, 'gray.800')(props),\r\n color: mode(`${c}.600`, `${c}.300`)(props),\r\n borderColor: 'inherit',\r\n borderTopColor: 'currentColor',\r\n borderBottomColor: 'transparent',\r\n },\r\n },\r\n tablist: {\r\n mb: '-1px',\r\n borderBottom: '1px solid',\r\n borderColor: 'gray.100',\r\n },\r\n };\r\n}\r\n\r\nfunction variantSoftRounded(props: Dict) {\r\n const { colorScheme: c, theme } = props;\r\n return {\r\n tab: {\r\n borderRadius: 'full',\r\n fontWeight: 'semibold',\r\n color: 'gray.600',\r\n _selected: {\r\n color: getColor(theme, `${c}.700`),\r\n bg: getColor(theme, `${c}.100`),\r\n },\r\n },\r\n };\r\n}\r\n\r\nfunction variantSolidRounded(props: Dict) {\r\n const { colorScheme: c } = props;\r\n return {\r\n tab: {\r\n borderRadius: 'full',\r\n fontWeight: 'semibold',\r\n color: mode('gray.600', 'inherit')(props),\r\n _selected: {\r\n color: mode(`#fff`, 'gray.800')(props),\r\n bg: mode(`${c}.600`, `${c}.300`)(props),\r\n },\r\n },\r\n };\r\n}\r\n\r\nconst variantUnstyled = {};\r\n\r\nconst variantSimple = {\r\n tab: {\r\n position: 'relative',\r\n borderColor: 'transparent',\r\n '&.active': {\r\n color: colors.fill.action,\r\n bg: 'transparent',\r\n borderBottom: `1px solid ${colors.fill.action}`,\r\n },\r\n _selected: {\r\n color: colors.fill.action,\r\n bg: 'transparent',\r\n _after: {\r\n content: '\"\"',\r\n display: 'block',\r\n position: 'absolute',\r\n bottom: '-1px',\r\n left: 0,\r\n right: 0,\r\n height: '3px',\r\n bg: 'currentColor',\r\n },\r\n },\r\n _active: {\r\n bg: 'transparent',\r\n },\r\n },\r\n};\r\n\r\nconst variants = {\r\n line: variantLine,\r\n enclosed: variantEnclosed,\r\n 'enclosed-colored': variantEnclosedColored,\r\n 'soft-rounded': variantSoftRounded,\r\n 'solid-rounded': variantSolidRounded,\r\n unstyled: variantUnstyled,\r\n simple: variantSimple,\r\n};\r\n\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'line',\r\n colorScheme: 'blue',\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n sizes,\r\n variants,\r\n defaultProps,\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%2214%22%20viewBox%3D%220%200%208%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.125%2013.25L0.875%207L7.125%200.75%22%20stroke%3D%22current%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import Input from './input';\r\nimport { defineStyle } from '@chakra-ui/react';\r\n\r\nconst baseStyle = {\r\n ...Input.baseStyle.field,\r\n fontSize: '13px',\r\n\r\n display: 'block', // Removes gap below textarea because it defaults to inline.\r\n paddingY: '8px',\r\n paddingX: '5px',\r\n height: '78px',\r\n lineHeight: 'short',\r\n};\r\n\r\nconst mobileInputs = defineStyle({\r\n ...baseStyle,\r\n ...Input.variants.mobile.field,\r\n border: 'none',\r\n borderRadius: 0,\r\n paddingY: '16px',\r\n paddingX: '0',\r\n // padding: '16px 16px',\r\n cursor: 'pointer',\r\n lineHeight: '21px',\r\n fontWeight: 400,\r\n resize: 'none',\r\n overflowY: 'auto',\r\n fontSize: '17px',\r\n minHeight: '208px',\r\n});\r\n\r\nconst variants = { default: baseStyle, mobile: mobileInputs };\r\n\r\nconst defaultProps = {\r\n variant: 'default',\r\n};\r\n\r\nexport default {\r\n baseStyle,\r\n variants,\r\n defaultProps,\r\n};\r\n","import { Text } from '@chakra-ui/react';\r\n\r\nconst { defaultProps } = Text;\r\n\r\nfunction variantTitleSmall() {\r\n return {\r\n fontWeight: 700,\r\n fontSize: '13px',\r\n lineHeight: '16px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantTitleMedium() {\r\n return {\r\n fontWeight: 600,\r\n fontSize: '18px',\r\n lineHeight: '26px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantTitleLarge() {\r\n return {\r\n fontWeight: 700,\r\n fontSize: '26px',\r\n lineHeight: '32px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantSubtitleSmall() {\r\n return {\r\n fontWeight: 500,\r\n fontSize: '11px',\r\n lineHeight: '13px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantSubtitleMedium() {\r\n return {\r\n fontWeight: 500,\r\n fontSize: '12px',\r\n lineHeight: '16px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantSubtitleLarge() {\r\n return {\r\n fontWeight: 500,\r\n fontSize: '13px',\r\n lineHeight: '16px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantDescriptionSmall() {\r\n return {\r\n fontWeight: 400,\r\n fontSize: '11px',\r\n lineHeight: '13px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantDescriptionMedium() {\r\n return {\r\n fontWeight: 400,\r\n fontSize: '12px',\r\n lineHeight: '16px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\nfunction variantDescriptionLarge() {\r\n return {\r\n fontWeight: 400,\r\n fontSize: '13px',\r\n lineHeight: '16px',\r\n letterSpacing: '0.02em',\r\n };\r\n}\r\n\r\nconst variants = {\r\n 'title-small': variantTitleSmall,\r\n 'title-medium': variantTitleMedium,\r\n 'title-large': variantTitleLarge,\r\n 'subtitle-small': variantSubtitleSmall,\r\n 'subtitle-medium': variantSubtitleMedium,\r\n 'subtitle-large': variantSubtitleLarge,\r\n 'description-small': variantDescriptionSmall,\r\n 'description-medium': variantDescriptionMedium,\r\n 'description-large': variantDescriptionLarge,\r\n};\r\n\r\nexport default {\r\n variants,\r\n defaultProps: { ...defaultProps, variant: variants['description-large'] },\r\n};\r\n","import { extendTheme } from '@chakra-ui/react';\r\nimport breakpoints from './foundations/breakpoints';\r\nimport colors from './foundations/colors';\r\nimport shadows from './foundations/shadows';\r\nimport typography from './foundations/typography';\r\nimport Alert from './components/alert';\r\nimport Badge from './components/badge';\r\nimport Button from './components/button';\r\nimport Checkbox from './components/checkbox';\r\nimport Code from './components/code';\r\nimport Form from './components/form';\r\nimport FormError from './components/form-error';\r\nimport FormLabel from './components/form-label';\r\nimport Input from './components/input';\r\nimport Link from './components/link';\r\nimport Modal from './components/modal';\r\nimport Select from './components/select';\r\nimport Switch from './components/switch';\r\nimport Table from './components/table';\r\nimport Tabs from './components/tabs';\r\nimport Textarea from './components/textarea';\r\nimport Text from './components/text';\r\nimport styles from './styles';\r\n\r\nconst customXQChakraTheme = extendTheme({\r\n breakpoints,\r\n colors,\r\n shadows,\r\n ...typography,\r\n components: {\r\n Alert,\r\n Badge,\r\n Button,\r\n Checkbox,\r\n Code,\r\n Form,\r\n FormError,\r\n FormLabel,\r\n Input,\r\n Link,\r\n Modal,\r\n Select,\r\n Switch,\r\n Table,\r\n Tabs,\r\n Textarea,\r\n Text,\r\n },\r\n styles,\r\n});\r\n\r\nexport type CustomTheme = typeof customXQChakraTheme;\r\n\r\nexport default customXQChakraTheme;\r\n","const parts = [\r\n 'overlay',\r\n 'dialogContainer',\r\n 'dialog',\r\n 'header',\r\n 'closeButton',\r\n 'body',\r\n 'footer',\r\n];\r\n\r\nconst baseStyle = {\r\n width: 'fit-content',\r\n height: 'fit-content',\r\n background: '#F6F6F6',\r\n backdropFilter: 'blur(25px)',\r\n header: {\r\n pt: '32px',\r\n px: '32px',\r\n pb: '16px',\r\n fontSize: '18px',\r\n fontWeight: 600,\r\n lineHeight: '26px',\r\n },\r\n body: {\r\n pt: 0,\r\n pb: '32px',\r\n px: '32px',\r\n fontSize: '13px',\r\n fontWeight: 400,\r\n lineHeight: '16px',\r\n whiteSpace: 'pre-line',\r\n },\r\n footer: {\r\n py: '16px',\r\n px: '32px',\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n width: '100%',\r\n },\r\n};\r\n\r\nexport default {\r\n parts,\r\n baseStyle,\r\n};\r\n","export default {\r\n global: {\r\n 'html, body, #root': {},\r\n body: {\r\n fontFamily: 'body',\r\n color: 'black',\r\n overflow: {\r\n base: 'visible',\r\n },\r\n lineHeight: 'normal',\r\n },\r\n '*, *::before, *::after': {\r\n borderColor: 'gray.200',\r\n },\r\n '*::placeholder': {\r\n color: 'primary',\r\n },\r\n },\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport { Box, useMediaQuery } from '@chakra-ui/react';\r\nimport colors from '../../../../../theme/foundations/colors';\r\n\r\nexport interface ToolbarBreadcrumbItemProps {\r\n pageLabel: string;\r\n page: 'current' | 'previous' | 'initial' | 'other';\r\n onClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `ToolbarBreadcrumbItem` component\r\n */\r\nexport const ToolbarBreadcrumbItem: React.FC<ToolbarBreadcrumbItemProps> = ({\r\n page,\r\n pageLabel,\r\n onClick,\r\n}) => {\r\n const [breakpoint400] = useMediaQuery('(max-width: 400px)');\r\n const [breakpoint600] = useMediaQuery('(max-width: 600px)');\r\n const [breakpoint800] = useMediaQuery('(max-width: 800px)');\r\n const [breakpoint1512] = useMediaQuery('(max-width: 1512px)');\r\n\r\n const getPageLabel = useMemo(() => {\r\n if (breakpoint400) {\r\n if (page === 'current') {\r\n return pageLabel;\r\n }\r\n }\r\n\r\n if (breakpoint600) {\r\n if (page === 'current' || page === 'previous') {\r\n return pageLabel;\r\n }\r\n\r\n return '...';\r\n }\r\n\r\n if (breakpoint800 || breakpoint1512) {\r\n if (page !== 'other') {\r\n return pageLabel;\r\n }\r\n\r\n return '...';\r\n }\r\n\r\n return pageLabel;\r\n }, [\r\n breakpoint1512,\r\n breakpoint400,\r\n breakpoint600,\r\n breakpoint800,\r\n page,\r\n pageLabel,\r\n ]);\r\n\r\n return (\r\n <Box\r\n color={\r\n page === 'current'\r\n ? colors.label.primary.light\r\n : colors.label.secondary.light\r\n }\r\n fontSize=\"13px\"\r\n letterSpacing=\"0.02em\"\r\n onClick={onClick}\r\n cursor=\"pointer\"\r\n >\r\n {getPageLabel}\r\n </Box>\r\n );\r\n};\r\n","import React, { useMemo, useCallback } from 'react';\r\nimport { Box, Flex, useMediaQuery } from '@chakra-ui/react';\r\nimport { ToolbarBreadcrumbItem } from './item';\r\nimport { ToolbarLabelAndHandler } from '../..';\r\nimport { ChevronRight } from '../../../../components/icons';\r\n\r\nexport interface ToolbarBreadcrumbsProps {\r\n pageList: ToolbarLabelAndHandler[];\r\n currentPage: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `ToolbarBreadcrumbs` component\r\n */\r\nexport const ToolbarBreadcrumbs: React.FC<ToolbarBreadcrumbsProps> = ({\r\n pageList,\r\n currentPage,\r\n}) => {\r\n const [breakpoint400] = useMediaQuery('(max-width: 400px)');\r\n\r\n const filteredPageList = useMemo(() => {\r\n if (breakpoint400)\r\n return pageList.filter(page => page.label === currentPage);\r\n\r\n const sliceIndex = pageList.findIndex(page => page.label === currentPage);\r\n return pageList.slice(0, sliceIndex + 1);\r\n }, [breakpoint400, currentPage, pageList]);\r\n\r\n const getPageType = useCallback(\r\n (index: number) => {\r\n switch (index) {\r\n case filteredPageList.length - 1:\r\n return 'current';\r\n case filteredPageList.length - 2:\r\n return 'previous';\r\n case 0:\r\n return 'initial';\r\n default:\r\n return 'other';\r\n }\r\n },\r\n [filteredPageList]\r\n );\r\n\r\n return (\r\n <Flex height=\"26px\">\r\n {filteredPageList.map((page, i) => (\r\n <Flex alignItems=\"center\" key={i}>\r\n <ToolbarBreadcrumbItem\r\n page={getPageType(i)}\r\n pageLabel={page.label}\r\n onClick={page.handler}\r\n />\r\n {i !== filteredPageList.length - 1 && (\r\n <Box mx=\"8px\">\r\n <ChevronRight boxSize=\"16px\" />\r\n </Box>\r\n )}\r\n </Flex>\r\n ))}\r\n </Flex>\r\n );\r\n};\r\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%2214%22%20viewBox%3D%220%200%208%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.875%200.75L7.125%207L0.874999%2013.25%22%20stroke%3D%22current%22%20stroke-opacity%3D%220.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"","import React from 'react';\r\nimport { Box } from '@chakra-ui/react';\r\nimport { ReactComponent as LeftArrow } from './left-arrow.svg';\r\n\r\nexport interface LeftArrowButtonProps {\r\n onClick: () => void;\r\n disabled: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `LeftArrowButton` component\r\n */\r\nexport const LeftArrowButton: React.FC<LeftArrowButtonProps> = ({\r\n onClick,\r\n disabled,\r\n}) => {\r\n return (\r\n <Box\r\n onClick={() => {\r\n if (!disabled) return onClick();\r\n }}\r\n cursor={disabled ? 'not-allowed' : 'pointer'}\r\n transform=\"scaleX(-1)\"\r\n >\r\n <LeftArrow stroke={disabled ? '#3C3C43' : 'black'} />\r\n </Box>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Box } from '@chakra-ui/react';\r\nimport { ReactComponent as RightArrow } from './right-arrow.svg';\r\n\r\nexport interface RightArrowButtonProps {\r\n onClick: () => void;\r\n disabled: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `RightArrowButton` component\r\n */\r\nexport const RightArrowButton: React.FC<RightArrowButtonProps> = ({\r\n onClick,\r\n disabled,\r\n}) => {\r\n return (\r\n <Box\r\n onClick={() => {\r\n if (!disabled) return onClick();\r\n }}\r\n cursor={disabled ? 'not-allowed' : 'pointer'}\r\n >\r\n <RightArrow stroke={disabled ? '#3C3C43' : 'black'} />\r\n </Box>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Box, Flex } from '@chakra-ui/react';\r\nimport { LeftArrowButton } from './components/button/left';\r\nimport { RightArrowButton } from './components/button/right';\r\n\r\nexport interface NavigationButtonsProps {\r\n onBackClick?: () => void;\r\n onForwardClick?: () => void;\r\n backButtonDisabled?: boolean;\r\n forwardButtonDisabled?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `NavigationButtons` component\r\n */\r\nexport const NavigationButtons: React.FC<NavigationButtonsProps> = ({\r\n onBackClick,\r\n onForwardClick,\r\n backButtonDisabled,\r\n forwardButtonDisabled,\r\n}) => {\r\n return (\r\n <Flex width=\"fit-content\" alignItems=\"center\" mr=\"24px\">\r\n <Box transform=\"scaleX(-1)\" mr=\"16px\">\r\n <LeftArrowButton\r\n onClick={() => onBackClick && onBackClick()}\r\n disabled={backButtonDisabled || false}\r\n />\r\n </Box>\r\n <RightArrowButton\r\n onClick={() => onForwardClick && onForwardClick()}\r\n disabled={forwardButtonDisabled || false}\r\n />\r\n </Flex>\r\n );\r\n};\r\n","import React, { ReactNode, useMemo } from 'react';\r\nimport { Box, Button, Flex, Text } from '@chakra-ui/react';\r\nimport { Error } from '../icons/error';\r\nimport { Neutral } from '../icons/neutral';\r\nimport { Positive } from '../icons/positive';\r\nimport { Warning } from '../icons/warning';\r\nimport colors from '../../theme/foundations/colors';\r\n\r\nexport type ToastVariant = 'positive' | 'warning' | 'error' | 'neutral';\r\n\r\nexport interface ToastProps {\r\n variant: ToastVariant;\r\n message: ReactNode;\r\n buttonText?: string;\r\n onClick?: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Toast` component\r\n */\r\nexport const Toast: React.FC<ToastProps> = ({\r\n variant,\r\n message,\r\n buttonText,\r\n onClick,\r\n}) => {\r\n const Icon = useMemo(() => {\r\n switch (variant) {\r\n case 'error':\r\n return <Error boxSize=\"16px\" />;\r\n case 'neutral':\r\n return <Neutral boxSize=\"16px\" color=\"white\" />;\r\n case 'positive':\r\n return <Positive boxSize=\"16px\" />;\r\n case 'warning':\r\n return <Warning boxSize=\"16px\" />;\r\n default:\r\n return null;\r\n }\r\n }, [variant]);\r\n\r\n return (\r\n <Flex\r\n alignItems=\"center\"\r\n width=\"fit-content\"\r\n height=\"32px\"\r\n p=\"8px\"\r\n bg=\"#151515D9\"\r\n borderColor=\"#9999991A\"\r\n borderRadius=\"8px\"\r\n >\r\n <Box pr=\"8px\">{Icon}</Box>\r\n <Text pr=\"16px\" fontSize=\"13px\" color={colors.label.primary.dark}>\r\n {message}\r\n </Text>\r\n {onClick && buttonText && (\r\n <Flex ml=\"auto\" justifyContent=\"flex-end\">\r\n <Button\r\n color={colors.fill.action}\r\n style={{\r\n background: 'transparent',\r\n border: 'transparent',\r\n boxShadow: 'none',\r\n }}\r\n _hover={{\r\n bg: 'transparent',\r\n border: 'transparent',\r\n boxShadow: 'none',\r\n }}\r\n onClick={onClick}\r\n >\r\n {buttonText}\r\n </Button>\r\n </Flex>\r\n )}\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Box, Button } from '@chakra-ui/react';\r\n\r\nexport interface ActionRowProps {\r\n primaryText: string;\r\n primaryOnClick: () => void;\r\n primaryDisabled: boolean;\r\n secondaryText: string;\r\n secondaryOnClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `ActionRow` component\r\n */\r\nexport const ActionRow: React.FC<ActionRowProps> = ({\r\n primaryDisabled,\r\n primaryOnClick,\r\n primaryText,\r\n secondaryOnClick,\r\n secondaryText,\r\n}) => {\r\n return (\r\n <Box>\r\n <Button\r\n variant=\"secondary\"\r\n color=\"black\"\r\n onClick={secondaryOnClick}\r\n mr=\"8px\"\r\n >\r\n {secondaryText}\r\n </Button>\r\n <Button onClick={primaryOnClick} disabled={primaryDisabled}>\r\n {primaryText}\r\n </Button>\r\n </Box>\r\n );\r\n};\r\n","import React, { ReactNode, useMemo } from 'react';\r\nimport { Alert, AlertDescription, Box, Flex } from '@chakra-ui/react';\r\nimport { Button } from '../button';\r\nimport { Error } from '../icons/error';\r\nimport { Neutral } from '../icons/neutral';\r\nimport { Positive } from '../icons/positive';\r\nimport { Warning } from '../icons/warning';\r\n\r\nexport type BannerVariant = 'positive' | 'warning' | 'error' | 'neutral';\r\n\r\nexport interface BannerProps {\r\n variant: BannerVariant;\r\n message: ReactNode;\r\n buttonText?: string;\r\n onClick?: () => void;\r\n type?: 'condensed' | 'expanded';\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Banner` component\r\n */\r\nexport const Banner: React.FC<BannerProps> = ({\r\n variant,\r\n message,\r\n buttonText,\r\n onClick,\r\n type = 'expanded',\r\n}) => {\r\n const Icon = useMemo(() => {\r\n switch (variant) {\r\n case 'error':\r\n return <Error boxSize=\"16px\" />;\r\n case 'neutral':\r\n return <Neutral boxSize=\"16px\" />;\r\n case 'positive':\r\n return <Positive boxSize=\"16px\" />;\r\n case 'warning':\r\n return <Warning boxSize=\"16px\" />;\r\n default:\r\n return null;\r\n }\r\n }, [variant]);\r\n\r\n return (\r\n <Alert variant={variant} borderRadius=\"4px\">\r\n <AlertDescription>\r\n <Flex\r\n flexDirection={type === 'condensed' ? 'row' : 'column'}\r\n alignItems={type === 'condensed' ? 'center' : ''}\r\n minHeight=\"26px\"\r\n >\r\n <Box pr=\"8px\">{Icon}</Box>\r\n <Box pt={type === 'condensed' ? 0 : '8px'}> {message}</Box>\r\n {onClick && buttonText && (\r\n <Flex\r\n ml={type === 'condensed' ? 'auto' : ''}\r\n pt={type === 'condensed' ? 0 : '8px'}\r\n justifyContent={type === 'condensed' ? 'flex-end' : 'flex-end'}\r\n >\r\n <Button\r\n variant=\"secondary\"\r\n onClick={onClick}\r\n text={buttonText}\r\n width=\"variable\"\r\n ariaLabel=\"banner button\"\r\n />\r\n </Flex>\r\n )}\r\n </Flex>\r\n </AlertDescription>\r\n </Alert>\r\n );\r\n};\r\n","import React, { useCallback } from 'react';\r\nimport { Flex } from '@chakra-ui/react';\r\nimport { Icon } from './components/icon';\r\nimport { Label } from './components/label';\r\n\r\nexport interface BreadcrumbsProps {\r\n steps: string[];\r\n activeStepIndex: number;\r\n orientation?: 'horizontal' | 'vertical';\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Breadcrumbs` component.\r\n *\r\n * The component will render a list of steps, based on the `steps` array, displaying the completed,\r\n * active, and incomplete steps. The orientation of the component may be either `horizontal` or\r\n * `vertical`.\r\n */\r\nexport const Breadcrumbs: React.FC<BreadcrumbsProps> = ({\r\n steps,\r\n activeStepIndex,\r\n orientation,\r\n}) => {\r\n const getStatus = useCallback(\r\n (stepIndex: number) => {\r\n if (activeStepIndex > stepIndex) return 'complete';\r\n if (activeStepIndex < stepIndex) return 'inactive';\r\n return 'active';\r\n },\r\n [activeStepIndex]\r\n );\r\n\r\n return (\r\n <Flex flexDir={orientation === 'horizontal' ? 'row' : 'column'}>\r\n {steps.map((step, idx) => (\r\n <Flex\r\n key={idx}\r\n alignItems=\"center\"\r\n pr={orientation === 'horizontal' ? '16px' : 0}\r\n py=\"4px\"\r\n >\r\n <Icon step={idx + 1} status={getStatus(idx)} />\r\n <Label label={step} />\r\n </Flex>\r\n ))}\r\n </Flex>\r\n );\r\n};\r\n","import React, { Children, ReactNode } from 'react';\r\nimport { Box, Flex, Text } from '@chakra-ui/react';\r\nimport colors from '../../theme/foundations/colors';\r\nimport typography from '../../theme/foundations/typography';\r\nimport { Button } from '../button';\r\n\r\nexport interface CardProps {\r\n title: string | ReactNode;\r\n leftIcon?: JSX.Element;\r\n children: ReactNode | null;\r\n height?: string | number;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Card` component\r\n */\r\nexport const Card: React.FC<CardProps> = ({\r\n title,\r\n leftIcon,\r\n children,\r\n height = 'auto',\r\n}) => {\r\n return (\r\n <Box\r\n bg={colors.fill.light.quaternary}\r\n borderRadius=\"4px\"\r\n border={`.5px solid ${colors.border.default}`}\r\n py=\"8px\"\r\n px=\"8px\"\r\n height={height}\r\n overflowY=\"auto\"\r\n width=\"206px\"\r\n _notLast={{ marginBottom: '8px' }}\r\n >\r\n {title && (\r\n <Flex\r\n display=\"flex\"\r\n alignItems=\"center\"\r\n justifyContent=\"start\"\r\n textDecoration=\"none\"\r\n _hover={{ textDecoration: 'none' }}\r\n mb=\"8px\"\r\n >\r\n <Flex alignItems=\"center\">\r\n <Box mr=\"4px\">{leftIcon}</Box>\r\n <Text\r\n color={colors.label.primary.light}\r\n fontSize={typography.fontSizes.sm}\r\n fontWeight={typography.fontWeights.medium}\r\n >\r\n {title}\r\n </Text>\r\n </Flex>\r\n </Flex>\r\n )}\r\n {Children.map(children, child => {\r\n if (!React.isValidElement(child)) {\r\n return;\r\n }\r\n if (child.type !== Button) {\r\n return (\r\n <Text\r\n as=\"div\"\r\n _notLast={{ marginBottom: '8px' }}\r\n color={colors.label.primary.light}\r\n fontSize={typography.fontSizes.xs}\r\n fontWeight={typography.fontWeights.normal}\r\n >\r\n {child}\r\n </Text>\r\n );\r\n } else {\r\n return <Box mt=\"8px\">{child}</Box>;\r\n }\r\n })}\r\n </Box>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as CheckmarkIcon } from './checkmark.svg';\r\n\r\nexport interface CheckmarkProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Checkmark` icon component\r\n */\r\nexport const Checkmark: React.FC<CheckmarkProps> = ({ boxSize }) => {\r\n return <CheckmarkIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport colors from '../../../../theme/foundations/colors';\r\nimport { ReactComponent as ChevronDownIcon } from './chevron-down.svg';\r\n\r\nexport interface ChevronDownProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `ChevronDown` icon component\r\n */\r\nexport const ChevronDown: React.FC<ChevronDownProps> = ({ boxSize }) => {\r\n return <ChevronDownIcon boxSize={boxSize} fill={colors.fill.action} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as ClockIcon } from './clock.svg';\r\n\r\nexport interface ClockProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Clock` icon component\r\n */\r\nexport const Clock: React.FC<ClockProps> = ({ boxSize }) => {\r\n return <ClockIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FileFillIcon } from './file-fill.svg';\r\n\r\nexport interface FileFillProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FileFill` icon component\r\n */\r\nexport const FileFill: React.FC<FileFillProps> = ({ boxSize }) => {\r\n return <FileFillIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FileOutlineIcon } from './file-outline.svg';\r\n\r\nexport interface FileOutlineProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FileOutline` icon component\r\n */\r\nexport const FileOutline: React.FC<FileOutlineProps> = ({ boxSize }) => {\r\n return <FileOutlineIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FolderAddFillIcon } from './folder-add-fill.svg';\r\n\r\nexport interface FolderAddFillProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FolderAddFill` icon component\r\n */\r\nexport const FolderAddFill: React.FC<FolderAddFillProps> = ({ boxSize }) => {\r\n return <FolderAddFillIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FolderAddOutlineIcon } from './folder-add-outline.svg';\r\n\r\nexport interface FolderAddOutlineProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FolderAddOutline` icon component\r\n */\r\nexport const FolderAddOutline: React.FC<FolderAddOutlineProps> = ({\r\n boxSize,\r\n}) => {\r\n return <FolderAddOutlineIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FolderFillIcon } from './folder-fill.svg';\r\nimport { ReactComponent as FolderFillGradientIcon } from './folder-fill-gradient.svg';\r\n\r\nexport interface FolderFillProps {\r\n boxSize: number | string;\r\n gradient?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FolderFill` icon component\r\n */\r\nexport const FolderFill: React.FC<FolderFillProps> = ({\r\n boxSize,\r\n gradient = false,\r\n}) => {\r\n if (gradient) {\r\n return <FolderFillGradientIcon width={boxSize} height={boxSize} />;\r\n }\r\n return <FolderFillIcon width={boxSize} height={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as FolderOutlineIcon } from './folder-outline.svg';\r\n\r\nexport interface FolderOutlineProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `FolderOutline` icon component\r\n */\r\nexport const FolderOutline: React.FC<FolderOutlineProps> = ({ boxSize }) => {\r\n return <FolderOutlineIcon boxSize={boxSize} />;\r\n};\r\n","import React, { PropsWithChildren } from 'react';\r\nimport { FieldValues, FormProvider } from 'react-hook-form';\r\nimport { FormHandler } from '../../components/form/hooks/useFormHandler';\r\n\r\nexport interface FormProps<T extends FieldValues> {\r\n formHandler: FormHandler<T>;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Form` component, a form wrapper for\r\n * `react-hook-form`. The `Form` component is provided a `formHandler` and is used to wrap a container\r\n * that contains a `FormSection` component.\r\n */\r\nexport function Form<T extends FieldValues>({\r\n formHandler,\r\n children,\r\n}: PropsWithChildren<FormProps<T>>) {\r\n const { form, onSubmit } = formHandler;\r\n\r\n return (\r\n <FormProvider {...form}>\r\n <form onSubmit={onSubmit}>{children}</form>\r\n </FormProvider>\r\n );\r\n}\r\n","import { SimpleGrid } from '@chakra-ui/react';\r\nimport React from 'react';\r\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\r\nimport { Input } from '../../input';\r\nimport { FormInput, FormStructure } from '../FormTypes';\r\n\r\n/**\r\n * @param T - represents the key/section in the `FormStructure`.\r\n * @param U - is the form value types for the `useFormHandler` hook.\r\n *\r\n * @param formStructure - the form of type form structure with their respective `FormSteps`.\r\n * @param section - the section (`FormStep`) we want to generate a section for.\r\n * @param form - the overall form containing methods (generated by `useFormHandler` hook).\r\n */\r\nexport interface FormSectionProps<\r\n T extends string | number | symbol,\r\n U extends FieldValues\r\n> {\r\n formStructure: FormStructure<T>;\r\n section: T;\r\n form: UseFormReturn<U>;\r\n className?: string;\r\n columns?: number;\r\n spacing?: number;\r\n}\r\n\r\n/**\r\n *\r\n * @param props - of type `FormSectionProps<T, U>` where `T` represents the key in `FormSteps`,\r\n * can be generic key but is represented by value in `FormSteps` and `U` is the form value types for the\r\n * `useFormHandler` hook.\r\n *\r\n * @returns a list of input's for a specific form section.\r\n */\r\nexport function FormSection<\r\n T extends string | number | symbol,\r\n U extends FieldValues\r\n>({\r\n formStructure,\r\n section,\r\n form,\r\n className,\r\n columns = 1,\r\n spacing = 0,\r\n}: FormSectionProps<T, U>) {\r\n return (\r\n <SimpleGrid\r\n columns={columns}\r\n spacing={spacing}\r\n className={`form-section ${className ?? ''}`}\r\n >\r\n {formStructure[section].map(\r\n ({\r\n label,\r\n inputType,\r\n name,\r\n options,\r\n isRequired,\r\n maxLength,\r\n ariaLabel,\r\n disabled,\r\n defaultValue,\r\n variant,\r\n }: FormInput) => (\r\n <Input<U>\r\n key={name}\r\n control={form.control}\r\n label={label}\r\n inputType={inputType}\r\n name={name}\r\n ariaLabel={ariaLabel}\r\n disabled={disabled}\r\n options={options}\r\n isRequired={isRequired}\r\n maxLength={maxLength}\r\n isInvalid={!!form.formState.errors[name]}\r\n defaultValue={defaultValue}\r\n setValue={form.setValue}\r\n setError={form.setError}\r\n clearErrors={form.clearErrors}\r\n variant={variant ? variant : ''}\r\n />\r\n )\r\n )}\r\n </SimpleGrid>\r\n );\r\n}\r\n","import React from 'react';\r\nimport { JSXIconProps } from '..';\r\nimport { colors } from '../../../theme/foundations/colors';\r\nimport { Box } from '@chakra-ui/react';\r\n\r\nexport const GearIcon: React.FC<JSXIconProps> = ({\r\n boxSize,\r\n color,\r\n ...props\r\n}) => {\r\n return (\r\n <Box {...props}>\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width={boxSize ?? 16}\r\n height={boxSize ?? 17}\r\n fill=\"none\"\r\n viewBox=\"0 0 16 17\"\r\n {...props}\r\n >\r\n <path\r\n fill={color ?? colors.white}\r\n d=\"M10.42 7.9c.376 0 .661-.346.51-.69a3.2 3.2 0 00-3.276-1.892c-.375.04-.532.461-.344.787L8.173 7.6a.6.6 0 00.52.3h1.726zM6.272 6.706c-.189-.326-.632-.4-.854-.096A3.186 3.186 0 004.8 8.5c0 .707.23 1.36.618 1.89.222.304.665.23.854-.096L7.134 8.8a.6.6 0 000-.6l-.862-1.494zM7.31 10.895c-.188.326-.03.746.344.786a3.2 3.2 0 003.275-1.891c.152-.344-.133-.69-.51-.69H8.693a.6.6 0 00-.52.3l-.863 1.495z\"\r\n ></path>\r\n <path\r\n fill={color ?? colors.white}\r\n fillRule=\"evenodd\"\r\n d=\"M11.304 3.978l.516-.894a.6.6 0 00-1.04-.6l-.515.893A5.563 5.563 0 008.6 2.932V1.9a.6.6 0 00-1.2 0v1.032a5.564 5.564 0 00-1.665.445l-.515-.893a.6.6 0 00-1.04.6l.516.894a5.632 5.632 0 00-1.218 1.218l-.894-.516a.6.6 0 10-.6 1.04l.893.515A5.564 5.564 0 002.432 7.9H1.4a.6.6 0 000 1.2h1.032c.062.587.215 1.146.445 1.665l-.893.515a.6.6 0 10.6 1.04l.894-.517a5.63 5.63 0 001.218 1.219l-.516.894a.6.6 0 001.04.6l.515-.893c.518.23 1.078.383 1.665.445V15.1a.6.6 0 101.2 0v-1.032a5.562 5.562 0 001.665-.445l.515.893a.6.6 0 101.04-.6l-.516-.894a5.632 5.632 0 001.218-1.219l.894.516a.6.6 0 10.6-1.039l-.893-.515c.23-.519.383-1.078.445-1.665H14.6a.6.6 0 100-1.2h-1.032a5.564 5.564 0 00-.445-1.665l.893-.516a.6.6 0 00-.6-1.039l-.894.516a5.633 5.633 0 00-1.218-1.218zM8 4.1a4.38 4.38 0 00-2.225.603 4.422 4.422 0 00-1.599 1.619A4.38 4.38 0 003.6 8.5a4.38 4.38 0 00.601 2.222 4.422 4.422 0 001.623 1.603A4.38 4.38 0 008 12.9a4.38 4.38 0 002.223-.602 4.423 4.423 0 001.602-1.622A4.38 4.38 0 0012.4 8.5a4.38 4.38 0 00-.602-2.224 4.422 4.422 0 00-1.623-1.602A4.38 4.38 0 008 4.1z\"\r\n clipRule=\"evenodd\"\r\n ></path>\r\n </svg>\r\n </Box>\r\n );\r\n};\r\n\r\nexport default GearIcon;\r\n","import React from 'react';\r\nimport { Google } from '../../icons/google';\r\nimport { Button, ButtonProps } from '..';\r\n\r\nexport interface GoogleButtonProps extends Partial<ButtonProps> {\r\n onClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `GoogleButton` component\r\n */\r\nexport const GoogleButton: React.FC<GoogleButtonProps> = ({\r\n onClick,\r\n type,\r\n}) => {\r\n return (\r\n <Button\r\n onClick={onClick}\r\n variant=\"secondary\"\r\n ariaLabel=\"google-login-button\"\r\n className=\"google-button\"\r\n leftIcon={<Google boxSize=\"18px\" />}\r\n text=\"Sign in with Google\"\r\n width=\"variable\"\r\n type={type}\r\n color=\"#000\"\r\n />\r\n );\r\n};\r\n","import { Image } from '@chakra-ui/react';\r\nimport React from 'react';\r\nimport path from './drive.png';\r\nexport interface GoogleDriveProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `GoogleDrive` icon component\r\n */\r\nexport const GoogleDrive: React.FC<GoogleDriveProps> = ({ boxSize }) => {\r\n return <Image src={path} boxSize={boxSize} />;\r\n};\r\n","var img = \"data:image/png;base64,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\";\n export default img;","import React from 'react';\r\nimport { ReactComponent as GroupIcon } from './group.svg';\r\n\r\nexport interface GroupProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Group` icon component\r\n */\r\nexport const Group: React.FC<GroupProps> = ({ boxSize }) => {\r\n return <GroupIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as HomeIcon } from './home.svg';\r\n\r\nexport interface HomeProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Home` icon component\r\n */\r\nexport const Home: React.FC<HomeProps> = ({ boxSize }) => {\r\n return <HomeIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as ImageIcon } from './image.svg';\r\n\r\nexport interface ImageProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Image` icon component\r\n */\r\nexport const Image: React.FC<ImageProps> = ({ boxSize }) => {\r\n return <ImageIcon boxSize={boxSize} />;\r\n};\r\n","import React, { ReactNode, useState } from 'react';\r\nimport {\r\n Box,\r\n Collapse,\r\n Flex,\r\n Grid,\r\n GridItem,\r\n IconButton,\r\n useMediaQuery,\r\n} from '@chakra-ui/react';\r\nimport { HamburgerIcon, CloseIcon } from '@chakra-ui/icons';\r\nimport { BorderedBox } from './BorderedBox';\r\n\r\nexport interface LayoutProps {\r\n Navigation?: ReactNode;\r\n Header?: ReactNode;\r\n MainContent?: ReactNode;\r\n navbarWidth?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Layout` component\r\n */\r\nexport const Layout: React.FC<LayoutProps> = ({\r\n Navigation,\r\n Header,\r\n MainContent,\r\n navbarWidth = '250px',\r\n}) => {\r\n const [isLargerThan1200] = useMediaQuery('(min-width: 1200px)');\r\n\r\n const [show, setShow] = useState(false);\r\n\r\n return (\r\n <Grid\r\n templateAreas={\r\n isLargerThan1200 ? `\"nav header\" \"nav main\"` : `\"header\" \"main\"`\r\n }\r\n gridTemplateRows=\"auto 1fr\"\r\n gridTemplateColumns={isLargerThan1200 ? `${navbarWidth} 1fr` : '100% 1fr'}\r\n h=\"100%\"\r\n width=\"100%\"\r\n gap=\"4\"\r\n bg=\"#f5f5f5\"\r\n >\r\n <GridItem area=\"header\" p=\"20px 20px 10px 10px\" minHeight=\"100px\">\r\n <BorderedBox\r\n borderRadius=\"md\"\r\n boxShadow=\"rgba(235,237,238,.75) 8px 0 30px 10px\"\r\n >\r\n <Flex\r\n flexDirection=\"column\"\r\n justifyContent=\"center\"\r\n width=\"100%\"\r\n pl={'32px'}\r\n py={5}\r\n >\r\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\r\n {Header}\r\n {!isLargerThan1200 && (\r\n <IconButton\r\n size=\"md\"\r\n variant=\"unstyled\"\r\n alignSelf=\"flex-start\"\r\n aria-label=\"menu\"\r\n type=\"button\"\r\n onClick={() => setShow(!show)}\r\n icon={show ? <CloseIcon /> : <HamburgerIcon />}\r\n _focus={{\r\n boxShadow: 'none',\r\n }}\r\n />\r\n )}\r\n </Flex>\r\n {!isLargerThan1200 && (\r\n <Collapse in={show}>\r\n <Box marginTop={5}>{Navigation}</Box>\r\n </Collapse>\r\n )}\r\n </Flex>\r\n </BorderedBox>\r\n </GridItem>\r\n {isLargerThan1200 && (\r\n <GridItem area=\"nav\" width={navbarWidth}>\r\n <BorderedBox boxShadow=\"rgba(0, 0, 0, 0.035) 0px 2px 10px\">\r\n {Navigation}\r\n </BorderedBox>\r\n </GridItem>\r\n )}\r\n <GridItem area=\"main\" p=\"0 20px 20px 10px\">\r\n <BorderedBox\r\n borderRadius=\"md\"\r\n boxShadow=\"rgba(0, 0, 0, 0.035) 0px 2px 10px\"\r\n >\r\n {MainContent}\r\n </BorderedBox>\r\n </GridItem>\r\n </Grid>\r\n );\r\n};\r\n","/* eslint-disable jsx-a11y/anchor-is-valid */\r\nimport { Flex, Text } from '@chakra-ui/react';\r\nimport React, { useMemo } from 'react';\r\nimport colors from '../../theme/foundations/colors';\r\nimport { Page, Video } from '../icons';\r\n\r\nexport interface LinkProps {\r\n variant: 'video' | 'page';\r\n text: string;\r\n onClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Link` component\r\n */\r\nexport const Link: React.FC<LinkProps> = ({ variant, text, onClick }) => {\r\n const getIcon = useMemo(() => {\r\n switch (variant) {\r\n case 'page':\r\n return <Page boxSize=\"12px\" />;\r\n case 'video':\r\n return <Video boxSize=\"12px\" />;\r\n }\r\n }, [variant]);\r\n\r\n return (\r\n <Flex alignItems=\"flex-start\" cursor=\"pointer\" onClick={onClick}>\r\n {getIcon}\r\n <Text variant=\"description-large\" pl=\"2px\" color={colors.fill.action}>\r\n {text}\r\n </Text>\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { Flex, Spinner, Text } from '@chakra-ui/react';\r\nimport colors from '../../theme/foundations/colors';\r\n\r\nexport interface LoadingIndicatorProps {\r\n size?: 'sm' | 'md' | 'lg' | 'xs' | 'xl';\r\n text?: string;\r\n thickness?: string;\r\n speed?: string;\r\n className?: string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `LoadingIndicator` component\r\n */\r\nexport const LoadingIndicator: React.FC<LoadingIndicatorProps> = ({\r\n size = 'xl',\r\n text = 'Loading',\r\n thickness = '3px',\r\n speed = '0.5s',\r\n className,\r\n}) => {\r\n return (\r\n <Flex\r\n flexDirection=\"column\"\r\n alignItems=\"center\"\r\n aria-label=\"loading-indicator\"\r\n className={`loading-indicator ${className ?? ''}`}\r\n >\r\n <Spinner\r\n size={size}\r\n color={colors.fill.action}\r\n flex=\"none\"\r\n thickness={thickness}\r\n speed={speed}\r\n mb={2}\r\n />\r\n {text && (\r\n <Text fontSize={size} lineHeight=\"shorter\" fontWeight=\"semibold\">\r\n {text}\r\n </Text>\r\n )}\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as MenuIcon } from './menu.svg';\r\n\r\nexport interface MenuProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Menu` icon component\r\n */\r\nexport const Menu: React.FC<MenuProps> = ({ boxSize }) => {\r\n return <MenuIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { Microsoft } from '../../icons/microsoft';\r\nimport { Button, ButtonProps } from '..';\r\n\r\nexport interface MicrosoftButtonProps extends Partial<ButtonProps> {\r\n onClick: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `MicrosoftButton` component\r\n */\r\nexport const MicrosoftButton: React.FC<MicrosoftButtonProps> = ({\r\n onClick,\r\n type,\r\n}) => {\r\n return (\r\n <Button\r\n onClick={onClick}\r\n variant=\"secondary\"\r\n ariaLabel=\"microsoft-login-button\"\r\n className=\"microsoft-button\"\r\n leftIcon={<Microsoft boxSize=\"18px\" />}\r\n text=\"Sign in with Microsoft\"\r\n width=\"variable\"\r\n type={type}\r\n color=\"#000\"\r\n />\r\n );\r\n};\r\n","import { Image } from '@chakra-ui/react';\r\nimport React from 'react';\r\nimport path from './onedrive.png';\r\n\r\nexport interface MicrosoftOneDriveProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `MicrosoftOneDrive` icon component\r\n */\r\nexport const MicrosoftOneDrive: React.FC<MicrosoftOneDriveProps> = ({\r\n boxSize,\r\n}) => {\r\n return <Image src={path} boxSize={boxSize} />;\r\n};\r\n","var img = \"data:image/png;base64,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\";\n export default img;","import React, { ReactNode } from 'react';\r\nimport {\r\n Modal as ChakraModal,\r\n ModalBody,\r\n ModalContent,\r\n ModalFooter,\r\n ModalHeader,\r\n ModalOverlay,\r\n Box,\r\n} from '@chakra-ui/react';\r\n\r\nexport interface ModalProps {\r\n title?: string;\r\n body?: ReactNode;\r\n footer?: ReactNode;\r\n isOpen: boolean;\r\n onClose: () => void;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Modal` component\r\n */\r\nexport const Modal: React.FC<ModalProps> = ({\r\n title,\r\n body,\r\n footer,\r\n isOpen,\r\n onClose,\r\n}) => {\r\n return (\r\n <ChakraModal isOpen={isOpen} onClose={onClose}>\r\n <ModalOverlay />\r\n <ModalContent>\r\n <ModalHeader>{title}</ModalHeader>\r\n <ModalBody>{body}</ModalBody>\r\n <Box borderBottom=\"1px solid #D9D9D9\" />\r\n <ModalFooter>{footer}</ModalFooter>\r\n </ModalContent>\r\n </ChakraModal>\r\n );\r\n};\r\n","import React, { useMemo, useState, useEffect } from 'react';\r\nimport { Box, Flex } from '@chakra-ui/react';\r\nimport { NavigationMenuHeader } from './components/header';\r\nimport { NavigationMenuItem } from './components/items';\r\n\r\nexport type GroupMenuItems = {\r\n leftIcon: JSX.Element;\r\n label: string;\r\n href?: string;\r\n to?: string;\r\n rightIcon?: JSX.Element;\r\n onClick?: () => void;\r\n isExternal?: boolean;\r\n};\r\n\r\nexport type GroupedMenuItem = {\r\n groupSortValue: number;\r\n groupHeader?: string;\r\n groupMenuItems: GroupMenuItems[];\r\n};\r\n\r\nexport interface NavigationMenuProps {\r\n groupedMenuItems: GroupedMenuItem[];\r\n selectedMenuItem?: string;\r\n bottomMenuItem?: GroupMenuItems;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `NavigationMenu` component\r\n */\r\nexport const NavigationMenu: React.FC<NavigationMenuProps> = ({\r\n groupedMenuItems,\r\n selectedMenuItem,\r\n bottomMenuItem,\r\n}) => {\r\n const sortedGroupedMenuItems = useMemo(\r\n () => groupedMenuItems?.sort((a, b) => a.groupSortValue - b.groupSortValue),\r\n [groupedMenuItems]\r\n );\r\n\r\n const [_selectedMenuItem, setSelectedMenuItem] = useState<string>('');\r\n\r\n useEffect(() => {\r\n if (selectedMenuItem) setSelectedMenuItem(selectedMenuItem);\r\n }, [selectedMenuItem]);\r\n\r\n return (\r\n <Flex\r\n bg=\"#7474800D\"\r\n py=\"32px\"\r\n px=\"8px\"\r\n height=\"100%\"\r\n overflowY=\"auto\"\r\n width=\"220px\"\r\n flexDirection=\"column\"\r\n justifyContent=\"space-between\"\r\n >\r\n {sortedGroupedMenuItems?.map((menuItemGroup, idx) => (\r\n <Box key={idx} _notLast={{ paddingBottom: '8px' }}>\r\n {menuItemGroup.groupHeader && (\r\n <NavigationMenuHeader label={menuItemGroup.groupHeader} />\r\n )}\r\n {menuItemGroup.groupMenuItems.map((item, idx) => (\r\n <NavigationMenuItem\r\n {...item}\r\n key={idx}\r\n isSelected={_selectedMenuItem === item.label}\r\n onClick={() => setSelectedMenuItem(item.label)}\r\n />\r\n ))}\r\n </Box>\r\n ))}\r\n {bottomMenuItem && (\r\n <NavigationMenuItem\r\n {...bottomMenuItem}\r\n key={bottomMenuItem.label}\r\n isSelected\r\n onClick={() => {\r\n if (bottomMenuItem.onClick) {\r\n bottomMenuItem.onClick();\r\n }\r\n }}\r\n />\r\n )}\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as QuestionIcon } from './question.svg';\r\n\r\nexport interface QuestionProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Question` icon component\r\n */\r\nexport const Question: React.FC<QuestionProps> = ({ boxSize }) => {\r\n return <QuestionIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as SearchIcon } from './search.svg';\r\n\r\nexport interface SearchProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Search` icon component\r\n */\r\nexport const Search: React.FC<SearchProps> = ({ boxSize }) => {\r\n return <SearchIcon boxSize={boxSize} />;\r\n};\r\n","import React, { useEffect } from 'react';\r\nimport { Select } from '@chakra-ui/react';\r\nimport {\r\n FormControl,\r\n FormErrorMessage,\r\n FormHelperText,\r\n} from '@chakra-ui/react';\r\nimport {\r\n Control,\r\n Controller,\r\n FieldValues,\r\n UseFormClearErrors,\r\n UseFormSetError,\r\n UseFormSetValue,\r\n} from 'react-hook-form';\r\nimport { FieldOptions, ValidationProps } from 'src/components/input/InputTypes';\r\n\r\nexport interface SelectNativeProps<T extends FieldValues>\r\n extends ValidationProps {\r\n isRequired: boolean;\r\n\r\n name: string;\r\n ariaLabel: string;\r\n placeholder?: string;\r\n defaultValue?: string;\r\n label?: string;\r\n className?: string;\r\n options?: FieldOptions;\r\n fullOptions?: FieldOptions;\r\n helperText?: React.ReactNode;\r\n control: Control<T, unknown>;\r\n onChange?: (value?: string) => void;\r\n disabled?: boolean;\r\n tooltipText?: string;\r\n setValue: UseFormSetValue<T>;\r\n setError: UseFormSetError<T>;\r\n clearErrors: UseFormClearErrors<T>;\r\n allowDefault?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `SelectNative` component.\r\n */\r\nexport const SelectNative: React.FC<SelectNativeProps<HTMLSelectElement>> = ({\r\n label,\r\n ariaLabel,\r\n className,\r\n placeholder,\r\n name,\r\n helperText,\r\n options,\r\n tooltipText,\r\n isInvalid,\r\n errorText,\r\n isRequired,\r\n defaultValue,\r\n fullOptions,\r\n control,\r\n disabled,\r\n onChange,\r\n setValue,\r\n setError,\r\n clearErrors,\r\n ...props\r\n}) => {\r\n // const [selectedOption, setSelectedOption] = useState(\r\n // options ? options[0] ?? '' : ''\r\n // );\r\n\r\n const style = {\r\n cursor: 'pointer',\r\n color: 'var(--chakra-colors-blue-500)',\r\n height: '48px',\r\n fontSize: '17px',\r\n lineHeight: '20px',\r\n fontWeight: 400,\r\n padding: '12px 16px 12px 0px',\r\n borderRadius: 0,\r\n border: '0.5px solid rgba(153, 153, 153, 0.1)',\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n };\r\n\r\n const handleOnSelectItem = (selectedValue: string) => {\r\n const selectedOption = options?.find(\r\n ({ value: val }) => selectedValue === val\r\n );\r\n\r\n if (selectedOption) {\r\n if (onChange) {\r\n onChange(selectedOption.value);\r\n }\r\n setValue(name as string, selectedOption.value);\r\n } else {\r\n setValue(name as string, selectedValue);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (defaultValue) {\r\n handleOnSelectItem(defaultValue);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [defaultValue]);\r\n return (\r\n <Controller\r\n control={control}\r\n name={name}\r\n rules={{ required: isRequired }}\r\n /** @ts-ignore: issues with implicit */\r\n render={({ field: { onBlur, onChange: fieldOnChange, ref, value } }) => (\r\n <FormControl id={name} isInvalid={isInvalid} position=\"relative\" py={0}>\r\n <Select\r\n {...props}\r\n required={isRequired}\r\n ref={ref}\r\n value={value}\r\n disabled={disabled ?? false}\r\n onChange={e => handleOnSelectItem(e.target.value)}\r\n style={style}\r\n >\r\n {options &&\r\n options.map(i => {\r\n return (\r\n <option value={i.value} key={i.sortValue}>\r\n {i.label}\r\n </option>\r\n );\r\n })}\r\n </Select>\r\n {isInvalid ? (\r\n <FormErrorMessage>{errorText}</FormErrorMessage>\r\n ) : (\r\n helperText && <FormHelperText>{helperText}</FormHelperText>\r\n )}\r\n </FormControl>\r\n )}\r\n />\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as ServicesIcon } from './services.svg';\r\n\r\nexport interface ServicesProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Services` icon component\r\n */\r\nexport const Services: React.FC<ServicesProps> = ({ boxSize }) => {\r\n return <ServicesIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport colors from '../../../theme/foundations/colors';\r\nimport { ReactComponent as SettingsIcon } from './settings.svg';\r\n\r\nexport interface SettingsProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Settings` icon component\r\n */\r\nexport const Settings: React.FC<SettingsProps> = ({ boxSize }) => {\r\n return <SettingsIcon boxSize={boxSize} fill={colors.fill.action} />;\r\n};\r\n","import React from 'react';\r\nimport { Button, Spinner } from '@chakra-ui/react';\r\nimport { ButtonProps } from '..';\r\n\r\nexport interface SpinnerButtonProps extends ButtonProps {\r\n isLoading: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `SpinnerButton` component\r\n */\r\nexport const SpinnerButton: React.FC<SpinnerButtonProps> = ({\r\n isLoading,\r\n text,\r\n onClick,\r\n type,\r\n ariaLabel,\r\n variant = 'primary',\r\n disabled,\r\n className,\r\n}) => {\r\n return (\r\n <Button\r\n spinner={<Spinner size={'xs'} />}\r\n isLoading={isLoading}\r\n onClick={onClick}\r\n type={type}\r\n variant={variant}\r\n disabled={disabled}\r\n aria-label={ariaLabel}\r\n className={className}\r\n >\r\n {text}\r\n </Button>\r\n );\r\n};\r\n","import React from 'react';\r\nimport {\r\n ReadonlyTableColumns,\r\n TableBody,\r\n TableColumns,\r\n TableHeaders,\r\n} from './TableTypes';\r\nimport { generateTableColumnsAsConst } from './utils/generateTableColumns';\r\n\r\nimport {\r\n Table as ChakraTable,\r\n TableContainer,\r\n Tbody,\r\n Td,\r\n Th,\r\n Thead,\r\n Tr,\r\n} from '@chakra-ui/react';\r\nimport { TableLoadingRows } from './components/loading';\r\nimport colors from '../../theme/foundations/colors';\r\nimport { EmptyTable } from './empty';\r\n\r\nexport interface TableProps<T extends ReadonlyTableColumns> {\r\n columns: TableColumns;\r\n headers?: TableHeaders<T>;\r\n body: TableBody<T>;\r\n loading?: boolean;\r\n loadMore?: () => void;\r\n placeholder?: string;\r\n}\r\n\r\n/**\r\n * A React component utilized to render the `Table` component\r\n */\r\nexport function Table<T extends ReadonlyTableColumns>({\r\n columns,\r\n headers,\r\n body,\r\n loading,\r\n loadMore,\r\n}: TableProps<T>) {\r\n const columnsAsConst = generateTableColumnsAsConst(columns);\r\n\r\n return (\r\n <TableContainer border=\"none\" overflowX=\"auto\" bg=\"white\" width=\"100%\">\r\n {body.length ? (\r\n <ChakraTable\r\n variant=\"unstyled\"\r\n width=\"100%\"\r\n style={{\r\n borderCollapse: 'separate',\r\n borderSpacing: '0px',\r\n }}\r\n >\r\n {headers && (\r\n <Thead>\r\n <Tr _odd={{ bg: colors.label.primary.dark }}>\r\n {columnsAsConst.map((column, idx) => (\r\n // @ts-ignore\r\n <Th key={idx}>{headers[column]}</Th>\r\n ))}\r\n </Tr>\r\n </Thead>\r\n )}\r\n <Tbody>\r\n {body.map((row, idx) => (\r\n <Tr key={idx}>\r\n {columnsAsConst.map((column, idx) => (\r\n // @ts-ignore\r\n <Td key={idx}>{row[column]}</Td>\r\n ))}\r\n </Tr>\r\n ))}\r\n </Tbody>\r\n </ChakraTable>\r\n ) : (\r\n <EmptyTable />\r\n )}\r\n {loadMore && loading !== undefined && body.length ? (\r\n <TableLoadingRows isLoading={loading} onLoadMore={loadMore} />\r\n ) : null}\r\n </TableContainer>\r\n );\r\n}\r\n","import { TableColumns } from '../TableTypes';\r\n\r\n/**\r\n * This function is responsible for returning an array as a const, so the generic type `TableBody`\r\n * may accept it as an argument and use the elements of the array as keys.\r\n */\r\nexport function generateTableColumnsAsConst<T extends TableColumns>(arr: T) {\r\n return [...arr] as const;\r\n}\r\n","import React from 'react';\r\nimport { ReactComponent as TableFillIcon } from './table-fill.svg';\r\n\r\nexport interface TableFillProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `TableFill` icon component\r\n */\r\nexport const TableFill: React.FC<TableFillProps> = ({ boxSize }) => {\r\n return <TableFillIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as TableOutlineIcon } from './table-outline.svg';\r\n\r\nexport interface TableOutlineProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `TableOutline` icon component\r\n */\r\nexport const TableOutline: React.FC<TableOutlineProps> = ({ boxSize }) => {\r\n return <TableOutlineIcon boxSize={boxSize} />;\r\n};\r\n","import React, { PropsWithChildren, ReactNode } from 'react';\r\nimport { Tab, TabList, Tabs } from '@chakra-ui/react';\r\nimport colors from '../../theme/foundations/colors';\r\n\r\nexport interface TabsWrapperProps extends PropsWithChildren {\r\n navIndex: number;\r\n setNavIndex: (index: number) => void;\r\n navItems: ReactNode[];\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `TableNavWrapper` component\r\n */\r\nexport const TabsWrapper: React.FC<TabsWrapperProps> = ({\r\n children,\r\n navItems,\r\n navIndex,\r\n setNavIndex,\r\n}) => {\r\n return (\r\n <Tabs size=\"lg\" variant=\"simple\" index={navIndex} onChange={setNavIndex}>\r\n <TabList\r\n flexDirection={{ base: 'column', sm: 'row' }}\r\n border=\"1px\"\r\n borderColor={colors.fill.light.quaternary}\r\n bg=\"white\"\r\n borderRadius=\"md\"\r\n borderBottom={0}\r\n borderBottomLeftRadius={0}\r\n borderBottomRightRadius={0}\r\n >\r\n {navItems.map((navItem, idx) => (\r\n <Tab key={idx}>{navItem}</Tab>\r\n ))}\r\n </TabList>\r\n {children}\r\n </Tabs>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as TaskIcon } from './task.svg';\r\nimport { IconProps } from '..';\r\n\r\n/**\r\n * A functional React component utilized to render the `Task` icon component\r\n */\r\nexport const Task: React.FC<IconProps> = ({ boxSize }) => {\r\n return <TaskIcon boxSize={boxSize} />;\r\n};\r\n","import React, { PropsWithChildren } from 'react';\r\nimport { Text as ChakraText } from '@chakra-ui/react';\r\nimport textTheme from '../../theme/components/text';\r\n\r\nexport interface TextProps extends PropsWithChildren {\r\n variant: keyof typeof textTheme.variants;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Text` component. The component is mainly\r\n * controlled by by the `variant` prop which determines `fontSize`, `fontWeight`, etc.\r\n * Also extends `TypographyProps`.\r\n */\r\nexport const Text: React.FC<TextProps> = ({ variant, children }) => {\r\n return <ChakraText variant={variant}>{children}</ChakraText>;\r\n};\r\n","import React, { PropsWithChildren } from 'react';\r\nimport { Flex } from '@chakra-ui/react';\r\nimport { ToolbarBreadcrumbs } from './components/breadcrumbs';\r\nimport { NavigationButtons } from './components/navigation';\r\n\r\nexport type ToolbarLabelAndHandler = { label: string; handler: () => void };\r\n\r\nexport interface ToolbarProps extends PropsWithChildren {\r\n pageList: ToolbarLabelAndHandler[];\r\n currentPage: string;\r\n onBackClick?: () => void;\r\n onForwardClick?: () => void;\r\n backButtonDisabled?: boolean;\r\n forwardButtonDisabled?: boolean;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Toolbar` component\r\n */\r\nexport const Toolbar: React.FC<ToolbarProps> = ({\r\n children,\r\n pageList,\r\n forwardButtonDisabled,\r\n backButtonDisabled,\r\n currentPage,\r\n onBackClick,\r\n onForwardClick,\r\n}) => {\r\n const hasNav = !!onBackClick && !!onForwardClick;\r\n\r\n return (\r\n <Flex flexDirection=\"column\" borderBottom=\"0.5px solid #3C3C432E\">\r\n <Flex\r\n height=\"52px\"\r\n px=\"32px\"\r\n alignItems=\"center\"\r\n justifyContent=\"space-between\"\r\n background=\"white\"\r\n >\r\n <Flex>\r\n {hasNav && (\r\n <NavigationButtons\r\n onBackClick={onBackClick}\r\n onForwardClick={onForwardClick}\r\n backButtonDisabled={backButtonDisabled}\r\n forwardButtonDisabled={forwardButtonDisabled}\r\n />\r\n )}\r\n <ToolbarBreadcrumbs pageList={pageList} currentPage={currentPage} />\r\n </Flex>\r\n <Flex alignItems=\"center\">{children} </Flex>\r\n </Flex>\r\n </Flex>\r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReactComponent as TrashIcon } from './trash.svg';\r\n\r\nexport interface TrashProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Trash` icon component\r\n */\r\nexport const Trash: React.FC<TrashProps> = ({ boxSize }) => {\r\n return <TrashIcon boxSize={boxSize} />;\r\n};\r\n","import React from 'react';\r\nimport { Image } from '@chakra-ui/react';\r\nimport path from './vault.png';\r\n\r\nexport interface VaultProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Vault` icon component\r\n */\r\nexport const Vault: React.FC<VaultProps> = ({ boxSize }) => {\r\n return <Image src={path} boxSize={boxSize} />;\r\n};\r\n","var img = \"data:image/png;base64,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\";\n export default img;","import React from 'react';\r\nimport { Image } from '@chakra-ui/react';\r\nimport path from './workspace.png';\r\n\r\nexport interface WorkspaceProps {\r\n boxSize: number | string;\r\n}\r\n\r\n/**\r\n * A functional React component utilized to render the `Workspace` icon component\r\n */\r\nexport const Workspace: React.FC<WorkspaceProps> = ({ boxSize }) => {\r\n return <Image src={path} boxSize={boxSize} />;\r\n};\r\n","var img = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMQAAACvCAYAAACilXHyAAAAyHpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjabVBbDsMgDPvnFDsCeRTIcWhLpd1gx5/bpFO7zVKCiZETksbruaXHDiZNOtVWrJQMqKlxB2nZ0Y9MWY98YNHQ6F5PfQuBURKc4tdW4v1Zp4+BHx1suhi1JYT5Llh05vZlFI1kn4hB1jCyMBJ2gcKg+7dysVavX5hHvqN5pD3p8K2QufZzr9jeOqGPMA8hycgi6gPIHpKkgygyScXDLAaukDqCYxIs5N+eTqQ39hBaJbBMasIAAAGEaUNDUElDQyBwcm9maWxlAAB4nH2RPUjDQBzFX9NKRSoqdhARzFCd7KIijrUKRagQaoVWHUwu/YImDUmKi6PgWnDwY7Hq4OKsq4OrIAh+gLi6OCm6SIn/SwotYj047se7e4+7d4BQLzPNCsQATbfNVCIuZrKrYvAVAQygH6OIyswy5iQpiY7j6x4+vt5FeVbnc3+OXjVnMcAnEseYYdrEG8Qzm7bBeZ84zIqySnxOPGHSBYkfua54/Ma54LLAM8NmOjVPHCYWC22stDErmhrxNHFE1XTKFzIeq5y3OGvlKmvek78wlNNXlrlOcwQJLGIJEkQoqKKEMmxEadVJsZCi/XgH/7Drl8ilkKsERo4FVKBBdv3gf/C7Wys/NeklheJA14vjfIwBwV2gUXOc72PHaZwA/mfgSm/5K3Vg9pP0WkuLHAF928DFdUtT9oDLHWDoyZBN2ZX8NIV8Hng/o2/KAoO3QM+a11tzH6cPQJq6St4AB4fAeIGy1zu8u7u9t3/PNPv7AbVVcsFBK0qrAAANemlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6R0lNUD0iaHR0cDovL3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgIHhtcE1NOkRvY3VtZW50SUQ9ImdpbXA6ZG9jaWQ6Z2ltcDowZmRkZTViMy03MjIwLTRkNzEtODgwOC1jMzlkNjYwYmUzZmIiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ZGNhM2ZjYzgtYzFmZS00MGEwLWFkYzgtOTRmMThjNDg4MWRjIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MTQzMzEyY2MtOTk0YS00NDdmLTlhMzYtNjczODUxNTcwMzkwIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJNYWMgT1MiCiAgIEdJTVA6VGltZVN0YW1wPSIxNjgxNzQ5NzQzNTc0NzkwIgogICBHSU1QOlZlcnNpb249IjIuMTAuMzQiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICB0aWZmOk9yaWVudGF0aW9uPSIxIgogICB4bXA6Q3JlYXRvclRvb2w9IkdJTVAgMi4xMCIKICAgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMzowNDoxN1QwOTo0MjoyMi0wNzowMCIKICAgeG1wOk1vZGlmeURhdGU9IjIwMjM6MDQ6MTdUMDk6NDI6MjItMDc6MDAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NzExYTEyZC1iMzM5LTQ4N2UtOTRjOS1lYTdkOWQzMTIzMGMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTWFjIE9TKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMy0wNC0xN1QwOTo0MjoyMy0wNzowMCIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3JpcHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz56dk5QAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAACE4AAAhOAFFljFgAAAAB3RJTUUH5wQRECoXKi79PwAAIABJREFUeNrsvXm8plV1JbzWeW9VUSMUMyFONBRVYAvSIWJQwKSdkrZVSAtBjQxVxWSCMT9NjL/4pU0bk5i0YGS6t0r9WhOJgmjSRuUzwSGOJBrSMgi0OBEQqBGqiqq671nfH885Z+9znvcWdS9VaOS++Zkq6t53ep6zz9l77bXXImYfe/Vxz8SDiyXsS3AxoOMJ/hyBpwFaAfAAQvsTGANAAjsJrif0AwD3gfjnANwRpW+R3Cxg08+sOmjz7FXdew/OXoI9/7h7zQPzJB5D8UQSJxE4HsJyAvO7i6508QkSggR2AdH9UN0/d78BAIoEbwX0TQKfI8Ktw6BbfmblQdtnr/ZsQPzkngbv37BgcjK+WtLpJI4gcASEMZaLLZCUJLpgYEj/FkpAdD9PN0jIwQKB4HYSP4R0awA+MBwOv3DYRYetm736swHxk3EarF0fhsKSKL0wCG8BdDTJ+ZAIAIFU/jvLYgfo/x1Mi727IflnbG4UAbH7dVEAgS2AHmQIfy7gIwph/aHn7T+cvSuzAfFjedw2vu4gEKdCuIjAqYAGBJUWN/0FZv13ARYYbAOjCpb6uRY4OYgIdm/2NQHvofSpg1cfvGH27swGxBP6+Nb4+hNBvQnSfyU4z1KavIsTqTaogsL+VP9kGPl7o/7M78MSX+m1NhP4ZCDffdCqg26evUuzAbHXH7dMrJ8L6eIAXArgqSnZJ1Ut1jbVaWoBt7jzUaLu/4X2dGjSJ+YXUX3SuBMmEvi+pMsJXnnIBQfvmL1rswGxxx/ffM9GckE8nOIboXgJgbml0s11QVrASihRnQ6hFNRhRG0AdkGV64xR6daoQEM6kTxylX6+g8JfROpPh9u3P3j4bzxFs3fxsR9h9hLs3kNz4zJFTQi6VMBcAYjKWRElEBFETIsZ6H6mtPkLJYNC97RcEQCCKHV/j10FIrjnIf2+++/ud93HUwJz3f/mRuqNAP5qzj77LJu9g7MnxB573Dy+fsUAugrAKTljaVIfsU6HuiMjI00jLniTAnV1h6p0KL8u8mv1063qBMqnTMZsUz8DAvT5AFx88OqDb5+9m7MB8bgeXx9fvyJA1wFYzrS2K3RoVI7vC2dfXKe/+wsfUm2BXRbWCU2ytEiE2KJRdTDmsl4MYAR0B4FfPWQ2KGYDYiaPL793I8McLQuM1wTw+YCC6xwjOIQIZLcqu8XOvOvbDp1qig6S5chTIv2FagrwqlGntqiuTgtfy3j4NsG0EdAXEXgB5u1z56GvXTxbU8zWENO4MHPjQaSuEHhKBKiyzLoNPUKIACIpIdUKZHdipMK6+7dcR7CrFbq/tzm/Uo3RvSZc7ZFaGlXNIbT1AqJEVbUGEdV97vReQeApEN4dd+w4fPYOzwbEbj++MrFhLsg3C/jFtF1TKRRAKua/A5BESenPvGDlF3TZ8m1xqno9AYy5YO7+G25xNwV41bmQCuDbHRSyc0q+GI+leNeLQ4xvvG/8gbmzd3o2IHYPURIulvQb3e5Ot6sDsTShy86bFnG3Gcvt1KDt/GoXdF74KXhS3lNWvwCqBGNGl6gO0er+L3YLvART+ox0r8samSIiGKJ0iaSLZ+/0bA3xmI8vXbP+RBAfIfB0XxBPiRDVrNReXk8Hw7paoaFrACHXHPkFm/cd2a0mc52Ctqk3+nnVa36XIbzqsJUHzna0Z0+IKYJhfMNSBf6WyKfE7jQoKUeXKpWV6PoEDf6fymekJlysf6aI3J8o6RNApHw/1QIjagSx7kWk92WuZfJzI/p9DHfC+FPtKYrxzf92zX0Hzd752YDoPT539YZBBF4q4VcgDFxODsvvu4UbXZqTmHwZTFVXGKvXlOuymA6m9WkMSMWSBKnL/enqgJJaufTHpWJG/CDEnOGJYt2/zgGZcbAoDQS+LHJw6vfWPDS7DmYDoskdA/YX8ZsiluRFkxdoomNYNpIWVkwMu2iLlSUwfJD4kyQHE+uaxKNFXbebqWvd61DL1wZ1J1yUUoHe/aI/4azYt9edB+AiSktmV8BsQFSPCLxKwnMaCkWXluRFlqFWgOoK4PzrfTSoBInSKSPj8FXpDfLOXioQlSDq3tsHTHrfNhhyqtSdWBkAKDAv0inUpk+AwNMC8MLZFTBbVJfHTVdtOAAD/BOBp7djnNbcYqFT7LK5hl6negRb1YrfULNgOwpIQqty8y8X34XdOkV3vC6e2RT+o2Yyyvt+c3Js8LxnnLf/1tkTYvaBOMApAg5Ub3enFcC9otagUtCnJunv1qCrlmQLtTZFeepPVMvYF8gFUoXVAxpdPPv/cylZfg7p066jx3ZOvnp2JcwGBG5cs2GehHMELPBoTl6vKe1Ji1iSS31Szt9ntaZFa7VFWZTK6NLohZxRKmvsRfrXkCFMpR6oU7G2edcyZFGQLJXPAGC+yNN/uObBebMB8WS/ABHHIfDYLo8hXIGMmHJzMKjQLUjEEbm4rx1y7mPFeUZ5bJeO6pAgqzE8LcMFi4DoGoFpEcvBqPlEqj6X0cO7Eyw62DWjT3J1EsAjhpHHzAbEbDF9rKTDU7pSClKR8GhT6hznPEUJ1tSoVCrlOEqQKg12RREbaH+fuUeRUSSfhpXfk5+pKKdZ7P0eEwpb+h4Ayut3p1rHx6KdOjgC0ImzAfEkfnx6zYYlIE8VuY9Ucnjm1av8p50ayrs/MtokVBh/OQFg/Qqf/0cPtaqkNopdXZCizd4zr3M7qVLToRAIVaFQabii60tYOsWKj+X5gvm0gMYEnHTP+INPagh27EkNsQn7CjgBZR46Fc+NBEyeeegwHqO+pp3eqBJFc8l2fXiu0qjPQCgmRCkHl3/v9N9pRki+uGHKuFhC1dArxkK27f7CFlRMk35OIAQAjge0BMDm2YB4MqZL4hIAzwzs0ojMBSoLO1M0jB/EnFeVRWkgJg34TKNvaden8rotUztlrUeBRJf/l2rEc6i6d1DMSRpc0ChDtBltlVv86TM3Q0lqAk3lgxMEjga4eDZlehI+PjmxgSKOTVM7QDU/UM9Bq9DnWvbpiG5xRpRSEHQNbirv7ikTS2lPhmgbKBeuNpAqiLfpWKc5iJQR0SFLTMxYO1XUok2OqZvff4Gg474z/iBnA+LJ9hCCpGUSehQJ43Kn+QLr8trIA7vkxJHvoEJlRTWPUDrbCdFxA0EpE0opf9cf8BTwFmIt0CyMJlIHauksdvVFQwhU9XkBdZuAyr9F4IT4JF4XT+KUiQRwQpnv7NZmKpJTp5dduuRmoXMFkaqHUlB0aUuaE835iJzIgFNrErqkrG7ueTkn5pWdzxx7UZWpB6tPQmnY5fdCmUxiRqMkd74gyZzlotu9NflUgw1mA+LJUz90a+VQph2YiavRUSeCcnCkn6cNWUWYzychAhjyjp/Zpo7ukSjeuT4paVApOtQ7vapZCffbXZHMzA/sZrmjAwFi0n1NEYMAo3kINXhg7+MIWdByPIkpPU/eE6JbDD9bAS+WwtDp0YvVvA59si+mpRiTAFlHq3AFAir0J1FmXaC4BZkFC/wCTxGAPI2Xjh6iqQfK67jtnqBnuoL1L9IjY/m1Arg/ZwPiSRgP3UpeKrVQjdMcdjVFlpFR3le704B+ocng3LLAjTFOg2hzuqU2RlPLL/+WqjY4R4dABpKU1T/KZ8psW4oZOzBiVEZrK6UOQMBSzQbEE/dYu3Ynh5PbODZgUOyyFJIGhqubm+9uYBCF+NrVi+KePyAAAHPS+q/6CdWa8/HiqtiS1Tvpyuh3e2PJKneYXb2bg6Qi+gV76/JOKVHL75k/p1yeU1oNrUwm3OdDRn8z1NqUCbLPPmdv3PfvrV3HuUNRRAhp3psOIuggbqUIpoIYD1h9YPypDYiJ8S0LwXig4o7DSR4H4DgAzwBwFIB9ASxMv7oVwH0A1gP4FqBv/6/xzV8K5I8Ywrp5+8zf+quvDtpDAVEaY2hTD/SbZK7eFWojIFcEl/yLcI06l6cXpb0sMZP1XCOIkLvg2Uglv1sSHbO6I3WbO7jIxPqKEhRyM5F5sQmuNim7gBvmlvb40fDDa9YvRBgeqKjDBTwL0PFK913AvrT7vgXA/fm+C/r2g+MPfInEjwium7Nw0dYlZ8/f61pSe/Vo/PonxX/64eZnDsLgWQROBvQCCv+B4JzS7lU9OJ9vrZ8pSDfxNgCfI/Q1Cl999eoldz6ez3bD+MZ5AB4CuMjJScIZnVSFhctXGFx+UUvUs6qQpxIZqOcZVHs9ONGC1MZwyuLV65gqGvyUN4p/hGNnjPqsrTNR/v1HABy4YvWBM7br+r+fEcN3H3rmIOBZEJ9H6DQCR4IYY3u/22uD3ne9HcBNJL4WGL66dOWBd/67C4iP/qW4btujK6KGr6dwKomnE1iQ8wY65KNgf46MnNETlJw6FaUkArBF0t0BuJEhXBvmzLnlrNfNm7Zrzseu2TgX5N0knuIXS3CYTl54AtjI1Hu5yKLSl/MryqyzAuvkhL5gb9X3oFELf9eqH1UlzREbSZeaEUZJoVf4cLN66fk/AHDkMasPmLaM/nf+cjMH23auiFGvJ3QqwacRyicAzDKsKBk2aoXalaTnFgB3U7oxkNdi585bll5y+PAnOiAun9g82IdzDx9q8lIJryGwP4kBPdquXDM4ASJjOxRMM+949cSa+29yp6D7B+C1kv6EwqazL1gyubuf9bqJTXMI3EzwuIQHkfZ5lAOUfb8Gp9U64vPn++yK9ZBhUn8dkjwB/cJGDROFAvWOmMhrF3WBW9Mh6zaXWq6/+6T23SLtNANJfQXAqcesOnDn7l7LOyceGIxhcDiBSyG9BslZlY8hi8N6MrGimKRTTn7PTKfiJIH7SVwr4U+ksOnACw6c3FNreI91JK9cs21RQDh9Mk5+JgpvBHmwgLF6UAbGIM2NVxtSgXIrtSf/nkh3XjYSmAPhKUPpTQK+DPLMv17z8KLd3glEQbxDUkfZkBB9s8x1k31m7QdrMlnV2tfWIEufVfSDQH6op+6RZWl9n/BImHKyzr9X+Z00Q81qQKhR+lDpI/qZjO7fk1rIffVl2PXj7jXrFxHhdEV9JkpvjMDBAsd6k4WoJfxbJREZKRdwM+Wpew7H8p0j4ClRehOAL5M6c/3ahxb9RAXEZVdvO2RS8TIJ45FYLpshgJ+R93pEeXDf6xC1F6pQk00RD1NMmS0T8d5J6bIPr91yyG415iBF6PuZZtFBW0EgFIWa11TNHRDR1CsYXbsu/27q5TFTwGOlhiGo1oPtSVWavmsaACrX04aNIvpqgH6oqJ3eyzI1WenDZe9yySoi+M2aeT71446r1x8Soy5Dvu/Nws9CDbENjN60IJGvl4kjJB6YRkwodktXApYBeq+G8bL171t3yE9EQLx74uEVCMPronSOgP38Dl82qczH7wZqKu5+/l+3qCib+0WSfkE7UyC0i6jb3feLwjnDOLz+g9dsOOGxPvcAIRL8hmTyLS7oOJLg56Rp8o21uWl/09KAT1r8gHuefcf8d2aR44obBW+mYqCW0D/FMirlxiyq0zUPMgH9ibp2p47gnZNpUHBXj7smNqwIQdcJ6b7Xn7lo1tYnnC1yLwCnXQV3E0Dw16X7+34AzsFkvP6hNT864fGu5xnXEJdNbBlE8TQiXknySGR6Gkb4oiWUD47RXIDoBuorRTcKCkVDQZy1bU/+HSVXB3Q3hItJ3vTqVYunLLw+OrF5BYB/JjA/N+hgOT8rhCnXB7mOSQUyMLUXXPeZYHKTuXHcfn5WIIMV80LpK9i18rL4ic7hus45JOjft/scrtvnim2V75M5Kv/xuNUH3DrVNbt9Yt2AwmkgroR0lPUde7KfBpZUPhl8TNUSAI00aI3e+dqq3Pfuve8CdMkgDG7ab+WBwyf0hBgKp4m6SuCyKAXL9Tlqh1VUgUA6dTuWXBuRLOCicu6chpiLhQ4dQ5QuN0705aRGx7TbHyXiKgin7bIXITws4I6YOsd5q+9yaTNqEKFWiaO0lDh6kF+F0lHYrR6PdamANeecwFiaqiuq3V36wSx0XI2qMs96JyVyOWZtfr5iWxi42ewsOiDgWyI3P8Y1Oy1SV0VpWdKD8kzckhnYlJ5JGzY7O3ZNoy9hIuWJwZTitSlYNGHnZQCvmozDFzyhKdOfrNlygogr1TVXuhtVijIrTlUVQ+WIthljU8BOi4ImK59xEgFm5eZExCzdsNw8LYzUjD1SxJUfnHh4xZR1BLE5Av+Sapq8lymlSCqSLTkFculILsTTvEOnspHy5dimJGlxVPqtXb5eJGuamQsYvpADr6RuCbvuZh0iPTHPmK59qZvyHVXqIJkMf/rzm0LcNNX1uvV9G06IwJUSj8qpWC2TSZrIm5P/7JTKq3pCNFE2d500MlViDoQyB95IjNrcSQSOBHjFg1c9uOIJCYh3Xr3tkBDxHglHZcnGjALBDeanvNXd5KR7WqjRyMWmryOqAs8GXXoLrFo8edEUjj+7nD9KRwEa/6u1G0cWXGetWrIZwlcFTGYgPJ9IOTCzwp4X5O6pbHQJjxwtw0mvOn1WeKHjhC+Vk0+VgobfSfOB5dAaJYRIUvncSoLMtXEKHYepzD/AhJYtGdkO8HPPXnXgyBPitqvXHxIn43vAvAmi6Nhmxk2Eqvvl0COolkvzMyZONKGhk3TXPnkNOOJWORgNrSnR2T2OwkDj69+3/pC9GhDvXLN9URjEd0TgpOKMk4vRfDfTh+ypWEte+s4tZEsTitZLTrtouqjlPM433m2hQv0aZcPsdvznDofhHdeu2bxoCrTpZkHfcZqpzLuNX/yNYEAW/LJhm/JzGX6YVTcaFfD8+ZS/B3zxQEEj0giWFIjFVUhZNUP5BOrYsjb5UMxYHLgBS2towmXgvTFgZO1w69r1iyaD3iHgJH8dsjxnbACI5r9dk8XkfVSBBOaVEZtC2wu/eQQN2SijQLQqWraxu5LPjZOT73hofHqQ7G4HxB+t2TJGDV8u8HQBgy4OZFNarBxvZLu2/S+lOglKdMFAB1cm2NMv9m6XLhffJsGIkjKUi2KfI+e2AwFn7BRe+qGJhwe9CxB23ibwO+WzdykfpxQU9tBqnpxzE3Z5x01pIw2Ncmkic3nuUaxu944SI3vBQFMB8acl/YaQai/R1STWo1CN6kRVwQ5B3xpqxy3t9fnmNQ+N7Rzq5RE4I3b3vT7pGtKILNMtgdzXle3pWhU4vr/5kO608JmChG5dVIicIVQDAWcIesmDEw8O9vwJEblvFN6W6ME5By9NpZiGY6LNvzsZF1lDq7o4VVGavzAtMMSm2YV8gvo0LI9zgkH5h+W06Ha//aLC24dUz1vtrJUHbpf0MQHb0ndwn9MU9vppT6oJVJx+OkEwwvtDlLloeHcfyJ6bAiyaKnhp7DnMvvBaxRaSDCq5WgEnck1CB/3WM+F185NbwPCBn191aJ+/RO4r4G0J3vT3y3npWb8GyENSu/DDwyjvC6FpwqU4ECoJIJ9OO2ZWD/LthNv2E/SHJA/fowHxx1dsG4D4HUHLMh4a4UDvvBjyLm7s4iLoVeY06VjI5XrlNkDC5Au1xvwM6uIbZdfwHW5JLMFhx2jGSJdTvHTiL3/Ug5p3zol/KeHbSKcYqrTCoUKu/1FrrjI39Ah4qyxW6Y6TrHffzRhNKnMNWazMTmETHGtFzuRPUsgxu5Min3zTy6FBXizhocEYvtBel3+5YsMA5O906E3FMkg3TewJtVmQqFRJrHSj1AsOu1apLqdG9IPaE5tdQa5m06L5/nW/t3w4HL5h24e3cY8FxOQcHCfhLBiaUiI370oqxRIA9of2vctNakSxeKSlY94vxJJbu0VpMGtVNNa0gBwcrLukKRV6zdi2+T25xnPOW7o1Qn8saAhXH6TUrUGHfB5sxZ/lu5UQQKFPVPSVXLSzchC1lMptDCUVK6lOZdaC6oSqu9VyLqjyHekIg7M7/Vj+2bPPXbpuyvvepGfoLX4nDK2iOkhP0/EB5V5HdTZhBbT31YtTQ7TJR0NOmLr/uyBfvWXLlhV7MGXSWZE4tF2ADUeHGZFxsBuLsYgs7fFFcjT6qApSpFJfsKAoFlT08GM0uRfUxiMl109HMQFyf0ZeMv6Z23q7hYgbJXy+t7Cs8KuQryIzU1Ak5l2c0X8HWOrlgzNtIqqBB1MIdPN7skKdmLKugVP2dicCZIvTwdUd3Nkt1q+L+sgUefJZETg0JkQqtieeZBq2PZ6VSp3TfZ76ueh6C4wFVm0dU5ktyMqpW50u1UljNaUcYd+l5PtPxvj6Kz7z2OIJjxkQfzD+yLJIvFDCnCqPy9gvDDb0TR937JVJG0GeuCWXSqG4d6oSCrailV5MomnlF8KdnG2U5TU5DqMwJuLUOd89/Jn9gNBmEVcJ2G5wMNTjVKHvxBPh6B/+3wUnP5lb8z0HUjawcqchS7WSOFkBQbX7ad2ziDXahaFTJ0jxQXeqbRZxOYj17fX4p2s2LBPDCwXNsRNCJTXL9w6+Z8TcRFNN1bCgdmhckespQesPIftdjTaZ6TIKVa6uqrlUdlJyDOApZ3zvwWMfV0D8wWWPEhycJOAo5TQmbaHR0xPJNmpTOuRPhdyIK0iQ5bUWyWlBdS8ba9TAyF+Jsqy665p3bjYpm3Lak/ofT0Pgs9rv+rqV+0UwfB7k3+QeVjFK1FT+DQVJGn1UuwUayw0shTYxanF78SeWxZbVcRRdLyQ69mzTyJIfv4km5++vZwT5SXLOp557/v4VzeEfL9/MIXWSpKP8xlZvQr4Apk8pTTiWlc1YI7SW14fgTzBnWm/TIvS9m74FsReVrvlTvvbQMwQe9/hOiPmTCwA9R+DCQnUmXFe3b+1UM10LRu9b+XZ81MekQxTKTpB3/QqxQIcgsGvCMQkLW9c6yiFQrsOdnr5QCs9be80jC9uv+9qVix6U9K4ofN/TNWB1DTx+nvohTWfWERgrPJ1VTWCsWWUpe2LEoitGdZWtFmr7LXfiuFEj1WQ5ohxgJMDwvUi8+7krF2/oER/32bFAwHMELIxVsNsUtEf+fIpXFdkNLd5Ux0cU1vUi7jZMz0worYeSulanhXrdbjUbFBeAOPm+8QcWzjggFAYHCHyBXAfE2v+qL3hV7Bp06OoB9HcboijnVYxSO+tUKBIZqq52UvtMDeJiF8w1CM0r7jQFHTjqO7929ZKbQV0ucKftsKgkZTwVGzW7swQjnP5Sm+qh4iR1dVBZqC3js/g+KKVScCeWNeXQzl2wAgHVIEs7Yozvef7KpaM9qsPgABCnVY0xeJnOAo/nNJelwWb1Xc1Izulm6h9kEMYgWvO6sEZeL3AqJ1ZfkLv0MbN2jepjAfICkQfOOCCidEiUVhSuTDJA842r0jC0NrwK1OR3unb2gRU6U2qBsguXIjtTrDP/pxRQlSutNwQRa/WWihPT/exIQIevXbtpiiKLVwK4QuQwpTbVXAYyZ0mxkpMki4xfhv2YTjPAQai2YI3u4bhR9U6XUquIWqTAe2IXyBmlCaqqpmGazTAk570irpyawKdDonCMSq9xlO+1qt04w+nmnmRwsSPZGnXYU1/KBtHB8T7NFHpKJHW6CLX9jqLnEGs2IyQcKfDwH6xdx2kHxO9PbA0gT64wZOWCylI1l+dnDg0dvFd1qm2Snx1iwdpVx9IbGcnPZin8vzns3Y7ygljkhWUCRzRBVqGb5AvHxcnByAvz66uW7IjU/5T0/6lqJrIKRNl3yIhJWYTRbrqfTpOra+Qdi1CGkMqEEVEXkG1d0dOAzRrLseD6hP89AFHE3yPwT05dvf/ImemvjG8IAE+2ASg5nwv2hnpyd77MY4Aaxfz13hite2pU1cxl7eGXFnevnmNjG2YBUnXo67RsjIrPmjMcTj8gRARBy6sWfNl9ity0rLi0oIhwWLRct7r0c1TYqVUTjI6D5KC9aM9vcuL6SDaCHh2N2oKjIDfd5T+O1JTff7hl+72S3iDpCyCj8ZXIIkhs46OFPxWhOte2gtd2tfJdXV+j5IRFWaackg5OtQbmiK5vKtxZ6PJ+KIiMIL8g4pLhvPjglN+bCJE4GtUm1vQC6prMpyqOXEhUvZOKpKkRlG86iNlYw5UHuFR3sXspO3cxdJQ9+3j8JDnlfR+b+tgkAXQwFUM3jJ4HSbI+CtxscB60D3nUDWQwXSEvypVVIGJSqXNKQkDRORKYqBh00JszDqEfKsrBF/IEUQrKfCdY75QAcMSuFOrOv/QgAfj2B8YfvkjCdSSXAwqodFnLoIpMYrLVLM5mK2U6SmoG7x1GYWI4JUFNBWZS8IiNzlOr2RpROaRkWb8I4Q5CF79g1dJv77Ju7J75zO5a9n0pqq3f3kqmeWvSzFnftvBxbUio+5xp6KqwbnsqJqzmA1loTV3KHhI7oPS4syibzJWjvkKApCN2JeY89QnRJbj7575rVfBJdfrisH9PfVA0rDgaN6gcca5wYgU1yujJmb/TQ7X8jiNPpRAdfSFRkpELV89/OVLgYzZqzlm9+HaBvyrhi4WF7FEds7ayYo+UKIyalW4pDKUxaR32XJi6XZ+1qmXevT3iwxrhcXPfEeAXCP3qC1YvvX03pyj3h+X/pa/Ug7ibjnHeYGrvOvnr1fCUfB3qimQVFbaWJEg/52EUn6AR9c0UUDiPdMpaux8QsUtVDnNEOc/erArVlGcmOM01T1JuXTlxVsM8trOLDeWDDX+lLbYd7Fbj/RZUsdDkM1TrUi1iye4O0J67etHtkC6A8A+G6bfFnUN61B0KhqtbvtsWjKVgpmPOFt1V7xKa6C4ZvXLEweJW6siCOcWKxI3DgAt/cfeCId13HFoaeWkQK9JDxY3XNn3Q01JaevaqXwOuVrAZDseLomPzFkbtqH6IbEabMrYxa5jY/xu57670CadGmUiCXNAMvhdXyxZrrkh78hHMouTiaQmqITNnQIiW9950HhOC4+Rgoj81WiJZa3rCcmKDVucFAAAgAElEQVQtaiUsd5lKTO64U4png/xzkTsqpCRT2lGm0NgWlvCGKmA1OJQTROt0C47SkKbN6mxWjQd1RqxccOyM0HuGAauG8+Juq90lHHRhCUYbgS2fYwSZr1CyPcpspqkFRTLSZd2tL1QdzxdNhFFMpbgS66Zo+zsOGZNH7RZqF/d96hqiKQ5c+pfaMSzpeepK5Il3dnrTSt5pJsVYrnieoHfwqIlhdzJbtFHSMi7VvVmAFMtUW3DDNarotyUjrsQNZG6f03qce8mBAvDAByY2/56AHwK8FMBTCYQUnCZDJ2ftpuqSlpTaZbaURplEwGm0MlNXaNNPJkQWJQa7yRHA9yFdDuLKXz5/v2kp8FVLxbqnprRXEHhvJklTNpC/WYXvkTVs3VywemaVzbJzUG2+fczT764L7wXW8+vIya37RPOx7/suimoIwBYQ89zNMbONZonTCFvOmUZFTLe9zyGXQnLy22xLtly2ZrW+bpeiu1oxK03kVDyXf6k7RvnAhgtCbukL0j/245xVS3YAuOwD45u/BOC3QP4KhCVyFW5V6LKW1HepSREedm5FbUGOLNzv56bpIi6bNqZVt53E34L401+equn22EeEAGwRMM+6Bl5uPH/swth0RqelUKNfM/k1YvrH4OhtYuV3QW8oCee/Ia90bnaYZv0EbxzD6mimQ8cgbMEu7vuuUiYgKTDUxa5yflCOqtiMijajozWdocaHqZosaNwg0jNG/fywS41Y2II5X49putjo1KgZsHaI3P94pKTPWb3kZgGXSLhIxNdqFqv3c6M3WnTpJlMxqDSE31wHt18UGrrv69RFZBTxD5F8TYy6+JdX7nfzTL9Xgjs3t+8BR8hTr/Oe+URoh/9Lyhodvh4dDUMaJVxWUltTX4Hr4wh1jZGh8ClAl/r+7/q+76IPQQm4s7rJTLRhtjOzFd+kpmWUueK+EFXTmletzqamMPKT+2UBMbb0iFzYFZjXbmKSvs/5/HoRjycmcO7qJRsUh3+NGF8G4vVguEfCFpHRCGvp+K5qG+vUg8y6SCrupRXLVX2qvcE3WwF9U9SviTojhvix/3LB0gfxuB4UwDsxImf3jFK4KT/XA6m62q4ZWTI9J02a+jDyBncaQYV3iokgOIXzq1TxxiCrG6JTs47Q+tgC8LuTMsU4FIB7yJA1mgtL0TvjNC7jFKGQGxbuODSE3pL6iMr7jOZSnhp+pb1n6t+WJqAya1CObjr82Z4nsjs9iscb8S3spmTjLoPiwv2GAB4EcMX7r9pwLQaDUyCeA+iZAA4nOS86cTA5e7qSKZrgb5ZeJZmxehZyTHr+JIHvQPiOpI9pjv7ylect3Yo99EhzRfc4q/fCgQpu8ao4LJk/ha9ryrRY42/n10pKaPKkYRp8Zc9qzOMSTdurrUE8T8SNaFlpSfDWXaVMUwcEGQne4vPWksxmxbhC0nJl38hVZklwJVld4ky94PLOVehZUak6EYIVhMoOE7UQtjUES90mfNtD7Xvice5FS9cBuOF9ax75uxB1HIFj1XkjPFvAsQIC25JGldEDDaGrQIdtBO4Q8S9B+CoYbhZ33PbK1Qdsxx5+dOg5bnFFHfNZHl19FHKNkw0p6Rh6xsqh6gYiWeEF7vVdnULXgyBGARBVeSJbB7WTTdu4TE+4g5r6vk9dVIe5Qpy8BdQkgbGsssHaDrColqIi6ZnvWVn0qj+e7QRUU3gXB88c5vLVnI2uFvnHiL6jZ941xO5CQY24EfClN6xeuFcsm85buWg7gK8D+PoHxjdfT2JfCEsEHktqmYRnEzwM0s8KWIpOyRwAdkLawID1Au+Q4vcD8A2At4B8WIqbT1+932bsxUcYgxR5i4RJSGNgjXnIFciOmZkdW7NMQ2la5rI5e3s1tTYEITDIU9dHgRMekSrUaTd61p4SaKT4ZU/40tG7sOraJQ71WxOPPg3Apyktz84+SDvX6L+nz2mUjAo6oNf+pHPLkXO6MZQBzlCFrm9H78+QzVfyxcouQJUWKlHRzkjeBuilb1i16Pt4Ah8fmHiYAyIgiuxAQvodsuwGIc8iRRGKZ65eqifyc944seFpED9NYjmcR0ZlGmM+HQXSc0f5SK3blP5l4wyECraqPSOchq5N7DcWZf559p6VnwR82kTodhIvWbbqwO9P+4RIPYWHKH5O5HLfr5M7BpIps5FuYH8HM52o+CtX+GrBXsiaaORMOtmmYCo5KuTbXfQDMg3JyeXBSWD2cyGEdXiCH+esWpymOn+yH4p4CNTnJC6nwdWKjvyVF2bnkoTK99oAVbrU1/Nm5A8BPwLjaFis6w87GaTa2p6+E+KqhpxP0PVYbgK4y/u+y3mIy1bO3yLwHwVszfPOsd8+d51mZ/7BajiHTgzZoDOjYdhrGJxXdaFjIuV4pYrEj5IXNqiU35QFBlKB19HPtwjxa5o/2IrZx8jHiy9YugXkPwLY6odsIsxgBTUcWzFwPWIEsI8+9uHQbuyvUXY0BmuhyVcwfTXN5weZCpU+WwRQArYA/JoWzt0644BIxd0tAr6b3VzQzEl3BDp/OJZDThVuDVOzq0QAVBO4nCwkfTMqB0ymhGTCX/QDPMYN8nQAGKQJSLpbwlffcPZczS79XZ0S+leQ341+DBJ+DHQkLOvmPypukkyBxOa9axqGbArSweFy0j7RdeoaadGsLu9OGravf3eUvnrM2Yv1uAJi8eHzbhXweQmTTrbST8HBmvFsB7tHuNlUjTnIny7pu0RrulmHVqX5Y+8v6/HDxI5hcVQaghm/3gmEG3979aI7Z5f8rh83PH3ntyR9HsRkmrhr+FNORM6m11Rp8tZOUFkXmrGed5Zxsex5ZRYi8+GSMiOqMfOy++epgFqV0PhSkwRvPHb1YzuYPmZAvONXKBBXgFjfaB6lvgObRkoJ09IUq7rdrMmBaE4P1HKPJm/oBmpie6zShFaLVIlTFy+S68T9Meja2eX+2I9rXnywYtAVEtardZMvm57T6yW9mEClAhIrobZM5U+DRx2JVL2Z6X7Huq8u4m0UQEbzIqzFDcD7h4G7dd93S6hszoJ5twH4kMkTOn1VeWFht9ObL5qK4oMq6oLcQi3WVFVe6uRtIPSnpZqps9IlrVUF/UTbX0/OGdwyu9x377FuoW6T8KFWidtNbmZd2ozt1YJiLq0h6UpqZ34jR4V3kHo7M+EkgdzMBf3cjAm6NeYwkv56ck7Yrfu+27TP31yz46mK8TPMiBOLlZN8VzBZUhXIk25Ujax7bxToodYR9koNhGt8x8oKyhHHQ+aDup5JOnfvBPALv7t64brZpb77j79ds/Gpg4jPgFhOR8akaotiI9n0IdRd+Wx726zaxL7q2IHoJvjk5NGczVqlwNBYc90J4BeOX33Auj12QgDAUJP3inhbhDZm3xz1lJdRZB2dgUkj9muDL74XP4VStA0XqZDnAMiRzNTqNaFGNwCRGyPx9hiwaXaJT+8xR7pXxNsEbKyADvZ0WlEpdLBz/GkIez3py3agp1JtRGuLMDqlin5ev0JAuVHE2xW02/d9twPiilULhoFjnwJ4vcBh1rpJG73cFBT9QEbRNEoL2wZfVNibsUhY9uDWkitGlzfGnG61HszeW9p0PocQrh8ifOL3Vi6cnF3i03u8ZNXS4ZD8FIDrozBsjUs0UtjaaWuhr8M12lYYlV1CbE1map0nOu5jdl9NBi4lCIcCrgf0iWev3H1j92lPylx09bZDQuB1JE4ubTqhOuJ82y00nVhULpiuiSJUXezc+aYjp2QmB/1r5t9rmnZUZoToy2Nj4Yy3nDf/R7PLe+aPv7t6wyEx8DoAJ2fSJm3wpXJTrbsPeefNg2aOzoFaVKDuVLvXIOUdX6s/Xec2DTGl/INfDmM849nnLZ3WfZ+RLe/rJ7atEMLH2fkG5Hqr3y6v+GFSyBmh2dG6GaxuFyhWH6Fu/Vut4vQlSYWk5epb9BYkvBOMv/b7Kxd+Y3ZJ74F6YmLDCiJ8HNKy1kLX5fLyawEjasPec20ATIkNJaeA5W2E3WbX0UD8nupkW+5iiGf93MoDp33fZ+RC+t5V828HdEmE7vZqzr1agI66XzkEtbaxZSCdxSUnq4G7a+c0eGyAHV4GsahNQ8Ddgi6ZDYY993jZqqW3I8ZLBNwde+LDToC49Afsz2pgqh3mMYUQ5sasF6AzyU/vaCkTwJbXhuLdki6eSTAAj8Fl2tVD0E0CLwJ5JYEj5anZbqZWfhSiPZssHXLyRH5kEMYzRwVYoRZG7HLOgNIfuZPgJUMOb/pxL6LxNdu5PW4nFRjG0iC6k11IAxolVWQWtSU7MVdCikMNQhA4V+eunPdj7bALuEnERZSuBHlkrZslI+o3I7Pdhp4TBEujPM3bxZfnMNnwQFEHtFlyN20tEXch6pIhMOP7zsd7gS5as/0ECu+BcBKJAV1649Oc9s3c0aSQmLnBzT34dIqNdQALQYwe/gXJYYC+QnD1H6yaf/uPY8G8+32TY0E7lgRhgaSFA/CwqLiCwOEh4GcpHCzgUAr7ApoP8gCa8hpJbIW0keQGiBsD8UMpfjeQ9wDhHiDeC/FRhvgIwtiWc89bsOPH8T3/Zs2GE6jwHgAnERhADexKyETKauiV9dh8GSC02oTOfr6rIoMbl2jhWhJDCV8hsfq5q5Y+rvvOPXFxLrx62yFhEN5B4Awkc75Ct2af3l3XF4WyWvJAX1RXRXdRXLfavVDLgY0krg8Bb/3vT3AB/a61jywdizgKnXf3ESSOD8ARAJ4Oab8KJGjz6oyfO8ZvcH+nu26pdnqAwAMkbgVxN6JuZwh3IYS7zjlvwYYn8nt//OoNh4QB30HwDEr7VffaFb0V6NKALyP6SkV6gA01HPVrZc2jjQG4npFvfe6FSx/3feeeuji/sWZy0VDDl0t4G4ll6YsWajhKBlUQoBwU+YgsPys8+F7DJytsmJN30rv5dhB+n4Gf/sPz93nkCQmCiYeXAvylIL4EwHJShxI8TNICVkiZqYL0EDG4mY5MgSukTxVxDWqKxlb3Wlsp3A/gPhDfCJ1K39+/dtXiJyQ4PrFm0yJKL4fwNgJ1sd2gQw5F7M1Q5FMjpNMhuNkHmPC8v26CcAeEtw0G8dO/sPKAPXLfuScvzkVrto8hYl9Iv0viTACHkpxDp+FeDQH506FCkixtAnxKlC5mFAlMElhP4kMhDC7HcPLe/7F6wV6bNXjnmu1jQcP5QjwxMLwKUS8jsC+AfUgM8k4fSCeh1i4E1PCy/zfCBm5Sl52+425DzP3d1oJjJ4QdhB4g+UUA/wvS18fGxradfd6CvdaD+Zs1G8YQua+k3w1kvu9jPXgVtUisT4nTnyL9ABgrmD49JkmsJ/AhEJdzB+59/sVL99h95964QBdeuW3AsXAcobMIvAjAkSQXenGifAYw1wAa1dLv7nJwuyu6HfG7oD4fGK5YumDebW8+m3ut0PzjiW0LIR0t8jmEfh3Sz5EY8zt82cnrC+tqHRRNqzLR5OHi6iQwVTW6vg1KvixlYd/R2Hy1mCLJL5P8qBA/PzYc3HH2BQu3761r9bErNwzGxnBcQDhLULnvrKk7+c4b/O7qaVoR3fa4tgD4HoDPA7hichFue+HZe36SkHv7SL1wfNuyAXkSgJMAnkrgmD7vxe0QbsLJCm9NErybwOcA/CNj/Nefe8r8b73ql/deIPzhxKOBiKcQeHUAfgnS0/PoY7Xj+1PAH+euxiFH7YZ+YzB1wiqFqBpdLsUqeFwCGVRP61P9EwTUtwP4DwA+ORgMbjz7vAU792rRPb5hGcmTJJwUiFMhHFMCFaq/t+ci1RvBJMm7CdwE6UsDhFuGTx/e+osv2n+v3fe9HhAAcP5lWzh3flgwCIMDAB0CxZPJsFzQsQHcH8BhABak1GoLpE0A7yJ5DzS8hQy3BODeID70p6vnbdmbn/W/T2wdBPB4AG+C4gtIHkghmIxuxxcIzdFfdVwrUpvb9ZpUCKOe56ZnPQLjfz+LtrBJsawot0ndpk4bEtgg6f8AeNcAuBFAfPXqJXtlgV172TrOnx8WDAIPgHAIgJMJLCdxrID9A3AohIXpM2+BsDkAd4q4h9ItkbhlAN47EB96wep9tzwRa/UJCYj2ccn41hAwCKIYHCJnO16WNqEQJyPG5uqy8+fsVfz9D8a3zAfDCkIXQjiTwGIYtaCqedqjvsp1WZ8AvXzYISplYL4qrE3ZsgzbA3VQefi6rS+qmgSZXkH4wOjkUx6l9A8A/jCMjX3z7CcAvv3f4xsDoZBQk06XN12qJGCA0BlpKsQYHx2DXnb+Eyuw8GMJiJ+0x/+zdusxGOIcEq8DcLCDcg0iLhesNvBgc/yPKKSLKH8Nn7b5sqFsI4plpzZCg6bhcvIW7kQFUxcvoVBRtgGSPyDwfpAfnb9o4W1nnMX4ZF4LT+qAeNv7d+yD4fA8SBcBPDbLC1NNjTAi3zWZG2vI2yI1pWyv3lYhLHT9FNep7pMf/YKn8z6t+D2lbKGfIXEaVcYfq08etzv/HwBrBaz59dVLts4GxJPo8TtrdwzmTQ6Xx4DLADyPwD41GoTeInZpk1xhXPoLVTOtkNNQcno6OoPl9BSTCT17O3eFyPTSot4pVqVn5WRIxLG6yVcPXzF/fkHaQfJjIYT/sXNy8s7XXbDv5GxA/JQ/3rrm0UVReHlQfCfIp1Q4t2ffJvEHRxtxlPN+w8x33bMObbDX6WSprJ+Siu4irsX6xAHggqpa5IbKymTjDZ2hV5qvptsgl2m5uqIflCGEuyW9cw71kbNWLnlkNiB+Sh9vuXrbIRrgHQDOILBf1SxUne83eH6VPlWdd5sLMNSo8XmogqZe4N0CNHVB1c+R0VPQIFq+piHLiREqRbDmMxD9eqftf+RCHdhI6PoQ41vPvmC/H80GxE/Z481rdpwMxT8l9ByAAz9X0XTPjWTonFbbLmtod9rSA3B2RS44bFBmVF6fapBRaUwXNA1ztOGHyaVY6RSo3rd/2sirSJPOhacOjiGBrzGEN79m5aIvzQbET8Hj99ZOzt0Zhy8C4uUQnpGzolD2+4ZIZua4HaoTghhjD/kZ2an2jjlSH45NzYGAxoc2WeBmyodDkDAKPaoXcjc70u70PcEGcgRc3INoe9BuYqHeQ+DSOYw3nrly3x2zAfHvNUW6atuCnWPhAkC/DeBwW/h+2KJXMNPGV9WnUOQ+QjfW6+FUCyIWccJRU1+j0Sf0SX+GSDkKwwh+T79j7hik6SeB5d8rblg9ujsyIPLP/y0QfzY2Nueas86dv3U2IP6dPS69ctv8MIZ3kjyfwKKcr2f2KUfl2cIUFO0GRh3FM2pTF69YXnWla+cAelYrqhlyGs3ZfHpHQK5gGZQZ8X3QpE42VJP+zmIEnOt6Y5+yej7JRwiunTt37C1nvm6fbbMB8e/k8YZrti0G+TaSl0BxPlN3ITse+4I2L9DghBUz5FPTk23B5bEX5sXoiX1qxBZMn8pTN+z9MSJlqYKp6lYXRmym0I9iz1YeNPQOXp1luUp9Inr41qwF3GdOWViwccVtJK8YGxt7+9nnzn94NiB+0oPh6m2LFfgmBL6Z0rycI1MVflpI2mxYlX7R+50W6TUy6c6nR3biOH8KX8wWywDvqWCqpFSF7njfBRbCoztF5PwS6B2NR6U6dJ4BBYZVRbLzwzehqSvQNBnTBrKDwJ9oEN71uvMWPjwbED+hjzdeuW3+5BjfLuA3Ccxt0SPaOvBIkQXJ6NHGfjFbpsCNm1QhOZ6J6iyDkUchPRCV7JKs+TZi9oGuW50hVlSmMciHVo8iUjfx/GgvpqgVmp6KH/+s2Lo7gPCe+XPH3vaqc3560qcnPCDOGd9BgQEhzbopggzDD6ya87g4NBdetW3BYMA/IrAawHwnf5kabDbjXXbCEYsdrvCuitymTkAD0foTxxXWHDEcJU/go63BPtW73uEpV6N0hTF7DcESjG0w1eRBez68wMGIgtrZtoVaHwvq0qfxOBj83rmPs9C+bs3mEKWxoKQxFyRK8fRV+z2h5L6xJ+JNXjOxczGAfSktFnAcqBMAPBXAcoCbAPwWgBnLxbx+7eRcxXgBoPMFzE+OciW7iepgVhrpqDP5rnRnS8JcKHeywYS0jpu58OSNUUY/k6cdsuF6YR6l7l0H8VK1xAQDUPzRQnZRVTY3TF55yAsyu/r1vN/6JutOLlVWeBc3J1r2Za+VEznTkHTKWt0BFnNwCPMFrQyTk997/9rNV5x7/pLHA8meTOFd6JSF7ofwDQh3fmx8060M3Axo0ytX7rv5321AnDmxc14AjgnAiQJOAnA8iOURmF+Oc2gniXeH+WP/+njea6j4ogStLvL8H7kFb4uQ1ZpxGXha5GaHm3fULNRfWcHCuVyWrZ/oufyV7EXmEsjeAitxFjPKWux4VdK8WOgeyErpxSI5Q6zRECWg2Fr2Xcvs67J8LvvYqjyr2q/kLxmBhQJ+m5F3AfjfM72Hj2x59MsL5+/zOUG/DXIMwitTMhgl3ArgmzeMb/ocA2+N2nnL6asO2CuTf3s8ZXrl+7Vg3uTkqwmcDuAIduoTY70puW6N3SXGkz+4ap8Zm41fOL7tZDB8kMAzRoxyeoWObF1ZbJTzhpn0j9B8xpJvewVyVk6qjdyO73ynFCr4FKodCvLPwSgVEk8Rz+Gmfu9ALSXd1RgjqOllwKhIUXcxH3oW6rVQADBqLrr0Ou4JYey1r1s5f8Yd7Y9ObDpIwGchPIujFDyA7STuJfAtkh+Ig+EXXnnu0nU/cQFx+tphoLQkiC8k4lsIHI0udWHVCPLSMtJOkGd+aNWcG2b6vhdc/eghMfCGQJxEmCgap6gL2DTkwFQDdHkV0cKWRI0gVVNrpihSB0L5uwVLkeZ3sxN9eZ261mipG7UUTUXuqxxX0R9IKmiSdwZt1D+qQPWIWLNQQo1+IUG5OYv7ikI4/dzzF86Y+3TtNRtfEUK4DtJgZMFvMPUWQA8xhD8D4kcQsP4V5+33uMUGwuN9gTPWDA9i1OmUrgfitQKfLWBBuXdRdLL0xRRFgdeK+syMT4Y1k4ti4DsA/LyzUiJGuBOplsFU5XEHQDHn/l6ZWiXV8dKcfntPiL2yzHtUdfdY5BtTjlPUz/1nzM9DraYNMJtFsshEyp4jgFEwWTsyG8+498uS9SWs2TOdKVfNWRDA/W6Rty8rMbkyyb0/s6zkcxCH73j/mocXzXhBhvBZAH+HRu4SzFqHxRloEcinKeq9EP8WkWd+Ys3mpT/WgHjl+OSJkq4E8CEAvyggFDnz9EWiLTI5r4h1Ufh/J8fmzAiuWzW+Y2xS8VUizhAxMK+IUiuokVzP7jI9669a0r14izv90couKlt6Cc7eK6LvnZeCim5hmZ+CX7AuKORWqtjIxns7KefEVNsGWPbktE4Rla+/vFNsyRm9QWKyMXP+ceYO1TnB9j0cojI0hIHEMyC8/P1rNg1mcm8nd05uEfTnAn7kKY2x6L3CbLPML+I5EK+UdMUNazae+IQHxMsnhnNfMTH5BkEfEfFKQfOK+G3R5+6cVuF3GduhPqtB+PpfnzND1QzFZZF4i8D9+o6WzoXUisViJlC5nvYsY1MV53djbwOm7HFgu3ZqaKdTwhlFom822W0Q3exwEfBtToyYPk5e9GToTGhYm5GUHdM5hcgZxqg1oaycOVPcZDaI815gkZ5NVlk00WpfXPtrkoucdDrvJ+Cd4Njymdzasy/eXzvH+DUAn1CnwKXoNyhnt4Xaq2KJhDMZ+ZFPjG96wycmNs3d6zXEGZeLOxbqcEpvDNAlAOY2xaJceqpQ1Aa9eh/WkTzv2pVjfzOzPsa2BQyDNYj6NUeDcKQ9pvetcv22OCN7kjBuPhq1WEDJgIrrHV2tUeqiQg1p5w2qJlkBFJTK+dRMw+jf72DXSNY9Dj/l5mqfwt4113t46oZ6gmGtvGQwq3tW/hxyNZgJJfT4Va4R+FlRL1u5csmjM7nPH75m0/NBXkvgZ+zeqenRjPAW6f55B4G/kPCncf7wwdNfu/uyNdM6IXbO1zJI44IujdLccpSzbMiJ3iPLzyG/AwnAzZw3+NRMLtK5lz0cBK6UcHrlTW01QrG6d85+dO6m9KeDk9LPBpEocvxmHZsl/U2qn333myLhTpe6+R26gb5UJC7Ze01/qkbri7H1hI719+n6Fc7ZB/Xp0xX2xYiSwggT9i6VElGfAq728LYHavL86gR5HsTzZpq6/NoF+35RwN+n21RxCAR2jlISolwdZKnzXAFvFPBX3M5leyVlevn4zhURulrQiwGE7MUQ085TrFhlRBjLp5XTkyFC+KMPv5YzEsmKC/c5BgznC5hbWfqaeRNLoVunUaWGQVVY5kXnzcTzZy+vwdb+KUdJtNRHKY1xFsI+//feeuVnrD31nL1wWtwxp0Ou/EBTMLu6LAesfHqXF30URnsy1J9Trq4qdZjbeuW8BGE+ECge4s7vbx8AF62deOSYGSf0Mb43dtZYpWaJpo1P70keBV9jZC+JX0QM19wwvnHFHg2IXx7fuWInwkdFnYI8pch6d4ZrTsVC17HqLOFyHxfwtZlcm9dd/ehcSa8S+R+Tj5nqHTxZBSuFRZd3yyMtblGqytk7PzNVhW7lV+aKbRTf7LwoSrdXBk7VAUA7FXyQRFbeeN4MJJ+6HdqkXNtk/kX+nsV8pHzNbFNsZukqeX70AZ0XcEGovH2xmZ2U5zn75bL46oD0nyf/7JmCzhkff2T+zJoCvEXCZzNjIBm5u1qC9RqEndDd/QcFPJ/gR28Y37DicQfES98rvuSaeLQQrhK1QqmlpQbORLPTwCltueiejNIHY4zTPh1es2aSw8HgWZE4t1sshvJ4drShQF1hjWLO1xXClrqYow2s01xM6FE73shOntbVJu1UREpXnLE8zWXVIV3mKsnmNSRUxaNL2VDv8MUE3YFb3QlNH4hyTgOCs70AACAASURBVDz1CRVHoW3J4VU0qkgyKHGpSI2Mgc4dFpU/uDdIfF2gVswoHkLYQeIqCTtiprx46DUpVfVcbt3aAxEisALglTes2Xj0xz+4jjMOiDg3HiTqChGnCAw918gewmMXPFsiuR3jq4C+ft2q6SvwKcYg6K0Af9YHYnS5faxw9GzuXVIeiSnv7AgRPl1Ql/64wDa7pux4mb6DNwl3cGoOpiYnt/SJsOAccf1Y3VRV9mJIpwVRn4gZOhVG7tLROVXK/081+tEYqXfG6BlONei4s791Mm35HsdyapSaHzFfu+6FDxZw4cTEw9OGYX9t1WJF6GYRN2NE2gmrbaQqCPNpV7KIIPAUiO+OOwaHzyggXjQR54p4s4BfqjzAvFcYfM+B3la4hR13RIQPI+qBGaWSIbxQ4It9KuYkkdqALDcYCWZNp4fqxpeyZx/dkWxtYJ+f5hrDClVLLdoduLN6qnSrS8GurNLpTwGXlyc3LQs+Wj1hUHJtRZxn6VToKKrh5XK9/IJRdcobJEtBrkdBt1kYeFX5gLvUJdcdOb+0TYpnAjh+Zvde6yR8MgIRLZhBl2K6migX22VddvVdkPBixvDGj41vnjvtgIjCxQJ+w5kg5gBIQSGH48N5VLenCCDgflD/ev0F86ZN8f5vH9QAMb5JwD6oeglyXVvmkxsudVJbNFoKk3PkhOYoH8Eux3fpSEbO1Osmq3SK5Usmh8Z0weH8l2Fm89HEu4ViVlgamrZzs9h/V9fV9yGQGLzRTA/tvkm2g9cImqWOhDGWiv+zv4dqThrBTjCADAWlgyu20wJdLPBN75nYPO2+16+fv9/OCP0DgO/GulPv0iMW0/hYDDlTgCfAJ21SIUqXSLp4WgHxn8fjiaIuFTAHNaog3+iKacPK1NG2IZXy8wjgNip+c0adwx3xl0Q+U654F1k6u/lYtxTD5drOrTTtzuxSALGgYBKjzZTSIStMp0NuqJWdRwVlQkpN/KlZgAXGzERK+X1aKKg+V+pItJtIPnKL86brVEeXxrmgUAN7pqqFLiWzTQ2+riF8QV0hUOU0cytRHl62TnKhdeTr6k5bSjptHsIpM1oDDN8CeWcqlJ3xJvPJnVNRR91RObGruoacQ+LS69ZsOnG3AuKX1mhpJN4g8CndoqdcsUlPw0DJ5eUseF0d0e2M2wX+3Q2r5k5bzvzsv3h4TDH+ioAD27So5MZwR7bduMy0QH1j1SzevJjVIT6uUo11Z92qW7Y5v4Nea9JrRpZKsR49fm87bKFX5NMrGgWl0MPlUDNkuDsja/TIT2WLXEOucnSOlH7FmvpdJqrhqRylZpBPgzxAUd2X7ruHrm6zk/UgSa+5auLhhdNdB69dtXhLBD4Vu7WEijKTZjqi+6xV/KYUM9Yw81MR8ebrr9l00C4D4tSrNRhGvVTQf+kKETGjFQ5FUI3lFyKaQZ/1In04DMJ1M9kZds6ff4zAFylBvapQlRwVopvKtGO8C1S51EmpMqUqyFYlZ4j1Dg01pLvir934cKeUigBzqlPqi9iYbdd8phJILg3oiuhy89Q0En2jMaUDJgblGoJsqBXptIgNfSV/wSjjN3UFtEOi6LjCDlbtIGF7varIl13X9PmDwJ8P4NNmVEsMhx8FuKnXS7GRb9uMk5RoxWErNZHYzYvxZQo49WNrN4apTwhifxG/KWCJWRvaURqzMXcPXVKZMIsO3Ox+N3z94+fxvmnXDtc8OqYYTxO03NcpsT3K6XcoOshUVk3CcuJ8tFp9kA3gZYOjrDrNmTPj2aFo2bVI/ZfM7lXWRGbdA/Cm8yoyA7bjZhi2DkTX4GhrtBw8LJMSct0zifX1cg01+DS4ei2VI7bwqvIGFNveQz9F7pEcsw8YgGdKeN7VEw9PezDt3Av3u0/E3+fAhuvvVJtOSqMi+oKe0dJOCJoH4SIJS6YOiIBXAXiOYdCqFn/KsavFIQ9z5RwElk5ExhlNUWkwNl8MLzfCnqEkERzxGfIRn4FR1giUhzVLymE9A0sn1DBWQUXVgIEqsl7bbVa/U+7TuQYZywxSGKYePUmvaSSq7HyuVioAR6q+8w7vxDam+gwVs9dRP1CxgNthhFzWqASVo9IoqqatxLwmCEbiv0ncZ4a968/6Oi3nSz6wI2TEzg5k6NLJ9l50tdhpUXzRyIA47SodEInflh35ZQMsi3t0M66H5rgdZx2AT87kmw+jjhXw/EyDgys8C5KkJt+Xq2Uod3oQbq7BjpGGG5RnFqoF3SEX8gsqNjwnNLWTfBop/7yWbu6upfzAZkKhUBithvGrYgfIpSVKgVDYhzVPy4rh6OnlMgStsF2b7rTRvC0FS3WNY9PK+jD5c7FCyfM1PEXUz89okxQ+C2DryPVmrQGHcLFG/jJE3KV5BBAk/u4N79+4oBcQk3NwiqSDDJOW3TRmKndGRvzirPBp1ZAevq5ORGD6X57h1wXNiaN2Wsfrl01VGu106lPE8nY3rITmFMkoGkqNUtUdlm6kuxTr3keX2+cC3qU0DQ0ChX5hMxIsMG1xJE6LGCMgRxsQslFoiTHDvBmeVo+u7fhOaoCQwgd29GpVtOIooBqc8ilTySxgYIGrLyDMBcJLZxYQcaOgL/iqudn1c7pGt/HQNTJTkAbZZqmjd06GV1cB8fwJzVPEOQIWjCLESe2Oyv7idIRjtxC/BGLaw+CvuGb7IkgvtkKZjjLBXprUkvaEwoWmTb6xKjaL70lLwmuRoKxyYR3bduBJrvdBCxYfTHDkZdcxHpF/l863n7ZzDNjSc2HFhULhFmVkyTNom2I75lrEoUSub8F2I4mu6w4nxqF6gs3qC5UTl811zWnNGX8x8fC0p9sU+KjImwyh86hjYr/mQSx6gmP5VaYT0Wo/YH6UTv+rNVvmlYAYEsfFzhkytAttdL0go1q7GqLKu4GtEm9GCNPmLsWxseeLOLjlyMQqx7fTIC8wx/dRFFQPAaGXDsX6ptvAjSrCmwMUPI9JrsNrqFVZmCl9G0UxR6GZ+9STMvw8B2BJ4xIalnLiHDAq1BOWKTLjR7ljy9dIruD2xEO3y+ZFk2tImMqHS4vKXFKFuFkfZmQKneu1gxDxvOmui/NXLdkJ6V8E7nQFO0awrR2DQB0TFnWz0MHHJHlEiJPHlIBQxLGADkevMk87HynLm8ufVaGC/k73A1H3ffrcGUzFCS8RsI9bkKpHmejagA2jtJqSy7WVqlqnPeXgZDjEOkVxVIR+86xAvCpiemVyjt6LXtYD6brGPV5Oeo2EBxB18Zin8szHW9Ylp1jxejJRUQYT9+erowEkcJu89XhsxsJOELmOdVfM0zXpWKWSHgl0cGh6z3kI/IUZwa/C/RG4JwOE0WjumaGLQnTs/ld0qRIcqxHcuyMAnAgA4aQ1cYmI00Tu4xtMHtUpFVIieGXxFmcxjh5zUvpOBKetvvDya+K+kp4tYawavok19cEXre4zqFm0lLFYWf2bb9JVPJh6VzUUSs13bMlmxKhZjJhPDesxFMmM3lCQEzHzCzQNwxCusHU8KlUDQXBpjO95MDdYZTB5hZw5ZqzrWPsZiN4QVkW3dvBsNbjT9C+6v49J+IXL12yethhBhP5NxF15U0Fzarl+Q0Gh6nsiAyRM0GFM5Ekfnti0OEjYV8Cz+7PGoufqe2MZ37Sxk4PtgvnunOGj09bMGQ7ikRE4zN/geufxE2ZEZBlAKlqSpbD2/YN6uksRdipEOKi0nBBqeDwc2XPxKh1ZiqxRt2CpgdhuHuwP7pRmnA0IVbQUW9hUmX+uUaBYcXzc5/Ank6NkRFWQsjspm0m99L6ZOAePXFWybDWr1xP+3ElxGOL0ptkA4KEf3bsOwnfq1EcqhTvq74MR19ZPcLra53iB+waBSwQc63JA1gMYTfPGMGq1FHAYNXqbyDs/fcGC4fSzJR4h8OCGONgWseX4tvzYybV4xCMP0NR9iBzYRaPOLcBGFqZrbPo6JLKepZCbkh5xM0o+GyWDKAtDFQVirQhrzcyEnCNWjhPljqwfHfX8Jk/E89Rwv4OiRwf3Bb9cU5Mq6rCZuNhnv8Zex7qXPaThLfwMQpi2EMFb33aMQH5HwLZaQCFtGlXvybhoYL+Z7Fi9kLAcwuLQTTUh2DHtMOvc2mnoBD1ExkOt3Va4ldJ3pvtl/+v7hoMoHAVgSZX+OOw9F5YNBdmhQVbooqhiVL2TEf7qdCkKnYt6gRF7DFhHzc4B1UOOMsAAm+LKKVgh/OV0Bg75qSDeimPUTPXlFMipfWQkKr9nbFPZ/IULyTD3O0Z3rGP6/tENHbm6y0vRNPVVD3QxCkgXwAslHPHuNZvGpr9p4m4BW/L1RCPNYyTFggiwzJnYyejaBZKI+aKOH4vE0U7F0WXkuZsiL3iQ6kYVQYZiF07HggO3CeEH0/2iO4ZaBHBFXpZVh7TQSOyDCrXagmAqFMWQttIizeJ+3c7hbeG8wETElHIklaRjHtx3YxRQr+S3SwSvYGGu7HbMMceE6FNGVtKs9KIeRjOnGZ7ISZyY5DkawX8b7Siize5ktevq1Z2rcdnyHUxpmXJsBrJdxs7aMU3vLFecswjAxmn2I+4CuEXAgbBTxwg77k4rG+AUkRWZjRMaPJzhPwUAPwflQfucj9Jz8hPj1alPdCOaDvFxTMoOatzCAe6afjMOiwWsKLWJKrU91gNJ9WRayvkZS7HESijNt/UdHRZAT0TNwbOOpeqLS6M4551RXuwg1yQ5Cqvhe/XQKrbqFY4l4CFSAmR0s9AR9fxF+f6Otp5fK46ik8ilYPLjrVZwlmZdnhL0SoNCQXTqXo5jFtMFE1OqXU4ZPI0DTXveenKgHwjYFl3fpfRgVE/Q2T2W72Kr5lmVWvHpgcJhRT2uGxIpRZXhnU6Yy7nQRis41aA0D910Pqdt+B3FfQT8bE3ca1CgfkOuathZc1BOuIyOiWuTbblPkHPFama6qDqUMbmy85UcPwRUtUmGR93zY1tk0ilalALY3bw8X90oIEq1YiCq692JJBhUngUSMmzq5qvVjLf2gtHgUX8ydHMZXmFD9WnT5ugZQ3b09Ir50H33Z8aIxdNdJ68/f9+tAtYX5rFX//BEPtUETeTv5p4T3T2DuCJE4ilN18ryxynyeLhpOad95DQ4+b2ZYMyEDgBwSAexsrIgr2i81hEvnHhUnVBna0A/71W19B1D0g/IoA1GVMp+ldRJtZhylsfCJSq0EnGUUolrzhVDt3zCmQKiTaVZt9xOaN+Qc8wCjKKtWGD6JlowVT/HhLXpN38y+B4I236OYiVOUI2oNpB2+d77idMPiARmfFfdQZg2FtF36ivGhUp9ppJtqBLESKgkDggUlo4oWnoCYB5ijV6epaE2R0mS7pnuF/zPEzsZgf8QjZPCWtep7urGmjNFr6FUIVOqO8Vl56zmJvpExfIa9LpSHUKDJl1z03WsmbKpcG2HmHod9PqEk3GRaJN1aFnHFUPAU7adpAzLdKF116vgj7lgHyFsJnk4dYRAWzOhmCU3YzM30TxHuYJP8P2Kd41vmfZoqYR7gE6nCR6OhwUujMbRIKiWMsZ6A91/DMDcpgHMpgyiGXNQ1sesi1I5WUUMOG0xgYgQCCyjg0ZD+UCsjEoy6a01MUlbrWKZqjW5FiZ0KlR1pTlxllngRLvIMpnMI4pmasLY+FD01PDlALCGHVzqOtggPgtRA8VgXclbOm88AeZr0jkLmcKeUSy7BR7yUARZFfuugnd1vnqwQdGaY0rKk+yP+aOW8l5icjdCl350B0wynQGLIlEu1GXDnhnzPEozsGWQ9GBt5+QBFZb3zCvXraJiYCnDFbtSQZozxnpyig14U6Ml+VVl2EV5Qjomk/nGDFKmAAEHF9Jz2plZXQN19rBdGprrG+ccVVKjaivpVrcxdT2vwwt4uO9gP6vgKRX/0LJAaiQMWey1GGhJ7fVL9l32iavAcv4NbhMo1l3M8xCJs1MDg7Qaw5Acu/us9zrbUxwupjqASOtYZ3ewCm8rdHDTvU0bSoGWQ+6yVztoWcdP40wCgvoBGZRhL8fI7YoCJt8Pg9KEsvS7gSVaP4XZU2NMwE4kMYEWWhwRGG7XI1pkMR9EUZy+I5AQQD0jH2mhCUiWPFvVpFthnztjNbrCM9U0diPlnsPWbChnByKrL5vdRkyNFQ7OtCasSF/cS/VYHj0gW/xdys6K9mI7QWUX1EU4Le2FcrIBlW1epI8FFo547nwbUKkKPi3YtHNCypuee8duRy5y1v5rsoJl5czqs8kXS4+HSzkD3x4GbohdFJZTlo6OwnII2UiG3CQi3X5EI3XuGJOwnsQh1VbbnBIwyzPP8zYqQ7q+IaUXFKbt+xC7tbgkO+tEVNaHbqmw7QVAsSwon87BCXH78Q02gex/jaO6QN0ypyzQ6K5BGcNg1fdNOzbNO6GIG9epVLfrR1X+t6jSusa6LpQcxhClPFTUaRrU38P6I8bLyltmSEVpqHs7lbmWHYDWCHXBgJKY+JzLB7TjxPmUt0s7ddjI6/5Y62UY7kOQP9i6TdSlaF03y1BCS6tE32/JV4PghsCAda6CGHVLctez8j6IdTrFaiprML1Gi0O5DqmHe/JOXNNKqsJfvlPtqSRe6Aue9uCIdMFbIxJOQCDCo66528meuoh1uWWqf05OMXLUvIbVBqgGfxxt2VZRr28RKw5O0ciSl5/0/KaISpHQWdUXbk/ptTQolIqQmXpcqNKPqZQ3pD6lvJpHz9N0hZJ+QGx7eLsH0T/aKo87M5kyDw7/eQsSWMTLjCqf0rAA4M7+rtTLlzgqffLzEai/+KPTjwcgDyi1zauRStV9l6BKhCtmXid7MKBrsKk3AgvWSI71WtI0oLMIQ4VydYFBp+kKg/fUh0SdYIOJmbEl5VWmJ/XwFYthn8uhFbKtrx1IGsHngdO5ylKfBR5O1P6MeKFClDJbNkGvKR93jGgPacs1AFVRs+2995mhQfl2eTAkXT+fI8iTIv0aqsXL3IaBHwQIH2mqZ9UZcDOG0MSL3yVzTyAOsW76KRMoYv8WzoujdlSO8EuoIL5W/NbDnqw0YJvXMUIjWhGyPEpbB1CUWyIFds1NPxruXS9wqlLW8PT0ctLVn0VZotKmEj1k2MjgyzN2m1FPqUfMA0c1PL12rmtmmRCCRpx8nhbuJgSjF5pDJbV/gNMM3P0NdBDXeRnNbOsVG1q6/yzZhgCVUJz1Z0B8Mgi4CcCNNXJZV7NoUaiGEtMsMGiG7qbVSKDtgD4S25HE5nl0YlWsaOxFZZA9FQz1hnRc8MEbNsqEyPyoJGrynGxgyDRHfaPNLRJNhesXaogDfOwEqK9x6ZL74aiW7GbXhY2HnbcMYDt52JvvMJKs0epHUNiBZoRU/R4HVBEOp9uHYHSU8kpRhGikiaB20wTMmiyd1F+M1I3hG6t4v4A3AfgimIrh2iqGzelATwRsAM4ZP0bJ7EcJ6g+SS7VrZn9MEXWakTPMiq1pi7I+Fl1QN82wPrPXeEPNfDXrYSC0w/emeVUrRDsFPOSmXDes5V8nVsIAhU6R8Yby8+IQ6jVjHTDttaUatms1DaRsxGi/Ry+n33jAVWYy0TnVt9T6WH/uafMaYBugPN0nL/w8KKSWZ6WqoboFwE0R+o0LVy75wRgAfGMV//WEcZ0biFcIOBnASQAOG7XqHQLFUSWHeu2L3Q8I1BB1aaXIRacFKHshuIvPC0N3itZUouzW3KDQ40glVCf5N1cNPcPyofb9vc26wD6OZeRScBTc7UilzTWxNp4y8lVoOxkazQswuCDmFNdIHstyDS6R3fPpiokM7VYEZ7Z9H8fNtX4SPQaXyts4w3AoXSAZQZJOL5dW52Tf7TKklD7GvQL+GdCNAD560arFDwBA4aJ/YzX/L4A//0/XaC2IZSCeLeIVEH4ewP7Vbes3N6sFHQMWANgxvSPw/2/v6mLsqsroWvvOnc5MaaCFCAiBookNPEjAAgHBEEWjiS/GREOEQFKnRsOLPmBMfOARgyEk8iAMRjTBv/AkBhNSU0QRKQVDDEGJ2l8w0FCmA7R0prOXD+fs/X17n3MLUzCZaeckQ8rcO/een/3t72et9X0UiIOAzvVkYY5K9/UuZuA+2EAle15MOJxD36lEoy6vLeZ0OYFOyq16Uqk+sKKktxNvACC0M6TlDJCkEOXntyNYRdRKtsUFp+9367i5Hpuh6GqsdN6o6FDUV1in+w1DHt7o8ZwEEAbrPJsHalZAHtilmpvvy/PuBACvi0vfQENYnFqMAyui010e27OSS/4hBOINCY8DeALCnwX957at6w76z+2IM579BmcB7Ljifj0XiV9IOAPA1SHgaxIuQ/P/a0AMs3XSeroL4JA4fckc9+Y/7xgnz+gZHmXN4I5fyK7SxawJaR9aCM1DS1s1jdOUv8MKKuzb7ZMhiAQDEw0hbT+FFIRN1YVUBcoWwGGDXrIYOWovehCpdsCFFkIVBYX53IowNCFPosMTaXLYkhWThplWRpJpEE2xITfDobOxBAJ62V3WKdCJSExSCuKEppTOL4ydHgbK8EZI7AHbD44KnCd1SNDfiPBwDNrOY/ENBBy9bXpdbzeYkWqlZ7byGIA32599AH6zeUZrEfBJRVwD4SoAZwP4EIQzBKw1gkuBfC+BuYHZRJ2RB5R8RcDAn2IPTGPssvu0emRmiJZlnDQWt4vI97pw0ogZbkRXEQZVPKmExtZMh+TCI1LPzRSbe+2cQ0ktDKHbGOhDyYwcl3wk85IoxTFZAZ4Q6wS0eTlpMe2YBdMlY+IucqB9d5ZAqQ6haGSBNhmZxQnk1aImJQQBDA11ZJ7EqwJeC9BeIfwdXPwLwvDZb2+ZeM9VzyXJ93ZO8+22IvUYAGye0UUSNjLgbAkbAWyEsFERSxZ9tPfr1f7kST0L1RXDcquWUv0WYW1baBz/ZiuFQfueA8LeHKLrzpjLxUTJCbGUXS5AduffEH0yZyCPd8yxuZyhiA5cL8hs/iwcJmzMQceuSnGVz8lSNtUaImuejM+3HZ8pE8IT7m8dSSpNrqMQGl3Ge7D2ZsyeiIcAMRC4ndBugXsB7SPxb0Xs+c7W0/bhBI8xvI9j5zR3AdgFAFfMKERiCsAUhENLt/gogK+1YzZFT/bx+7DKZZdrcPDVhWxGLjk12etI+NEt35QXeEZqBayLxv1UDmI9v4l9fsYtSLnk2XEIKG+oJQlVfjwqHH8PpaCYNAZyaQhIXKRkaBnXIJuKFsukHykeK/ACK3GKTIGiD4l6ouKUSrc65IaVG18+oQLlYnhJA90M6O2FMDzy/S3ji/gAjjF8QMcz04wA3mp/ln59zf3cRbcmUhUn0HEN2gcd2h2fDhcgUOQIRR9rTw9GkbQmLRh9Ndkv3EIMbSkNPe0Cre9WbAKfkPPYtjuOQ0yZiXF0gs3MKSpiE/rhKQV6LBpak8zf5xkqKmiegmd2Lz9aghGOuAgj9CUeW/ZoOUQtNxkjBKYkPHvl/L5cVMhqzPBS7z71Lsf3vjm50B9RLBODeP9HiAKeBHAU4Bpj1DZyyoKW2mobyji6mwXQ6ylcLC9H9bYNkx6HY9qjWZNiXWCUI5pcr2+ioby4nPAhhQr50+maBbimACoKh8njOCNv4UULpaxjOUv2gHMmGY0o71CqzBjp3bdwcDR0WgrW8tppvZ2K7035RVBi5LKqfNN70EjxiYAQl80qXC4nsnOaEvCciMe8uqoLtHUGtqhPeaaKa6VScopYDlh0bXbkGdRdConKEcCjxxTTKCOOphFtOs9xOFklkBR9j1uWfXej6M5FmYekPGUpj+4o2tzH1IiAXhFZztGLabyXNXdQTPMnnK816aZBOpFuxrd6GrE1r2+P5It3bB3XqkH0n81BCT8StKftc5TLotENUi8aG9SNwawfEN3oWze1NO3bJeHPaAB0OuCyqUzv5JzGsPzEUJQdD43MViGEJckOXi5boq6ZGcq63WUaXg6vIs2zIpJMNuZzocfRup0Z/Wy2FH0x32PPArH7p7L/bUbOhU4DtepnT6R+AA4OLKclSCyz4+KHFNYexq0AbgeanlEefzTQPssbUizrJJhN7Ye+BNMicfb31gOp5ryz+LfpPZih7ib+N6oh8rmwqqIUn5NBQRoR388pzMyo8npTXJfCMeRzarEMeVZVrg3L13fy8C5XLGBVSui5z22VjtbKjUDf/XKf4yp7pdSWxoD5JwPvWr9mzYO338y4ahDv4dg8oysh3AriK4TOJEotrzFg1EGW+xZ22mgrlYMzDKDqXe2+wwryrDKUvu/0dVD3e5l+zMRPVeZi/QPJ2ihBzz1Bnkbr27j5c66uv7nW+p5V96gySv93du+dBq5vQ8kTZqw3St6EDhP6GYCf3jk9+cxyXHfL1iAA4Ir7tFYNjeQOAF8gNPSGEaqqkH/A7BA9khfxuIF7b7W7s4ZvE18j57ptcBaa3/d+Zks6agX7QIxM3dnpGwRkIy9BvF5jS6CjFXCNSmELOqtf+w2apVG4Lgn91588KR2UnQDGnr+Rv2cCgAWS2wjcHQKevnPLxFvLdc0ta4Nw3mKcwM0gvgVpE8Ap280TVSXVbdIOJafsdA8/zViQXzSZr8CcWNWhWBmOeEPJerlQ77QOSqYlbW0jFrgQqkguMihnr/kwpg2X1OKLTo/NTviSrkHZgAqDYAJZqDzkwBly8qoJy6Dk3lvIdZPhQ23Xj/Zz3iLwNKC7CW4TtPDD6Ukt57W2IgzCeYwNIL4K4ssArmPbQqerfW0XVbvrjw6l5EIfWxSj84na44wKQVjo9P1uXTXKzSh0yBBYGdP3hWJ1KIV2EWYMzYdPynEVe6/fnYOfkViJq4vwERmfYOG10vsJHAK4ncDvBlj85V3TU4dXyhpbUQaRDeN+nQfgWhC3APoMwfG2bYeLe0ulE7shRU84wWpH7k945T+HyRvlKYlux3bxttvxR4QlRbxtuE3NygAABGtJREFU8Tk7BlcauiX98ExUwWNwys0e/SJOPUKSp3Fkc3fuKnomt96NjpBkVFvMk3gkED+R9PQ905MHV9raWpEG0RpFUMAUhKtIbIHwxQBMAhpLpmA0TfTv+q5fjfcoxfsqbn+dm4Tc6qQ2JhShj6+6lIurVTTK+lyhyHmsJhtYx+qy3MfJq9Pund1dTP2sevMT5TZSkPVsa3m7PgxKoZrr8gqSC5SOgNwBxDsH4FOAjtyzzEOjk84g/HHNvRocG8fVAG4EdS3BSwCN1Qva2uSovxKTy5XdsAmghTX1a2lR+h24COWI0pv0LuweQ21YGL6SE+C1Iv51Z4QGVcDH+yPDwHxPerxRT6Gi9Xhvk9gD4fEQ4gPDoZ6/+5apuNLX0klhEOn4+qPi8/uxiQGfg/RZANcTPK0HUyhyhTo38FhFp9rUXVQdD+TCr5RrJNYDj/N3Pck0OlWh0eFWb0XNtWXT8apIPdfJrodrfuYo/QHEoxT+euEFa1747uepk2UNnVQGkY5PzCgMiA0BujCKXwrAjYAuADDozBCp6vDBs7SrhVjuoBTrHbz0ED4scnF4v3fq35XVqTrViXX/NZjUNbiWm6X3swpVv9Hn5l0RUiSxB9BvBwwPQdoVsTh73/TK9winhEH448oZDcIi1mmATwG4CcTllM4icLovxea6utuxg+vCx9AsoDpxR4Uf9Oy0cAl/b5KNMnFNxeLRyXYVeuXSZ2nsWV8dCsKjKQtZ9XOtJHNzBF8n8CfG+Mia4fD3R48tHJ3ZOrF4Mq+Xk94g6uOqB3QehU+TuA7SxQAvIxu1XwF84Xios0bv8CrKj76a5XOKQnPAESVWdOkYRYm5qmT1Fg9Kj+KqR37QnoVEcyRehLADwI6xEJ+Y2TKx91RaH6ecQWTDuFdDjuNcNkj45YBuIPhxSmcjN7LthlaJOlQuePMSebdtGvrLphbUpdS0UMsd22u6R4dW6vKQBI8FqL0GegEo6USjeR4UDoH4YwC2AXwBiLvj5Pjun9/EeCqui1PWIIoq1QMaSnGCCusAbAZwA4OuhPAxAuMtADhGNwKAvpeaytzAQpisPjYFoMTgdARspHkFgIhWAOWNIUtZC5Q7/0OMRT5gqjrmcOoYGt3xPIX9CHic4jYQOwM0F8R3HpweHjvV18KqQYzKPe7VYDiOiwLjZjFcihgvIXkOm8mXGwhMoTEWHLekiRpoq8Mw6yIULOGt8oYaPCzIfm6gcA6jFgnNApgjcIDSKyD+IfB5hPDkr7cM9q0+4VWDeF/HpT8W1w3iOYG4QOCHA3gmoU0SziTxUTSN3c6CtL6u549Cqbs5Rrv4aVOee4yjNrxDIA5Q2kfgvwR3EXg5EPtFHggx7v3V9PCV1Se4ahD/9+P6mYUJcGwcxBSkCQLjkKZAfATSuUHhfFAbQKwneD6AcUrrKUyQPA3QOripRI6C/ibAucZY9CqJ1ym+AWgW0n4AcyHwXxD2UziMwHkqHoF0NBCHH54en199Oid2/A+KjRaLgqmUIgAAAABJRU5ErkJggg==\";\n export default img;","import React from 'react';\r\nimport { ChakraProvider, ChakraProviderProps } from '@chakra-ui/provider';\r\nimport customXQChakraTheme from '../customXQChakraTheme';\r\n\r\n/**\r\n * A functional React wrapper component utilized to consume the custom XQ theme via `ChakraProvider`\r\n */\r\nexport const XQThemeProvider: React.FC<ChakraProviderProps> = ({\r\n children,\r\n cssVarsRoot,\r\n}) => {\r\n return (\r\n <ChakraProvider\r\n theme={customXQChakraTheme}\r\n resetCSS\r\n cssVarsRoot={cssVarsRoot}\r\n >\r\n {children}\r\n </ChakraProvider>\r\n );\r\n};\r\n","/* eslint-disable no-redeclare */\r\nimport { AxiosError } from 'axios';\r\n\r\nexport type ErrorResponse = {\r\n message: string;\r\n};\r\n\r\nexport function formatErrorResponse(error: AxiosError): ErrorResponse;\r\nexport function formatErrorResponse(error: Error): ErrorResponse;\r\nexport function formatErrorResponse(error: any): ErrorResponse {\r\n // This is an error returned from the backend\r\n if (error.response?.data?.status) {\r\n return {\r\n message: error.response?.data?.status,\r\n };\r\n }\r\n\r\n // This is any generic error\r\n if (error instanceof Error) {\r\n return {\r\n message: error.message,\r\n };\r\n }\r\n\r\n // This would happen if a developer threw an error that isn't actually an error class. Don't do that...\r\n console.error(\r\n 'Caught an error that is not an instance of an error! Replacing with a proper error but please fix this.',\r\n error\r\n );\r\n\r\n return {\r\n message: 'An unknown error has occurred',\r\n };\r\n}\r\n","import { ToastPosition, useToast as useChakraToast } from '@chakra-ui/react';\r\nimport React, { useCallback } from 'react';\r\nimport { Toast, ToastProps } from '../components/toast';\r\n\r\nexport const useToast = () => {\r\n const toast = useChakraToast();\r\n\r\n return useCallback(\r\n (props: ToastProps & { position: ToastPosition }) =>\r\n toast({\r\n position: props.position,\r\n render: () => <Toast {...props} />,\r\n }),\r\n [toast]\r\n );\r\n};\r\n"],"names":["_path","Button","_ref","_ref$type","type","_ref$variant","variant","React","ChakraButton","onClick","disabled","ariaLabel","className","width","rightIcon","leftIcon","color","text","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","Memo","memo","forwardRef","props","ref","React.createElement","xmlns","height","fill","viewBox","stroke","strokeLinecap","strokeLinejoin","d","Error","ErrorIcon","boxSize","fillOpacity","Neutral","NeutralIcon","Positive","PositiveIcon","_path2","_path3","_path4","Warning","WarningIcon","colors","label","primary","light","dark","secondary","tertiary","error","blur","quaternary","border","focus","default","success","warning","action","semantic","transparent","current","black","white","lightBlue","coolGray","darkBlue","backdrop","whiteAlpha","50","100","200","300","400","500","600","700","800","900","blackAlpha","gray","red","orange","green","blue","Icon","step","status","getColors","useMemo","bg","Flex","borderRadius","alignItems","justifyContent","Text","fontSize","Label","Box","pl","typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","none","shorter","short","base","tall","taller","3","4","5","6","7","8","9","10","fontWeights","hairline","thin","medium","semibold","bold","extrabold","fonts","mono","fontSizes","xs","sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","_defs","Google","GoogleLogo","xmlnsXlink","id","patternContentUnits","xlinkHref","transform","Microsoft","MicrosoftLogo","StackedCheckbox","_ref2","value","onChange","Checkbox","defaultChecked","Boolean","defaultValue","e","checked","isChecked","alignSelf","StackedInput","_ref2$type","isRequired","rightElement","leftElement","allowDefault","_objectWithoutPropertiesLoose","_excluded","isMobile","InputGroup","Input","placeholder","undefined","onKeyDown","stopPropagation","preventDefault","StackedRadioGroup","_ref2$flexDirection","flexDirection","RadioGroup","name","options","map","option","mr","Radio","Dropdown","onSelectItem","dropdownRef","position","optionIndex","DropdownContent","idx","role","fontWeight","px","whiteSpace","my","borderTop","borderColor","cursor","py","_hover","scrollMargin","backdropFilter","backdropBlur","mt","maxH","overflowY","top","bottom","minWidth","zIndex","tabIndex","useOnClickOutside","handler","useEffect","listener","event","contains","document","addEventListener","removeEventListener","fillRule","clipRule","DropdownIcon","StackedSelect","setValue","handleOnChange","fullOptions","useRef","dropdownMenuRef","_useState","useState","isFocussed","setIsFocussed","_useState2","_options$find$label","_options$find","find","selectedOption","setSelectedOption","_useState3","setOptionIndex","_useState4","setPosition","_useState5","searchValue","setSearchValue","_useState6","debouncedSearchValue","setDebouncedSearchValue","boundingClientRect","_dropdownRef$current","getBoundingClientRect","_dropdownRef$current2","window","innerHeight","y","_find$label","_find","_dropdownMenuRef$curr3","findIndex","substring","toLowerCase","scrollTo","behavior","updateSearchValue","debounce","val","textShadow","autoComplete","update","concat","initialOptionIndex","_dropdownMenuRef$curr","_dropdownMenuRef$curr2","_","shouldDirty","shouldValidate","InputRightElement","handleOnSelectItem","StackedTextarea","Textarea","Close","CloseIcon","Token","onDelete","_ref$isMobile","backgroundColor","w","h","pr","truncate","trim","omission","StackedMultiSelect","watchedValue","useWatch","control","scrollRef","inputRef","isInit","setIsInit","localValues","setLocalValues","localOptions","setLocalOptions","shouldSideScroll","setShouldSideScroll","_useState7","_useState8","_useState9","_scrollRef$current","left","scrollWidth","split","filter","prevLocalOptions","localOption","includes","handleChange","newValue","_ref3","join","prevLocalOption","prevLocalValues","_inputRef$current","overflowX","style","scrollbarWidth","msOverflowStyle","sx","::-webkit-scrollbar","display","localValue","_ref4","sort","a","b","sortValue","prevLocalValue","handleDelete","padding","_focus","boxShadow","StackedPilledInput","_ref2$separators","separators","lastestFormValueToArray","setLatestFormValueToArray","inputWrapperRef","tokenIndex","setTokenIndex","setLocalValue","latestTokenElement","getElementById","scrollIntoView","block","inline","onHandleKeyDown","filteredUniqueValues","Array","from","Set","toString","prevTokenIndex","tokenElement","scrollBy","useOutsideClick","onBlur","lineHeight","borderLeft","borderRight","maxWidth","index","onRemoveTag","flex","alignContent","float","replace","onFocus","StackedSwitch","Switch","String","tooltipText","FormLabel","ml","Tooltip","placement","QuestionOutlineIcon","inputType","helperText","isInvalid","errorText","maxLength","setError","clearErrors","nonLabeledInputs","Controller","rules","required","render","_ref2$field","field","fieldOnChange","FormControl","StackedCheckBox","selectedInputField","FormErrorMessage","FormHelperText","ChevronRight","ChevronRightIcon","data-name","x1","x2","y1","y2","gradientTransform","gradientUnits","offset","stopColor","Video","VideoIcon","_rect","_rect2","Page","PageIcon","rx","stopOpacity","BorderedBox","_ref$borderRadius","mx","children","NavigationMenuHeader","NavigationMenuItem","to","isSelected","additionalProps","reactRouterLinkProps","as","RouterLink","isExternal","referrerPolicy","href","Link","textDecoration","TableLoadingRows","onLoadMore","direction","borderTopColor","isLoading","Spinner","size","IconButton","icon","HiOutlineRefresh","shadow","EmptyTable","getOpacity","ChakraTable","borderCollapse","borderSpacing","Tbody","Tr","Td","opacity","breakpoints","createBreakpoints","shadows","insetOutline","outline","outlineDanger600","inner","dark-lg","parts","baseStyle","container","description","textAlign","variants","positive","neutral","defaultProps","textTransform","solid","c","colorScheme","theme","transparentize","mode","subtle","darkBg","darkColor","lightColor","getColor","defineStyle","bgGradient","_disabled","pointerEvents","_active","outlineOffset","variantSecondary","variantTertiary","variantPrimaryFlat","gap","letterSpacing","variantSecondaryFlat","variantTertiaryFlat","variantPrimary","flat-primary","flat-secondary","flat-tertiary","_createMultiStyleConf","createMultiStyleConfigHelpers","checkboxAnatomy","keys","defineMultiStyleConfig","mobile","definePartsStyle","fontFamily","Badge","requiredIndicator","::placeholder","_placeholder","transition","sidebar","&.active","sidebarExact","subNavigation","mb","navlink","baseStyleInput","appearance","paddingBottom","> option","baseStyleTrack","p","_checked","baseStyleThumb","track","thumb","sizes","thead","th","tr","_odd","td","_first","borderTopLeftRadius","borderBottomLeftRadius","_last","borderTopRightRadius","borderBottomRightRadius","baseStyleRoot","orientation","baseStyleTab","isFitted","baseStyleTablist","_props$align","align","end","center","start","baseStyleTabpanel","root","tab","tablist","tabpanel","line","isVertical","borderProp","marginProp","_selected","_after","content","right","_tablist","_tab","enclosed","borderTopRadius","borderBottomColor","borderBottom","enclosed-colored","_notLast","soft-rounded","solid-rounded","unstyled","simple","paddingY","paddingX","title-small","title-medium","title-large","subtitle-small","subtitle-medium","subtitle-large","description-small","description-medium","description-large","customXQChakraTheme","extendTheme","components","Alert","Code","Form","FormError","Modal","background","header","pt","pb","body","footer","Select","Table","Tabs","resize","minHeight","styles","global","html, body, #root","overflow","*, *::before, *::after","*::placeholder","ToolbarBreadcrumbItem","page","pageLabel","breakpoint400","useMediaQuery","breakpoint600","breakpoint800","breakpoint1512","getPageLabel","ToolbarBreadcrumbs","pageList","currentPage","filteredPageList","sliceIndex","slice","getPageType","useCallback","LeftArrowButton","LeftArrow","strokeOpacity","RightArrowButton","RightArrow","NavigationButtons","onBackClick","onForwardClick","forwardButtonDisabled","backButtonDisabled","Toast","message","buttonText","primaryDisabled","primaryOnClick","primaryText","secondaryOnClick","secondaryText","AlertDescription","steps","activeStepIndex","getStatus","stepIndex","flexDir","title","_ref$height","marginBottom","Children","child","isValidElement","CheckmarkIcon","ChevronDownIcon","ClockIcon","FileFillIcon","FileOutlineIcon","FolderAddFillIcon","FolderAddOutlineIcon","_ref$gradient","gradient","FolderFillGradientIcon","FolderFillIcon","FolderOutlineIcon","formHandler","onSubmit","FormProvider","form","_ref$columns","columns","_ref$spacing","spacing","SimpleGrid","formStructure","section","formState","errors","Image","src","GroupIcon","HomeIcon","ImageIcon","Navigation","Header","MainContent","_ref$navbarWidth","navbarWidth","isLargerThan1200","show","setShow","Grid","templateAreas","gridTemplateRows","gridTemplateColumns","GridItem","area","HamburgerIcon","Collapse","in","marginTop","getIcon","_ref$size","_ref$text","_ref$thickness","thickness","_ref$speed","speed","MenuIcon","ChakraModal","isOpen","onClose","ModalOverlay","ModalContent","ModalHeader","ModalBody","ModalFooter","groupedMenuItems","selectedMenuItem","bottomMenuItem","sortedGroupedMenuItems","groupSortValue","_selectedMenuItem","setSelectedMenuItem","menuItemGroup","groupHeader","groupMenuItems","item","QuestionIcon","SearchIcon","selectedValue","_ref3$field","ServicesIcon","SettingsIcon","spinner","headers","loading","loadMore","columnsAsConst","TableContainer","Thead","column","Th","row","TableFillIcon","TableOutlineIcon","navIndex","setNavIndex","TabList","navItems","navItem","Tab","TaskIcon","ChakraText","TrashIcon","ChakraProvider","resetCSS","cssVarsRoot","_error$response2","_error$response2$data","_error$response","response","_error$response$data","data","console","toast","useChakraToast"],"mappings":"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"}