@apple-pie/slice 0.0.1 → 0.0.2

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 (218) hide show
  1. package/dist/cjs/chunks/Avatar-8-wPWe0V.js +68 -0
  2. package/dist/cjs/chunks/AvatarGroup-CVKmgBbD.js +39 -0
  3. package/dist/cjs/chunks/Badge-CMapJCij.js +41 -0
  4. package/dist/cjs/chunks/CheckBox-7AACxrdZ.js +76 -0
  5. package/dist/cjs/chunks/DivInput-BKKJTFeV.js +204 -0
  6. package/dist/cjs/chunks/DocIcons-BRWOzK96.js +41 -0
  7. package/dist/cjs/chunks/Dot-Dnr9M9na.js +80 -0
  8. package/dist/cjs/chunks/DrggablePanel-C6TPsDB-.js +302 -0
  9. package/dist/cjs/chunks/DropDown-D9sf_m2I.js +154 -0
  10. package/dist/cjs/chunks/EditorButtonBar-CUNDgRQd.js +244 -0
  11. package/dist/cjs/chunks/ErrorSummary-Dv44onsV.js +42 -0
  12. package/dist/cjs/chunks/FlexDiv-DZBpswHV.js +103 -0
  13. package/dist/cjs/chunks/Grouper-_kd2nU78.js +50 -0
  14. package/dist/cjs/chunks/IconButton-BfsPlKTb.js +84 -0
  15. package/dist/cjs/chunks/Logos-DSlAUz8l.js +119 -0
  16. package/dist/cjs/chunks/MessageInput-CiHFo2j8.js +399 -0
  17. package/dist/cjs/chunks/Overlay-DwCPvGB5.js +45 -0
  18. package/dist/cjs/chunks/Pager-CFtZ0IIW.js +42 -0
  19. package/dist/cjs/chunks/ProgressIndicator-C5oB7Mky.js +121 -0
  20. package/dist/cjs/chunks/RadioButton-e_y2qiPE.js +65 -0
  21. package/dist/cjs/chunks/RadioButtonList-I81UwHmM.js +116 -0
  22. package/dist/cjs/chunks/Slider-C-gn7Sby.js +285 -0
  23. package/dist/cjs/chunks/Spacer-BEY2-_PB.js +16 -0
  24. package/dist/cjs/chunks/Switch-CtkFtogd.js +43 -0
  25. package/dist/cjs/chunks/TabBar-D3bj4pjj.js +176 -0
  26. package/dist/cjs/chunks/TextArea-B1oKK3_b.js +153 -0
  27. package/dist/cjs/chunks/TextField-CiQdPP5E.js +248 -0
  28. package/dist/cjs/chunks/Tip-C2pzExut.js +91 -0
  29. package/dist/cjs/chunks/Toast-DrijUwoL.js +141 -0
  30. package/dist/cjs/chunks/UIButton-CH4p-8yq.js +317 -0
  31. package/dist/cjs/chunks/UIButtonBar-0fHPB0ww.js +58 -0
  32. package/dist/cjs/chunks/UICard-DBDSyT7E.js +36 -0
  33. package/dist/cjs/chunks/UIChip-kjhvRrOV.js +93 -0
  34. package/dist/cjs/chunks/UIFileIcon-ZrbDIeYz.js +54 -0
  35. package/dist/cjs/chunks/UILabel-DkBE2AIt.js +116 -0
  36. package/dist/cjs/chunks/_types-CoWzQFsT.js +714 -0
  37. package/dist/cjs/chunks/sharedTypes-BvTjh6M5.js +9 -0
  38. package/dist/cjs/chunks/style-inject.es-XZHJH68X.js +30 -0
  39. package/dist/cjs/chunks/tipStore-C9oV9SIh.js +23 -0
  40. package/dist/cjs/chunks/toastStore-C-ETP9H6.js +23 -0
  41. package/dist/cjs/chunks/tslib.es6-4H29ixHs.js +48 -0
  42. package/dist/cjs/chunks/utils-CbayehuI.js +126 -0
  43. package/dist/cjs/hooks/useDoubleClick.js +26 -0
  44. package/dist/cjs/hooks/useKeyboardShortcuts.js +42 -0
  45. package/dist/cjs/hooks/useLastUpdated.js +53 -0
  46. package/dist/cjs/hooks/useLocalStore.js +52 -0
  47. package/dist/cjs/hooks/useObserveResize.js +56 -0
  48. package/dist/cjs/hooks/useObserveTheme.js +36 -0
  49. package/dist/cjs/hooks/useTheme.js +85 -0
  50. package/dist/cjs/hooks/useToolTip.js +36 -0
  51. package/dist/cjs/hooks/useTrackRenders.js +38 -0
  52. package/dist/cjs/hooks/useWindow.js +64 -0
  53. package/dist/cjs/hooks.js +32 -0
  54. package/dist/cjs/index.js +121 -0
  55. package/dist/cjs/providers/ThemeProvider.js +51 -0
  56. package/dist/cjs/providers.js +13 -0
  57. package/dist/cjs/stores/tip.js +12 -0
  58. package/dist/cjs/stores/toast.js +12 -0
  59. package/dist/cjs/stores.js +18 -0
  60. package/dist/cjs/theme/colors.js +383 -0
  61. package/dist/cjs/theme/corners.js +14 -0
  62. package/dist/cjs/theme/themes.js +23 -0
  63. package/dist/cjs/theme/type.js +316 -0
  64. package/dist/cjs/theme.js +13 -0
  65. package/dist/cjs/uikit/Avatar.js +11 -0
  66. package/dist/cjs/uikit/AvatarGroup.js +12 -0
  67. package/dist/cjs/uikit/Badge.js +11 -0
  68. package/dist/cjs/uikit/CheckBox.js +21 -0
  69. package/dist/cjs/uikit/DivInput.js +13 -0
  70. package/dist/cjs/uikit/DocIcon.js +17 -0
  71. package/dist/cjs/uikit/Dot.js +12 -0
  72. package/dist/cjs/uikit/DraggablePanel.js +20 -0
  73. package/dist/cjs/uikit/DropDown.js +20 -0
  74. package/dist/cjs/uikit/EditorButtonBar.js +27 -0
  75. package/dist/cjs/uikit/ErrorSummary.js +12 -0
  76. package/dist/cjs/uikit/FlexDiv.js +12 -0
  77. package/dist/cjs/uikit/Grouper.js +22 -0
  78. package/dist/cjs/uikit/Icon.js +22 -0
  79. package/dist/cjs/uikit/IconButton.js +24 -0
  80. package/dist/cjs/uikit/Logos.js +17 -0
  81. package/dist/cjs/uikit/MessageInput.js +29 -0
  82. package/dist/cjs/uikit/Overlay.js +12 -0
  83. package/dist/cjs/uikit/Pager.js +12 -0
  84. package/dist/cjs/uikit/Progress.js +20 -0
  85. package/dist/cjs/uikit/RadioButton.js +25 -0
  86. package/dist/cjs/uikit/RadioButtonList.js +26 -0
  87. package/dist/cjs/uikit/Slider.js +13 -0
  88. package/dist/cjs/uikit/Spacer.js +10 -0
  89. package/dist/cjs/uikit/Switch.js +12 -0
  90. package/dist/cjs/uikit/TabBar.js +25 -0
  91. package/dist/cjs/uikit/TextArea.js +26 -0
  92. package/dist/cjs/uikit/Textfield.js +27 -0
  93. package/dist/cjs/uikit/Tip.js +13 -0
  94. package/dist/cjs/uikit/Toast.js +25 -0
  95. package/dist/cjs/uikit/UIButton.js +25 -0
  96. package/dist/cjs/uikit/UIButtonBar.js +25 -0
  97. package/dist/cjs/uikit/UICard.js +20 -0
  98. package/dist/cjs/uikit/UIChip.js +21 -0
  99. package/dist/cjs/uikit/UIFileIcon.js +17 -0
  100. package/dist/cjs/uikit/UILabel.js +18 -0
  101. package/dist/esm/chunks/Avatar-D_muqPrW.js +66 -0
  102. package/dist/esm/chunks/AvatarGroup-D8Xmrn52.js +37 -0
  103. package/dist/esm/chunks/Badge-PPf5Uvw3.js +39 -0
  104. package/dist/esm/chunks/CheckBox-CswFI0Xc.js +74 -0
  105. package/dist/esm/chunks/DivInput-iKFkeU2F.js +202 -0
  106. package/dist/esm/chunks/DocIcons-CbOX4n8Y.js +39 -0
  107. package/dist/esm/chunks/Dot-B84UVs2e.js +78 -0
  108. package/dist/esm/chunks/DrggablePanel-CYYwTmFd.js +300 -0
  109. package/dist/esm/chunks/DropDown-D4t6EhKL.js +152 -0
  110. package/dist/esm/chunks/EditorButtonBar-FnMa8Zv2.js +242 -0
  111. package/dist/esm/chunks/ErrorSummary-DhU5SKPt.js +40 -0
  112. package/dist/esm/chunks/FlexDiv-CmMpORgn.js +101 -0
  113. package/dist/esm/chunks/Grouper-BbreOXI9.js +48 -0
  114. package/dist/esm/chunks/IconButton-CguHGkBM.js +82 -0
  115. package/dist/esm/chunks/Logos-DwZP-TR2.js +117 -0
  116. package/dist/esm/chunks/MessageInput-DMHzCwjO.js +397 -0
  117. package/dist/esm/chunks/Overlay-CCBy7n7H.js +43 -0
  118. package/dist/esm/chunks/Pager-BsSti93V.js +40 -0
  119. package/dist/esm/chunks/ProgressIndicator-BVukxMU6.js +118 -0
  120. package/dist/esm/chunks/RadioButton-B5BxQI0R.js +63 -0
  121. package/dist/esm/chunks/RadioButtonList-C2z8McAD.js +114 -0
  122. package/dist/esm/chunks/Slider-C-PcWqTz.js +283 -0
  123. package/dist/esm/chunks/Spacer-DbZSG5x3.js +14 -0
  124. package/dist/esm/chunks/Switch-DjfrSiQz.js +41 -0
  125. package/dist/esm/chunks/TabBar-BSBcgTbd.js +174 -0
  126. package/dist/esm/chunks/TextArea-COM0UPo2.js +151 -0
  127. package/dist/esm/chunks/TextField-Bh24bRWs.js +246 -0
  128. package/dist/esm/chunks/Tip-Ct19Ljul.js +89 -0
  129. package/dist/esm/chunks/Toast-BR0oMX6z.js +139 -0
  130. package/dist/esm/chunks/UIButton-DKx-_O8h.js +315 -0
  131. package/dist/esm/chunks/UIButtonBar-BNdA5eVq.js +56 -0
  132. package/dist/esm/chunks/UICard-Dn5f3wg8.js +34 -0
  133. package/dist/esm/chunks/UIChip-DqnGeVyR.js +91 -0
  134. package/dist/esm/chunks/UIFileIcon-qGxIPsJJ.js +52 -0
  135. package/dist/esm/chunks/UILabel-RnbodPCS.js +114 -0
  136. package/dist/esm/chunks/_types-BaYeLEWK.js +712 -0
  137. package/dist/esm/chunks/sharedTypes-BfZzG1KX.js +9 -0
  138. package/dist/esm/chunks/style-inject.es-tgCJW-Cu.js +28 -0
  139. package/dist/esm/chunks/tipStore-nBYJ6tmE.js +17 -0
  140. package/dist/esm/chunks/toastStore-r3pvNa28.js +17 -0
  141. package/dist/esm/chunks/tslib.es6-0pkUdtrF.js +45 -0
  142. package/dist/esm/chunks/utils-BRZK2Drn.js +119 -0
  143. package/dist/esm/hooks/useDoubleClick.js +24 -0
  144. package/dist/esm/hooks/useKeyboardShortcuts.js +40 -0
  145. package/dist/esm/hooks/useLastUpdated.js +51 -0
  146. package/dist/esm/hooks/useLocalStore.js +50 -0
  147. package/dist/esm/hooks/useObserveResize.js +54 -0
  148. package/dist/esm/hooks/useObserveTheme.js +34 -0
  149. package/dist/esm/hooks/useTheme.js +83 -0
  150. package/dist/esm/hooks/useToolTip.js +34 -0
  151. package/dist/esm/hooks/useTrackRenders.js +36 -0
  152. package/dist/esm/hooks/useWindow.js +62 -0
  153. package/dist/esm/hooks.js +14 -0
  154. package/dist/esm/index.js +57 -0
  155. package/dist/esm/providers/ThemeProvider.js +49 -0
  156. package/dist/esm/providers.js +7 -0
  157. package/dist/esm/stores/tip.js +2 -0
  158. package/dist/esm/stores/toast.js +2 -0
  159. package/dist/esm/stores.js +3 -0
  160. package/dist/esm/theme/colors.js +377 -0
  161. package/dist/esm/theme/corners.js +12 -0
  162. package/dist/esm/theme/themes.js +20 -0
  163. package/dist/esm/theme/type.js +312 -0
  164. package/dist/esm/theme.js +4 -0
  165. package/dist/esm/uikit/Avatar.js +5 -0
  166. package/dist/esm/uikit/AvatarGroup.js +6 -0
  167. package/dist/esm/uikit/Badge.js +5 -0
  168. package/dist/esm/uikit/CheckBox.js +15 -0
  169. package/dist/esm/uikit/DivInput.js +7 -0
  170. package/dist/esm/uikit/DocIcon.js +11 -0
  171. package/dist/esm/uikit/Dot.js +6 -0
  172. package/dist/esm/uikit/DraggablePanel.js +14 -0
  173. package/dist/esm/uikit/DropDown.js +14 -0
  174. package/dist/esm/uikit/EditorButtonBar.js +21 -0
  175. package/dist/esm/uikit/ErrorSummary.js +6 -0
  176. package/dist/esm/uikit/FlexDiv.js +6 -0
  177. package/dist/esm/uikit/Grouper.js +16 -0
  178. package/dist/esm/uikit/Icon.js +12 -0
  179. package/dist/esm/uikit/IconButton.js +18 -0
  180. package/dist/esm/uikit/Logos.js +11 -0
  181. package/dist/esm/uikit/MessageInput.js +23 -0
  182. package/dist/esm/uikit/Overlay.js +6 -0
  183. package/dist/esm/uikit/Pager.js +6 -0
  184. package/dist/esm/uikit/Progress.js +13 -0
  185. package/dist/esm/uikit/RadioButton.js +19 -0
  186. package/dist/esm/uikit/RadioButtonList.js +20 -0
  187. package/dist/esm/uikit/Slider.js +7 -0
  188. package/dist/esm/uikit/Spacer.js +4 -0
  189. package/dist/esm/uikit/Switch.js +6 -0
  190. package/dist/esm/uikit/TabBar.js +19 -0
  191. package/dist/esm/uikit/TextArea.js +20 -0
  192. package/dist/esm/uikit/Textfield.js +21 -0
  193. package/dist/esm/uikit/Tip.js +7 -0
  194. package/dist/esm/uikit/Toast.js +15 -0
  195. package/dist/esm/uikit/UIButton.js +19 -0
  196. package/dist/esm/uikit/UIButtonBar.js +19 -0
  197. package/dist/esm/uikit/UICard.js +14 -0
  198. package/dist/esm/uikit/UIChip.js +15 -0
  199. package/dist/esm/uikit/UIFileIcon.js +11 -0
  200. package/dist/esm/uikit/UILabel.js +12 -0
  201. package/dist/types/index.d.ts +1 -1
  202. package/dist/types/stores/index.d.ts +2 -0
  203. package/dist/types/stores/tip/_types.d.ts +8 -0
  204. package/dist/types/stores/tip/index.d.ts +2 -0
  205. package/dist/types/stores/tip/tipStore.d.ts +12 -0
  206. package/dist/types/stores/toast/_types.d.ts +14 -0
  207. package/dist/types/stores/toast/index.d.ts +2 -0
  208. package/dist/types/stores/toast/toastStore.d.ts +12 -0
  209. package/dist/types/uikit/FlexDiv/FlexDiv.d.ts +2 -0
  210. package/dist/types/uikit/FlexDiv/_types.d.ts +1 -0
  211. package/dist/types/uikit/Toast/Toast.d.ts +1 -1
  212. package/dist/types/uikit/Toast/_types.d.ts +7 -1
  213. package/dist/types/uikit/Toast/index.d.ts +1 -1
  214. package/package.json +79 -5
  215. package/dist/index.esm.js +0 -5859
  216. package/dist/index.esm.js.map +0 -1
  217. package/dist/index.js +0 -5911
  218. package/dist/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/uikit/sharedTypes.ts","../src/theme/colors/colors.ts","../src/theme/corners/corners.ts","../src/theme/type/type.ts","../src/theme/themes.ts","../src/hooks/useObserveTheme/useObserveTheme.ts","../src/hooks/useTheme/useTheme.tsx","../src/hooks/useDoubleClick/useDoubleClick.ts","../src/hooks/useToolTip/useToolTip.ts","../src/hooks/useKeyboardShortcuts/useKeyboardShortcuts.ts","../src/hooks/useLastUpdated/useLastUpdated.ts","../src/hooks/useLocalStore/useLocalStore.ts","../src/hooks/useWindow/useWindow.ts","../src/hooks/useObserveResize/useObserveResize.ts","../node_modules/tslib/tslib.es6.js","../src/util/utils.ts","../node_modules/style-inject/dist/style-inject.es.js","../src/uikit/Avatar/Avatar.tsx","../src/uikit/AvatarGroup/AvatarGroup.tsx","../src/uikit/Badge/Badge.tsx","../src/uikit/Icon/iconRegistry.tsx","../src/uikit/Icon/Icon.tsx","../src/uikit/Icon/_types.ts","../src/uikit/DropDown/DropDown.tsx","../src/uikit/Dot/_types.ts","../src/uikit/Dot/Dot.tsx","../src/uikit/IconButton/IconButton.tsx","../src/uikit/EditorButtonBar/_types.ts","../src/uikit/EditorButtonBar/_Data.ts","../src/uikit/EditorButtonBar/EditorButtonBar.tsx","../src/uikit/CheckBox/CheckBox.tsx","../src/uikit/DivInput/DivInput.tsx","../src/uikit/DocIcon/DocIcons.tsx","../src/uikit/DraggablePanel/DrggablePanel.tsx","../src/uikit/ErrorSummary/ErrorSummary.tsx","../src/uikit/Grouper/Grouper.tsx","../src/uikit/Logos/Logos.tsx","../src/uikit/Overlay/Overlay.tsx","../src/uikit/FlexDiv/FlexDiv.tsx","../src/uikit/Progress/DoneCheck/DoneCheck.tsx","../src/uikit/Progress/ProgressIndicator/ProgressIndicator.tsx","../src/uikit/UIButton/UIButton.tsx","../src/uikit/MessageInput/ExcerptList/ExcerptList.tsx","../src/uikit/UIFileIcon/UIFileIcon.tsx","../src/uikit/UIFileIcon/_types.ts","../src/uikit/MessageInput/FileList/FileList.tsx","../src/uikit/MessageInput/UserList/_types.ts","../src/uikit/MessageInput/UserList/UserList.tsx","../src/uikit/MessageInput/_types.ts","../src/uikit/MessageInput/InputField/MessageInput.tsx","../src/uikit/Pager/Pager.tsx","../src/uikit/RadioButton/RadioButton.tsx","../src/uikit/RadioButtonList/RadioButtonList.tsx","../src/util/debounce.ts","../src/uikit/Slider/Slider.tsx","../src/uikit/Spacer/Spacer.tsx","../src/uikit/Switch/Switch.tsx","../src/uikit/TabBar/_types.ts","../src/uikit/TabBar/TabBar.tsx","../src/uikit/TextArea/TextArea.tsx","../src/uikit/Textfield/_types.ts","../src/uikit/Textfield/TextField.tsx","../src/providers/ThemeProvider.tsx","../src/uikit/Tip/_types.ts","../src/uikit/Tip/Tip.tsx","../src/uikit/Toast/Toast.tsx","../src/uikit/UIChip/UIChip.tsx","../src/uikit/UIButtonBar/UIButtonBar.tsx","../src/uikit/UICard/UICard.tsx","../src/uikit/UILabel/UILabel.tsx"],"sourcesContent":["import type React from 'react';\n\nexport type ToolTip = {\n\ttype?: ToolTipType;\n\tpayload?: { label: string; duration?: number };\n\tref?: React.RefObject<any> | null;\n\tevent?: MouseEvent | React.MouseEvent<any>;\n};\n\nexport enum ToolTipType {\n\tmenu = 'menu',\n\tbutton = 'button',\n\tgeneral = 'general',\n\tother = 'other',\n}\n\nexport type ToolTipInfo = {\n\ttitle?: string | null;\n\tdescription?: string | null;\n\timage?: string | null;\n};\n","import type { Colors, CoreColors } from './types';\n\nexport const coreColors: CoreColors = {\n\t'brand-grey-50': '#f4f7fa',\n\t'brand-grey-100': '#e5ecf3',\n\t'brand-grey-200': '#d5e0ea',\n\t'brand-grey-300': '#98acbf',\n\t'brand-grey-400': '#7f96a9',\n\t'brand-grey-500': '#657d91',\n\t'brand-grey-600': '#4c6273',\n\t'brand-grey-700': '#405261',\n\t'brand-grey-800': '#37434e',\n\t'brand-grey-900': '#2d353d',\n\t'brand-grey-950': '#1f262d',\n\t'brand-sea-50': '#e8f1ff',\n\t'brand-sea-100': '#c7defe',\n\t'brand-sea-200': '#a5c9ff',\n\t'brand-sea-300': '#7ab3ff',\n\t'brand-sea-400': '#4084ff',\n\t'brand-sea-500': '#2f45ff',\n\t'brand-sea-600': '#2d2fff',\n\t'brand-sea-700': '#0000ff',\n\t'brand-sea-800': '#0609cd',\n\t'brand-sea-900': '#001699',\n\t'brand-sea-950': '#0a0b5c',\n\t'brand-sky-50': '#eafffe',\n\t'brand-sky-100': '#cdfffb',\n\t'brand-sky-200': '#a3f8ff',\n\t'brand-sky-300': '#6af5ff',\n\t'brand-sky-400': '#00edff',\n\t'brand-sky-500': '#00c8e0',\n\t'brand-sky-600': '#00a6c0',\n\t'brand-sky-700': '#03839b',\n\t'brand-sky-800': '#0d697d',\n\t'brand-sky-900': '#105669',\n\t'brand-sky-950': '#033949',\n\t'brand-land-50': '#f4ffe5',\n\t'brand-land-100': '#e0ffb7',\n\t'brand-land-200': '#caff95',\n\t'brand-land-300': '#b7fe59',\n\t'brand-land-400': '#9cf820',\n\t'brand-land-500': '#71e618',\n\t'brand-land-600': '#56c900',\n\t'brand-land-700': '#2d8c00',\n\t'brand-land-800': '#31690b',\n\t'brand-land-900': '#2a580f',\n\t'brand-land-950': '#123201',\n\t'brand-orange-50': '#fff8ec',\n\t'brand-orange-100': '#ffebd7',\n\t'brand-orange-200': '#ffe3c6',\n\t'brand-orange-300': '#ffc182',\n\t'brand-orange-400': '#ff972e',\n\t'brand-orange-500': '#ff800a',\n\t'brand-orange-600': '#ff6700',\n\t'brand-orange-700': '#ff3700',\n\t'brand-orange-800': '#a02b0b',\n\t'brand-orange-900': '#80250b',\n\t'brand-orange-950': '#461604',\n\t'brand-yellow-50': '#ffffea',\n\t'brand-yellow-100': '#fffdca',\n\t'brand-yellow-200': '#fff2a0',\n\t'brand-yellow-300': '#ffeb72',\n\t'brand-yellow-400': '#ffd333',\n\t'brand-yellow-500': '#ffc200',\n\t'brand-yellow-600': '#ffad00',\n\t'brand-yellow-700': '#c68601',\n\t'brand-yellow-800': '#8f6307',\n\t'brand-yellow-900': '#5f430a',\n\t'brand-yellow-950': '#442e00',\n\t'brand-purple-50': '#faf0ff',\n\t'brand-purple-100': '#f4ddff',\n\t'brand-purple-200': '#e5cdff',\n\t'brand-purple-300': '#ccafff',\n\t'brand-purple-400': '#b891ff',\n\t'brand-purple-500': '#7d48ff',\n\t'brand-purple-600': '#6a14ff',\n\t'brand-purple-700': '#5600f1',\n\t'brand-purple-800': '#4d01d6',\n\t'brand-purple-900': '#4003af',\n\t'brand-purple-950': '#1e007c',\n\t'brand-magenta-50': '#fef1fc',\n\t'brand-magenta-100': '#ffdcef',\n\t'brand-magenta-200': '#ffcae6',\n\t'brand-magenta-300': '#ff90cb',\n\t'brand-magenta-400': '#ff61ca',\n\t'brand-magenta-500': '#ff3ac2',\n\t'brand-magenta-600': '#f012aa',\n\t'brand-magenta-700': '#df059b',\n\t'brand-magenta-800': '#9b0069',\n\t'brand-magenta-900': '#790a55',\n\t'brand-magenta-950': '#58003a',\n\t'brand-white-0': '#ffffff',\n\t'product-red-400': '#ff474a',\n\t'product-red-500': '#df0529',\n\t'core-drop-shadow-light': '#0339491a',\n\t'core-drop-shadow-dark': '#0000007a',\n\t'core-surface-coverup-translucent-light': '#1f262d52',\n\t'core-surface-coverup-translucent-dark': '#0000007a',\n\t'core-surface-overlay-translucent-light': '#ffffffcc',\n\t'core-surface-overlay-translucent-dark': '#1f262dcc',\n\t'scroll-bar-light': '#e3e8ef',\n\t'scroll-bar-dark': 'rgba(255, 255, 255, 0.1)',\n\t'scroll-bar-hover-light': '#cdd5df',\n\t'scroll-bar-hover-dark': 'rgba(255, 255, 255, 0.15)',\n\t'surface-shadow-soft-light': '0px 4px 24px #0339491a',\n\t'surface-shadow-soft-dark': '0px 4px 24px #0000007a',\n\t'surface-shadow-strong-light': '0px 4px 64px #0339491a',\n\t'surface-shadow-strong-dark': '0px 4px 64px #0000007a',\n};\n\nexport const light: Colors = {\n\t'array-land': coreColors['brand-land-100'],\n\t'array-land-label': coreColors['brand-land-600'],\n\t'array-magenta': coreColors['brand-magenta-100'],\n\t'array-magenta-label': coreColors['brand-magenta-600'],\n\t'array-orange': coreColors['brand-orange-100'],\n\t'array-orange-label': coreColors['brand-orange-600'],\n\t'array-purple': coreColors['brand-purple-100'],\n\t'array-purple-label': coreColors['brand-purple-600'],\n\t'array-sea': coreColors['brand-sea-100'],\n\t'array-sea-label': coreColors['brand-sea-600'],\n\t'array-sky': coreColors['brand-sky-100'],\n\t'array-sky-label': coreColors['brand-sky-600'],\n\t'array-yellow': coreColors['brand-yellow-100'],\n\t'array-yellow-label': coreColors['brand-yellow-600'],\n\t'core-badge-primary': coreColors['brand-sea-500'],\n\t'core-badge-secondary': coreColors['brand-grey-100'],\n\t'core-button-disabled': coreColors['brand-grey-50'],\n\t'core-button-primary': coreColors['brand-sea-500'],\n\t'core-drop-shadow': coreColors['core-drop-shadow-light'],\n\t'core-gp-logo-primary': coreColors['brand-sea-700'],\n\t'core-gp-logo-secondary': coreColors['brand-grey-950'],\n\t'core-icon-dark': coreColors['brand-grey-950'],\n\t'core-icon-disabled': coreColors['brand-grey-300'],\n\t'core-icon-error': coreColors['product-red-500'],\n\t'core-icon-light': coreColors['brand-white-0'],\n\t'core-icon-primary': coreColors['brand-grey-950'],\n\t'core-icon-secondary': coreColors['brand-grey-700'],\n\t'core-icon-tertiary': coreColors['brand-sea-500'],\n\t'core-outline-secondary': coreColors['brand-grey-700'],\n\t'core-outline-primary': coreColors['brand-grey-100'],\n\t'core-outline-special': coreColors['brand-sea-100'],\n\t'core-outline-tertiary': coreColors['brand-sea-500'],\n\t'core-surface-coverup-translucent':\n\t\tcoreColors['core-surface-coverup-translucent-light'],\n\t'core-surface-overlay-translucent':\n\t\tcoreColors['core-surface-overlay-translucent-light'],\n\t'core-surface-primary': coreColors['brand-white-0'],\n\t'core-surface-secondary': coreColors['brand-grey-50'],\n\t'core-surface-special': coreColors['brand-sea-50'],\n\t'core-text-dark': coreColors['brand-grey-950'],\n\t'core-text-disabled': coreColors['brand-grey-300'],\n\t'core-text-error': coreColors['product-red-500'],\n\t'core-text-light': coreColors['brand-white-0'],\n\t'core-text-primary': coreColors['brand-grey-950'],\n\t'core-text-secondary': coreColors['brand-grey-700'],\n\t'core-text-tertiary': coreColors['brand-grey-600'],\n\t'core-text-special': coreColors['brand-sea-500'],\n\t'core-link-primary': coreColors['brand-sea-700'],\n\t'eor-tag-employee': coreColors['brand-sky-700'],\n\t'eor-tag-overdue': coreColors['product-red-500'],\n\t'eor-tag-paid': coreColors['brand-land-700'],\n\t'eor-tag-pending': coreColors['brand-orange-500'],\n\t'eor-tag-professional': coreColors['brand-sea-500'],\n\t'feedback-attention': coreColors['brand-yellow-500'],\n\t'feedback-informative': coreColors['brand-sky-700'],\n\t'feedback-positive': coreColors['brand-land-700'],\n\t'feedback-urgency': coreColors['brand-orange-500'],\n\t'feedback-warning': coreColors['product-red-500'],\n\t'gia-tag-risk-high': coreColors['product-red-500'],\n\t'gia-tag-risk-low': coreColors['brand-sky-700'],\n\t'gia-tag-risk-moderate': coreColors['brand-orange-500'],\n\t'gia-text-excerpt-highlight': coreColors['brand-orange-100'],\n\t'gia-text-selection': coreColors['brand-sea-100'],\n\t'scroll-bar': coreColors['scroll-bar-light'],\n\t'scroll-bar-hover': coreColors['scroll-bar-hover-light'],\n\t'surface-shadow-soft': coreColors['surface-shadow-soft-light'],\n\t'surface-shadow-strong': coreColors['surface-shadow-strong-light'],\n};\n\nexport const dark: Colors = {\n\t'array-land': coreColors['brand-land-100'],\n\t'array-land-label': coreColors['brand-land-600'],\n\t'array-magenta': coreColors['brand-magenta-100'],\n\t'array-magenta-label': coreColors['brand-magenta-600'],\n\t'array-orange': coreColors['brand-orange-100'],\n\t'array-orange-label': coreColors['brand-orange-600'],\n\t'array-purple': coreColors['brand-purple-100'],\n\t'array-purple-label': coreColors['brand-purple-600'],\n\t'array-sea': coreColors['brand-sea-100'],\n\t'array-sea-label': coreColors['brand-sea-600'],\n\t'array-sky': coreColors['brand-sky-100'],\n\t'array-sky-label': coreColors['brand-sky-600'],\n\t'array-yellow': coreColors['brand-yellow-100'],\n\t'array-yellow-label': coreColors['brand-yellow-600'],\n\t'core-badge-primary': coreColors['brand-sea-500'],\n\t'core-badge-secondary': coreColors['brand-grey-700'],\n\t'core-button-disabled': coreColors['brand-grey-900'],\n\t'core-button-primary': coreColors['brand-sea-500'],\n\t'core-drop-shadow': coreColors['core-drop-shadow-dark'],\n\t'core-gp-logo-primary': coreColors['brand-sea-500'],\n\t'core-gp-logo-secondary': coreColors['brand-white-0'],\n\t'core-icon-dark': coreColors['brand-grey-950'],\n\t'core-icon-disabled': coreColors['brand-grey-500'],\n\t'core-icon-error': coreColors['product-red-400'],\n\t'core-icon-light': coreColors['brand-white-0'],\n\t'core-icon-primary': coreColors['brand-white-0'],\n\t'core-icon-secondary': coreColors['brand-grey-200'],\n\t'core-icon-tertiary': coreColors['brand-sky-300'],\n\t'core-outline-secondary': coreColors['brand-grey-100'],\n\t'core-outline-primary': coreColors['brand-grey-700'],\n\t'core-outline-special': coreColors['brand-sky-900'],\n\t'core-outline-tertiary': coreColors['brand-sky-300'],\n\t'core-surface-coverup-translucent':\n\t\tcoreColors['core-surface-coverup-translucent-dark'],\n\t'core-surface-overlay-translucent':\n\t\tcoreColors['core-surface-overlay-translucent-dark'],\n\t'core-surface-primary': coreColors['brand-grey-950'],\n\t'core-surface-secondary': coreColors['brand-grey-900'],\n\t'core-surface-special': coreColors['brand-sky-950'],\n\t'core-text-dark': coreColors['brand-grey-950'],\n\t'core-text-disabled': coreColors['brand-grey-500'],\n\t'core-text-error': coreColors['product-red-400'],\n\t'core-text-light': coreColors['brand-white-0'],\n\t'core-text-primary': coreColors['brand-white-0'],\n\t'core-text-secondary': coreColors['brand-grey-200'],\n\t'core-text-tertiary': coreColors['brand-grey-400'],\n\t'core-text-special': coreColors['brand-sky-300'],\n\t'core-link-primary': coreColors['brand-sky-300'],\n\t'eor-tag-employee': coreColors['brand-sky-700'],\n\t'eor-tag-overdue': coreColors['product-red-400'],\n\t'eor-tag-paid': coreColors['brand-land-700'],\n\t'eor-tag-pending': coreColors['brand-orange-500'],\n\t'eor-tag-professional': coreColors['brand-sea-500'],\n\t'feedback-attention': coreColors['brand-yellow-400'],\n\t'feedback-informative': coreColors['brand-sky-600'],\n\t'feedback-positive': coreColors['brand-land-700'],\n\t'feedback-urgency': coreColors['brand-orange-500'],\n\t'feedback-warning': coreColors['product-red-400'],\n\t'gia-tag-risk-high': coreColors['product-red-400'],\n\t'gia-tag-risk-low': coreColors['brand-sky-600'],\n\t'gia-tag-risk-moderate': coreColors['brand-orange-500'],\n\t'gia-text-excerpt-highlight': coreColors['brand-orange-100'],\n\t'gia-text-selection': coreColors['brand-sea-900'],\n\t'scroll-bar': coreColors['scroll-bar-dark'],\n\t'scroll-bar-hover': coreColors['scroll-bar-hover-dark'],\n\t'surface-shadow-soft': coreColors['surface-shadow-soft-dark'],\n\t'surface-shadow-strong': coreColors['surface-shadow-strong-dark'],\n};\n\nexport const colorCssVars: Record<keyof Colors, string> = {\n\t'array-land': 'var(--array-land)',\n\t'array-land-label': 'var(--array-land-label)',\n\t'array-magenta': 'var(--array-magenta)',\n\t'array-magenta-label': 'var(--array-magenta-label)',\n\t'array-orange': 'var(--array-orange)',\n\t'array-orange-label': 'var(--array-orange-label)',\n\t'array-purple': 'var(--array-purple)',\n\t'array-purple-label': 'var(--array-purple-label)',\n\t'array-sea': 'var(--array-sea)',\n\t'array-sea-label': 'var(--array-sea-label)',\n\t'array-sky': 'var(--array-sky)',\n\t'array-sky-label': 'var(--array-sky-label)',\n\t'array-yellow': 'var(--array-yellow)',\n\t'array-yellow-label': 'var(--array-yellow-label)',\n\t'core-badge-primary': 'var(--core-badge-primary)',\n\t'core-badge-secondary': 'var(--core-badge-secondary)',\n\t'core-button-disabled': 'var(--core-button-disabled)',\n\t'core-button-primary': 'var(--core-button-primary)',\n\t'core-drop-shadow': 'var(--core-drop-shadow)',\n\t'core-gp-logo-primary': 'var(--core-gp-logo-primary)',\n\t'core-gp-logo-secondary': 'var(--core-gp-logo-secondary)',\n\t'core-icon-dark': 'var(--core-icon-dark)',\n\t'core-icon-disabled': 'var(--core-icon-disabled)',\n\t'core-icon-error': 'var(--core-icon-error)',\n\t'core-icon-light': 'var(--core-icon-light)',\n\t'core-icon-primary': 'var(--core-icon-primary)',\n\t'core-icon-secondary': 'var(--core-icon-secondary)',\n\t'core-icon-tertiary': 'var(--core-icon-tertiary)',\n\t'core-outline-secondary': 'var(--core-outline-secondary)',\n\t'core-outline-primary': 'var(--core-outline-primary)',\n\t'core-outline-special': 'var(--core-outline-special)',\n\t'core-outline-tertiary': 'var(--core-outline-tertiary)',\n\t'core-surface-coverup-translucent': 'var(--core-surface-coverup-translucent)',\n\t'core-surface-overlay-translucent': 'var(--core-surface-overlay-translucent)',\n\t'core-surface-primary': 'var(--core-surface-primary)',\n\t'core-surface-secondary': 'var(--core-surface-secondary)',\n\t'core-surface-special': 'var(--core-surface-special)',\n\t'core-text-dark': 'var(--core-text-dark)',\n\t'core-text-disabled': 'var(--core-text-disabled)',\n\t'core-text-error': 'var(--core-text-error)',\n\t'core-text-light': 'var(--core-text-light)',\n\t'core-text-primary': 'var(--core-text-primary)',\n\t'core-text-secondary': 'var(--core-text-secondary)',\n\t'core-text-special': 'var(--core-text-special)',\n\t'core-text-tertiary': 'var(--core-text-tertiary)',\n\t'core-link-primary': 'var(--core-link-primary)',\n\t'eor-tag-employee': 'var(--eor-tag-employee)',\n\t'eor-tag-overdue': 'var(--eor-tag-overdue)',\n\t'eor-tag-paid': 'var(--eor-tag-paid)',\n\t'eor-tag-pending': 'var(--eor-tag-pending)',\n\t'eor-tag-professional': 'var(--eor-tag-professional)',\n\t'feedback-attention': 'var(--feedback-attention)',\n\t'feedback-informative': 'var(--feedback-informative)',\n\t'feedback-positive': 'var(--feedback-positive)',\n\t'feedback-urgency': 'var(--feedback-urgency)',\n\t'feedback-warning': 'var(--feedback-warning)',\n\t'gia-tag-risk-high': 'var(--gia-tag-risk-high)',\n\t'gia-tag-risk-low': 'var(--gia-tag-risk-low)',\n\t'gia-tag-risk-moderate': 'var(--gia-tag-risk-moderate)',\n\t'gia-text-excerpt-highlight': 'var(--gia-text-excerpt-highlight)',\n\t'gia-text-selection': 'var(--gia-text-selection)',\n\t'scroll-bar': 'var(--scroll-bar)',\n\t'scroll-bar-hover': 'var(--scroll-bar-hover)',\n\t'surface-shadow-soft': 'var(--surface-shadow-soft)',\n\t'surface-shadow-strong': 'var(--surface-shadow-strong)',\n};\n\nexport const colorClass: Record<keyof Colors, string> = {\n\t'array-land': 'array-land',\n\t'array-land-label': 'array-land-label',\n\t'array-magenta': 'array-magenta',\n\t'array-magenta-label': 'array-magenta-label',\n\t'array-orange': 'array-orange',\n\t'array-orange-label': 'array-orange-label',\n\t'array-purple': 'array-purple',\n\t'array-purple-label': 'array-purple-label',\n\t'array-sea': 'array-sea',\n\t'array-sea-label': 'array-sea-label',\n\t'array-sky': 'array-sky',\n\t'array-sky-label': 'array-sky-label',\n\t'array-yellow': 'array-yellow',\n\t'array-yellow-label': 'array-yellow-label',\n\t'core-badge-primary': 'core-badge-primary',\n\t'core-badge-secondary': 'core-badge-secondary',\n\t'core-button-disabled': 'core-button-disabled',\n\t'core-button-primary': 'core-button-primary',\n\t'core-drop-shadow': 'core-drop-shadow',\n\t'core-gp-logo-primary': 'core-gp-logo-primary',\n\t'core-gp-logo-secondary': 'core-gp-logo-secondary',\n\t'core-icon-dark': 'core-icon-dark',\n\t'core-icon-disabled': 'core-icon-disabled',\n\t'core-icon-error': 'core-icon-error',\n\t'core-icon-light': 'core-icon-light',\n\t'core-icon-primary': 'core-icon-primary',\n\t'core-icon-secondary': 'core-icon-secondary',\n\t'core-icon-tertiary': 'core-icon-tertiary',\n\t'core-outline-secondary': 'core-outline-secondary',\n\t'core-outline-primary': 'core-outline-primary',\n\t'core-outline-special': 'core-outline-special',\n\t'core-outline-tertiary': 'core-outline-tertiary',\n\t'core-surface-coverup-translucent': 'core-surface-coverup-translucent',\n\t'core-surface-overlay-translucent': 'core-surface-overlay-translucent',\n\t'core-surface-primary': 'core-surface-primary',\n\t'core-surface-secondary': 'core-surface-secondary',\n\t'core-surface-special': 'core-surface-special',\n\t'core-text-dark': 'core-text-dark',\n\t'core-text-disabled': 'core-text-disabled',\n\t'core-text-error': 'core-text-error',\n\t'core-text-light': 'core-text-light',\n\t'core-text-primary': 'core-text-primary',\n\t'core-text-secondary': 'core-text-secondary',\n\t'core-text-special': 'core-text-special',\n\t'core-text-tertiary': 'core-text-tertiary',\n\t'core-link-primary': 'core-link-primary',\n\t'eor-tag-employee': 'eor-tag-employee',\n\t'eor-tag-overdue': 'eor-tag-overdue',\n\t'eor-tag-paid': 'eor-tag-paid',\n\t'eor-tag-pending': 'eor-tag-pending',\n\t'eor-tag-professional': 'eor-tag-professional',\n\t'feedback-attention': 'feedback-attention',\n\t'feedback-informative': 'feedback-informative',\n\t'feedback-positive': 'feedback-positive',\n\t'feedback-urgency': 'feedback-urgency',\n\t'feedback-warning': 'feedback-warning',\n\t'gia-tag-risk-high': 'gia-tag-risk-high',\n\t'gia-tag-risk-low': 'gia-tag-risk-low',\n\t'gia-tag-risk-moderate': 'gia-tag-risk-moderate',\n\t'gia-text-excerpt-highlight': 'gia-text-excerpt-highlight',\n\t'gia-text-selection': 'gia-text-selection',\n\t'scroll-bar': 'scroll-bar',\n\t'scroll-bar-hover': 'scroll-bar-hover',\n\t'surface-shadow-soft': 'surface-shadow-soft',\n\t'surface-shadow-strong': 'surface-shadow-strong',\n};\n","import type { Corners } from './types';\n\nexport const corners: Corners = {\n\t'corner-0': 0,\n\t'corner-4': 4,\n\t'corner-6': 6,\n\t'corner-8': 8,\n\t'corner-12': 12,\n\t'corner-16': 16,\n\t'corner-24': 24,\n\t'corner-full': 1000,\n};\n","import type React from 'react';\nimport type { Type } from './types';\n\n// base family\nconst fontFamily = `\"Funnel Sans\"`;\n\n// base weights\nconst fontWeights = {\n\tregular: 360,\n\tmedium: 420,\n\tbold: 480,\n};\n\n// base sizes\nconst fontSizes = {\n\txs: 12,\n\ts: 14,\n\tm: 15,\n\tl: 16,\n};\n\n// ** new styles aligned to lyra */\nexport const type: Type = {\n\t'body-xs-regular': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.regular};\n font-size: ${fontSizes.xs}px;\n line-height: 133.33%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'body-xs-medium': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.medium};\n font-size: ${fontSizes.xs}px;\n line-height: 133.33%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'body-xs-bold': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.bold};\n font-size: ${fontSizes.xs}px;\n line-height: 133.33%;\n text-decoration: none;\n letter-spacing: 0.250px`,\n\t'body-s-regular': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.regular};\n font-size: ${fontSizes.s}px;\n line-height: 142.86%;\n text-decoration: none;\n letter-spacing: 0.15px`,\n\t'body-s-medium': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.medium};\n font-size: ${fontSizes.s}px;\n line-height: 142.86%;\n text-decoration: none;\n letter-spacing: 0.15px`,\n\t'body-s-bold': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.bold};\n font-size: ${fontSizes.s}px;\n line-height: 142.86%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'body-m-regular': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.regular};\n font-size: ${fontSizes.m}px;\n line-height: 140%;\n text-decoration: none;\n letter-spacing: 0.15px`,\n\t'body-m-medium': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.medium};\n font-size: ${fontSizes.m}px;\n line-height: 140%;\n text-decoration: none;\n letter-spacing: 0.15px`,\n\t'body-m-bold': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.bold};\n font-size: ${fontSizes.m}px;\n line-height: 140%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'body-l-regular': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.regular};\n font-size: ${fontSizes.l}px;\n line-height: 162.5%;\n text-decoration: none;\n letter-spacing: 0.1px`,\n\t'body-l-medium': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.medium};\n font-size: ${fontSizes.l}px;\n line-height: 162.5%;\n text-decoration: none;\n letter-spacing: 0.1px`,\n\t'body-l-bold': `\n font-family: ${fontFamily};\n font-weight: ${fontWeights.bold};\n font-size: ${fontSizes.l}px;\n line-height: 162.5%;\n text-decoration: none;\n letter-spacing: 0.15px`,\n\t'heading-s-bold': `\n font-family: ${fontFamily};\n font-weight: 650;\n font-size: 20px; \n line-height: 140%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'heading-s-medium': `\n font-family: ${fontFamily};\n font-weight: 560;\n font-size: 20px; \n line-height: 140%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'heading-m-bold': `\n font-family: ${fontFamily};\n font-weight: 650;\n font-size: 24px; \n line-height: 116.67%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'heading-m-medium': `\n font-family: ${fontFamily};\n font-weight: 560;\n font-size: 24px; \n line-height: 116.67%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'heading-l-medium': `\n font-family: ${fontFamily};\n font-weight: 560;\n font-size: 28px; \n line-height: 128.57%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n\t'heading-l-bold': `\n font-family: ${fontFamily};\n font-weight: 650;\n font-size: 28px; \n line-height: 128.57%;\n text-decoration: none;\n letter-spacing: 0.2px`,\n};\n\nexport const typeCssClasses: Record<keyof Type, string> = {\n\t'body-xs-regular': 'body-xs-regular',\n\t'body-xs-medium': 'body-xs-medium',\n\t'body-xs-bold': 'body-xs-bold',\n\t'body-s-regular': 'body-s-regular',\n\t'body-s-medium': 'body-s-medium',\n\t'body-s-bold': 'body-s-bold',\n\t'body-m-regular': 'body-m-regular',\n\t'body-m-medium': 'body-m-medium',\n\t'body-m-bold': 'body-m-bold',\n\t'body-l-regular': 'body-l-regular',\n\t'body-l-medium': 'body-l-medium',\n\t'body-l-bold': 'body-l-bold',\n\t'heading-s-bold': 'heading-s-bold',\n\t'heading-s-medium': 'heading-s-medium',\n\t'heading-m-medium': 'heading-m-medium',\n\t'heading-m-bold': 'heading-m-bold',\n\t'heading-l-medium': 'heading-l-medium',\n\t'heading-l-bold': 'heading-l-bold',\n};\n\nexport const typeStyles: Record<keyof Type, React.CSSProperties> = {\n\t'body-xs-regular': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.regular}`,\n\t\tfontSize: `${fontSizes.xs}px`,\n\t\tlineHeight: '133.33%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'body-xs-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.medium}`,\n\t\tfontSize: `${fontSizes.xs}px`,\n\t\tlineHeight: '133.33%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'body-xs-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.bold}`,\n\t\tfontSize: `${fontSizes.xs}px`,\n\t\tlineHeight: '133.33%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.250px',\n\t},\n\t'body-s-regular': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.regular}`,\n\t\tfontSize: `${fontSizes.s}px`,\n\t\tlineHeight: '142.86%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.15px',\n\t},\n\t'body-s-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.medium}`,\n\t\tfontSize: `${fontSizes.s}px`,\n\t\tlineHeight: '142.86%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.15px',\n\t},\n\t'body-s-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.bold}`,\n\t\tfontSize: `${fontSizes.s}px`,\n\t\tlineHeight: '142.86%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'body-m-regular': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.regular}`,\n\t\tfontSize: `${fontSizes.m}px`,\n\t\tlineHeight: '140%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.15px',\n\t},\n\t'body-m-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.medium}`,\n\t\tfontSize: `${fontSizes.m}px`,\n\t\tlineHeight: '140%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.15px',\n\t},\n\t'body-m-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.bold}`,\n\t\tfontSize: `${fontSizes.m}px`,\n\t\tlineHeight: '140%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'body-l-regular': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.regular}`,\n\t\tfontSize: `${fontSizes.l}px`,\n\t\tlineHeight: '162.5%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.1px',\n\t},\n\t'body-l-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.medium}`,\n\t\tfontSize: `${fontSizes.l}px`,\n\t\tlineHeight: '162.5%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.1px',\n\t},\n\t'body-l-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: `${fontWeights.bold}`,\n\t\tfontSize: `${fontSizes.l}px`,\n\t\tlineHeight: '162.5%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.15px',\n\t},\n\t'heading-s-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '650',\n\t\tfontSize: '20px',\n\t\tlineHeight: '140%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'heading-s-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '560',\n\t\tfontSize: '20px',\n\t\tlineHeight: '140%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'heading-m-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '650',\n\t\tfontSize: '24px',\n\t\tlineHeight: '116.67%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'heading-m-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '560',\n\t\tfontSize: '24px',\n\t\tlineHeight: '116.67%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'heading-l-medium': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '560',\n\t\tfontSize: '28px',\n\t\tlineHeight: '128.57%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n\t'heading-l-bold': {\n\t\tfontFamily: `${fontFamily}`,\n\t\tfontWeight: '650',\n\t\tfontSize: '28px',\n\t\tlineHeight: '128.57%',\n\t\ttextDecoration: 'none',\n\t\tletterSpacing: '0.2px',\n\t},\n};\n","import { coreColors, dark, light } from './colors/colors';\nimport type { Colors, CoreColors } from './colors/types';\nimport { corners } from './corners/corners';\nimport type { Corners } from './corners/types';\nimport { type } from './type/type';\nimport type { Type } from './type/types';\n\nexport type SliceTheme = {\n\tname: string;\n\tcoreColors: CoreColors;\n\tcolors: Colors;\n\ttype: Type;\n\tcorners: Corners;\n};\n\nexport const lightTheme: SliceTheme = {\n\tname: 'lightMode',\n\tcoreColors,\n\tcolors: light,\n\ttype,\n\tcorners,\n};\n\nexport const darkTheme: SliceTheme = {\n\tname: 'darkMode',\n\tcoreColors,\n\tcolors: dark,\n\ttype,\n\tcorners,\n};\n","import { useEffect, useState } from 'react';\nimport { type SliceTheme, darkTheme, lightTheme } from '../../theme';\n\nexport function useObserveTheme() {\n\tconst [theme, setTheme] = useState<SliceTheme>(lightTheme);\n\n\tuseEffect(() => {\n\t\tconst observer = new MutationObserver((mutations) => {\n\t\t\tfor (const mutation of mutations) {\n\t\t\t\tif (\n\t\t\t\t\tmutation.type === 'attributes' &&\n\t\t\t\t\tmutation.attributeName === 'data-theme'\n\t\t\t\t) {\n\t\t\t\t\tconst newTheme = document.documentElement.dataset.theme;\n\t\t\t\t\tif (\n\t\t\t\t\t\t!newTheme ||\n\t\t\t\t\t\tnewTheme === '' ||\n\t\t\t\t\t\tnewTheme.includes(lightTheme.name)\n\t\t\t\t\t)\n\t\t\t\t\t\tsetTheme(lightTheme);\n\t\t\t\t\telse {\n\t\t\t\t\t\tsetTheme(darkTheme);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tobserver.observe(document.documentElement, {\n\t\t\tattributes: true,\n\t\t\tattributeFilter: ['data-theme'],\n\t\t});\n\n\t\treturn () => observer.disconnect();\n\t}, []);\n\n\treturn theme;\n}\n","import { useCallback, useMemo } from 'react';\nimport type { SliceTheme } from '../../theme';\nimport { darkTheme, lightTheme } from '../../theme';\nimport { colorClass, colorCssVars } from '../../theme/colors/colors';\nimport { typeCssClasses, typeStyles } from '../../theme/type/type';\nimport { useObserveTheme } from '../useObserveTheme/useObserveTheme';\n\n/**\n * Hook to manage Slice theming\n */\nexport function useTheme() {\n\tconst current = useObserveTheme();\n\n\tconst set = useCallback((newTheme: SliceTheme | string) => {\n\t\tconsole.log('set theme', newTheme);\n\t\tlet theme: SliceTheme;\n\t\tif (typeof newTheme === 'string') {\n\t\t\tif (newTheme === 'system') {\n\t\t\t\tconst darkModeMediaQuery = globalThis.matchMedia(\n\t\t\t\t\t'(prefers-color-scheme: dark)',\n\t\t\t\t);\n\t\t\t\tconst isDark = darkModeMediaQuery.matches;\n\t\t\t\ttheme = isDark ? darkTheme : lightTheme;\n\t\t\t} else {\n\t\t\t\ttheme = newTheme === darkTheme.name ? darkTheme : lightTheme;\n\t\t\t}\n\t\t} else theme = newTheme;\n\t\tdocument.documentElement.dataset.theme = theme.name;\n\t}, []);\n\n\tconst toggle = () => {\n\t\tconst lightMode = current.name === lightTheme.name;\n\t\tconst newTheme = lightMode ? darkTheme : lightTheme;\n\t\tdocument.documentElement.dataset.theme = newTheme.name;\n\t};\n\n\tconst isDark = useMemo(() => {\n\t\treturn current.name === darkTheme.name;\n\t}, [current]);\n\n\treturn {\n\t\t/**\n\t\t * Slice's default dark theme\n\t\t */\n\t\tdarkTheme,\n\t\t/**\n\t\t * Slice's default light theme\n\t\t */\n\t\tlightTheme,\n\t\t/**\n\t\t * The currently active SliceTheme\n\t\t */\n\t\tcurrent,\n\t\t/**\n\t\t * CSS variables for theme colors\n\t\t */\n\t\tcolors: colorCssVars,\n\t\t/**\n\t\t * CSS Class names for the theme colors\n\t\t */\n\t\tcolorsClass: colorClass,\n\t\t/**\n\t\t * CSS class names for theme typefaces\n\t\t */\n\t\ttypeClass: typeCssClasses,\n\t\t/**\n\t\t * CSS typeface styles as inline style properties\n\t\t */\n\t\ttypeStyle: typeStyles,\n\t\t/**\n\t\t * Set a new theme by name or passing in a SliceTheme object\n\t\t * @param newTheme\n\t\t */\n\t\tset,\n\t\t/**\n\t\t * Toggle between light and dark themes\n\t\t */\n\t\ttoggle,\n\t\t/**\n\t\t * If the currently active theme is the Slice's default dark theme'\n\t\t */\n\t\tisDark,\n\t};\n}\n","import { useRef } from 'react';\n\nexport function useDoubleClick<T, Y>(\n\tonClick: (payload?: T) => void,\n\tonDblClick: (payload?: Y) => void,\n\tdelay = 200,\n) {\n\tconst timer = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\tconst didClick = (payload: T) => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t\ttimer.current = setTimeout(() => {\n\t\t\tonClick(payload);\n\t\t}, delay);\n\t\treturn () => {\n\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t};\n\t};\n\n\tconst didDblClick = (payload: Y) => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t\tonDblClick(payload);\n\t};\n\n\treturn [didClick, didDblClick] as const;\n}\n","import type React from 'react';\nimport { useLayoutEffect, useState } from 'react';\nimport type { ToolTip } from '../../uikit/sharedTypes';\n\nconst hiddenCoords = { x: 0, y: 0 };\n\nexport function useToolTip(\n\ttoolTip: ToolTip | null,\n\ttipElement: React.RefObject<HTMLDivElement | null>,\n) {\n\tconst [coords, setCoords] = useState<{ x: number; y: number } | undefined>(\n\t\thiddenCoords,\n\t);\n\n\tuseLayoutEffect(() => {\n\t\t// remove tooltip from view\n\t\tif (!toolTip || !tipElement?.current) {\n\t\t\tsetCoords(hiddenCoords);\n\t\t\treturn;\n\t\t}\n\n\t\t// get the target ref\n\t\tconst target = toolTip.ref?.current;\n\t\tif (!target) {\n\t\t\tsetCoords(hiddenCoords);\n\t\t\treturn;\n\t\t}\n\n\t\t// get rectangles for parent and tooltip\n\t\tconst parentRect = target.getBoundingClientRect();\n\t\tconst tipRect = tipElement.current.getBoundingClientRect();\n\n\t\t// get position and size details\n\t\tconst {\n\t\t\tx: parentX,\n\t\t\ty: parentY,\n\t\t\twidth: parentWidth,\n\t\t\theight: parentHeight,\n\t\t} = parentRect;\n\t\tconst { width: tipWidth } = tipRect;\n\n\t\t// calculate the tool tip coords suc that it's placed beneath the parent\n\t\tconst x = parentX + parentWidth / 2 - tipWidth / 2;\n\t\tconst y = parentY + parentHeight + 10;\n\n\t\t// set the coords\n\t\tsetCoords({ x, y });\n\t}, [toolTip, tipElement]);\n\n\treturn coords;\n}\n","import { useCallback, useEffect } from 'react';\n\nexport interface KeyboardShortcut {\n\tkey: string;\n\tname: string;\n}\n\nexport type KeyboardShortcuts = KeyboardShortcut[];\n\nexport function useKeyboardShortcuts(\n\tshortcuts: KeyboardShortcuts,\n\tshortCutHandler: (shortcut: KeyboardShortcut) => void,\n\tisAppleDevice: boolean,\n) {\n\t// don't process shortcuts on editable elements, like inputs, editable divs, etc.\n\n\tconst isEditable = useCallback((e: KeyboardEvent) => {\n\t\tconst target = e.target as HTMLElement | null;\n\t\tif (target) {\n\t\t\tconst tag = target.tagName;\n\t\t\treturn (\n\t\t\t\ttarget.isContentEditable ||\n\t\t\t\ttag === 'INPUT' ||\n\t\t\t\ttag === 'TEXTAREA' ||\n\t\t\t\ttag === 'SELECT'\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t}, []);\n\n\t// get keyboard event check if it's a shortcut\n\tconst handleKeyPress = useCallback(\n\t\t(e: KeyboardEvent) => {\n\t\t\tif (isEditable(e)) return;\n\t\t\tconst isMeta =\n\t\t\t\t(isAppleDevice && e.metaKey) || (!isAppleDevice && e.ctrlKey);\n\t\t\tfor (const s of shortcuts) {\n\t\t\t\tif (s.key.toLowerCase() === e.key.toLowerCase() && isMeta) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tshortCutHandler(s);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[isAppleDevice, shortcuts, shortCutHandler, isEditable],\n\t);\n\n\t// set keyboard listener\n\tuseEffect(() => {\n\t\tif (shortcuts.length === 0) return;\n\t\tglobalThis.addEventListener('keydown', handleKeyPress, false);\n\t\treturn () => {\n\t\t\tglobalThis.removeEventListener('keydown', handleKeyPress, false);\n\t\t};\n\t}, [shortcuts, handleKeyPress]);\n}\n","import { useEffect, useState } from 'react';\n\nfunction getTimeDifference(date: Date | string, labelPrefix: string) {\n\tconst compareDate = date instanceof Date ? date : new Date(date);\n\tif (Number.isNaN(compareDate.getTime())) return `${labelPrefix}Invalid date`;\n\n\t// getTime = milliseconds since Jan 1 1970 UTC\n\tconst secondsDiff = Math.max(\n\t\t0,\n\t\tMath.floor((Date.now() - compareDate.getTime()) / 1000),\n\t);\n\tconst minutes = Math.floor(secondsDiff / 60);\n\tconst hours = Math.floor(minutes / 60);\n\tconst days = Math.floor(hours / 24);\n\n\tif (minutes < 1) return `${labelPrefix}Just now`;\n\tif (minutes === 1) return `${labelPrefix}1 min. ago`;\n\tif (minutes < 60) return `${labelPrefix}${minutes} mins. ago`;\n\tif (hours === 1) return `${labelPrefix}1 hour ago`;\n\tif (hours < 24) return `${labelPrefix}${hours} hours ago`;\n\tif (days === 1) return `${labelPrefix}1 day ago`;\n\tif (days < 15) return `${labelPrefix}${days} days ago`;\n\treturn compareDate.toLocaleDateString('en-US', {\n\t\tday: '2-digit',\n\t\tmonth: 'short',\n\t\tyear: 'numeric',\n\t});\n}\n\nexport function useLastUpdated(\n\ttimestamp: string | undefined,\n\tprefix = '',\n\tinterval = 1,\n) {\n\tconst [lastUpdated, setLastUpdated] = useState<string>(\n\t\ttimestamp ? getTimeDifference(timestamp, prefix) : '',\n\t);\n\tuseEffect(() => {\n\t\tif (!timestamp) {\n\t\t\tsetLastUpdated('');\n\t\t\treturn;\n\t\t}\n\t\tsetLastUpdated(getTimeDifference(timestamp, prefix));\n\t\tconst refreshMinutes = Math.max(interval, 1);\n\t\tconst intervalTimer = setInterval(\n\t\t\t() => {\n\t\t\t\tsetLastUpdated(getTimeDifference(timestamp, prefix));\n\t\t\t},\n\t\t\trefreshMinutes * 60 * 1000,\n\t\t);\n\t\treturn () => {\n\t\t\tclearInterval(intervalTimer);\n\t\t};\n\t}, [interval, prefix, timestamp]);\n\n\treturn { lastUpdated, timer: interval };\n}\n","import { useEffect, useState } from 'react';\n\nfunction canUseLocalStorage() {\n\treturn (\n\t\ttypeof globalThis !== 'undefined' &&\n\t\t'localStorage' in globalThis &&\n\t\tglobalThis.localStorage !== undefined &&\n\t\tglobalThis.localStorage !== null\n\t);\n}\n\nfunction readLocalStorageValue<T>(key: string, fallback: T): T {\n\tif (!canUseLocalStorage()) return fallback;\n\ttry {\n\t\tconst raw = globalThis.localStorage.getItem(key);\n\t\tif (raw === null) {\n\t\t\t// If not set, initialize with fallback.\n\t\t\tglobalThis.localStorage.setItem(key, JSON.stringify(fallback));\n\t\t\treturn fallback;\n\t\t}\n\t\treturn JSON.parse(raw) as T;\n\t} catch (error) {\n\t\tconsole.error(`Error parsing local storage item for key ${key}:`, {\n\t\t\terror,\n\t\t});\n\t\treturn fallback;\n\t}\n}\n\nexport function useLocalStore<T>(key: string, value: T) {\n\tconst [item, setItem] = useState<T>(() => readLocalStorageValue(key, value));\n\n\t// rehydrate on prop changes\n\tuseEffect(() => {\n\t\tsetItem(readLocalStorageValue(key, value));\n\t}, [key, value]);\n\n\tfunction updateItem(data: T) {\n\t\tif (canUseLocalStorage()) {\n\t\t\ttry {\n\t\t\t\tglobalThis.localStorage.setItem(key, JSON.stringify(data));\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(`Error setting local storage item for key ${key}:`, {\n\t\t\t\t\terror,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tsetItem(data);\n\t}\n\n\treturn [item, updateItem] as const;\n}\n","import { useEffect, useRef, useState } from 'react';\n\nexport enum FormFactor {\n\tMobile = 'mobile',\n\tTablet = 'tablet',\n\tDesktop = 'desktop',\n}\n\nfunction checkElectron() {\n\tconst userAgent = navigator.userAgent.toLowerCase();\n\treturn userAgent.includes('electron/');\n}\n\nconst isElectron = checkElectron();\nconst isAppleDevice =\n\tnavigator.platform.startsWith('Mac') || navigator.platform === 'iPhone';\nconst dpr = (Math.min(Math.ceil(window.devicePixelRatio), 3) as 1 | 2 | 3) ?? 1;\nconst isTouchDevice =\n\t'ontouchstart' in globalThis || navigator.maxTouchPoints > 0;\n\nexport function useWindow(top = true) {\n\tconst [viewportWidth, setViewportWidth] = useState<number | null>(null);\n\tconst [viewportHeight, setViewportHeight] = useState<number | null>(null);\n\tconst [height, setHeight] = useState<string>('100vh');\n\tconst [formFactor, setFormFactor] = useState<FormFactor>(FormFactor.Desktop);\n\n\tuseEffect(() => {\n\t\thandleResize();\n\t\twindow.addEventListener('resize', handleResize, false);\n\t\treturn () => window.removeEventListener('resize', handleResize, false);\n\t}, []);\n\n\tfunction handleResize() {\n\t\tconst windowWidth = top\n\t\t\t? (window.top?.innerWidth ?? window.innerWidth)\n\t\t\t: window.innerWidth;\n\t\tconst windowHeight = top\n\t\t\t? (window.top?.innerHeight ?? window.innerHeight)\n\t\t\t: window.innerHeight;\n\t\tif (windowWidth <= 480) setFormFactor(FormFactor.Mobile);\n\t\telse if (windowWidth < 860) setFormFactor(FormFactor.Tablet);\n\t\telse setFormFactor(FormFactor.Desktop);\n\t\tsetViewportHeight(windowHeight);\n\t\tsetViewportWidth(windowWidth);\n\t\t// note: mobile devices can have task bars that are included inside the viewport.\n\t\t// for mobile devices, set root containers to the inner height pixel which removes\n\t\t// the height of any toolbars and provides the \"true\" view port height\n\t\tif (!isElectron) setHeight(isTouchDevice ? `${windowHeight}px` : '100vh');\n\t}\n\n\treturn {\n\t\tviewportWidth,\n\t\tviewportHeight,\n\t\theight,\n\t\tisTouchDevice,\n\t\tisElectron,\n\t\tisAppleDevice,\n\t\tformFactor,\n\t\tdpr,\n\t};\n}\n","import { type RefObject, useCallback, useEffect, useState } from 'react';\n\ntype Size = {\n\theight: number;\n\twidth: number;\n};\n\nexport function useObserveResize(\n\telement: RefObject<HTMLElement | null> | undefined,\n\toptions?: { ignore?: 'width' | 'height' },\n) {\n\tconst [size, setSize] = useState<Size>({ width: 0, height: 0 });\n\tconst ignore = options?.ignore;\n\n\tconst handleResize = useCallback(\n\t\t(entries: ResizeObserverEntry[]) => {\n\t\t\tif (!entries[0]) return;\n\t\t\tconst width = element?.current?.offsetWidth || 0;\n\t\t\tconst height = element?.current?.offsetHeight || 0;\n\t\t\tsetSize((prev) => {\n\t\t\t\tconst next = {\n\t\t\t\t\twidth: ignore === 'width' ? prev.width : width,\n\t\t\t\t\theight: ignore === 'height' ? prev.height : height,\n\t\t\t\t};\n\t\t\t\tif (prev.width === next.width && prev.height === next.height) {\n\t\t\t\t\treturn prev;\n\t\t\t\t}\n\t\t\t\treturn next;\n\t\t\t});\n\t\t},\n\t\t[element, ignore],\n\t);\n\n\tuseEffect(() => {\n\t\tif (element === undefined) return;\n\t\tconst el = element.current;\n\t\tif (!el) return;\n\n\t\t// Get initial size\n\t\tconst newWidth = el.offsetWidth || 0;\n\t\tconst newHeight = el.offsetHeight || 0;\n\n\t\t// set the new size of different to previous\n\t\tsetSize((prev) => {\n\t\t\tconst next = {\n\t\t\t\twidth: ignore === 'width' ? prev.width : newWidth,\n\t\t\t\theight: ignore === 'height' ? prev.height : newHeight,\n\t\t\t};\n\t\t\tif (prev.width === next.width && prev.height === next.height) {\n\t\t\t\treturn prev; // same so no need to trigger re-renders\n\t\t\t}\n\t\t\treturn next;\n\t\t});\n\n\t\t// Observe size changes\n\t\tconst resizeObserver = new ResizeObserver(handleResize);\n\t\tresizeObserver.observe(el);\n\n\t\treturn () => {\n\t\t\tresizeObserver.unobserve(el);\n\t\t\tresizeObserver.disconnect();\n\t\t};\n\t}, [element, handleResize, ignore]);\n\n\treturn size;\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import value from '*.png';\nimport type React from 'react';\n\nexport function setSizeStyle(size: string | number | undefined): string {\n\tif (!size) return 'auto';\n\tif (typeof size === 'string') return size;\n\treturn `${size}px`;\n}\n\n/**\n * Clean up string with html\n */\nexport function cleanString(\n\tinput: string,\n\tremoveInvisible = true,\n\tremoveHtml = true,\n) {\n\tlet clean: string = input;\n\tconst scriptsRegEx = /\\b[^<]*(?:(?!<\\/script>)<[^<]*)*<\\/script>/gi;\n\tclean = clean.replaceAll(scriptsRegEx, '');\n\tif (removeInvisible) {\n\t\tconst invisibleRegEx = /[\\r\\n\\t]/gi;\n\t\tclean = clean.replaceAll(invisibleRegEx, '');\n\t}\n\tif (removeHtml) {\n\t\tconst htmlRegEx = /<\\/?[a-z][^>]*>/gi;\n\t\tclean = clean.replaceAll(htmlRegEx, '');\n\t}\n\treturn clean;\n}\n\n/**\n * Check set theme\n */\nexport function isDarkMode(): boolean {\n\tconst theme = document.documentElement.dataset.theme;\n\treturn theme?.includes('dark') ?? false;\n}\n\n/**\n * Debug component rendering\n * Code removed when built / deployed\n */\nexport function debug(previous: any, updated: any, name = 'component') {\n\tif (process.env.NODE_ENV === 'test') return; // exit if running tests\n\tconst reasons = [];\n\tconst props = previous.current.props;\n\tconst mount = previous.current.mount;\n\tconst unmount = previous.current.unmount;\n\n\tif (mount) {\n\t\tconsole.log({\n\t\t\tcomponent: name,\n\t\t\t'(re)render': true,\n\t\t\tevent: 'Component Mount',\n\t\t});\n\t} else if (unmount) {\n\t\tconsole.log({\n\t\t\tcomponent: name,\n\t\t\t'(re)render': false,\n\t\t\tevent: 'Component Unmount',\n\t\t});\n\t} else {\n\t\tconst reasons = createPropChangeArray(props, updated);\n\t\tconsole.log({\n\t\t\tcomponent: name,\n\t\t\t'(re)render': true,\n\t\t\tevent: 'Props Change',\n\t\t\tprops: reasons,\n\t\t});\n\t}\n\treturn { props: updated, mount: false, unmount: false };\n}\n\nexport function createPropChangeArray(props: any, updated: any) {\n\tconst reasons = [];\n\tfor (const key of Object.keys(updated)) {\n\t\tif (updated[key] !== props[key]) {\n\t\t\ttry {\n\t\t\t\tconst propName = `${key}:`;\n\t\t\t\tconst prev = JSON.stringify(props[key]);\n\t\t\t\tconst next = JSON.stringify(updated[key]);\n\t\t\t\tconst valueChanged = `${prev} > ${next}`;\n\t\t\t\treasons.push(`${propName} ${valueChanged}`);\n\t\t\t} catch (error) {\n\t\t\t\tlet message = 'Unknown error';\n\t\t\t\tif (error instanceof Error) message = error.message;\n\t\t\t\tif (typeof error === 'string') message = error;\n\t\t\t\treasons.push(`${key} ${message}`);\n\t\t\t}\n\t\t}\n\t}\n\treturn reasons;\n}\n\nexport function setProps(props: any, mount = false, unmount = false) {\n\tif (process.env.NODE_ENV === 'test') return; // exit if running tests\n\treturn { props, mount, unmount };\n}\n\n/**\n * convert hex to rgb\n */\nexport const hexToRgb = (hex: string | undefined) => {\n\tif (!hex) return undefined;\n\tconst r = Number.parseInt(hex.slice(1, 3), 16);\n\tconst g = Number.parseInt(hex.slice(3, 5), 16);\n\tconst b = Number.parseInt(hex.slice(5, 7), 16);\n\treturn `\"rgb(${r}, ${g}, ${b})\"`;\n};\n\n/**\n * Utility to accessibility - mimics click event with designated keys event\n */\nexport function accessibleKeyDown(\n\te: React.KeyboardEvent<any>,\n\tclickFunction: () => void,\n\tkeys?: string[],\n) {\n\tconst activateWith = keys ?? ['Enter', ' '];\n\tconst match = activateWith.includes(e.key);\n\tif (match) {\n\t\te.preventDefault();\n\t\tclickFunction();\n\t}\n}\n\n/**\n * Get the pointer position from a DOM touch or mouse event\n */\nexport function pointerPosition(e: MouseEvent | TouchEvent): number {\n\tif (e.type.startsWith('touch')) {\n\t\tconst touchEvent = e as TouchEvent;\n\t\treturn touchEvent.touches[0].clientX;\n\t}\n\tconst mouseEvent = e as MouseEvent;\n\treturn mouseEvent.clientX;\n}\n\n/**\n * Filter and trim class name array\n */\nexport function filterClasses(classNames: string[]): string {\n\treturn classNames\n\t\t.filter((item) => item !== '')\n\t\t.join(' ')\n\t\t.trim();\n}\n\n/**\n * Takes a style string or number and returns a valid CSS style string\n */\nexport function setStyle(\n\tvalue: string | number | undefined,\n\tdefaultVal: number | string | undefined = undefined,\n) {\n\tconst useValue = value ?? defaultVal;\n\tif (!useValue) return 'unset';\n\tif (typeof useValue === 'string') return useValue;\n\treturn `${useValue}px`;\n}\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React, { useCallback, useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './Avatar.module.css';\nimport type { AvatarProps } from './_types';\n\nexport const Avatar = React.memo((props: AvatarProps) => {\n\tconst {\n\t\tfirst = '',\n\t\tlast = '',\n\t\timage = '',\n\t\tborder = 0,\n\t\tcolor = undefined,\n\t\tborderColor = undefined,\n\t\tbgColor = undefined,\n\t\tfirstOnly = false,\n\t\tonClick = undefined,\n\t\tonKeyDown = undefined,\n\t\tfontSize = undefined,\n\t\tonToolTip = () => null,\n\t\tsize = 34,\n\t\tframe = 34,\n\t\ttabIndex = 0,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo initials computation\n\tconst initials = useMemo(\n\t\t() => `${first?.charAt(0)}${firstOnly ? '' : last.charAt(0)}`,\n\t\t[first, last, firstOnly],\n\t);\n\n\t// memo the avatar image if there is one\n\tconst bgImage = useMemo(() => {\n\t\tif (firstOnly) return '';\n\t\treturn image ? `url(${image})` : '';\n\t}, [firstOnly, image]);\n\n\t// calc and memo font size\n\tconst setFontSize = useMemo(() => {\n\t\tif (fontSize === undefined) return 'inherit';\n\t\tif (fontSize === 'auto') {\n\t\t\tlet fSize = Math.round(frame / 3);\n\t\t\tfSize = Math.min(fSize, 24);\n\t\t\tfSize = Math.max(fSize, 14);\n\t\t\treturn `${fSize}px`;\n\t\t}\n\t\treturn `${fontSize}px`;\n\t}, [frame, fontSize]);\n\n\t// memo display content\n\tconst displayContent = useMemo(\n\t\t() => (firstOnly || !image ? initials : null),\n\t\t[firstOnly, image, initials],\n\t);\n\n\t// handle mouse enter\n\tconst onMouseEnter = useCallback(\n\t\t(event: React.MouseEvent<HTMLDivElement>) => {\n\t\t\tconst payload = { label: first };\n\t\t\tonToolTip({ payload, event });\n\t\t},\n\t\t[first, onToolTip],\n\t);\n\n\t// handle mouse leave\n\tconst onMouseLeave = useCallback(() => {\n\t\tonToolTip(null);\n\t}, [onToolTip]);\n\n\t// memo css vars\n\tconst avatarVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--avatar-size': `${size}px`,\n\t\t\t'--avatar-frame': `${frame}px`,\n\t\t\t'--avatar-border': `${border}px`,\n\t\t\t'--avatar-color': color ?? 'var(--core-text-primary)',\n\t\t\t'--avatar-bg-color': bgColor ?? 'var(--core-surface-secondary)',\n\t\t\t'--avatar-border-color': borderColor ?? 'var(--core-surface-primary)',\n\t\t\t'--avatar-bg-image': `${bgImage}`,\n\t\t\t'--avatar-font-size': setFontSize,\n\t\t} as React.CSSProperties;\n\t}, [size, frame, border, color, bgColor, borderColor, bgImage, setFontSize]);\n\n\t// memo class names\n\tconst classNames = useMemo(() => {\n\t\treturn `${css.wrapper}${divClass}`;\n\t}, [divClass]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Avatar');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={classNames}\n\t\t\tstyle={{ ...divStyle, ...avatarVars }}\n\t\t\tonMouseEnter={onMouseEnter}\n\t\t\tonMouseLeave={onMouseLeave}\n\t\t\tonClick={onClick}\n\t\t\tonKeyDown={onKeyDown}\n\t\t\trole={onClick ? 'button' : 'img'}\n\t\t\ttabIndex={onClick ? tabIndex : undefined}\n\t\t\taria-label={`User Avatar - ${first}`}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div aria-hidden={true} className={css.user}>\n\t\t\t\t{displayContent}\n\t\t\t</div>\n\t\t</div>\n\t);\n});\n","import React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Avatar } from '../Avatar';\nimport css from './AvatarGroup.module.css';\nimport type { AvatarGroupProps, AvatarInfo } from './_types';\n\nexport const AvatarGroup = React.memo((props: AvatarGroupProps) => {\n\tconst {\n\t\tavatars = [],\n\t\tsize = 32,\n\t\tborder = 3,\n\t\toverlap = 8,\n\t\tgap = 0,\n\t\tborderColor = undefined,\n\t\tmargin = 0,\n\t\tfirstOnly = false,\n\t\tonToolTip = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--ag-gap': `${gap ?? 0}px`,\n\t\t\t'--ag-margin': `${margin ?? 0}px`,\n\t\t\t'--ag-overlap': `${overlap > 0 ? -overlap : 0}px`,\n\t\t} as React.CSSProperties;\n\t}, [overlap, gap, margin]);\n\n\t// memo rendered avatars list\n\tconst renderedAvatars = useMemo(() => {\n\t\tif (!avatars) return null;\n\t\treturn avatars.map((avatar: AvatarInfo, index: number) => (\n\t\t\t<div className={css.avatar} key={`avatar_${avatar.email}_${index}`}>\n\t\t\t\t<Avatar\n\t\t\t\t\tfirst={avatar.first}\n\t\t\t\t\tlast={avatar.last}\n\t\t\t\t\timage={avatar.image || avatar.avatar}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tframe={size}\n\t\t\t\t\tborder={border}\n\t\t\t\t\tborderColor={borderColor}\n\t\t\t\t\tcolor={avatar.color}\n\t\t\t\t\tbgColor={avatar.bgColor}\n\t\t\t\t\tfirstOnly={firstOnly}\n\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t));\n\t}, [avatars, size, border, borderColor, firstOnly, onToolTip]);\n\n\t// memo class names\n\tconst classNames = useMemo(() => {\n\t\treturn `${css.wrapper}${divClass}`;\n\t}, [divClass]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Avatar Group');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={classNames}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{renderedAvatars}\n\t\t</div>\n\t);\n});\n","import React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './Badge.module.css';\nimport type { BadgeProps } from './_types';\n\nexport const Badge = React.memo((props: BadgeProps) => {\n\tconst { count, variant = 'dark', hideNull = true, ...divAttributes } = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo display count\n\tconst displayCount = useMemo(() => {\n\t\tif (count === undefined) return '0';\n\t\tif (typeof count === 'string') return count;\n\t\treturn count > 99 ? '99+' : count.toString();\n\t}, [count]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--badge-color':\n\t\t\t\tvariant === 'light'\n\t\t\t\t\t? 'var(--core-text-primary)'\n\t\t\t\t\t: 'var(--core-text-light)',\n\t\t\t'--badge-bg':\n\t\t\t\tvariant === 'light'\n\t\t\t\t\t? 'var(--core-badge-secondary)'\n\t\t\t\t\t: 'var(--core-badge-primary)',\n\t\t} as React.CSSProperties;\n\t}, [variant]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Badge');\n\t/* END.DEBUG */\n\n\tif (count === undefined || count === '' || (hideNull && count === 0))\n\t\treturn null;\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.badge}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\trole={'status'}\n\t\t\taria-live={'polite'}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{displayCount}\n\t\t</div>\n\t);\n});\n","import type React from 'react';\nimport type { JSX } from 'react';\n\nexport interface IconRenderProps {\n\tstroke: number;\n\tstrokeColor: string;\n\tfillColor: string;\n\tcoverUp: string;\n}\n\nexport type IconLineRenderer = (props: IconRenderProps) => JSX.Element;\n\nexport interface IconDefinition {\n\tline: IconLineRenderer;\n\tlineOn?: IconLineRenderer;\n}\n\n/**\n * Static icon registry created once at module load.\n * Each entry stores only icon line content renderers.\n */\nexport const STATIC_ICON_REGISTRY = new Map<string, IconDefinition>([\n\t[\n\t\t'task list',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 6L21 6\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 12L21 12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 18L21 18\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 7.39286C3 7.39286 4 8.04466 4.5 9C4.5 9 6 5.25 8 4\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 18.3929C3 18.3929 4 19.0447 4.5 20C4.5 20 6 16.25 8 15\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'highlight',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 24 0 L 24 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 20.825 11.376 C 20.713 11.263 20.56 11.199 20.401 11.199 C 20.241 11.199 20.089 11.263 19.976 11.376 L 16.201 15.15 L 9.85 8.799 L 13.626 5.025 C 13.86 4.79 13.86 4.41 13.626 4.176 C 13.391 3.941 13.011 3.942 12.777 4.176 L 9.002 7.951 C 8.629 8.324 8.543 8.897 8.791 9.362 L 7.202 10.951 C 6.734 11.419 6.734 12.179 7.202 12.647 L 7.554 12.999 L 3.178 17.374 C 3.03 17.521 2.969 17.734 3.017 17.937 C 3.065 18.14 3.215 18.303 3.413 18.368 L 8.812 20.168 C 8.95 20.215 9.099 20.209 9.232 20.153 C 9.305 20.123 9.371 20.079 9.427 20.023 L 12.002 17.447 L 12.353 17.799 C 12.822 18.267 13.581 18.267 14.05 17.799 L 15.638 16.211 C 16.104 16.458 16.677 16.372 17.049 15.999 L 20.825 12.224 C 21.06 11.99 21.06 11.61 20.825 11.376 Z M 13.201 16.95 L 8.05 11.799 L 9.602 10.248 L 14.753 15.399 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'bold',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\t\td=\"M5 6C5 4.58579 5 3.87868 5.43934 3.43934C5.87868 3 6.58579 3 8 3H12.5789C15.0206 3 17 5.01472 17 7.5C17 9.98528 15.0206 12 12.5789 12H5V6Z\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M12.4286 12H13.6667C16.0599 12 18 14.0147 18 16.5C18 18.9853 16.0599 21 13.6667 21H8C6.58579 21 5.87868 21 5.43934 20.5607C5 20.1213 5 19.4142 5 18V12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'italic',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M12 4H19\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M8 20L16 4\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M5 20H12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'underline',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M5.5 3V11.5C5.5 15.0899 8.41015 18 12 18C15.5899 18 18.5 15.0899 18.5 11.5V3\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 21H21\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'strike',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 12H20\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M17.5 7.66667C17.5 5.08934 15.0376 3 12 3C8.96243 3 6.5 5.08934 6.5 7.66667C6.5 8.15279 6.55336 8.59783 6.6668 9M6 16.3333C6 18.9107 8.68629 21 12 21C15.3137 21 18 19.6667 18 16.3333C18 13.9404 16.9693 12.5782 14.9079 12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'link',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 24 0 L 24 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12.251 18.425 C 15.169 18.425 17.041 16.923 17.041 14.629 C 17.041 12.8 15.925 11.834 13.323 11.219 L 11.891 10.876 C 10.106 10.445 9.35 9.9 9.35 8.924 C 9.35 7.694 10.562 6.824 12.241 6.824 C 13.753 6.824 14.834 7.509 15.265 8.722 C 15.405 9.056 15.616 9.214 15.968 9.214 C 16.425 9.214 16.706 8.951 16.706 8.511 C 16.706 8.379 16.688 8.239 16.653 8.107 C 16.26 6.507 14.501 5.4 12.242 5.4 C 9.597 5.4 7.69 6.912 7.69 9.039 C 7.69 10.77 8.78 11.781 11.17 12.343 L 12.788 12.73 C 14.616 13.17 15.381 13.767 15.381 14.822 C 15.381 16.087 14.089 17.01 12.252 17.01 C 10.626 17.01 9.404 16.263 8.956 15.015 C 8.798 14.637 8.605 14.47 8.236 14.47 C 7.761 14.47 7.471 14.76 7.471 15.217 C 7.471 15.376 7.497 15.543 7.541 15.71 C 8.007 17.37 9.835 18.425 12.252 18.425 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.36 11.75 L 19.15 11.75 C 19.352 11.75 19.51 11.592 19.51 11.39 C 19.511 11.294 19.474 11.202 19.406 11.134 C 19.338 11.066 19.246 11.029 19.15 11.03 L 5.36 11.03 C 5.264 11.029 5.172 11.066 5.104 11.134 C 5.037 11.202 4.999 11.294 5 11.39 C 5 11.592 5.158 11.75 5.36 11.75 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'bullet list',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M8 5L20 5\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 5H4.00898\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 12H4.00898\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 19H4.00898\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M8 12L20 12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M8 19L20 19\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'numbered list',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 6L21 6\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 12L21 12\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 18L21 18\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 15H4.5C4.77879 15 4.91819 15 5.03411 15.0231C5.51014 15.1177 5.88225 15.4899 5.97694 15.9659C6 16.0818 6 16.2212 6 16.5C6 16.7788 6 16.9182 5.97694 17.0341C5.88225 17.5101 5.51014 17.8823 5.03411 17.9769C4.91819 18 4.77879 18 4.5 18C4.22121 18 4.08181 18 3.96589 18.0231C3.48986 18.1177 3.11775 18.4899 3.02306 18.9659C3 19.0818 3 19.2212 3 19.5V20.4C3 20.6828 3 20.8243 3.08787 20.9121C3.17574 21 3.31716 21 3.6 21H6\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 3H4.2C4.36569 3 4.5 3.13431 4.5 3.3V9M4.5 9H3M4.5 9H6\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'sink',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M15 4.5H20\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M15 9.5H18\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M15 14.5H20\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M15 19.5H18\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11 3V21\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 8.5L5.54218 9.74227C6.84739 10.7937 7.5 11.3193 7.5 12C7.5 12.6807 6.84739 13.2063 5.54218 14.2577L4 15.5\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'lift',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 4.5H9\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M6 9.5H9\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M4 14.5H9\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M6 19.5H9\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M13 3V21\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M20 8.5L18.4578 9.74227C17.1526 10.7937 16.5 11.3193 16.5 12C16.5 12.6807 17.1526 13.2063 18.4578 14.2577L20 15.5\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'code',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M17 8L18.8398 9.85008C19.6133 10.6279 20 11.0168 20 11.5C20 11.9832 19.6133 12.3721 18.8398 13.1499L17 15\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M7 8L5.16019 9.85008C4.38673 10.6279 4 11.0168 4 11.5C4 11.9832 4.38673 12.3721 5.16019 13.1499L7 15\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14.5 4L9.5 20\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'like',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 13.447 16.354 C 13.167 16.759 12.706 17 12.214 17 L 3.5 17 C 2.672 17 2 16.328 2 15.5 L 2 8.5 C 2 7.672 2.672 7 3.5 7 L 4.343 7 C 4.762 7 5.161 6.825 5.445 6.517 L 9.265 2.379 C 9.883 1.71 11 2.147 11 3.058 L 11 7 L 16 7 C 16.828 7 17.5 7.672 17.5 8.5 L 17.5 10.031 C 17.5 10.336 17.407 10.634 17.233 10.885 Z M 5 6.5 L 5 17\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'unlike',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 6.053 4.646 C 6.333 4.241 6.794 4 7.286 4 L 16 4 C 16.828 4 17.5 4.672 17.5 5.5 L 17.5 12.5 C 17.5 13.328 16.828 14 16 14 L 15.157 14 C 14.738 14 14.339 14.175 14.055 14.483 L 10.235 18.621 C 9.617 19.29 8.5 18.853 8.5 17.942 L 8.5 14 L 3.5 14 C 2.672 14 2 13.328 2 12.5 L 2 10.969 C 2 10.664 2.093 10.366 2.267 10.115 Z M 14.5 14.5 L 14.5 4\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'stop',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 3 7.5 C 3 5.015 5.015 3 7.5 3 L 12.5 3 C 14.985 3 17 5.015 17 7.5 L 17 12.5 C 17 14.985 14.985 17 12.5 17 L 7.5 17 C 5.015 17 3 14.985 3 12.5 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'copy',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5 15 L 3.5 15 C 2.672 15 2 14.328 2 13.5 L 2 3.5 C 2 2.672 2.672 2 3.5 2 L 13.5 2 C 14.328 2 15 2.672 15 3.5 L 15 5\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t\tstrokeMiterlimit={'10'}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5 6.5 C 5 5.672 5.672 5 6.5 5 L 16.5 5 C 17.328 5 18 5.672 18 6.5 L 18 16.5 C 18 17.328 17.328 18 16.5 18 L 6.5 18 C 5.672 18 5 17.328 5 16.5 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t\tstrokeMiterlimit={'10'}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'font smaller',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 9.081 5 L 10.746 5 L 14.321 14.824 L 14.321 15.015 L 12.833 15.015 L 11.919 12.232 L 7.854 12.232 L 6.899 15.015 L 5.5 15.015 L 5.5 14.824 Z M 11.503 11.017 L 9.913 6.542 L 9.858 6.542 L 8.282 11.017 L 11.502 11.017 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'font larger',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 8.872 3 L 11.137 3 L 16 16.733 L 16 17 L 13.976 17 L 12.733 13.109 L 7.202 13.109 L 5.903 17 L 4 17 L 4 16.733 Z M 12.167 11.411 L 10.004 5.155 L 9.929 5.155 L 7.785 11.411 L 12.166 11.411 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'bar chart',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 2.5 L 2 17 L 18.5 17\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 6.5 9 L 6.5 14\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10.451 5 L 10.451 14\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 14.5 7 L 14.5 14\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'briefcase',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5 12 C 5 12.552 5.448 13 6 13 C 6.552 13 7 12.552 7 12 C 7 11.448 6.552 11 6 11 C 5.448 11 5 11.448 5 12 Z M 14 13 C 13.448 13 13 12.552 13 12 C 13 11.448 13.448 11 14 11 C 14.552 11 15 11.448 15 12 C 15 12.552 14.552 13 14 13 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.25 5 L 5.25 3.5 C 5.25 2.257 6.257 1.25 7.5 1.25 L 12.5 1.25 C 13.743 1.25 14.75 2.257 14.75 3.5 L 14.75 5 L 17.5 5 C 18.328 5 19 5.672 19 6.5 L 19 15.5 C 19 16.328 18.328 17 17.5 17 L 2.5 17 C 1.672 17 1 16.328 1 15.5 L 1 6.5 C 1 5.672 1.672 5 2.5 5 Z M 6.75 5 L 13.25 5 L 13.25 3.5 C 13.25 3.086 12.914 2.75 12.5 2.75 L 7.5 2.75 C 7.086 2.75 6.75 3.086 6.75 3.5 Z M 2.5 6.5 L 2.5 15.5 L 17.5 15.5 L 17.5 6.5 L 14.75 6.5 L 14.75 9 L 13.25 9 L 13.25 6.5 L 6.75 6.5 L 6.75 9 L 5.25 9 L 5.25 6.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'globe location',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<g transform=\"translate(2 2.5)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 7.619 15.238 C 3.411 15.238 0 11.827 0 7.619 C -0.003 5.575 0.819 3.616 2.278 2.185 M 2.921 13.601 C 2.663 12.725 3.136 12.29 3.812 12.007 C 4.85 11.57 4.85 11.57 5.63 10.534 C 6.412 9.497 7.393 9.476 9.239 11.547 C 10.068 12.479 11.796 11.666 12.728 13.066 M 7.619 15.238 C 9.503 15.238 11.228 14.554 12.558 13.421 C 13.222 12.855 13.789 12.176 14.227 11.414 C 14.446 11.033 14.634 10.631 14.785 10.213 C 14.861 10.003 14.928 9.79 14.985 9.572 M 1.785 2.916 C 2.6 2.938 3.261 3.5 3.132 4.374 C 2.921 5.801 4.248 5.459 4.199 6.75 C 4.167 7.611 3.509 8.55 1.892 8.936 C 1.041 9.139 0.559 9.279 0.176 9.806 M 6.874 0.036 C 6.628 0.06 6.383 0.095 6.142 0.143 C 5.658 0.238 5.187 0.38 4.733 0.566 C 3.825 0.937 2.99 1.484 2.278 2.185\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12.19 0 C 14.252 0 16 1.69 16 3.741 C 16 5.823 14.224 7.285 12.583 8.279 C 12.339 8.415 12.042 8.415 11.798 8.279 C 10.16 7.276 8.381 5.831 8.381 3.741 C 8.381 1.691 10.129 0 12.19 0 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12.952 3.81 C 12.952 4.23 12.611 4.571 12.19 4.571 C 11.77 4.571 11.429 4.23 11.429 3.81 C 11.429 3.389 11.77 3.048 12.19 3.048 C 12.611 3.048 12.952 3.389 12.952 3.81 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</g>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'focus',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 9.75 2.641 C 13.666 2.641 16.859 5.834 16.859 9.75 C 16.859 13.666 13.666 16.859 9.75 16.859 C 5.834 16.859 2.641 13.666 2.641 9.75 C 2.641 5.834 5.834 2.641 9.75 2.641 M 9.75 1 C 4.916 1 1 4.916 1 9.75 C 1 14.584 4.916 18.5 9.75 18.5 C 14.584 18.5 18.5 14.584 18.5 9.75 C 18.5 4.916 14.584 1 9.75 1 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.492 12.657 L 6.03 11.706 L 13.892 16.157 L 13.353 17.109 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.112 7.527 L 6.206 7.519 L 6.282 16.553 L 5.188 16.562 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 1.573 9.2 L 9.36 4.62 L 9.914 5.563 L 2.127 10.144 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.605 3.344 L 6.143 2.392 L 14.005 6.844 L 13.465 7.795 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 13.223 2.953 L 14.316 2.945 L 14.392 11.979 L 13.298 11.988 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 9.579 13.946 L 17.366 9.365 L 17.92 10.308 L 10.133 14.888 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'chart arrow',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(3.5 6)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 0 8 L 4.5 3.5 L 7.5 6 L 12.5 0.5\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeLinecap=\"square\"\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 0.876 5.957 L 3.387 2.87 L 0 0\"\n\t\t\t\t\t\t\ttransform=\"translate(10.018 -1.785) rotate(-40 1.694 2.978)\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeLinecap=\"square\"\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'document editor',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<g>\n\t\t\t\t\t\t<defs>\n\t\t\t\t\t\t\t<path\n\t\t\t\t\t\t\t\td=\"M 3 3 C 3 1.895 3.895 1 5 1 L 15 1 C 16.105 1 17 1.895 17 3 L 17 17 C 17 18.105 16.105 19 15 19 L 5 19 C 3.895 19 3 18.105 3 17 Z\"\n\t\t\t\t\t\t\t\tid=\"a1000z\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<clipPath id=\"a1001z\">\n\t\t\t\t\t\t\t\t<use xlinkHref=\"#a1000z\" />\n\t\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t\t</defs>\n\t\t\t\t\t\t<use\n\t\t\t\t\t\t\txlinkHref=\"#a1000z\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tclipPath=\"url(#a1001z)\"\n\t\t\t\t\t\t\tstrokeWidth=\"3.1\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t\t<g transform=\"translate(7 9.25)\">\n\t\t\t\t\t\t<path d=\"M 0 1.5 L 4.5 1.5 L 4.5 0 L 0 0 Z\" fill={strokeColor} />\n\t\t\t\t\t\t<path d=\"M 6 5.5 L 0 5.5 L 0 4 L 6 4 Z\" fill={strokeColor} />\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'settings',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 5.25 L 4.07 5.25 C 4.024 5.493 4 5.744 4 6 C 4 6.256 4.024 6.507 4.07 6.75 L 2 6.75 Z M 18 5.25 L 18 6.75 L 11.93 6.75 C 11.976 6.507 12 6.256 12 6 C 12 5.744 11.976 5.493 11.93 5.25 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 13.25 L 8.07 13.25 C 8.024 13.493 8 13.744 8 14 C 8 14.256 8.024 14.507 8.07 14.75 L 2 14.75 Z M 18 13.25 L 18 14.75 L 15.93 14.75 C 15.976 14.507 16 14.256 16 14 C 16 13.744 15.976 13.493 15.93 13.25 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12 12 C 12.966 12 13.75 12.784 13.75 13.75 C 13.75 14.716 12.966 15.5 12 15.5 C 11.034 15.5 10.25 14.716 10.25 13.75 C 10.25 12.784 11.034 12 12 12 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 8 4.25 C 8.966 4.25 9.75 5.034 9.75 6 C 9.75 6.966 8.966 7.75 8 7.75 C 7.034 7.75 6.25 6.966 6.25 6 C 6.25 5.034 7.034 4.25 8 4.25 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'light bulb',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5.05 13.95 C 3.784 12.683 3 10.933 3 9 C 3 7.067 3.784 5.317 5.05 4.05 C 6.317 2.784 8.067 2 10 2 C 11.933 2 13.683 2.784 14.95 4.05 C 16.216 5.317 17 7.067 17 9 C 17 10.933 16.216 12.683 14.95 13.95\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 10 C 10.552 10 11 9.552 11 9 C 11 8.448 10.552 8 10 8 C 9.448 8 9 8.448 9 9 C 9 9.552 9.448 10 10 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 6.5 15 L 13.5 15\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 7.5 18 L 12.5 18\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'issue',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 11.667 L 10.008 11.667\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 9.167 L 10 5.833\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinecap=\"round\"\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 4.503 C 2 3.581 2.748 2.833 3.67 2.833 L 16.33 2.833 C 17.252 2.833 18 3.581 18 4.503 L 18 13.163 C 18 14.086 17.252 14.833 16.33 14.833 L 3.67 14.833 C 2.748 14.833 2 14.086 2 13.163 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 3.383 18.336 C 5.417 17.476 7.653 17 10 17 C 12.347 17 14.583 17.476 16.617 18.336\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'chart',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 20 0 L 20 20 L 0 20 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 5 12 L 9 8 L 12.5 11.5 L 16.5 7.5\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinecap=\"square\"\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 2.5 L 2 17 L 18.5 17\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeLinejoin=\"round\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'chat',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 17.75 5 C 17.75 2.929 16.071 1.25 14 1.25 L 6 1.25 C 3.929 1.25 2.25 2.929 2.25 5 L 2.25 19 L 3.75 19 C 3.75 17.757 4.757 16.75 6 16.75 L 14 16.75 C 16.071 16.75 17.75 15.071 17.75 13 Z M 3.75 16 L 3.75 5 C 3.75 3.757 4.757 2.75 6 2.75 L 14 2.75 C 15.243 2.75 16.25 3.757 16.25 5 L 16.25 13 C 16.25 14.243 15.243 15.25 14 15.25 L 6 15.25 C 5.156 15.25 4.377 15.529 3.75 16 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'exclamation',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(8.75 4)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 2.471 7.765 L 2.471 0 L 0.353 0 L 0.353 7.765 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 2.824 10.588 C 2.824 11.368 2.191 12 1.412 12 C 0.632 12 0 11.368 0 10.588 C 0 9.809 0.632 9.176 1.412 9.176 C 2.191 9.176 2.824 9.809 2.824 10.588 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'undo',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 13.5 2 L 15.5 2 L 11.5 2 L 11.5 6\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 18 10 C 18 14.418 14.418 18 10 18 C 5.582 18 2 14.418 2 10 C 2 8.543 2.39 7.177 3.07 6 L 4.876 6 C 4.014 7.103 3.5 8.491 3.5 10 C 3.5 13.59 6.41 16.5 10 16.5 C 13.59 16.5 16.5 13.59 16.5 10 C 16.5 7.108 14.611 4.657 12 3.813 L 12 2.252 C 15.45 3.14 18 6.272 18 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 11 10 C 11 10.552 10.552 11 10 11 C 9.448 11 9 10.552 9 10 C 9 9.448 9.448 9 10 9 C 10.552 9 11 9.448 11 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'character beam',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 24 0 L 24 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(2 3.5)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 3.987 1.4 L 5.841 1.4 L 9.821 12.338 L 9.821 12.55 L 8.165 12.55 L 7.147 9.452 L 2.621 9.452 L 1.558 12.55 L 0 12.55 L 0 12.338 Z M 6.684 8.099 L 4.913 3.116 L 4.852 3.116 L 3.098 8.099 L 6.683 8.099 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 10.733 0 L 16.333 0 M 10.733 14 L 16.333 14 M 13.533 0 L 13.533 14\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'edit',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M14.0272 0.966797L14.5303 1.46995L16.5303 3.46995L17.0893 4.02893L16.5017 4.55775L6.50172 13.5577L6.2878 13.7503H6H4H3.25V13.0003V11.0003V10.6663L3.49828 10.4428L13.4983 1.44281L14.0272 0.966797ZM4.75 11.3343V12.2503H5.7122L14.9107 3.97163L13.9728 3.03376L4.75 11.3343ZM17 16.7503H5V15.2503H17V16.7503ZM2 17.0003C2.55228 17.0003 3 16.5526 3 16.0003C3 15.448 2.55228 15.0003 2 15.0003C1.44772 15.0003 1 15.448 1 16.0003C1 16.5526 1.44772 17.0003 2 17.0003Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'compliance check',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M3 3.313a1.5 1.5 0 0 1 1.302-1.487L10.5 1l5.228.804A1.5 1.5 0 0 1 17 3.287v10.875a1.5 1.5 0 0 1-.714 1.277L10.5 19l-6.706-3.576A1.5 1.5 0 0 1 3 14.1V3.313Z\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M7.385 9.25a4.48 4.48 0 0 0 2.865-2.865 4.48 4.48 0 0 0 2.865 2.865 4.48 4.48 0 0 0-2.865 2.865A4.48 4.48 0 0 0 7.385 9.25Z\"\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'text document',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 12.5 5.5 L 12.5 2.5 L 4.5 2.5 L 4.5 17.5 L 15.5 17.5 L 15.5 5.5 Z M 15.5 19 L 4.5 19 C 3.672 19 3 18.328 3 17.5 L 3 2.5 C 3 1.672 3.672 1 4.5 1 L 12.5 1 C 13.328 1 14 1.672 14 2.5 L 14 4 L 15.5 4 C 16.328 4 17 4.672 17 5.5 L 17 17.5 C 17 18.328 16.328 19 15.5 19 Z M 14 14.75 L 6 14.75 L 6 13.25 L 14 13.25 Z M 6 10.75 L 12 10.75 L 12 9.25 L 6 9.25 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'mail',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 5 C 2 4.448 2.448 4 3 4 L 17 4 C 17.552 4 18 4.448 18 5 L 18 15 C 18 15.552 17.552 16 17 16 L 3 16 C 2.448 16 2 15.552 2 15 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 15.5 8 C 15.5 8.552 15.052 9 14.5 9 C 13.948 9 13.5 8.552 13.5 8 C 13.5 7.448 13.948 7 14.5 7 C 15.052 7 15.5 7.448 15.5 8 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 11.5 8 L 4.5 8\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 9.75 11 L 4.5 11\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'concise',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 18 7 L 2 7 L 2 8.5 L 18 8.5 Z M 14 12 L 2 12 L 2 13.5 L 14 13.5 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'moderate',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 2 4 L 14 4 L 14 5.5 L 2 5.5 Z M 2 9 L 18 9 L 18 10.5 L 2 10.5 Z M 10 14 L 2 14 L 2 15.5 L 10 15.5 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'expanded',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 2 2 L 14 2 L 14 3.5 L 2 3.5 Z M 18 7 L 2 7 L 2 8.5 L 18 8.5 Z M 16 12 L 2 12 L 2 13.5 L 16 13.5 Z M 10 17 L 2 17 L 2 18.5 L 10 18.5 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'open circle',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 17.371 6.886 C 17.776 7.843 18 8.895 18 10 C 18 14.418 14.418 18 10 18 C 5.582 18 2 14.418 2 10 C 2 5.582 5.582 2 10 2\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'view',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 2.75 C 5.996 2.75 2.75 5.996 2.75 10 C 2.75 14.004 5.996 17.25 10 17.25 C 14.004 17.25 17.25 14.004 17.25 10 C 17.25 5.996 14.004 2.75 10 2.75 Z M 1.25 10 C 1.25 5.168 5.168 1.25 10 1.25 C 14.832 1.25 18.75 5.168 18.75 10 C 18.75 14.832 14.832 18.75 10 18.75 C 5.168 18.75 1.25 14.832 1.25 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 11 10 C 11 10.552 10.552 11 10 11 C 9.448 11 9 10.552 9 10 C 9 9.448 9.448 9 10 9 C 10.552 9 11 9.448 11 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t\tlineOn: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 2.75 C 5.996 2.75 2.75 5.996 2.75 10 C 2.75 14.004 5.996 17.25 10 17.25 C 14.004 17.25 17.25 14.004 17.25 10 C 17.25 5.996 14.004 2.75 10 2.75 Z M 1.25 10 C 1.25 5.168 5.168 1.25 10 1.25 C 14.832 1.25 18.75 5.168 18.75 10 C 18.75 14.832 14.832 18.75 10 18.75 C 5.168 18.75 1.25 14.832 1.25 10 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'apple',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 9.643 5.355 C 10.635 5.355 11.505 4.967 12.253 4.19 C 13.001 3.414 13.376 2.511 13.376 1.482 C 13.376 1.369 13.367 1.208 13.349 1 C 13.218 1.018 13.12 1.033 13.055 1.045 C 12.14 1.176 11.336 1.625 10.641 2.392 C 9.946 3.16 9.599 3.981 9.599 4.855 C 9.599 4.956 9.613 5.123 9.643 5.355 Z M 13.197 19 C 13.904 19 14.685 18.515 15.54 17.545 C 16.395 16.576 17.049 15.436 17.5 14.127 C 15.819 13.259 14.979 12.012 14.979 10.388 C 14.979 9.032 15.659 7.872 17.019 6.908 C 16.075 5.724 14.828 5.132 13.278 5.132 C 12.624 5.132 12.027 5.23 11.487 5.426 L 11.149 5.551 L 10.694 5.73 C 10.397 5.843 10.127 5.899 9.884 5.899 C 9.694 5.899 9.444 5.834 9.135 5.703 L 8.788 5.56 L 8.458 5.426 C 7.977 5.224 7.461 5.123 6.908 5.123 C 5.43 5.123 4.242 5.623 3.345 6.622 C 2.448 7.622 2 8.94 2 10.576 C 2 12.878 2.719 15.005 4.156 16.956 C 5.153 18.319 6.065 19 6.891 19 C 7.241 19 7.588 18.932 7.933 18.795 L 8.369 18.616 L 8.717 18.491 C 9.204 18.319 9.652 18.233 10.062 18.233 C 10.495 18.233 10.994 18.343 11.558 18.563 L 11.834 18.67 C 12.411 18.89 12.865 19 13.197 19 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'linkedin',\n\t\t{\n\t\t\tline: (_props: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 16.4 16.259 L 13.766 16.259 L 13.766 12.133 C 13.766 11.15 13.748 9.883 12.396 9.883 C 11.023 9.883 10.813 10.955 10.813 12.061 L 10.813 16.258 L 8.18 16.258 L 8.18 7.775 L 10.709 7.775 L 10.709 8.933 L 10.743 8.933 C 11.259 8.052 12.218 7.525 13.239 7.563 C 15.909 7.563 16.401 9.319 16.401 11.603 L 16.4 16.258 Z M 5.208 6.615 C 4.652 6.63 4.132 6.343 3.849 5.863 C 3.567 5.384 3.567 4.79 3.849 4.311 C 4.132 3.832 4.652 3.544 5.208 3.559 C 6.036 3.581 6.695 4.259 6.695 5.087 C 6.695 5.915 6.036 6.593 5.208 6.615 Z M 6.524 16.259 L 3.888 16.259 L 3.888 7.775 L 6.524 7.775 Z M 17.713 1.111 L 2.564 1.111 C 1.848 1.103 1.261 1.677 1.252 2.393 L 1.252 17.604 C 1.256 17.948 1.396 18.277 1.642 18.518 C 1.888 18.759 2.219 18.892 2.563 18.889 L 17.713 18.889 C 18.431 18.898 19.02 18.324 19.03 17.606 L 19.03 2.392 C 19.02 1.675 18.43 1.102 17.713 1.111\"\n\t\t\t\t\tfill=\"rgb(10, 102, 194)\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'google',\n\t\t{\n\t\t\tline: (_props: IconRenderProps) => (\n\t\t\t\t<g transform=\"translate(1.05 1.197)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 8.995 3.569 C 10.269 3.549 11.524 4.039 12.446 4.922 L 15.014 2.334 C 13.387 0.804 11.23 -0.019 8.995 0 C 5.583 0 2.485 1.922 0.956 4.961 L 3.936 7.275 C 4.662 5.137 6.642 3.569 8.995 3.569 Z\"\n\t\t\t\t\t\tfill=\"rgb(229,67,53)\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 3.936 10.726 C 3.564 9.608 3.564 8.392 3.936 7.275 L 0.956 4.961 C -0.319 7.51 -0.319 10.51 0.956 13.039 Z\"\n\t\t\t\t\t\tfill=\"rgb(246,183,4)\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 8.995 18 C 11.426 18 13.465 17.196 14.956 15.824 L 12.054 13.588 C 11.25 14.137 10.211 14.451 8.995 14.451 C 6.642 14.451 4.662 12.863 3.936 10.745 L 0.956 13.039 C 2.485 16.078 5.583 18 8.995 18 Z\"\n\t\t\t\t\t\tfill=\"rgb(52,163,83)\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 17.642 9.216 C 17.642 8.608 17.583 7.981 17.485 7.392 L 8.995 7.392 L 8.995 10.863 L 13.858 10.863 C 13.662 11.981 13.014 12.961 12.054 13.588 L 14.956 15.843 C 16.661 14.255 17.642 11.941 17.642 9.216 Z\"\n\t\t\t\t\t\tfill=\"rgb(66,128,239)\"\n\t\t\t\t\t/>\n\t\t\t\t</g>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'dollar',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 Z M 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 6.75 C 10.69 6.75 11.25 7.31 11.25 8 L 12.75 8 C 12.75 6.77 11.933 5.689 10.75 5.354 L 10.75 4.5 L 9.25 4.5 L 9.25 5.354 C 7.932 5.731 7.093 7.02 7.281 8.378 C 7.47 9.735 8.629 10.747 10 10.75 C 10.69 10.75 11.25 11.31 11.25 12 C 11.25 12.69 10.69 13.25 10 13.25 C 9.31 13.25 8.75 12.69 8.75 12 L 7.25 12 C 7.25 13.23 8.067 14.311 9.25 14.646 L 9.25 15.5 L 10.75 15.5 L 10.75 14.646 C 12.068 14.269 12.907 12.98 12.719 11.622 C 12.53 10.265 11.371 9.253 10 9.25 C 9.31 9.25 8.75 8.69 8.75 8 C 8.75 7.31 9.31 6.75 10 6.75 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'trash bin',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 17 0.5 L 3 0.5 L 3 2 L 17 2 Z M 5.5 16.75 L 14.5 16.75 L 14.5 5.75 L 5.5 5.75 Z M 14.8 18.25 L 5.2 18.25 C 4.537 18.25 4 17.713 4 17.05 L 4 5.45 C 4 4.787 4.537 4.25 5.2 4.25 L 14.8 4.25 C 15.463 4.25 16 4.787 16 5.45 L 16 17.05 C 16 17.713 15.463 18.25 14.8 18.25 Z M 7.25 14.25 L 7.25 8.25 L 8.75 8.25 L 8.75 14.25 Z M 11.25 8.25 L 11.25 14.25 L 12.75 14.25 L 12.75 8.25 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'recent chats',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 2 4.25 L 10 4.25 L 10 5.75 L 2 5.75 Z M 18 9.25 L 18 10.75 L 2 10.75 L 2 9.25 Z M 14 14.25 L 2 14.25 L 2 15.75 L 14 15.75 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'refresh',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 9 1.25 L 5 1.25 L 5 2.75 L 7.255 2.75 C 4.108 3.943 2.089 7.03 2.259 10.391 C 2.429 13.753 4.748 16.621 8 17.49 L 8 15.923 C 5.415 15.048 3.695 12.598 3.753 9.869 C 3.81 7.14 5.63 4.764 8.25 3.998 L 8.25 6 L 9.75 6 L 9.75 1.25 Z M 12.745 17.25 C 15.892 16.057 17.911 12.97 17.741 9.609 C 17.571 6.247 15.252 3.379 12 2.51 L 12 4.077 C 14.585 4.952 16.305 7.402 16.247 10.131 C 16.19 12.86 14.37 15.236 11.75 16.002 L 11.75 14 L 10.25 14 L 10.25 18.75 L 15 18.75 L 15 17.25 Z M 11 10 C 11 10.552 10.552 11 10 11 C 9.448 11 9 10.552 9 10 C 9 9.448 9.448 9 10 9 C 10.552 9 11 9.448 11 10 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'document',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 13.25 4 L 13.25 4.75 L 15.5 4.75 C 15.914 4.75 16.25 5.086 16.25 5.5 L 16.25 17.5 C 16.25 17.914 15.914 18.25 15.5 18.25 L 4.5 18.25 C 4.086 18.25 3.75 17.914 3.75 17.5 L 3.75 2.5 C 3.75 2.086 4.086 1.75 4.5 1.75 L 12.5 1.75 C 12.914 1.75 13.25 2.086 13.25 2.5 Z\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'navigate',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<g transform=\"translate(2 4)\">\n\t\t\t\t\t<path d=\"M 0 0 L 16 0 L 16 11.207 L 0 11.207 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 14.113 4.78 L 6.176 4.78 C 3.227 4.78 0.838 7.28 0.838 10.369 L 0.838 11.179\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10.62 8.972 L 14.81 4.78 L 10.62 0.588\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t</g>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'arrow right',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 10.53 3.469 L 16.53 9.469 L 17.06 9.999 L 16.53 10.529 L 10.53 16.529 L 9.47 15.469 L 14.19 10.749 L 4 10.749 L 4 9.249 L 14.19 9.249 L 9.47 4.53 L 10.53 3.47 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'arrow left',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 9.47 3.469 L 3.47 9.469 L 2.94 9.999 L 3.47 10.529 L 9.47 16.529 L 10.53 15.469 L 5.81 10.749 L 16 10.749 L 16 9.249 L 5.81 9.249 L 10.53 4.529 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 10.53 3.469 L 16.53 9.469 L 17.06 9.999 L 16.53 10.529 L 10.53 16.529 L 9.47 15.469 L 14.19 10.749 L 4 10.749 L 4 9.249 L 14.19 9.249 L 9.47 4.53 L 10.53 3.47 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'arrow up',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 16.53 9.47 L 10.53 3.47 L 10 2.94 L 9.469 3.47 L 3.469 9.47 L 4.529 10.53 L 9.249 5.81 L 9.249 16 L 10.749 16 L 10.749 5.81 L 15.469 10.53 L 16.529 9.47 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'notification',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 1 3.5 C 1 2.119 2.119 1 3.5 1 L 16.5 1 C 17.881 1 19 2.119 19 3.5 L 19 16.5 C 19 17.881 17.881 19 16.5 19 L 3.5 19 C 2.119 19 1 17.881 1 16.5 Z\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 14 12 L 6 12\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12 8 L 6 8\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'alert',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10.25 3 C 6.246 3 3 6.246 3 10.25 C 3 14.254 6.246 17.5 10.25 17.5 C 14.254 17.5 17.5 14.254 17.5 10.25 C 17.5 6.246 14.254 3 10.25 3 Z M 1.5 10.25 C 1.5 5.418 5.418 1.5 10.25 1.5 C 15.082 1.5 19 5.418 19 10.25 C 19 15.082 15.082 19 10.25 19 C 5.418 19 1.5 15.082 1.5 10.25 Z M 11.25 13.25 C 11.25 13.802 10.802 14.25 10.25 14.25 C 9.698 14.25 9.25 13.802 9.25 13.25 C 9.25 12.698 9.698 12.25 10.25 12.25 C 10.802 12.25 11.25 12.698 11.25 13.25 Z M 11 11.25 L 11 5.75 L 9.5 5.75 L 9.5 11.25 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'message',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 17.75 5 C 17.75 2.929 16.071 1.25 14 1.25 L 6 1.25 C 3.929 1.25 2.25 2.929 2.25 5 L 2.25 19 L 3.75 19 C 3.75 17.757 4.757 16.75 6 16.75 L 14 16.75 C 16.071 16.75 17.75 15.071 17.75 13 Z M 3.75 16 L 3.75 5 C 3.75 3.757 4.757 2.75 6 2.75 L 14 2.75 C 15.243 2.75 16.25 3.757 16.25 5 L 16.25 13 C 16.25 14.243 15.243 15.25 14 15.25 L 6 15.25 C 5.156 15.25 4.377 15.529 3.75 16 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'blank',\n\t\t{\n\t\t\tline: (_props: IconRenderProps) => <></>,\n\t\t},\n\t],\n\t[\n\t\t'check',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 14.5 6 L 8.53 11.97 L 6.06 9.5 L 5 10.56 L 8 13.56 L 8.53 14.09 L 9.06 13.56 L 15.56 7.06 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'help',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 18 C 14.418 18 18 14.418 18 10 C 18 5.582 14.418 2 10 2 C 5.582 2 2 5.582 2 10 C 2 14.418 5.582 18 10 18 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 11 13 C 11 13.552 10.552 14 10 14 C 9.448 14 9 13.552 9 13 C 9 12.448 9.448 12 10 12 C 10.552 12 11 12.448 11 13 Z M 8.75 8 C 8.75 7.31 9.31 6.75 10 6.75 C 10.69 6.75 11.25 7.31 11.25 8 C 11.25 8.69 10.69 9.25 10 9.25 L 9.25 9.25 L 9.25 11 L 10.75 11 L 10.75 10.646 C 12.118 10.259 12.966 8.893 12.706 7.496 C 12.446 6.098 11.163 5.129 9.748 5.26 C 8.332 5.39 7.249 6.578 7.25 8 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 Z M 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'menu',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M18 6.25H2v1.5h16v-1.5Zm0 6H2v1.5h16v-1.5Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'attach',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<g clipPath=\"url(#a)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m8 13 4-4a1.414 1.414 0 1 0-2-2l-6 6a2.828 2.828 0 1 0 4 4l7.5-7.5a4.243 4.243 0 1 0-6-6L4 9\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t\t<defs>\n\t\t\t\t\t\t<clipPath id=\"a\">\n\t\t\t\t\t\t\t<path\n\t\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\t\ttransform=\"translate(1 1)\"\n\t\t\t\t\t\t\t\td=\"M0 0h18v18H0z\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t</defs>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'ctrl key',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 33 0 L 33 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(3 2.998)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 8.646 12.49 C 9.898 12.49 10.445 11.717 10.879 11.717 C 11.125 11.717 11.288 11.911 11.288 12.213 C 11.288 12.757 10.107 13.409 8.646 13.409 C 6.239 13.409 5 11.268 5 9.032 C 5 6.795 6.239 4.654 8.705 4.654 C 10.178 4.654 11.112 5.475 11.112 5.911 C 11.112 6.188 10.949 6.42 10.691 6.42 C 10.224 6.42 9.99 5.574 8.705 5.574 C 6.86 5.574 6.098 7.387 6.098 9.032 C 6.098 10.677 6.882 12.49 8.644 12.49 Z M 13.062 5.513 C 13.062 5.163 13.262 4.944 13.576 4.944 C 13.89 4.944 14.089 5.161 14.089 5.513 L 14.089 6.904 L 14.511 6.904 C 14.849 6.904 15.024 7.072 15.024 7.362 C 15.024 7.652 14.849 7.82 14.511 7.82 L 14.089 7.82 L 14.089 12.838 C 14.089 13.188 13.89 13.407 13.576 13.407 C 13.262 13.407 13.062 13.19 13.062 12.838 L 13.062 7.823 L 12.641 7.823 C 12.303 7.823 12.127 7.654 12.127 7.364 C 12.127 7.075 12.303 6.906 12.641 6.906 L 13.062 6.906 L 13.062 5.516 Z M 16.263 7.4 C 16.263 7.05 16.463 6.83 16.777 6.83 C 17.091 6.83 17.29 7.047 17.29 7.4 L 17.29 7.944 L 17.315 7.944 C 17.549 7.448 18.121 6.83 18.717 6.83 C 19.08 6.83 19.289 7.072 19.289 7.375 C 19.289 7.677 19.08 7.871 18.646 7.954 C 18.038 8.062 17.29 8.533 17.29 9.78 L 17.29 12.84 C 17.29 13.19 17.091 13.409 16.777 13.409 C 16.463 13.409 16.263 13.193 16.263 12.84 Z M 21.463 12.84 C 21.463 13.19 21.263 13.409 20.949 13.409 C 20.635 13.409 20.436 13.193 20.436 12.84 L 20.436 4.571 C 20.436 4.221 20.635 4.002 20.949 4.002 C 21.263 4.002 21.463 4.219 21.463 4.571 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t\tstrokeWidth=\"0.5\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 0 14.98 L 0 3.032 C 0 1.018 1.026 0.001 3.07 0 L 7 0 L 7 0.002 L 21.965 0 L 23.93 0 C 25.983 0 27 1.017 27 3.031 L 27 14.981 C 27 16.994 25.984 18.001 23.93 18.001 L 21.965 18.001 L 7 18.002 L 7 18.001 L 3.07 18.001 C 1.026 18.001 0 16.994 0 14.98 Z M 3.09 1.576 C 2.112 1.576 1.574 2.104 1.574 3.12 L 1.574 14.891 C 1.574 15.909 2.112 16.426 3.09 16.426 L 7 16.427 L 7 16.43 L 21.955 16.428 L 23.91 16.428 C 24.878 16.428 25.426 15.909 25.426 14.893 L 25.426 3.12 C 25.426 2.104 24.878 1.576 23.91 1.576 L 21.955 1.576 L 7 1.58 L 7 1.576 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'g key',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 24 0 L 24 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(3 2.998)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 3.07 18.001 L 14.93 18.001 C 16.984 18.001 18 16.994 18 14.981 L 18 3.031 C 18 1.017 16.983 0 14.93 0 L 3.07 0 C 1.026 0.001 0 1.018 0 3.032 L 0 14.98 C 0 16.994 1.026 18.001 3.07 18.001 Z M 3.09 16.426 C 2.112 16.426 1.574 15.909 1.574 14.891 L 1.574 3.12 C 1.574 2.104 2.112 1.576 3.09 1.576 L 14.91 1.576 C 15.878 1.576 16.426 2.104 16.426 3.12 L 16.426 14.893 C 16.426 15.909 15.878 16.428 14.91 16.428 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 9.044 13.581 C 11.43 13.581 12.847 12.184 12.847 10.169 L 12.847 9.456 C 12.847 8.927 12.534 8.615 12.026 8.615 L 9.513 8.615 C 9.152 8.615 8.937 8.849 8.937 9.182 C 8.937 9.475 9.152 9.739 9.513 9.739 L 11.293 9.739 L 11.293 10.375 C 11.293 11.528 10.54 12.291 9.063 12.291 C 7.49 12.291 6.444 10.952 6.444 8.908 C 6.444 6.884 7.48 5.515 9.034 5.515 C 10.139 5.515 10.961 6.043 11.362 7.011 C 11.527 7.344 11.713 7.481 12.016 7.481 C 12.417 7.481 12.681 7.226 12.681 6.816 C 12.681 6.649 12.662 6.522 12.593 6.365 C 12.134 5.134 10.833 4.224 9.014 4.224 C 6.483 4.224 4.859 6.053 4.859 8.908 C 4.859 11.773 6.483 13.581 9.044 13.581 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'cmd key',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 0 0 L 24 0 L 24 24 L 0 24 Z\" fill=\"transparent\" />\n\t\t\t\t\t<g transform=\"translate(3 2.998)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 3.07 18.001 L 14.93 18.001 C 16.984 18.001 18 16.994 18 14.981 L 18 3.031 C 18 1.017 16.983 0 14.93 0 L 3.07 0 C 1.026 0.001 0 1.018 0 3.032 L 0 14.98 C 0 16.994 1.026 18.001 3.07 18.001 Z M 3.09 16.426 C 2.112 16.426 1.574 15.909 1.574 14.891 L 1.574 3.12 C 1.574 2.104 2.112 1.576 3.09 1.576 L 14.91 1.576 C 15.878 1.576 16.426 2.104 16.426 3.12 L 16.426 14.893 C 16.426 15.909 15.878 16.428 14.91 16.428 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 6.708 8.096 L 6.708 9.905 L 5.974 9.905 C 5.426 9.901 4.9 10.116 4.511 10.501 C 4.122 10.886 3.902 11.411 3.901 11.959 C 3.898 12.51 4.115 13.04 4.504 13.431 C 4.893 13.823 5.422 14.042 5.974 14.041 C 7.119 14.033 8.044 13.104 8.047 11.959 L 8.047 11.216 L 9.826 11.216 L 9.826 11.959 C 9.826 13.105 10.753 14.036 11.899 14.041 C 12.45 14.04 12.979 13.82 13.367 13.43 C 13.756 13.039 13.974 12.51 13.972 11.959 C 13.972 10.824 13.043 9.906 11.899 9.906 L 11.157 9.906 L 11.157 8.096 L 11.899 8.096 C 12.448 8.097 12.975 7.881 13.364 7.494 C 13.752 7.107 13.971 6.581 13.972 6.032 C 13.971 4.888 13.044 3.961 11.899 3.96 C 10.756 3.963 9.83 4.889 9.826 6.032 L 9.826 6.776 L 8.047 6.776 L 8.047 6.033 C 8.04 4.891 7.116 3.967 5.974 3.96 C 5.424 3.958 4.896 4.176 4.507 4.566 C 4.118 4.955 3.9 5.483 3.901 6.033 C 3.9 6.582 4.119 7.109 4.508 7.497 C 4.897 7.884 5.425 8.1 5.974 8.096 Z M 8.047 9.915 L 8.047 8.086 L 9.826 8.086 L 9.826 9.914 Z M 5.974 6.787 C 5.774 6.788 5.581 6.709 5.44 6.568 C 5.298 6.426 5.219 6.233 5.221 6.033 C 5.221 5.633 5.563 5.281 5.974 5.281 C 6.374 5.281 6.708 5.633 6.708 6.033 L 6.708 6.787 Z M 11.899 6.787 L 11.157 6.787 L 11.157 6.033 C 11.157 5.633 11.499 5.281 11.899 5.281 C 12.3 5.281 12.652 5.633 12.652 6.033 C 12.652 6.454 12.31 6.787 11.899 6.787 Z M 5.974 11.196 L 6.708 11.196 L 6.708 11.949 C 6.708 12.359 6.375 12.692 5.965 12.692 C 5.554 12.692 5.221 12.359 5.221 11.949 C 5.221 11.548 5.563 11.196 5.974 11.196 Z M 11.899 11.196 C 12.3 11.196 12.652 11.548 12.652 11.949 C 12.652 12.369 12.31 12.702 11.899 12.702 C 11.487 12.697 11.155 12.361 11.157 11.949 L 11.157 11.196 Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'person',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M12.5 5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0ZM14 5a4 4 0 1 1-8 0 4 4 0 0 1 8 0ZM3.5 13v-.5h13v.5a4.5 4.5 0 0 1-4.5 4.5H8A4.5 4.5 0 0 1 3.5 13ZM2 13v-.5A1.5 1.5 0 0 1 3.5 11h13a1.5 1.5 0 0 1 1.5 1.5v.5a6 6 0 0 1-6 6H8a6 6 0 0 1-6-6Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'upload',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<g transform=\"translate(1 0.94)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 0 0.06 L 18 0.06 L 18 18.06 L 0 18.06 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 9.53 0.53 L 14.53 5.53 L 13.47 6.59 L 9.75 2.87 L 9.75 13.06 L 8.25 13.06 L 8.25 2.87 L 4.53 6.59 L 3.47 5.53 L 8.47 0.53 L 9 0 Z M 1 13.06 L 1 15.56 C 1 16.388 1.672 17.06 2.5 17.06 L 15.5 17.06 C 16.328 17.06 17 16.388 17 15.56 L 17 13.06 L 15.5 13.06 L 15.5 15.56 L 2.5 15.56 L 2.5 13.06 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</g>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'download',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"m10.75 12.19 3.72-3.72 1.06 1.06-5 5-.53.53-.53-.53-5-5 1.06-1.06 3.72 3.72V2h1.5v10.19ZM2 14v2.5A1.5 1.5 0 0 0 3.5 18h13a1.5 1.5 0 0 0 1.5-1.5V14h-1.5v2.5h-13V14H2Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'check circle',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 12.97 6.97 L 9 10.94 L 7.03 8.97 L 5.97 10.03 L 8.47 12.53 L 9 13.06 L 9.53 12.53 L 14.03 8.03 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 Z M 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'share',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M11 7c-5.063 0-8 4.03-8 9 1.222-1.2 3-3 8-3v3l6-6-6-6v3Z\"\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'g-p assist',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<g>\n\t\t\t\t\t\t<defs>\n\t\t\t\t\t\t\t<linearGradient\n\t\t\t\t\t\t\t\tid=\"iddX7xoI2TUg1057052775\"\n\t\t\t\t\t\t\t\tx1=\"0.49751243781094523\"\n\t\t\t\t\t\t\t\tx2=\"0.5024875621890548\"\n\t\t\t\t\t\t\t\ty1=\"0\"\n\t\t\t\t\t\t\t\ty2=\"1\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<stop offset=\"0\" stopColor={strokeColor} stopOpacity=\"1\" />\n\t\t\t\t\t\t\t\t<stop offset=\"0.50\" stopColor={strokeColor} stopOpacity=\"1\" />\n\t\t\t\t\t\t\t\t<stop offset=\"1\" stopColor={strokeColor} stopOpacity=\"1\" />\n\t\t\t\t\t\t\t</linearGradient>\n\t\t\t\t\t\t</defs>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 10.5 0.016 C 10.509 4.815 14.401 8.7 19.2 8.7 L 19.2 10.5 C 14.395 10.5 10.5 14.395 10.5 19.2 L 8.7 19.2 C 8.7 14.401 4.815 10.509 0.016 10.5 L 0 10.5 L 0 8.7 L 0.016 8.7 C 4.808 8.691 8.691 4.808 8.7 0.016 L 8.7 0 L 10.5 0 Z M 9.6 14.94 C 10.659 12.562 12.562 10.659 14.94 9.6 C 12.562 8.541 10.659 6.638 9.6 4.26 C 8.541 6.639 6.639 8.541 4.26 9.6 C 6.638 10.659 8.541 12.562 9.6 14.94 Z\"\n\t\t\t\t\t\t\ttransform=\"translate(1.4 1.4) rotate(90 9.6 9.6)\"\n\t\t\t\t\t\t\tfill=\"url(#iddX7xoI2TUg1057052775)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 18.2 5 C 18.863 5 19.4 4.463 19.4 3.8 C 19.4 3.137 18.863 2.6 18.2 2.6 C 17.537 2.6 17 3.137 17 3.8 C 17 4.463 17.537 5 18.2 5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 3.8 19.4 C 4.463 19.4 5 18.863 5 18.2 C 5 17.537 4.463 17 3.8 17 C 3.137 17 2.6 17.537 2.6 18.2 C 2.6 18.863 3.137 19.4 3.8 19.4 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'search',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 9 C 10 9.552 9.552 10 9 10 C 8.448 10 8 9.552 8 9 C 8 8.448 8.448 8 9 8 C 9.552 8 10 8.448 10 9 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 18.53 17.47 L 17.47 18.531 L 13.392 14.451 C 10.495 16.785 6.278 16.445 3.793 13.677 C 1.307 10.909 1.42 6.681 4.051 4.05 C 6.682 1.419 10.91 1.306 13.678 3.792 C 16.446 6.277 16.786 10.494 14.452 13.391 Z M 9 14.5 C 12.038 14.5 14.5 12.038 14.5 9 C 14.5 5.962 12.038 3.5 9 3.5 C 5.962 3.5 3.5 5.962 3.5 9 C 3.5 12.038 5.962 14.5 9 14.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'x',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<g transform=\"translate(1 1)\">\n\t\t\t\t\t<path d=\"M 0 0 L 18 0 L 18 18 L 0 18 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 7.94 9 L 3.47 13.47 L 4.53 14.53 L 9 10.06 L 13.47 14.53 L 14.53 13.47 L 10.06 9 L 14.53 4.53 L 13.47 3.47 L 9 7.94 L 4.53 3.47 L 3.47 4.53 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</g>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'plus',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 9.25 10.75 L 9.25 16 L 10.75 16 L 10.75 10.75 L 16 10.75 L 16 9.25 L 10.75 9.25 L 10.75 4 L 9.25 4 L 9.25 9.25 L 4 9.25 L 4 10.75 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'circle',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 Z M 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'circle fill',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'plus circle',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 Z M 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10.75 9.25 L 14 9.25 L 14 10.75 L 10.75 10.75 L 10.75 14 L 9.25 14 L 9.25 10.75 L 6 10.75 L 6 9.25 L 9.25 9.25 L 9.25 6 L 10.75 6 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'chevron down',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path d=\"m5 8 5 5 5-5\" stroke={strokeColor} strokeWidth={stroke} />\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'chevron up',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<path d=\"m15 12-5-5-5 5\" stroke={strokeColor} strokeWidth={stroke} />\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'checked',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M3.5 2A1.5 1.5 0 0 0 2 3.5v13A1.5 1.5 0 0 0 3.5 18h13a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 16.5 2h-13Zm9.47 4.97L9 10.94 7.03 8.97l-1.06 1.06 2.5 2.5.53.53.53-.53 4.5-4.5-1.06-1.06Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'unchecked',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<rect\n\t\t\t\t\tx=\"2.75\"\n\t\t\t\t\ty=\"2.75\"\n\t\t\t\t\twidth=\"14.5\"\n\t\t\t\t\theight=\"14.5\"\n\t\t\t\t\trx=\".75\"\n\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'partial',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<rect\n\t\t\t\t\t\tx=\"2\"\n\t\t\t\t\t\ty=\"2\"\n\t\t\t\t\t\twidth=\"16\"\n\t\t\t\t\t\theight=\"16\"\n\t\t\t\t\t\trx=\"1.5\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path d=\"M14 10H6\" stroke={strokeColor} strokeWidth={stroke} />\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'search',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M9 14.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11Zm5.452-1.109a7 7 0 1 0-1.06 1.06l4.078 4.08 1.06-1.061-4.078-4.079ZM10 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'filter',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M2 4.25h16v1.5H2v-1.5Zm3 5h10v1.5H5v-1.5Zm7 5H8v1.5h4v-1.5Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'more',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\td=\"M 4 11.5 C 3.31 11.5 2.75 10.94 2.75 10.25 C 2.75 9.56 3.31 9 4 9 C 4.69 9 5.25 9.56 5.25 10.25 C 5.25 10.94 4.69 11.5 4 11.5 Z M 10 11.5 C 9.31 11.5 8.75 10.94 8.75 10.25 C 8.75 9.56 9.31 9 10 9 C 10.69 9 11.25 9.56 11.25 10.25 C 11.25 10.94 10.69 11.5 10 11.5 Z M 14.75 10.25 C 14.75 10.94 15.31 11.5 16 11.5 C 16.69 11.5 17.25 10.94 17.25 10.25 C 17.25 9.56 16.69 9 16 9 C 15.31 9 14.75 9.56 14.75 10.25 Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'people',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<g clipPath=\"url(#a)\">\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M11 18v.75V18Zm.003 0v.75V18ZM10 18h-.75v.75H10V18Zm8-4.124.656.364.094-.17v-.194H18Zm-7 4.874h.002v-1.5H11v1.5Zm-1 0h1v-1.5h-1v1.5Zm-.75-6.25V18h1.5v-5.5h-1.5Zm1.25-1.25c-.69 0-1.25.56-1.25 1.25h1.5a.25.25 0 0 1-.25.25v-1.5Zm7 0h-7v1.5h7v-1.5Zm1.25 1.25c0-.69-.56-1.25-1.25-1.25v1.5a.25.25 0 0 1-.25-.25h1.5Zm0 1.376V12.5h-1.5v1.376h1.5Zm-7.747 4.874a8.748 8.748 0 0 0 7.653-4.51l-1.312-.728a7.248 7.248 0 0 1-6.342 3.738v1.5Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M9 18v.75V18Zm-.004 0v.75V18ZM10 18h.75v.75H10V18ZM2 9.5h-.75H2Zm0 4.376-.656.364-.094-.17v-.194H2Zm7 4.874h-.004v-1.5H9v1.5Zm1 0H9v-1.5h1v1.5Zm.75-9.25V18h-1.5V9.5h1.5ZM9.5 8.25c.69 0 1.25.56 1.25 1.25h-1.5c0 .138.112.25.25.25v-1.5Zm-7 0h7v1.5h-7v-1.5ZM1.25 9.5c0-.69.56-1.25 1.25-1.25v1.5a.25.25 0 0 0 .25-.25h-1.5Zm0 4.376V9.5h1.5v4.376h-1.5Zm7.746 4.874a8.748 8.748 0 0 1-7.652-4.51l1.312-.728a7.248 7.248 0 0 0 6.34 3.738v1.5Z\"\n\t\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<circle\n\t\t\t\t\t\t\tcx=\"6\"\n\t\t\t\t\t\t\tcy=\"4\"\n\t\t\t\t\t\t\tr=\"2\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<circle\n\t\t\t\t\t\t\tcx=\"14\"\n\t\t\t\t\t\t\tcy=\"6\"\n\t\t\t\t\t\t\tr=\"2\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t\t<defs>\n\t\t\t\t\t\t<clipPath id=\"a\">\n\t\t\t\t\t\t\t<path fill=\"#fff\" transform=\"translate(1 1)\" d=\"M0 0h18v18H0z\" />\n\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t</defs>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'wallet',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor, coverUp }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 7 8 C 7.552 8 8 8.448 8 9 C 8 9.552 7.552 10 7 10 C 6.448 10 6 9.552 6 9 C 6 8.448 6.448 8 7 8 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 15.5 2 L 2.5 2 C 2.224 2 2 2.224 2 2.5 L 2 15.5 C 2 15.776 2.224 16 2.5 16 L 15.5 16 C 15.776 16 16 15.776 16 15.5 L 16 2.5 C 16 2.224 15.776 2 15.5 2 Z\"\n\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 17 10.6 L 17 7.4 C 17 7.179 16.821 7 16.6 7 L 13 7 C 11.895 7 11 7.895 11 9 C 11 10.105 11.895 11 13 11 L 16.6 11 C 16.821 11 17 10.821 17 10.6 Z\"\n\t\t\t\t\t\tfill={coverUp}\n\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'invoice',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M12.5 5.5v-3h-8v15h11v-12h-3Zm3 13.5h-11A1.5 1.5 0 0 1 3 17.5v-15A1.5 1.5 0 0 1 4.5 1h8A1.5 1.5 0 0 1 14 2.5V4h1.5A1.5 1.5 0 0 1 17 5.5v12a1.5 1.5 0 0 1-1.5 1.5Zm-5-4.25H6v-1.5h4.5v1.5Zm-4.5-4h4.5v-1.5H6v1.5Zm8-.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm-1 5a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'payment',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M2.5 4.5h15v2.75h-15V4.5Zm0 4.25v6.75h15V8.75h-15ZM17.5 3h-15A1.5 1.5 0 0 0 1 4.5v11A1.5 1.5 0 0 0 2.5 17h15a1.5 1.5 0 0 0 1.5-1.5v-11A1.5 1.5 0 0 0 17.5 3ZM14 13a1 1 0 1 0 2 0 1 1 0 0 0-2 0Zm-2 1a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'heart',\n\t\t{\n\t\t\tline: ({ stroke, strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<g clipPath=\"url(#a)\">\n\t\t\t\t\t\t<path d=\"M11 10a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\" fill={strokeColor} />\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M2 7c0 6 8 11 8 11s8-5 8-11c0-3-1.79-5-4-5a4 4 0 0 0-4 4 4 4 0 0 0-4-4C3.79 2 2 4 2 7Z\"\n\t\t\t\t\t\t\tstroke={strokeColor}\n\t\t\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</g>\n\t\t\t\t\t<defs>\n\t\t\t\t\t\t<clipPath id=\"a\">\n\t\t\t\t\t\t\t<path\n\t\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\t\ttransform=\"translate(1 1)\"\n\t\t\t\t\t\t\t\td=\"M0 0h18v18H0z\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t</defs>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'clock',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10.75 5 L 10.75 9.69 L 13.53 12.47 L 12.47 13.53 L 9.47 10.53 L 9.25 10.31 L 9.25 5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 19 10 C 19 14.971 14.971 19 10 19 C 5.029 19 1 14.971 1 10 C 1 5.029 5.029 1 10 1 C 14.971 1 19 5.029 19 10 Z M 10 2.5 C 5.858 2.5 2.5 5.858 2.5 10 C 2.5 14.142 5.858 17.5 10 17.5 C 14.142 17.5 17.5 14.142 17.5 10 C 17.5 5.858 14.142 2.5 10 2.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'book',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M2 3.25h-.75v13.5H7A2.25 2.25 0 0 1 9.25 19h1.5A2.25 2.25 0 0 1 13 16.75h5.75V3.25H13a3.744 3.744 0 0 0-3 1.5 3.744 3.744 0 0 0-3-1.5H2ZM9.25 7A2.25 2.25 0 0 0 7 4.75H2.75v10.5H7c.844 0 1.623.279 2.25.75V7Zm1.5 9a3.734 3.734 0 0 1 2.25-.75h4.25V4.75H13A2.25 2.25 0 0 0 10.75 7v9Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'sparkle',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M10.5 2h.5a7 7 0 0 0 7 7v2a7 7 0 0 0-7 7H9a7 7 0 0 0-7-7V9a7 7 0 0 0 7-7h1.5ZM10 4.88A8.525 8.525 0 0 0 15.12 10 8.525 8.525 0 0 0 10 15.12 8.525 8.525 0 0 0 4.88 10 8.524 8.524 0 0 0 10 4.88ZM17 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM5 16a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'inbox',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<path\n\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\td=\"M2.5 4.5h15v4.75h-5.25V10a2.25 2.25 0 0 1-4.5 0v-.75H2.5V4.5Zm0 6.25v4.75h15v-4.75h-3.825a3.751 3.751 0 0 1-7.35 0H2.5ZM17.5 3h-15A1.5 1.5 0 0 0 1 4.5v11A1.5 1.5 0 0 0 2.5 17h15a1.5 1.5 0 0 0 1.5-1.5v-11A1.5 1.5 0 0 0 17.5 3Z\"\n\t\t\t\t\tfill={strokeColor}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t],\n\t[\n\t\t'home',\n\t\t{\n\t\t\tline: ({ strokeColor }: IconRenderProps) => (\n\t\t\t\t<>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 10 13 C 10.552 13 11 12.552 11 12 C 11 11.448 10.552 11 10 11 C 9.448 11 9 11.448 9 12 C 9 12.552 9.448 13 10 13 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 2 9 L 10 1 L 18 9 L 18 16.5 C 18 17.328 17.328 18 16.5 18 L 3.5 18 C 2.672 18 2 17.328 2 16.5 Z M 16.5 16.5 L 16.5 9.621 L 10 3.121 L 3.5 9.621 L 3.5 16.5 Z\"\n\t\t\t\t\t\tfill={strokeColor}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t],\n]);\n","import React, { useMemo } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { accessibleKeyDown } from '../../util/utils';\nimport type { IconProps } from './_types';\nimport { STATIC_ICON_REGISTRY } from './iconRegistry';\n\nexport const Icon = React.memo((props: IconProps) => {\n\tconst theme = useTheme();\n\tconst {\n\t\tname = 'home',\n\t\tsize = 20,\n\t\tstroke = 1.5,\n\t\tstrokeColor = theme.current.colors['core-icon-primary'],\n\t\tfillColor = 'transparent',\n\t\tcoverUp = theme.current.colors['core-surface-primary'],\n\t\ttoggle = false,\n\t\tpointer = true,\n\t\tdisabled = false,\n\t\tonClick = () => null,\n\t\t...svgAttributes\n\t} = props;\n\tconst { id: svgId, className, style, ...rest } = svgAttributes;\n\n\t// memo cursor style\n\tconst cursor = useMemo(() => {\n\t\tif (disabled) return 'default';\n\t\treturn pointer ? 'pointer' : 'inherit';\n\t}, [disabled, pointer]);\n\n\t// memo icon style\n\tconst iconStyle = useMemo(() => {\n\t\treturn {\n\t\t\tcursor,\n\t\t\tuserSelect: 'none' as const,\n\t\t\tWebkitUserSelect: 'none' as const,\n\t\t\tWebkitTapHighlightColor: 'transparent',\n\t\t\toutline: 'none',\n\t\t\tborder: 0,\n\t\t} as React.CSSProperties;\n\t}, [cursor]);\n\n\tconst variantKey = toggle ? 'lineOn' : 'line';\n\tconst iconVariant = STATIC_ICON_REGISTRY.get(name);\n\tconst shape = iconVariant?.[variantKey] ?? iconVariant?.line;\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Icon');\n\t/* END.DEBUG */\n\n\tif (!shape) return null;\n\n\treturn (\n\t\t<svg\n\t\t\tid={svgId}\n\t\t\tclassName={className}\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\twidth={size}\n\t\t\theight={size}\n\t\t\tviewBox=\"0 0 20 20\"\n\t\t\tstyle={{ ...(style ?? {}), ...iconStyle }}\n\t\t\tonClick={(e) => onClick(e)}\n\t\t\tfill={fillColor}\n\t\t\trole=\"img\"\n\t\t\taria-label={`${name} icon`}\n\t\t\ttabIndex={pointer && !disabled ? 0 : -1}\n\t\t\tonKeyDown={(e) => accessibleKeyDown(e, () => onClick)}\n\t\t\topacity={disabled ? 0.5 : 1}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<title />\n\t\t\t{shape({ stroke, strokeColor, fillColor, coverUp })}\n\t\t</svg>\n\t);\n});\n\nIcon.displayName = 'Icon';\n","import type React from 'react';\n\ntype IconBaseProps = {\n\tname?: string;\n\tsize?: number;\n\tstroke?: number;\n\tstrokeColor?: string;\n\tfillColor?: string;\n\tcoverUp?: string;\n\ttoggle?: boolean;\n\tpointer?: boolean;\n\tdisabled?: boolean;\n\tonClick?: (e: React.MouseEvent<SVGElement, MouseEvent>) => void;\n};\n\nexport type IconProps = Omit<\n\tReact.SVGAttributes<SVGSVGElement>,\n\tkeyof IconBaseProps\n> &\n\tIconBaseProps;\n\nexport enum IconNames {\n\thome = 'home',\n\tinbox = 'inbox',\n\tsparkle = 'sparkle',\n\tpeople = 'people',\n\twallet = 'wallet',\n\tinvoice = 'invoice',\n\tpayment = 'payment',\n\theart = 'heart',\n\tclock = 'clock',\n\tbook = 'book',\n\tsearch = 'search',\n\tfilter = 'filter',\n\tmore = 'more',\n\tunchecked = 'unchecked',\n\tchecked = 'checked',\n\tpartial = 'partial',\n\tchevronDown = 'chevron down',\n\tchevronUp = 'chevron up',\n\tplus = 'plus',\n\tplusCircle = 'plus circle',\n\tx = 'x',\n\tgpAssist = 'g-p assist',\n\tupload = 'upload',\n\tdownload = 'download',\n\tshare = 'share',\n\tcheckCircle = 'check circle',\n\tcircle = 'circle',\n\tcircleFill = 'circle fill',\n\tperson = 'person',\n\tctrlKey = 'ctrl key',\n\tcommandKey = 'cmd key',\n\tgKey = 'g key',\n\tattach = 'attach',\n\tmenu = 'menu',\n\thelp = 'help',\n\tblank = 'blank',\n\tcheck = 'check',\n\tmessage = 'message',\n\tinfo = 'info',\n\talert = 'alert',\n\tnotification = 'notification',\n\tarrowUp = 'arrow up',\n\tarrowLeft = 'arrow left',\n\tarrowRight = 'arrow right',\n\tnavigate = 'navigate',\n\tdocument = 'document',\n\trefresh = 'refresh',\n\trecentChats = 'recent chats',\n\ttrashBin = 'trash bin',\n\tdollar = 'dollar',\n\tapple = 'apple',\n\tview = 'view',\n\topenCircle = 'open circle',\n\texpanded = 'expanded',\n\tconcise = 'concise',\n\tmoderate = 'moderate',\n\tmail = 'mail',\n\ttextDocument = 'text document',\n\tcomplianceCheck = 'compliance check',\n\tedit = 'edit',\n\tcharacterBeam = 'character beam',\n\tundo = 'undo',\n\tchat = 'chat',\n\texclamation = 'exclamation',\n\tchart = 'chart',\n\tlightBulb = 'light bulb',\n\tsettings = 'settings',\n\tdocumentEditor = 'document editor',\n\tchartArrow = 'chart arrow',\n\tfocus = 'focus',\n\tbriefcase = 'briefcase',\n\tglobeLocation = 'globe location',\n\tbarChart = 'bar chart',\n\tfontSmaller = 'font smaller',\n\tfontLarger = 'font larger',\n\tcopy = 'copy',\n\tstop = 'stop',\n\tlike = 'like',\n\tunlike = 'unlike',\n\tbold = 'bold',\n\titalic = 'italic',\n\tunderline = 'underline',\n\tstrike = 'strike',\n\tbulletList = 'bullet list',\n\tnumberedList = 'numbered list',\n\tsink = 'sink',\n\tlift = 'lift',\n\tcode = 'code',\n\ttaskList = 'task list',\n\thighlight = 'highlight',\n}\n","import React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Icon } from '../Icon';\nimport css from './DropDown.module.css';\nimport type { DropDownOption, DropDownProps } from './_types';\n\nexport type { DropDownOption };\n\nexport const DropDown = React.memo((props: DropDownProps) => {\n\tconst theme = useTheme();\n\tconst {\n\t\tname = 'Select',\n\t\twidth = '100%',\n\t\theight = 'auto',\n\t\tselectedIndex = 0,\n\t\tselectedValue = '',\n\t\toptions = [],\n\t\tplaceholder = true,\n\t\tvalidate = true,\n\t\tborderRadius = 4,\n\t\tbgColor = 'transparent',\n\t\ticonColor = theme.current.colors['core-icon-primary'],\n\t\tpaddingLeft = '8px',\n\t\tpaddingRight = '12px',\n\t\tpaddingTops = '8px',\n\t\ticonSize = 20,\n\t\tdisabled = false,\n\t\tunframed = false,\n\t\tfocused = false,\n\t\tgap = 0,\n\t\tsize = 'medium',\n\t\tonChange = () => null,\n\t\tonValidate = () => null,\n\t\tonFocus = () => null,\n\t\tonBlur = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst [index, setIndex] = useState<number>(selectedIndex);\n\tconst [selectedText, setSelectedText] = useState<string>('Select an option');\n\tconst [initiated, setInitiated] = useState<boolean>(false);\n\tconst [color, setColor] = useState<string>(iconColor);\n\tconst ref = useRef<HTMLSelectElement>(null);\n\n\tuseEffect(() => setColor(theme.current.colors['core-icon-primary']), [theme]);\n\n\t// validate selection and if there's a placeholder\n\t// with a validate flag, set error state and event error\n\tuseEffect(() => {\n\t\tlet valid = true;\n\t\tif (validate && placeholder && index === 0) valid = false;\n\t\tif (!initiated) valid = true;\n\t\tonValidate(valid);\n\t}, [index, validate, placeholder, initiated, onValidate]);\n\n\t// set focus\n\tuseEffect(() => {\n\t\tif (focused && ref?.current) {\n\t\t\tsetInitiated(true);\n\t\t\tref.current.click();\n\t\t}\n\t}, [focused]);\n\n\t// set selected by index\n\tuseEffect(() => {\n\t\tif (ref?.current) {\n\t\t\tif (!options?.[selectedIndex]) return;\n\t\t\tconst label = options[selectedIndex].label || 'Select an option';\n\t\t\tsetIndex(selectedIndex);\n\t\t\tsetSelectedText(label);\n\t\t\tref.current.selectedIndex = selectedIndex;\n\t\t}\n\t}, [selectedIndex, options]);\n\n\t// set selected by value - FIXED: potential infinite loop\n\tuseEffect(() => {\n\t\tif (!options || options.length === 0 || selectedValue === '') return;\n\n\t\tconst foundIndex = options.findIndex(\n\t\t\t(option) =>\n\t\t\t\toption?.value?.toLowerCase() ===\n\t\t\t\t\tselectedValue.toString().toLowerCase() ||\n\t\t\t\toption?.label?.toLowerCase() ===\n\t\t\t\t\tselectedValue.toString().toLowerCase() ||\n\t\t\t\toption?.alt?.toLowerCase() === selectedValue.toString().toLowerCase(),\n\t\t);\n\n\t\tif (foundIndex !== -1) {\n\t\t\tconst label = options[foundIndex].label || 'Select an option';\n\t\t\tsetSelectedText(label);\n\t\t\tsetIndex(foundIndex);\n\t\t\tif (ref.current) ref.current.selectedIndex = foundIndex;\n\t\t}\n\t}, [selectedValue, options]);\n\n\t// memo on change\n\tconst handleChange = useCallback(\n\t\t(i: number) => {\n\t\t\tif (!options) return;\n\t\t\tconst label = options[i].label || 'Select an option';\n\t\t\tsetIndex(i);\n\t\t\tsetSelectedText(label);\n\t\t\tif (index !== i) onChange(i, options[i]);\n\t\t\tonBlur(options[i].label || '');\n\t\t},\n\t\t[options, index, onChange, onBlur],\n\t);\n\n\t// memo focus\n\tconst handleFocus = useCallback(() => {\n\t\tsetInitiated(true);\n\t\tonFocus();\n\t}, [onFocus]);\n\n\t// Memoize renderOptions\n\tconst renderedOptions = useMemo(() => {\n\t\tif (!options) return null;\n\t\treturn options.map((option: DropDownOption, i: number) => (\n\t\t\t<option\n\t\t\t\tkey={`${option?.value}_${i}`}\n\t\t\t\tvalue={option?.value}\n\t\t\t\tonMouseUp={() => handleChange(i)}\n\t\t\t>\n\t\t\t\t{option?.label}\n\t\t\t</option>\n\t\t));\n\t}, [options, handleChange]);\n\n\t// Memoize displayed text\n\tconst displayText = useMemo(\n\t\t() => selectedText.replace('-- ', ''),\n\t\t[selectedText],\n\t);\n\n\t// Memoize handleMouseDown\n\tconst handleMouseDown = useCallback(\n\t\t(e: React.MouseEvent<HTMLSelectElement>) => {\n\t\t\tif (disabled) e.preventDefault();\n\t\t\thandleFocus();\n\t\t},\n\t\t[disabled, handleFocus],\n\t);\n\n\t// Memoize onChange handler\n\tconst handleSelectChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLSelectElement>) => {\n\t\t\thandleChange(e.target.selectedIndex);\n\t\t},\n\t\t[handleChange],\n\t);\n\n\tconst getSize = useCallback((value: string | number) => {\n\t\tif (typeof value === 'string') return value;\n\t\treturn `${value}px`;\n\t}, []);\n\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--dd-gap': `${gap}px`,\n\t\t\t'--dd-height': `${getSize(height)}`,\n\t\t\t'--dd-width': `${getSize(width)}`,\n\t\t\t'--dd-margin': '8px',\n\t\t\t'--dd-border-radius': borderRadius ? `${borderRadius}px` : '4px',\n\t\t\t'--dd-box-shadow-size': unframed ? '0' : '1px',\n\t\t\t'--dd-border-color': unframed\n\t\t\t\t? 'transparent'\n\t\t\t\t: 'var(--core-outline-primary)',\n\t\t\t'--dd-bg-color': bgColor ?? 'transparent',\n\t\t\t'--dd-padding-left': unframed ? '0' : `${getSize(paddingLeft)}`,\n\t\t\t'--dd-padding-right': unframed ? '0' : `${getSize(paddingRight)}`,\n\t\t\t'--dd-padding-tops': unframed ? '0' : `${getSize(paddingTops)}`,\n\t\t\t'--dd-icon-size': `${iconSize}px`,\n\t\t\t'--dd-color':\n\t\t\t\tplaceholder && index === 0\n\t\t\t\t\t? 'var(--core-text-tertiary)'\n\t\t\t\t\t: 'var(--core-text-primary)',\n\t\t} as React.CSSProperties;\n\t}, [\n\t\tgap,\n\t\theight,\n\t\twidth,\n\t\tborderRadius,\n\t\tbgColor,\n\t\tpaddingLeft,\n\t\tpaddingRight,\n\t\tpaddingTops,\n\t\tunframed,\n\t\tplaceholder,\n\t\ticonSize,\n\t\tindex,\n\t\tgetSize,\n\t]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'DropDown');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className={`${css.face} ${css[size]}`}>{displayText}</div>\n\t\t\t<div className={css.chevron}>\n\t\t\t\t<Icon name=\"chevron down\" size={iconSize} strokeColor={color} />\n\t\t\t</div>\n\t\t\t<select\n\t\t\t\tclassName={css.select}\n\t\t\t\tdefaultValue={index}\n\t\t\t\tref={ref}\n\t\t\t\tonFocus={handleFocus}\n\t\t\t\tonMouseDown={handleMouseDown}\n\t\t\t\tonChange={handleSelectChange}\n\t\t\t\taria-label={name}\n\t\t\t>\n\t\t\t\t{renderedOptions}\n\t\t\t</select>\n\t\t</div>\n\t);\n});\n\nDropDown.displayName = 'DropDown';\n","import type { Transition, Variants } from 'motion/react';\nimport type React from 'react';\n\ntype DotBaseProps = {\n\tsize?: number;\n\ttopOffset?: number;\n\trightOffset?: number;\n\tborder?: number;\n\tposition?: 'inline' | 'corner';\n\tstate?: 'red' | 'yellow' | 'green' | 'blue' | 'grey';\n\tcolor?: string;\n\ttransition?: Transition;\n\tmotionValues?: Variants;\n\tmotion?: Variants;\n\tshow?: boolean;\n};\n\nexport type DotProps = Omit<\n\tReact.HTMLAttributes<HTMLDivElement>,\n\tkeyof DotBaseProps\n> &\n\tDotBaseProps;\n\nexport const DEFAULT_VARIANTS: Variants = {\n\tinitial: { opacity: 0 },\n\tanimate: { opacity: 1 },\n\texit: { opacity: 0 },\n};\n\nexport const DEFAULT_TRANSITION: Transition = {\n\tease: 'easeInOut',\n\tduration: 0.5,\n};\n","import { AnimatePresence, motion } from 'motion/react';\nimport React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './Dot.module.css';\nimport { DEFAULT_TRANSITION, DEFAULT_VARIANTS, type DotProps } from './_types';\n\nexport const Dot = React.memo((props: DotProps) => {\n\tconst {\n\t\tsize = 8,\n\t\ttopOffset = 2,\n\t\trightOffset = 2,\n\t\tborder = 3,\n\t\tposition = 'corner',\n\t\tcolor = undefined,\n\t\ttransition = undefined,\n\t\tmotionValues = undefined,\n\t\tshow = false,\n\t\tstate,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo variants\n\tconst variants = useMemo(() => {\n\t\tif (motionValues) {\n\t\t\treturn { ...DEFAULT_VARIANTS, ...motionValues };\n\t\t}\n\t\treturn DEFAULT_VARIANTS;\n\t}, [motionValues]);\n\n\t// memo transition\n\tconst trans = useMemo(() => {\n\t\tif (transition) {\n\t\t\treturn { ...DEFAULT_TRANSITION, ...transition };\n\t\t}\n\t\treturn DEFAULT_TRANSITION;\n\t}, [transition]);\n\n\t// memo color\n\tconst bgColor = useMemo(() => {\n\t\tif (color) {\n\t\t\treturn color;\n\t\t}\n\t\tif (state) {\n\t\t\tswitch (state) {\n\t\t\t\tcase 'red':\n\t\t\t\t\treturn 'var(--feedback-warning)';\n\t\t\t\tcase 'yellow':\n\t\t\t\t\treturn 'var(--feedback-attention)';\n\t\t\t\tcase 'green':\n\t\t\t\t\treturn 'var(--feedback-positive)';\n\t\t\t\tcase 'blue':\n\t\t\t\t\treturn 'var(--core-gp-logo-primary)';\n\t\t\t\tcase 'grey':\n\t\t\t\t\treturn 'var(--core-text-secondary)';\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn 'var(--core-text-special)';\n\t}, [state, color]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--dot-size': `${size}px`,\n\t\t\t'--dot-display': position === 'inline' ? 'inline-flex' : 'flex',\n\t\t\t'--dot-position': position === 'inline' ? 'relative' : 'absolute',\n\t\t\t'--dot-top': position === 'inline' ? 'unset' : `${topOffset}px`,\n\t\t\t'--dot-right': position === 'inline' ? 'unset' : `${rightOffset}px`,\n\t\t\t'--dot-vertical-align': position === 'inline' ? 'middle' : 'unset',\n\t\t\t'--dot-border': `${border}px solid`,\n\t\t\t'--dot-border-color': 'var(--core-surface-primary)',\n\t\t\t'--dot-bg': `${bgColor}`,\n\t\t} as React.CSSProperties;\n\t}, [size, position, topOffset, rightOffset, border, bgColor]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Dot');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<AnimatePresence initial={false}>\n\t\t\t{show && (\n\t\t\t\t<motion.div\n\t\t\t\t\tid={divId}\n\t\t\t\t\tclassName={`${css.dot}${divClass}`}\n\t\t\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t\t\tinitial={'initial'}\n\t\t\t\t\tanimate={'animate'}\n\t\t\t\t\texit={'exit'}\n\t\t\t\t\ttransition={trans}\n\t\t\t\t\tvariants={variants}\n\t\t\t\t\trole={'status'}\n\t\t\t\t\taria-live={'polite'}\n\t\t\t\t\taria-label={'Blue dot indicating active or new'}\n\t\t\t\t\t{...(rest as any)}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"dot\" />\n\t\t\t\t</motion.div>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n});\n","import { motion } from 'motion/react';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Badge } from '../Badge';\nimport { Dot } from '../Dot';\nimport { Icon } from '../Icon';\nimport { ToolTipType } from '../sharedTypes';\nimport type { ToolTip } from '../sharedTypes';\nimport css from './IconButton.module.css';\nimport type { IconButtonProps } from './_types';\n\nexport const IconButton = React.memo((props: IconButtonProps) => {\n\tconst {\n\t\tframeSize = 36,\n\t\ticonSize = 20,\n\t\ticon = 'more',\n\t\tborderRadius = 4,\n\t\ttooltip = undefined,\n\t\tcolor = undefined,\n\t\tcolorOn = undefined,\n\t\tbgColor = 'var(--core-surface-secondary)',\n\t\tbgColorHover = 'var(--core-outline-primary)',\n\t\tbgColorOn = 'var(--core-outline-primary)',\n\t\ttransition = undefined,\n\t\tvariants = undefined,\n\t\tinitial = undefined,\n\t\tanimate = undefined,\n\t\texit = undefined,\n\t\tfillColor = undefined,\n\t\tlabel = undefined,\n\t\thover = undefined,\n\t\tcount = 0,\n\t\ttoggle = true,\n\t\ttoggleIcon = false,\n\t\tisToggled = false,\n\t\tdisabled = false,\n\t\tshowDot = false,\n\t\tborder = false,\n\t\tonClick = () => null,\n\t\tonToolTip = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [on, setOn] = useState<boolean>(isToggled);\n\tconst ref = useRef<HTMLDivElement>(null);\n\n\tuseEffect(() => setOn(isToggled), [isToggled]);\n\n\tconst handleClick = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n\t\t\tif (disabled) return;\n\t\t\tif (tooltip) onToolTip(null);\n\t\t\tsetOn(!on);\n\t\t\tonClick(e);\n\t\t},\n\t\t[disabled, tooltip, onToolTip, on, onClick],\n\t);\n\n\tconst handleMouseEnter = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n\t\t\tif (!ref?.current || !tooltip) return;\n\t\t\tconst tip: ToolTip = {\n\t\t\t\ttype: ToolTipType.button,\n\t\t\t\tpayload: { label: tooltip },\n\t\t\t\tevent: e,\n\t\t\t\tref: ref,\n\t\t\t};\n\t\t\tonToolTip(tip);\n\t\t},\n\t\t[tooltip, onToolTip],\n\t);\n\n\tconst handleMouseLeave = useCallback(() => {\n\t\tif (tooltip) onToolTip(null);\n\t}, [tooltip, onToolTip]);\n\n\t// memo icon stroke color\n\tconst strokeColor = useMemo(\n\t\t() => color || 'var(--core-icon-primary)',\n\t\t[color],\n\t);\n\n\t// memo bg color\n\tconst bgColorNormal = useMemo(() => {\n\t\tif (on && toggle) return bgColorOn;\n\t\treturn bgColor ?? 'var(--core-surface-secondary)';\n\t}, [toggle, bgColorOn, bgColor, on]);\n\n\t// memo bg color on hover\n\tconst bgHoverColor = useMemo(() => {\n\t\tif (hover && on) return bgColorOn;\n\t\tif (hover) return bgColorHover;\n\t\treturn bgColor ?? 'transparent';\n\t}, [hover, bgColor, bgColorOn, bgColorHover, on]);\n\n\t// memo text color selected / unselected\n\tconst textColor = useMemo(() => {\n\t\tif (toggle && on) return colorOn;\n\t\treturn color ?? 'var(--core-text-primary)';\n\t}, [toggle, on, colorOn, color]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--ib-bg': bgColorNormal,\n\t\t\t'--ib-bg-hover': bgHoverColor,\n\t\t\t'--ib-icon-size': `${frameSize ?? 0}px`,\n\t\t\t'--ib-border-radius': `${borderRadius ?? 0}px`,\n\t\t\t'--ib-border': border ? '1px' : 0,\n\t\t\t'--ib-color': textColor,\n\t\t} as React.CSSProperties;\n\t}, [bgColorNormal, bgHoverColor, textColor, border, frameSize, borderRadius]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'IconButton');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<motion.div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.button}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={handleClick}\n\t\t\tonMouseLeave={handleMouseLeave}\n\t\t\tonMouseEnter={handleMouseEnter}\n\t\t\ttransition={transition}\n\t\t\tvariants={variants}\n\t\t\tinitial={initial}\n\t\t\tanimate={animate}\n\t\t\texit={exit}\n\t\t\tref={ref}\n\t\t\t{...(rest as any)}\n\t\t>\n\t\t\t<div className={css.icon} style={{ opacity: disabled ? 0.3 : 1 }}>\n\t\t\t\t<Icon\n\t\t\t\t\tname={icon}\n\t\t\t\t\tstrokeColor={strokeColor}\n\t\t\t\t\tfillColor={fillColor}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tsize={iconSize}\n\t\t\t\t\ttoggle={toggleIcon ? isToggled : false}\n\t\t\t\t\tpointer\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{label && <div className={css.label}>{label}</div>}\n\t\t\t<Dot show={showDot} />\n\t\t\t{count !== 0 && (\n\t\t\t\t<div className={css.count}>\n\t\t\t\t\t<Badge variant={'light'} count={count} hideNull />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</motion.div>\n\t);\n});\n","import type React from 'react';\nimport type { DropDownOption } from '../DropDown';\nimport type { ToolTip } from '../sharedTypes';\n\nexport type EditControls = {\n\tbuttons?: ButtonBarGroup[];\n\tstyles?: DropDownOption[];\n\tdownload?: ButtonBarButton;\n};\n\nexport type ButtonBarButton = {\n\ticon?: string;\n\ttoolTip?: string;\n\tcommand?: any;\n\tshortcut?: Shortcut;\n\tid?: FormattingOption;\n};\n\nexport type ButtonBarGroup = {\n\tname?: string;\n\tbuttons?: ButtonBarButton[];\n};\n\nexport type Shortcut = {\n\tmodifier?: 'meta' | 'shift';\n\tkey?: string;\n};\n\nexport enum FormattingOption {\n\thilight = 'hilight',\n\tbold = 'bold',\n\titalic = 'italic',\n\tunderline = 'underline',\n\tstrikethrough = 'strikethrough',\n\tlist = 'list',\n\torderedList = 'ordered list',\n\ttaskList = 'task list',\n\tsinkList = 'sink list',\n\traiseList = 'raise list',\n\tundo = 'undo',\n\tredo = 'redo',\n\tdownload = 'download',\n\tmore = 'more',\n\tcopy = 'copy',\n\tlink = 'link',\n}\n\ntype EditorButtonBarBaseProps = {\n\tshortSize?: number;\n\tmediumSize?: number;\n\tstate?: 'small' | 'medium' | 'regular' | 'auto';\n\tactiveFormats?: string[];\n\tactiveStyle?: 'h1' | 'h2' | 'h3' | 'p';\n\tdisabledFormats?: string[];\n\tonCommand?: (command: any, e: React.MouseEvent<any> | undefined) => void;\n\tonToolTip?: (tip: ToolTip | null) => void;\n};\n\nexport type EditorButtonBarProps = Omit<\n\tReact.HTMLAttributes<HTMLDivElement>,\n\tkeyof EditorButtonBarBaseProps\n> &\n\tEditorButtonBarBaseProps;\n\nexport interface RenderGroupProps {\n\tonCommand?: (command: any, e: React.MouseEvent<any>) => void;\n\tonToolTip?: (tip: ToolTip | null) => void;\n\tbuttonGroup: ButtonBarGroup;\n\tactiveFormats?: string[];\n\tdisabledFormats?: string[];\n\tstate?: 'regular' | 'small' | 'medium';\n}\n","import type { DropDownOption } from '../DropDown';\nimport {\n\ttype ButtonBarButton,\n\ttype ButtonBarGroup,\n\ttype EditControls,\n\tFormattingOption,\n} from './_types';\n\nexport const coreButtons: { [key: string]: ButtonBarButton } = {\n\tlink: {\n\t\ticon: 'link',\n\t\ttoolTip: 'Link',\n\t\tcommand: 'link',\n\t\tid: FormattingOption.link,\n\t},\n\thilight: {\n\t\ticon: 'hilight',\n\t\ttoolTip: 'Highlight',\n\t\tcommand: 'hilight',\n\t\tid: FormattingOption.hilight,\n\t},\n\tbold: {\n\t\ticon: 'bold',\n\t\ttoolTip: 'Bold',\n\t\tcommand: 'bold',\n\t\tid: FormattingOption.bold,\n\t\tshortcut: { modifier: 'meta', key: 'b' },\n\t},\n\titalic: {\n\t\ticon: 'italic',\n\t\ttoolTip: 'Italic',\n\t\tcommand: 'italic',\n\t\tid: FormattingOption.italic,\n\t\tshortcut: { modifier: 'meta', key: 'i' },\n\t},\n\tunderline: {\n\t\ticon: 'underline',\n\t\ttoolTip: 'Underline',\n\t\tcommand: 'underline',\n\t\tid: FormattingOption.underline,\n\t\tshortcut: { modifier: 'meta', key: 'u' },\n\t},\n\tstrikethrough: {\n\t\ticon: 'strike',\n\t\ttoolTip: 'Strikethrough',\n\t\tcommand: 'strike',\n\t\tid: FormattingOption.strikethrough,\n\t\tshortcut: { modifier: 'meta', key: 's' },\n\t},\n\tlist: {\n\t\ticon: 'bullet list',\n\t\ttoolTip: 'List',\n\t\tcommand: 'ulist',\n\t\tid: FormattingOption.list,\n\t},\n\torderedList: {\n\t\ticon: 'numbered list',\n\t\ttoolTip: 'Ordered list',\n\t\tcommand: 'olist',\n\t\tid: FormattingOption.orderedList,\n\t},\n\ttaskList: {\n\t\ticon: 'task list',\n\t\ttoolTip: 'Task list',\n\t\tcommand: 'task',\n\t\tid: FormattingOption.taskList,\n\t},\n\tsinkList: {\n\t\ticon: 'sink',\n\t\ttoolTip: 'Sink list item',\n\t\tcommand: 'sink',\n\t\tid: FormattingOption.sinkList,\n\t},\n\traiseList: {\n\t\ticon: 'lift',\n\t\ttoolTip: 'Raise list item',\n\t\tcommand: 'raise',\n\t\tid: FormattingOption.raiseList,\n\t},\n\tundo: {\n\t\ticon: 'undo',\n\t\ttoolTip: 'Undo',\n\t\tcommand: 'undo',\n\t\tid: FormattingOption.undo,\n\t},\n\tredo: {\n\t\ticon: 'redo',\n\t\ttoolTip: 'Redo',\n\t\tcommand: 'redo',\n\t\tid: FormattingOption.redo,\n\t},\n\tcopy: {\n\t\ticon: 'copy',\n\t\ttoolTip: 'Copy',\n\t\tcommand: 'copy',\n\t\tid: FormattingOption.copy,\n\t},\n\tdownload: {\n\t\ticon: 'download',\n\t\ttoolTip: 'Download',\n\t\tcommand: 'download',\n\t\tid: FormattingOption.download,\n\t},\n\tmore: {\n\t\ticon: 'more',\n\t\ttoolTip: 'More Options',\n\t\tcommand: 'more',\n\t\tid: FormattingOption.more,\n\t},\n};\n\nexport const styles: DropDownOption[] = [\n\t{ label: 'Heading 1', value: 'h1', alt: 'h1' },\n\t{ label: 'Heading 2', value: 'h2', alt: 'h2' },\n\t{ label: 'Heading 3', value: 'h3', alt: 'h3' },\n\t{ label: 'Body', value: 'p', alt: 'p' },\n];\n\nexport const buttonGroups: { [key: string]: ButtonBarGroup } = {\n\tformat: {\n\t\tbuttons: [\n\t\t\tcoreButtons.hilight,\n\t\t\tcoreButtons.bold,\n\t\t\tcoreButtons.italic,\n\t\t\tcoreButtons.underline,\n\t\t\tcoreButtons.strikethrough,\n\t\t\tcoreButtons.link,\n\t\t],\n\t},\n\tlists: {\n\t\tbuttons: [coreButtons.list, coreButtons.orderedList, coreButtons.taskList],\n\t},\n\tlistEdit: {\n\t\tbuttons: [coreButtons.sinkList, coreButtons.raiseList],\n\t},\n\tundo: {\n\t\tbuttons: [coreButtons.undo, coreButtons.redo],\n\t},\n\tmore: {\n\t\tbuttons: [coreButtons.more],\n\t},\n};\n\nexport const editControls: { [key: string]: EditControls } = {\n\tregular: {\n\t\tstyles,\n\t\tbuttons: [\n\t\t\tbuttonGroups.format,\n\t\t\tbuttonGroups.lists,\n\t\t\tbuttonGroups.listEdit,\n\t\t\tbuttonGroups.undo,\n\t\t],\n\t\tdownload: coreButtons.download,\n\t},\n\tsmall: {\n\t\tbuttons: [buttonGroups.format, buttonGroups.more],\n\t\tdownload: coreButtons.download,\n\t},\n\tmedium: {\n\t\tstyles,\n\t\tbuttons: [buttonGroups.format, buttonGroups.lists],\n\t\tdownload: coreButtons.download,\n\t},\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useObserveResize } from '../../hooks/useObserveResize/useObserveResize';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { DropDown, type DropDownOption } from '../DropDown';\nimport { IconButton } from '../IconButton';\nimport css from './EditorButtonBar.module.css';\nimport { coreButtons, editControls } from './_Data';\nimport type {\n\tButtonBarButton,\n\tButtonBarGroup,\n\tEditorButtonBarProps,\n\tRenderGroupProps,\n} from './_types';\n\nexport const EditorButtonBar = React.memo((props: EditorButtonBarProps) => {\n\tconst {\n\t\tonCommand = () => null,\n\t\tonToolTip = () => null,\n\t\tshortSize = 500,\n\t\tmediumSize = 664,\n\t\tstate = 'auto',\n\t\tactiveStyle = 'p',\n\t\tdisabledFormats = [],\n\t\tactiveFormats,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [barState, setBarState] = useState<'small' | 'medium' | 'regular'>(\n\t\t'regular',\n\t);\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst size = useObserveResize(ref);\n\tuseEffect(() => {\n\t\tif (state !== 'auto') setBarState(state);\n\t\telse if (size.width < shortSize) setBarState('small');\n\t\telse if (size.width < mediumSize) setBarState('medium');\n\t\telse setBarState('regular');\n\t}, [size, shortSize, mediumSize, state]);\n\n\tconst handleStyleChange = useCallback(\n\t\t(option: DropDownOption) => {\n\t\t\tswitch (option.value) {\n\t\t\t\tcase 'h1':\n\t\t\t\t\tonCommand('h1', undefined);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'h2':\n\t\t\t\t\tonCommand('h2', undefined);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'h3':\n\t\t\t\t\tonCommand('h3', undefined);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'p':\n\t\t\t\t\tonCommand('p', undefined);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\t[onCommand],\n\t);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'EditorButtonBar');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={divStyle}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className={css.left}>\n\t\t\t\t{editControls?.[barState].styles && (\n\t\t\t\t\t<DropDown\n\t\t\t\t\t\toptions={editControls?.[barState].styles}\n\t\t\t\t\t\tplaceholder={false}\n\t\t\t\t\t\tunframed\n\t\t\t\t\t\twidth={'100px'}\n\t\t\t\t\t\tselectedValue={activeStyle}\n\t\t\t\t\t\tonChange={(_index, option) => handleStyleChange(option)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{editControls?.[barState].buttons?.map(\n\t\t\t\t\t(group: ButtonBarGroup, index: number) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<RenderGroup\n\t\t\t\t\t\t\t\tkey={`button-group-${group.name}${index}`}\n\t\t\t\t\t\t\t\tonCommand={onCommand}\n\t\t\t\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\t\t\t\tbuttonGroup={group}\n\t\t\t\t\t\t\t\tactiveFormats={activeFormats}\n\t\t\t\t\t\t\t\tdisabledFormats={disabledFormats}\n\t\t\t\t\t\t\t\tstate={barState}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{editControls?.[barState].download && (\n\t\t\t\t<div className={css.right}>\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\ticon={coreButtons.copy.icon}\n\t\t\t\t\t\ttooltip={coreButtons.copy.toolTip}\n\t\t\t\t\t\thover={disabledFormats.includes('download')}\n\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\t\tdisabled={disabledFormats.includes('copy')}\n\t\t\t\t\t\tonClick={(e) => onCommand(coreButtons.copy.command, e)}\n\t\t\t\t\t/>\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\ticon={coreButtons.download.icon}\n\t\t\t\t\t\ttooltip={coreButtons.download.toolTip}\n\t\t\t\t\t\thover={!disabledFormats.includes('download')}\n\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\t\tdisabled={disabledFormats.includes('download')}\n\t\t\t\t\t\tonClick={(e) => onCommand(coreButtons.download.command, e)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n});\n\nexport const RenderGroup = React.memo((props: RenderGroupProps) => {\n\tconst {\n\t\tonCommand = () => null,\n\t\tonToolTip = () => null,\n\t\tbuttonGroup,\n\t\tactiveFormats,\n\t\tstate = 'default',\n\t\tdisabledFormats = [],\n\t} = props;\n\tconst theme = useTheme();\n\treturn (\n\t\t<div className={css.buttonGroup}>\n\t\t\t{state !== 'small' && <div className=\"divider\" />}\n\t\t\t{buttonGroup?.buttons?.map((button: ButtonBarButton, index: number) => {\n\t\t\t\tconst active = button?.id ? activeFormats?.includes(button.id) : false;\n\t\t\t\tconst bgColor = active\n\t\t\t\t\t? theme.current.colors['core-surface-secondary']\n\t\t\t\t\t: 'transparent';\n\t\t\t\treturn (\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\tkey={`button-${button?.icon}-${index}`}\n\t\t\t\t\t\ticon={button?.icon}\n\t\t\t\t\t\ttooltip={button?.toolTip}\n\t\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\t\thover={!disabledFormats.includes(button.id || 'none')}\n\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\tbgColor={bgColor}\n\t\t\t\t\t\tonClick={(e) => onCommand(button?.command, e)}\n\t\t\t\t\t\tdisabled={disabledFormats.includes(button.id || 'none')}\n\t\t\t\t\t\tframeSize={30}\n\t\t\t\t\t\ticonSize={20}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n});\n","import { motion } from 'motion/react';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Icon } from '../Icon';\nimport css from './CheckBox.module.css';\nimport type { CheckBoxProps } from './_types';\n\nexport const CheckBox = React.memo((props: CheckBoxProps) => {\n\tconst {\n\t\tsize = 20,\n\t\tchecked = false,\n\t\tdisabled = false,\n\t\tcolor = undefined,\n\t\tlabel = undefined,\n\t\tonChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [state, setState] = useState<'mixed' | boolean>(checked);\n\tconst theme = useTheme();\n\n\tuseEffect(() => setState(checked), [checked]);\n\n\t// memo icon name\n\tconst iconName = useMemo(() => {\n\t\tif (state === true) return 'checked';\n\t\tif (state === 'mixed') return 'partial';\n\t\treturn 'unchecked';\n\t}, [state]);\n\n\t// memo icon color\n\tconst iconColor = useMemo(() => {\n\t\tif (color) return color;\n\t\tif (disabled) return theme.current.colors['core-icon-disabled'];\n\t\tif (state === 'mixed') return theme.current.colors['core-icon-primary'];\n\t\tif (!state) return theme.current.colors['core-icon-secondary'];\n\t\treturn theme.current.colors['core-text-special'];\n\t}, [color, disabled, state, theme]);\n\n\t// memo style vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--cb-size': `${size}px`,\n\t\t\t'--cb-label-color': `${color}`,\n\t\t} as React.CSSProperties;\n\t}, [size, color]);\n\n\t// handle toggle\n\tconst handleToggle = useCallback(() => {\n\t\tlet newState = false;\n\t\tswitch (state) {\n\t\t\tcase true:\n\t\t\t\tbreak;\n\t\t\tcase 'mixed':\n\t\t\tcase false:\n\t\t\t\tnewState = true;\n\t\t\t\tbreak;\n\t\t}\n\t\tsetState(newState);\n\t\tonChange(newState);\n\t}, [state, onChange]);\n\n\t// keyboard handler for accessibility\n\tconst handleKeyDown = useCallback(\n\t\t(e: React.KeyboardEvent) => {\n\t\t\tif (e.key === ' ' || e.key === 'Enter') {\n\t\t\t\te.preventDefault();\n\t\t\t\thandleToggle();\n\t\t\t}\n\t\t},\n\t\t[handleToggle],\n\t);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Checkbox');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<motion.div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={handleToggle}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\ttabIndex={disabled ? -1 : 0}\n\t\t\trole={'checkbox'}\n\t\t\taria-checked={state === 'mixed' ? 'mixed' : state}\n\t\t\taria-disabled={disabled}\n\t\t\t{...(rest as any)}\n\t\t>\n\t\t\t<div className={css.icon}>\n\t\t\t\t<Icon name={iconName} strokeColor={iconColor} size={size} />\n\t\t\t</div>\n\t\t\t{label && <span className={css.label}>{label}</span>}\n\t\t</motion.div>\n\t);\n});\n","import { motion } from 'motion/react';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { cleanString } from '../../util/utils';\nimport css from './DivInput.module.css';\nimport type { DivInputProps } from './_types';\n\nexport const DivInput = React.memo((props: DivInputProps) => {\n\tconst {\n\t\tvalue = '',\n\t\tname = 'Input Field',\n\t\tplaceholder = 'Placeholder',\n\t\tisEditable = true,\n\t\twrap = false,\n\t\tfocus = false,\n\t\twidth = 'auto',\n\t\ttextAlign = 'left',\n\t\tclamp = 3,\n\t\tpadding = '0px',\n\t\tonChange = () => null,\n\t\tonSubmit = () => null,\n\t\tonFocus = () => null,\n\t\tonBlur = () => null,\n\t\tonDblClick = () => null,\n\t\tonClick = () => null,\n\t\tradius = 4,\n\t\tbgColor = 'var(--core-surface-secondary)',\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst innerText = useRef<string>(\n\t\tvalue === '' ? cleanString(placeholder) : cleanString(value),\n\t);\n\tconst [isFocused, setIsFocused] = useState(focus);\n\tconst [text, setText] = useState(innerText.current);\n\tconst [isPlaceholder, setIsPlaceholder] = useState<boolean>(false);\n\n\t// Memoize setCursor function\n\tconst setCursor = useCallback((to: 'start' | 'end', length = 1) => {\n\t\tif (ref.current) {\n\t\t\tconst range = document.createRange();\n\t\t\trange.setStart(ref.current, to === 'start' ? 0 : length);\n\t\t\trange.setEnd(ref.current, to === 'start' ? 0 : 1);\n\t\t\tconst selection = globalThis.getSelection();\n\t\t\tselection?.removeAllRanges();\n\t\t\tselection?.addRange(range);\n\t\t}\n\t}, []);\n\n\t// Memoize handleSelectAll\n\tconst handleSelectAll = useCallback(() => {\n\t\tif (!ref.current?.firstChild) return;\n\t\tconst range = document.createRange();\n\t\trange.selectNode(ref.current.firstChild);\n\t\tglobalThis.getSelection()?.removeAllRanges();\n\t\tglobalThis.getSelection()?.addRange(range);\n\t}, []);\n\n\t// Combined effect for related state updates\n\tuseEffect(() => {\n\t\tif (!ref.current) return;\n\n\t\t// Set contentEditable\n\t\tref.current.contentEditable = isEditable ? 'true' : 'false';\n\n\t\t// Handle focus\n\t\tif (focus) {\n\t\t\thandleSelectAll();\n\t\t\tref.current.focus();\n\t\t}\n\t\tsetIsFocused(focus);\n\n\t\t// Update text\n\t\tconst newText =\n\t\t\tvalue === '' ? cleanString(placeholder) : cleanString(value);\n\t\tinnerText.current = newText;\n\t\tref.current.innerText = newText;\n\t\tsetText(newText);\n\t}, [value, placeholder, focus, isEditable, handleSelectAll]);\n\n\t// Effect for placeholder state\n\tuseEffect(() => {\n\t\tif (placeholder) {\n\t\t\tsetIsPlaceholder(text === placeholder);\n\t\t}\n\t}, [placeholder, text]);\n\n\t// Memoize handleSetValue\n\tconst handleSetValue = useCallback(\n\t\t(e: React.InputEvent<HTMLDivElement>) => {\n\t\t\tlet textString = '';\n\t\t\tconst stripped = e.currentTarget.innerText.replaceAll(/\\s+/g, '');\n\t\t\tif (stripped.length === 0 && placeholder && ref.current) {\n\t\t\t\tref.current.innerText = placeholder;\n\t\t\t\tsetIsPlaceholder(true);\n\t\t\t\tsetCursor('start');\n\t\t\t} else if (isPlaceholder) {\n\t\t\t\tconst textString = e.currentTarget.innerText.replace(placeholder, '');\n\t\t\t\tinnerText.current = cleanString(textString);\n\t\t\t\tif (ref.current) {\n\t\t\t\t\tref.current.innerText = cleanString(textString);\n\t\t\t\t\tsetCursor('end');\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttextString = e.currentTarget.innerText;\n\t\t\t\tinnerText.current = cleanString(textString || '');\n\t\t\t}\n\t\t\tonChange(innerText.current);\n\t\t\tsetText(innerText.current);\n\t\t},\n\t\t[placeholder, isPlaceholder, onChange, setCursor],\n\t);\n\n\t// Memoize handleKeyDown\n\tconst handleKeyDown = useCallback(\n\t\t(e: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t// stop propagation to avoid conflicts with listeners to shortcuts while editing\n\t\t\te.stopPropagation();\n\t\t\tif (e.key === 'Enter' && ref.current) {\n\t\t\t\te.preventDefault();\n\t\t\t\tref.current.innerHTML = cleanString(innerText.current);\n\t\t\t\tonChange(null);\n\t\t\t\tonSubmit(innerText.current);\n\t\t\t\tref?.current.blur();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (e.key === '<' || e.key === '>') {\n\t\t\t\te.preventDefault();\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\t\t[onChange, onSubmit],\n\t);\n\n\t// Memoize handlePaste\n\tconst handlePaste = useCallback(\n\t\t(e: React.ClipboardEvent<HTMLDivElement>) => {\n\t\t\te.preventDefault();\n\t\t\tif (!e.clipboardData) return;\n\t\t\tconst textData = e.clipboardData.getData('text/plain');\n\t\t\tif (!textData) return;\n\t\t\tconst pasteText = cleanString(textData);\n\t\t\tconst selection = globalThis.getSelection();\n\t\t\tif (!selection?.rangeCount) return;\n\t\t\tselection?.deleteFromDocument();\n\t\t\tselection?.getRangeAt(0).insertNode(document.createTextNode(pasteText));\n\t\t\tselection?.collapseToEnd();\n\t\t\tconst newText = ref.current?.innerText || '';\n\t\t\tonChange(cleanString(newText));\n\t\t\tinnerText.current = cleanString(newText);\n\t\t\treturn true;\n\t\t},\n\t\t[onChange],\n\t);\n\n\t// Memoize handleFocus\n\tconst handleFocus = useCallback(\n\t\t(e: React.FocusEvent<HTMLDivElement>) => {\n\t\t\tsetIsFocused(true);\n\t\t\tonFocus(e);\n\t\t},\n\t\t[onFocus],\n\t);\n\n\t// Memoize handleBlur\n\tconst handleBlur = useCallback(\n\t\t(_e: React.FocusEvent<HTMLDivElement>) => {\n\t\t\tif (!ref.current) return;\n\t\t\tconst blurText = cleanString(innerText.current);\n\t\t\tif (blurText === '') {\n\t\t\t\tref.current.innerText = placeholder;\n\t\t\t\tinnerText.current = placeholder;\n\t\t\t}\n\t\t\tonChange(null);\n\t\t\tonSubmit(innerText.current);\n\t\t\tsetIsFocused(false);\n\t\t\tonBlur(blurText);\n\t\t},\n\t\t[placeholder, onChange, onSubmit, onBlur],\n\t);\n\n\t// Memoize handleClick\n\tconst handleClick = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement>) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tif (isPlaceholder) setTimeout(() => setCursor('start'), 50);\n\t\t\tonClick();\n\t\t},\n\t\t[isPlaceholder, setCursor, onClick],\n\t);\n\n\t// calc css values as number / string\n\tconst setWidth = useCallback((width: number | string) => {\n\t\tif (typeof width === 'string') return width;\n\t\treturn `${width}px`;\n\t}, []);\n\n\t// memo cssVars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--div-input-color': isPlaceholder\n\t\t\t\t? 'var(--core-text-tertiary)'\n\t\t\t\t: 'var(--core-text-primary)',\n\t\t\t'--div-input-width': `${setWidth(width)}`,\n\t\t\t'--div-input-user-select': isEditable ? 'text' : 'none',\n\t\t\t'--div-input-padding': padding ?? '0',\n\t\t\t'--div-input-text-align': textAlign ?? 'left',\n\t\t\t'--div-input-white-space': isEditable && wrap ? 'wrap' : 'no-wrap',\n\t\t\t'--div-input-line-clamp':\n\t\t\t\tisEditable && isFocused ? 'none' : (clamp ?? 'none'),\n\t\t\t'--div-input-cursor': isEditable ? 'text' : 'default',\n\t\t\t'--div-input-bg': isEditable\n\t\t\t\t? (bgColor ?? 'var(--core-surface-secondary)')\n\t\t\t\t: 'transparent',\n\t\t\t'--div-input-wrapper-bg':\n\t\t\t\tisEditable && isFocused\n\t\t\t\t\t? (bgColor ?? 'var(--core-surface-secondary)')\n\t\t\t\t\t: 'transparent',\n\t\t\t'--div-input-border-radius': `${radius}px`,\n\t\t} as React.CSSProperties;\n\t}, [\n\t\tclamp,\n\t\twrap,\n\t\tisEditable,\n\t\twidth,\n\t\ttextAlign,\n\t\tisFocused,\n\t\tpadding,\n\t\tisPlaceholder,\n\t\tsetWidth,\n\t\tbgColor,\n\t\tradius,\n\t]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'DivInput');\n\t/* END.DEBUG */\n\n\t// avoid issues with safari that refocuses editable divs on blur\n\t// by wrapping it with a pointer events none\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<motion.div\n\t\t\t\tclassName={css.input}\n\t\t\t\tref={ref}\n\t\t\t\tcontentEditable={isEditable}\n\t\t\t\tsuppressContentEditableWarning={true}\n\t\t\t\tonInput={handleSetValue}\n\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\tonFocus={handleFocus}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tonPaste={handlePaste}\n\t\t\t\tonDoubleClick={onDblClick}\n\t\t\t\tonClick={handleClick}\n\t\t\t\trole={'textbox'}\n\t\t\t\taria-label={name}\n\t\t\t>\n\t\t\t\t{value ?? placeholder}\n\t\t\t</motion.div>\n\t\t</div>\n\t);\n});\n\nDivInput.displayName = 'DivInput';\n","import React, { useMemo } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport type { DocsProps } from './_types';\n\nexport const DocIcons = React.memo((props: DocsProps) => {\n\tconst { type = 'pdf', height = 36, ...divAttributes } = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst theme = useTheme();\n\n\tconst renderIcon = useMemo(() => {\n\t\tconst images = [\n\t\t\t{\n\t\t\t\tname: 'not supported',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\taria-label={'Not supported'}\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Not supported</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 13.944 0 L 21.798 8 L 21.798 21.2 C 21.798 22.746 20.568 24 19.049 24 L 4.911 24 C 3.393 24 2.162 22.745 2.162 21.2 L 2.162 2.8 C 2.162 1.254 3.393 0 4.911 0 Z\"\n\t\t\t\t\t\t\tfill=\"rgb(102, 113, 127)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 12.021 16.249 C 12.461 16.249 12.733 15.968 12.733 15.625 L 12.733 15.52 C 12.733 15.028 13.014 14.711 13.63 14.307 C 14.482 13.744 15.089 13.235 15.089 12.18 C 15.089 10.72 13.788 9.93 12.294 9.93 C 10.782 9.93 9.789 10.65 9.552 11.46 C 9.508 11.6 9.482 11.74 9.482 11.89 C 9.482 12.285 9.789 12.496 10.079 12.496 C 10.378 12.496 10.571 12.356 10.729 12.145 L 10.887 11.934 C 11.195 11.424 11.652 11.125 12.241 11.125 C 13.041 11.125 13.559 11.582 13.559 12.25 C 13.559 12.848 13.19 13.138 12.426 13.674 C 11.793 14.114 11.318 14.579 11.318 15.441 L 11.318 15.555 C 11.318 16.012 11.573 16.249 12.021 16.249 Z M 12.004 18.869 C 12.514 18.869 12.953 18.464 12.953 17.954 C 12.953 17.444 12.523 17.04 12.003 17.04 C 11.485 17.04 11.054 17.453 11.054 17.954 C 11.054 18.455 11.494 18.868 12.004 18.868 Z\"\n\t\t\t\t\t\t\tfill=\"rgb(255, 255, 255)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 21.798 8 L 16.832 8 C 15.314 8 13.944 6.605 13.944 5.058 L 13.944 0 Z\"\n\t\t\t\t\t\t\tfill=\"rgba(255,255,255,0.4)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'text',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\tviewBox=\"0 0 1024 1024\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\taria-label=\"Text document\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Text document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M137.902 0a48.573 48.573 0 0 0-35.589 15.294 53.965 53.965 0 0 0-15.273 35.64v917.412a48.707 48.707 0 0 0 15.273 35.64 49.971 49.971 0 0 0 35.59 15.293h746.336a48.64 48.64 0 0 0 35.59-15.293 50.37 50.37 0 0 0 15.273-35.64V288.717L646.728 0H137.902z\"\n\t\t\t\t\t\t\tfill=\"#FD7541\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M935.102 288.717H697.656c-27.822-.666-50.227-23.076-50.928-50.934V0l288.374 288.717z\"\n\t\t\t\t\t\t\tfill=\"#FFFFFF\"\n\t\t\t\t\t\t\topacity={0.4}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M248.126 365.184h220.518a25.518 25.518 0 0 0 24.192-25.497 25.518 25.518 0 0 0-24.197-25.503H248.126a25.518 25.518 0 0 0-24.197 25.498 25.518 25.518 0 0 0 24.197 25.497zm0 169.825H773.95a25.446 25.446 0 0 0 25.43-25.466 25.446 25.446 0 0 0-25.43-25.467H248.126a25.446 25.446 0 0 0-25.431 25.467 25.446 25.446 0 0 0 25.43 25.466zM773.95 653.896H248.126a25.518 25.518 0 0 0-24.197 25.497 25.518 25.518 0 0 0 24.197 25.503H773.95a25.518 25.518 0 0 0 24.197-25.497A25.518 25.518 0 0 0 773.95 653.9z\"\n\t\t\t\t\t\t\tfill=\"#FFF\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'docx',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\tviewBox=\"0 0 1024 1024\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\taria-label=\"Word document\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Word document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z\"\n\t\t\t\t\t\t\tfill={theme.current.colors['core-button-primary']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z\"\n\t\t\t\t\t\t\tfill=\"#ffffff\"\n\t\t\t\t\t\t\tfillOpacity=\".7\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M427.377 725.32V768H259.814v-42.68h167.563zM594.944 640v42.68h-335.13V640h335.13zm0-85.32v42.64h-335.13v-42.64h335.13zm0-85.36V512h-335.13v-42.68h335.13z\"\n\t\t\t\t\t\t\tfill=\"#FFF\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'pdf',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\tviewBox=\"0 0 1024 1024\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\taria-label=\"PDF document\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>PDF document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z\"\n\t\t\t\t\t\t\tfill=\"#E94848\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M482.954 375.48a40.586 40.586 0 0 0-40.028 40.776c0 27.786 15.17 62.326 31.18 94.771-12.564 39.834-26.715 82.473-44.82 118.503-37.094 14.796-70.195 25.83-90.06 42.168a41.708 41.708 0 0 0-12.39 29.926c0 22.344 18.063 40.776 40.038 40.776a39.332 39.332 0 0 0 29.27-12.472c14.618-17.828 31.888-50.13 47.294-79.642 35.42-14.198 72.607-28.672 108.447-37.325 26.163 21.453 64.051 35.65 95.186 35.65 21.97 0 40.033-18.385 40.033-40.775a40.586 40.586 0 0 0-40.033-40.724c-24.991 0-61.297 9.072-89.037 18.616a301.338 301.338 0 0 1-58.092-76.984c10.66-33.332 23.04-66.658 23.04-92.488a40.586 40.586 0 0 0-40.028-40.776zm0 24.438c8.98 0 16.01 7.168 16.01 16.292 0 12.237-6.42 34.816-13.87 59.018-9.958-23.552-18.15-46.172-18.15-58.972 0-9.165 7.025-16.292 16.01-16.292v-.046zm6.887 139.546a323.574 323.574 0 0 0 41.523 53.76c-23.742 6.604-46.92 15.078-69.822 23.92 11.08-25.364 19.917-51.758 28.299-77.726v.046zm157.235 52.126c8.98 0 16.01 7.122 16.01 16.292 0 9.124-7.03 16.292-16.015 16.292-18.059 0-43.659-8.284-64.185-19.876 23.552-6.794 49.204-12.749 64.185-12.749v.041zM408.15 664.576c-11.264 20.48-22.436 39.562-30.26 49.152a15.078 15.078 0 0 1-11.028 4.188 15.964 15.964 0 0 1-16.01-16.292 17.707 17.707 0 0 1 4.234-11.356c9.4-7.398 29.835-16.292 53.064-25.692z\"\n\t\t\t\t\t\t\tfill=\"#FFF\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z\"\n\t\t\t\t\t\t\tfill=\"#FFF\"\n\t\t\t\t\t\t\tfillOpacity=\".4\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t];\n\n\t\tconst item = images.filter((data) => type === data.name);\n\t\treturn item ? item[0].svg : null;\n\t}, [height, type, theme]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'DocIcon');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={divClass.trim()}\n\t\t\tstyle={{\n\t\t\t\t...divStyle,\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tjustifyContent: 'center',\n\t\t\t\talignItems: 'center',\n\t\t\t}}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{renderIcon}\n\t\t</div>\n\t);\n});\n","import React, {\n\ttype RefObject,\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useObserveResize } from '../../hooks/useObserveResize/useObserveResize';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { pointerPosition } from '../../util/utils';\nimport css from './DraggablePanel.module.css';\nimport type { Constraint } from './_types';\n\ntype Info = {\n\tdiv: RefObject<HTMLDivElement | null>;\n\tdivWidth: number;\n\tdivHeight: number;\n\tdeltaWidth: number;\n};\n\ntype ResizeHandle = {\n\twidth?: number;\n\tcolor?: string;\n\toffsetX?: boolean;\n};\n\ntype DraggablePanelBaseProps = {\n\tchildren?: any;\n\tonResize?: (info: Info) => void;\n\tonResizeEnd?: (info: Info) => void;\n\tonResizeStart?: (info: Info) => void;\n\tcontainerRef?: React.RefObject<HTMLDivElement | null>;\n\tsizeConstraints?: Constraint;\n\tdragsRight?: boolean;\n\tisClosed?: boolean;\n\tresizeHandle?: Partial<ResizeHandle>;\n\tborderRight?: any;\n\tborderLeft?: any;\n\tbgColor?: string;\n\tdrags?: boolean;\n\tdragHandle?: boolean;\n\tdragHandleStyle?: DragHandleProps;\n\tdisableOnContext?: boolean;\n\tisTouchDevice?: boolean;\n};\n\nexport type DraggablePanelProps = Omit<\n\tReact.HTMLAttributes<HTMLDivElement>,\n\tkeyof DraggablePanelBaseProps\n> &\n\tDraggablePanelBaseProps;\n\nconst MIN_SIZE = 50;\n\nexport const DraggablePanel = React.memo((props: DraggablePanelProps) => {\n\tconst theme = useTheme();\n\tconst {\n\t\tchildren,\n\t\tsizeConstraints = { initial: 250, min: 250, max: 500 },\n\t\tdragsRight = true,\n\t\tisClosed = true,\n\t\tresizeHandle = {\n\t\t\twidth: 10,\n\t\t\tcolor: 'transparent',\n\t\t\toffsetX: true,\n\t\t},\n\t\tborderRight = '1px solid var(--core-outline-primary)',\n\t\tborderLeft = null,\n\t\tbgColor = 'transparent',\n\t\tdrags = true,\n\t\tisTouchDevice = false,\n\t\tdisableOnContext = true,\n\t\tdragHandle = true,\n\t\tdragHandleStyle,\n\t\tcontainerRef,\n\t\tonResize = () => null,\n\t\tonResizeStart = () => null,\n\t\tonResizeEnd = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst handle = useRef<HTMLDivElement>(null);\n\tconst div = useRef<HTMLDivElement>(null);\n\tconst [isDragging, setIsDragging] = useState(false);\n\tconst isOver = useRef<boolean>(false);\n\tconst gripper = { ...resizeHandle };\n\tconst containerSize = useObserveResize(containerRef);\n\tconst [handleHighlight, setHandleHighlight] = useState(false);\n\tconst [lastWidth, setLastWidth] = useState<number | null>(null);\n\tconst [panelClosed, setPanelClosed] = useState<boolean>(isClosed);\n\tconst [constraints, setConstraints] = useState<Constraint>(sizeConstraints);\n\tconst [contWidth, setContWidth] = useState<number | undefined>(undefined);\n\tconst timer = useRef<any>(null);\n\n\tconst startX = useRef<number>(0);\n\tconst startWidth = useRef<number>(0);\n\tconst divWidth = useRef<number>(0);\n\tconst divHeight = useRef<number>(0);\n\tconst deltaWidth = useRef<number>(0);\n\n\t// handle window resize call back - use the window object only if containerRef is undefined\n\tconst handleWindowResize = useCallback(() => {\n\t\tif (!containerRef?.current) setContWidth(window.innerWidth);\n\t}, [containerRef]);\n\n\tconst handleMouseOver = useCallback(() => {\n\t\tisOver.current = true;\n\t\tsetHighlight(true);\n\t}, []);\n\n\tconst handleMouseOut = useCallback(() => {\n\t\tisOver.current = false;\n\t\tif (!isDragging) setHighlight(false);\n\t}, [isDragging]);\n\n\tconst handleFocus = useCallback(() => {\n\t\tisOver.current = true;\n\t\tsetHighlight(true);\n\t}, []);\n\n\tconst handleBlur = useCallback(() => {\n\t\tisOver.current = false;\n\t\tif (!isDragging) setHighlight(false);\n\t}, [isDragging]);\n\n\tconst handleTouchStart = useCallback(() => {\n\t\tisOver.current = true;\n\t\tsetHighlight(true);\n\t}, []);\n\n\tconst handleTouchEnd = useCallback(() => {\n\t\tisOver.current = false;\n\t\tif (!isDragging) setHighlight(false);\n\t}, [isDragging]);\n\n\t// handle container resize - if continerRef and width more than 0 use this to set container size\n\tuseEffect(() => {\n\t\tif (!containerRef) return;\n\t\tif (containerSize.width > 0) setContWidth(containerSize.width);\n\t}, [containerSize, containerRef]);\n\n\t// listen to then window resize event\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: on mount only\n\tuseEffect(() => {\n\t\tif (!contWidth) setContWidth(window.innerWidth);\n\t\tglobalThis.addEventListener('resize', handleWindowResize);\n\t\treturn () => globalThis.removeEventListener('resize', handleWindowResize);\n\t}, []);\n\n\t// close/open on prop change\n\tuseEffect(() => setPanelClosed(isClosed), [isClosed]);\n\n\t// on constraints update, check and adjust div width to not exceed max\n\tconst adjustCurrentWidth = useCallback((relConst: Constraint) => {\n\t\tif (div?.current && relConst.max) {\n\t\t\tconst currentWidth = div.current.offsetWidth;\n\t\t\tif (currentWidth > relConst.max) {\n\t\t\t\tdiv.current.style.width = `${relConst.max}px`;\n\t\t\t\tdivWidth.current = relConst.max;\n\t\t\t\tsetLastWidth(relConst.max);\n\t\t\t}\n\t\t}\n\t}, []);\n\n\t// reset constraints on prop changes\n\tuseEffect(() => {\n\t\tif (!contWidth) return;\n\t\tconst { min, max, initial } = sizeConstraints;\n\t\tconst relativeConstraints: Constraint = { min, max, initial };\n\t\tfor (const [key, value] of Object.entries(sizeConstraints)) {\n\t\t\tlet calc = value;\n\t\t\tif (calc <= 1 && calc >= 0) calc = contWidth * value; // handle \"percent\" values\n\t\t\tif (calc > 1 && calc < MIN_SIZE) calc = MIN_SIZE; // ensure values no smaller than MIN_SIZE\n\t\t\trelativeConstraints[key as keyof Constraint] = calc;\n\t\t}\n\t\tif (relativeConstraints.min < relativeConstraints.initial) {\n\t\t\trelativeConstraints.initial = relativeConstraints.min; // ensure \"initial\" is not smaller than \"min\"\n\t\t}\n\t\tsetConstraints(relativeConstraints);\n\t\tadjustCurrentWidth(relativeConstraints);\n\t}, [sizeConstraints, contWidth, adjustCurrentWidth]);\n\n\t// callback for hilight when hovering over the resize handle\n\tconst setHighlight = useCallback(\n\t\t(state: boolean | null) => {\n\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t\tif (state) {\n\t\t\t\ttimer.current = setTimeout(\n\t\t\t\t\t() => {\n\t\t\t\t\t\tsetHandleHighlight(state);\n\t\t\t\t\t},\n\t\t\t\t\tisTouchDevice ? 0 : 350,\n\t\t\t\t);\n\t\t\t} else setHandleHighlight(false);\n\t\t},\n\t\t[isTouchDevice],\n\t);\n\n\t// get the current mouse X position using touch or mouse event\n\tconst getClientX = useCallback((e: MouseEvent | TouchEvent) => {\n\t\treturn pointerPosition(e);\n\t}, []);\n\n\t// calculate the drag amount based on starting point and new client x point\n\tconst getNewWidth = useCallback(\n\t\t(clientX: number) => {\n\t\t\treturn dragsRight\n\t\t\t\t? startWidth.current + clientX - startX.current\n\t\t\t\t: startWidth.current - clientX + startX.current;\n\t\t},\n\t\t[dragsRight],\n\t);\n\n\t// check constraints to prevent over dragging\n\tconst canDrag = useCallback(\n\t\t(newWidth: number, clientX: number) => {\n\t\t\tif (constraints?.min) {\n\t\t\t\tif (newWidth <= constraints.min) return false;\n\t\t\t\tif (newWidth < constraints.min) return false;\n\t\t\t}\n\t\t\tif (constraints?.max) {\n\t\t\t\tif (newWidth >= constraints.max) {\n\t\t\t\t\tif (clientX - startX.current > 0) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\t\t[constraints],\n\t);\n\n\t// process drag\n\tconst doDrag = useCallback(\n\t\t(e: MouseEvent | TouchEvent) => {\n\t\t\tif (div?.current) {\n\t\t\t\te.stopPropagation();\n\t\t\t\te.preventDefault();\n\t\t\t\tconst el = div.current;\n\t\t\t\tconst clientX = getClientX(e);\n\t\t\t\tconst newWidth = getNewWidth(clientX);\n\t\t\t\tif (!canDrag(newWidth, clientX)) return;\n\t\t\t\tel.style.width = `${newWidth}px`;\n\t\t\t\tdivWidth.current = newWidth;\n\t\t\t\tdeltaWidth.current = clientX - startX.current;\n\t\t\t\tonResize({\n\t\t\t\t\tdiv,\n\t\t\t\t\tdivWidth: divWidth.current,\n\t\t\t\t\tdivHeight: divHeight.current,\n\t\t\t\t\tdeltaWidth: deltaWidth.current,\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\t[onResize, canDrag, getNewWidth, getClientX],\n\t);\n\n\t// handle stopping drag\n\tconst stopDrag = useCallback(() => {\n\t\tsetIsDragging(false);\n\t\tdocument.documentElement.removeEventListener('mousemove', doDrag, false);\n\t\tdocument.documentElement.removeEventListener('mouseup', stopDrag, false);\n\t\tdocument.documentElement.removeEventListener('touchmove', doDrag, false);\n\t\tdocument.documentElement.removeEventListener('touchend', stopDrag, false);\n\t\tdocument.documentElement.style.userSelect = 'auto';\n\t\t// noinspection JSDeprecatedSymbols\n\t\tdocument.documentElement.style.webkitUserSelect = 'auto'; // reuqired for safari / iOS\n\t\tif (div?.current) {\n\t\t\tdivWidth.current = div.current.offsetWidth;\n\t\t\tdivHeight.current = div.current.offsetHeight;\n\t\t\tdeltaWidth.current = 0;\n\t\t\tconst update = {\n\t\t\t\tdiv,\n\t\t\t\tdivWidth: divWidth.current,\n\t\t\t\tdivHeight: divHeight.current,\n\t\t\t\tdeltaWidth: deltaWidth.current,\n\t\t\t};\n\t\t\tonResize(update);\n\t\t\tonResizeEnd(update);\n\t\t}\n\t\tsetLastWidth(divWidth.current);\n\t\tif (!isOver.current) setHighlight(false);\n\t}, [doDrag, onResizeEnd, onResize, setHighlight]);\n\n\t// handle starting drag\n\tconst initDrag = useCallback(\n\t\t(e: any) => {\n\t\t\tif (div?.current && document.defaultView) {\n\t\t\t\tsetIsDragging(true);\n\t\t\t\tconst el = div.current;\n\t\t\t\tdivWidth.current = div.current.offsetWidth;\n\t\t\t\tdivHeight.current = div.current.offsetHeight;\n\t\t\t\tdeltaWidth.current = 0;\n\t\t\t\tstartX.current = pointerPosition(e);\n\t\t\t\tstartWidth.current = Number.parseInt(\n\t\t\t\t\tdocument.defaultView.getComputedStyle(el).width,\n\t\t\t\t\t10,\n\t\t\t\t);\n\t\t\t\tdocument.documentElement.addEventListener('mousemove', doDrag, false);\n\t\t\t\tdocument.documentElement.addEventListener('mouseup', stopDrag, false);\n\t\t\t\tdocument.documentElement.addEventListener('touchmove', doDrag, false);\n\t\t\t\tdocument.documentElement.addEventListener('touchend', stopDrag, false);\n\t\t\t\tdocument.documentElement.style.userSelect = 'none';\n\t\t\t\t// noinspection JSDeprecatedSymbols\n\t\t\t\tdocument.documentElement.style.webkitUserSelect = 'none'; // reuqired for safari / iOS\n\t\t\t\tconst update = {\n\t\t\t\t\tdiv,\n\t\t\t\t\tdivWidth: divWidth.current,\n\t\t\t\t\tdivHeight: divHeight.current,\n\t\t\t\t\tdeltaWidth: deltaWidth.current,\n\t\t\t\t};\n\t\t\t\tonResize(update);\n\t\t\t\tonResizeStart(update);\n\t\t\t}\n\t\t},\n\t\t[doDrag, stopDrag, onResize, onResizeStart],\n\t);\n\n\tuseEffect(() => {\n\t\tconst hl = handle?.current;\n\t\tif (hl && drags) {\n\t\t\thl.addEventListener('mousedown', initDrag, false);\n\t\t\thl.addEventListener('touchstart', initDrag, { passive: true });\n\t\t}\n\t\treturn () => {\n\t\t\tif (hl) {\n\t\t\t\thl.removeEventListener('mousedown', initDrag, false);\n\t\t\t\thl.removeEventListener('touchstart', initDrag);\n\t\t\t}\n\t\t};\n\t}, [drags, initDrag]);\n\n\tconst leftRightStyle = useMemo(() => {\n\t\tif (dragsRight) {\n\t\t\treturn { right: isTouchDevice ? -22 : -((gripper.width || 10) / 2) };\n\t\t}\n\t\treturn { left: isTouchDevice ? -22 : -((gripper.width || 10) / 2) };\n\t}, [dragsRight, isTouchDevice, gripper.width]);\n\n\tconst width = useMemo(() => {\n\t\tif (!drags) return '100%';\n\t\tif (panelClosed) return 0;\n\t\tif (lastWidth) return lastWidth;\n\t\treturn constraints.initial;\n\t}, [drags, panelClosed, lastWidth, constraints.initial]);\n\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--panel-bg': bgColor ?? 'transparent',\n\t\t} as React.CSSProperties;\n\t}, [bgColor]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'DraggableDiv');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.panel}${divClass}`}\n\t\t\tref={div}\n\t\t\tonContextMenu={(e) => {\n\t\t\t\tif (disableOnContext) e.preventDefault();\n\t\t\t\treturn true;\n\t\t\t}}\n\t\t\tstyle={{\n\t\t\t\t...divStyle,\n\t\t\t\t...cssVars,\n\t\t\t\toverflow: 'visible',\n\t\t\t\twidth: width,\n\t\t\t\theight: '100%',\n\t\t\t\tmaxWidth: drags ? constraints.max : 'unset',\n\t\t\t\ttransition: isDragging ? '' : 'width 0.2s ease',\n\t\t\t\tborderRight:\n\t\t\t\t\tpanelClosed || !borderRight || !drags ? 'none' : borderRight,\n\t\t\t\tborderLeft: panelClosed || !borderLeft || !drags ? 'none' : borderLeft,\n\t\t\t}}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div\n\t\t\t\tref={handle}\n\t\t\t\tstyle={{\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\tboxSizing: 'border-box',\n\t\t\t\t\tdisplay: panelClosed || !drags ? 'none' : 'flex',\n\t\t\t\t\talignItems: 'center',\n\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\tzIndex: 1,\n\t\t\t\t\ttop: 0,\n\t\t\t\t\t...leftRightStyle,\n\t\t\t\t\tbottom: 0,\n\t\t\t\t\twidth: isTouchDevice ? 44 : gripper.width,\n\t\t\t\t\tbackgroundColor: resizeHandle.color,\n\t\t\t\t\tcursor: 'col-resize',\n\t\t\t\t\toverflow: 'visible',\n\t\t\t\t}}\n\t\t\t\tonMouseOver={handleMouseOver}\n\t\t\t\tonMouseOut={handleMouseOut}\n\t\t\t\tonFocus={handleFocus}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tonTouchStart={handleTouchStart}\n\t\t\t\tonTouchEnd={handleTouchEnd}\n\t\t\t>\n\t\t\t\t{dragHandle && !panelClosed && (\n\t\t\t\t\t<DragHandle {...(dragHandleStyle ?? {})} />\n\t\t\t\t)}\n\t\t\t\t<div\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: handleHighlight\n\t\t\t\t\t\t\t? theme.current.colors['core-outline-primary']\n\t\t\t\t\t\t\t: 'transparent',\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\tmaxWidth: 3,\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tpointerEvents: 'none',\n\t\t\t\t\t\ttransition: 'background-color 0.2s ease',\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className={css.content}>{children}</div>\n\t\t</div>\n\t);\n});\n\n// customizable drag handle for \"can drag\" affordance\nexport type DragHandleProps = {\n\twidth?: number;\n\theight?: number;\n\tradius?: number;\n\tstroke?: number;\n\tstrokeColor?: string;\n\tcolor?: string;\n};\nexport const DragHandle = React.memo((props: Readonly<DragHandleProps>) => {\n\tconst {\n\t\twidth = 6,\n\t\theight = 6,\n\t\tradius = 100,\n\t\tstroke = 1,\n\t\tcolor = 'var(--core-surface-primary)',\n\t\tstrokeColor = 'var(--core-outline-primary)',\n\t} = props;\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--drag-handle-width': `${width}px`,\n\t\t\t'--drag-handle-height': `${height}px`,\n\t\t\t'--drag-handle-radius': `${radius}px`,\n\t\t\t'--drag-handle-border': `${stroke}px`,\n\t\t\t'--drag-handle-border-color': `${strokeColor}`,\n\t\t\t'--drag-handle-bg': `${color}`,\n\t\t} as React.CSSProperties;\n\t}, [width, height, radius, stroke, color, strokeColor]);\n\treturn <div className={css.handle} style={cssVars} />;\n});\n","import { AnimatePresence, type Transition, motion } from 'motion/react';\nimport React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './ErrorSummary.module.css';\nimport type { ErrorMessage, ErrorSummaryProps } from './_types';\n\nexport type { ErrorMessage };\n\nexport const ErrorSummary = React.memo((props: ErrorSummaryProps) => {\n\tconst { entries, errors = [], ...divAttributes } = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo animation variants\n\tconst variants = useMemo(\n\t\t() => ({\n\t\t\tenter: { opacity: 0, maxHeight: 0 },\n\t\t\tanimate: { opacity: 1, maxHeight: 500 },\n\t\t\texit: { opacity: 0, maxHeight: 0 },\n\t\t}),\n\t\t[],\n\t);\n\n\t// memo trans\n\tconst transition: Transition = useMemo(\n\t\t() => ({ ease: 'easeInOut', duration: 0.25 }),\n\t\t[],\n\t);\n\n\tconst renderedErrors = useMemo(() => {\n\t\tif (!entries) return null;\n\t\treturn entries.map((error: ErrorMessage, index: number) => {\n\t\t\tif (errors.includes(index) || errors.includes(error.id)) {\n\t\t\t\treturn (\n\t\t\t\t\t<div className={css.error} key={`${error.id}_${index}`}>\n\t\t\t\t\t\t<p className={css.p}>\n\t\t\t\t\t\t\t<strong className={css.strong}>{error.title}</strong>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<ul className={css.ul}>\n\t\t\t\t\t\t\t{error.bullets?.map((bullet: string, index: number) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<li className={css.li} key={`${error.title}_bullet_${index}`}>\n\t\t\t\t\t\t\t\t\t\t{bullet}\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn null;\n\t\t});\n\t}, [entries, errors]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'ErrorSummary');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<AnimatePresence initial={false}>\n\t\t\t{entries && errors && errors.length > 0 && (\n\t\t\t\t<motion.div\n\t\t\t\t\tid={divId}\n\t\t\t\t\tclassName={`${css.errorBox}${divClass}`}\n\t\t\t\t\tstyle={divStyle}\n\t\t\t\t\tinitial={'enter'}\n\t\t\t\t\tanimate={'animate'}\n\t\t\t\t\texit={'exit'}\n\t\t\t\t\tvariants={variants}\n\t\t\t\t\ttransition={transition}\n\t\t\t\t\t{...(rest as any)}\n\t\t\t\t>\n\t\t\t\t\t{renderedErrors}\n\t\t\t\t</motion.div>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n});\n","import { useAnimate } from 'motion/react';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Badge } from '../Badge';\nimport { Icon } from '../Icon';\nimport css from './Grouper.module.css';\nimport type { GrouperProps } from './_types';\n\nexport const Grouper = React.memo((props: GrouperProps) => {\n\tconst {\n\t\ttitle = 'Group Title',\n\t\ttoggle = true,\n\t\topen = true,\n\t\thasIcon = true,\n\t\ticonName = 'chevron down',\n\t\ticonSize = 18,\n\t\tframeSize = 64,\n\t\tborder = 0,\n\t\tcount = 0,\n\t\tunframed = false,\n\t\thideNull = true,\n\t\tshowFilterBadge = false,\n\t\tonChange = () => null,\n\t\tonClick = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst theme = useTheme();\n\tconst [state, setState] = useState<boolean>(open);\n\tconst [icon, animateIcon] = useAnimate();\n\n\tuseEffect(() => setState(open), [open]);\n\n\tconst animate = useCallback(\n\t\t(state: boolean) => {\n\t\t\tconst animation = { rotate: state ? 0 : 180 };\n\t\t\tanimateIcon(\n\t\t\t\ticon.current,\n\t\t\t\t{ ...animation },\n\t\t\t\t{ ease: 'easeInOut', duration: 0.25 },\n\t\t\t);\n\t\t},\n\t\t[animateIcon, icon],\n\t);\n\n\tconst handleToggle = useCallback(() => {\n\t\tif (!toggle) return;\n\t\tonClick();\n\t\tonChange(!state);\n\t\tanimate(!state);\n\t\tsetState(!state);\n\t}, [toggle, onClick, onChange, state, animate]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--grouper-height': unframed ? 'auto' : `${frameSize}px`,\n\t\t\t'--grouper-border': border ? `${border}px` : '0',\n\t\t\t'--grouper-icon-size': `${iconSize}px`,\n\t\t} as React.CSSProperties;\n\t}, [frameSize, iconSize, border, unframed]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Grouper');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.header}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={handleToggle}\n\t\t\tonKeyDown={handleToggle}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className={css.content}>\n\t\t\t\t<div className={css.title}>\n\t\t\t\t\t{title}\n\t\t\t\t\t<Badge hideNull={hideNull} count={count} variant={'light'} />\n\t\t\t\t\t{showFilterBadge && (\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"filter\"\n\t\t\t\t\t\t\tsize={16}\n\t\t\t\t\t\t\tstrokeColor={theme.current.colors['core-text-disabled']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasIcon && (\n\t\t\t\t\t<div ref={icon} className={css.icon}>\n\t\t\t\t\t\t<Icon name={iconName} size={iconSize} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n});\n","import { useMemo } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport type { LogoProps } from './_types';\n\nexport function Logos(props: Readonly<LogoProps>) {\n\tconst theme = useTheme();\n\tconst {\n\t\timage = 'gp',\n\t\tcolor = theme.current.colors['core-text-primary'],\n\t\theight,\n\t\twidth,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// memo height\n\tconst adjustedHeight = useMemo(() => {\n\t\tif (!width && !height) return 36;\n\t\treturn height;\n\t}, [width, height]);\n\n\t// memo slice logo\n\tconst sliceColor = useMemo(() => {\n\t\tif (theme.current.name === 'lightMode')\n\t\t\treturn theme.current.colors['core-text-primary'];\n\t\treturn theme.current.colors['core-text-special'];\n\t}, [theme]);\n\n\t// memo slice logo bg\n\tconst sliceBgColor = useMemo(() => {\n\t\tif (theme.current.name === 'lightMode') return '#6af5ff';\n\t\treturn theme.current.colors['core-surface-secondary'];\n\t}, [theme]);\n\n\tconst renderIcon = useMemo(() => {\n\t\tconst images = [\n\t\t\t{\n\t\t\t\tname: 'stripe',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\twidth={width}\n\t\t\t\t\t\tviewBox=\"0 0 111 20\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Stripe logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Stripe</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 52.351 15.495 L 51.046 15.495 L 52.056 13.035 L 50.046 8.032 L 51.424 8.032 L 52.688 11.437 L 53.961 8.032 L 55.34 8.032 Z M 47.34 13.346 C 46.888 13.346 46.425 13.181 46.004 12.859 L 46.004 13.222 L 44.657 13.222 L 44.657 5.76 L 46.004 5.76 L 46.004 8.386 C 46.425 8.075 46.888 7.908 47.34 7.908 C 48.751 7.908 49.719 9.029 49.719 10.627 C 49.719 12.225 48.751 13.346 47.34 13.346 Z M 47.056 9.049 C 46.688 9.049 46.319 9.205 46.004 9.517 L 46.004 11.738 C 46.319 12.049 46.688 12.205 47.056 12.205 C 47.814 12.205 48.341 11.562 48.341 10.627 C 48.341 9.694 47.814 9.049 47.056 9.049 Z M 39.204 12.859 C 38.794 13.181 38.331 13.346 37.868 13.346 C 36.468 13.346 35.49 12.225 35.49 10.627 C 35.49 9.029 36.468 7.908 37.868 7.908 C 38.331 7.908 38.794 8.075 39.204 8.386 L 39.204 5.76 L 40.562 5.76 L 40.562 13.222 L 39.204 13.222 Z M 39.204 9.517 C 38.899 9.205 38.531 9.049 38.162 9.049 C 37.394 9.049 36.868 9.694 36.868 10.627 C 36.868 11.562 37.394 12.205 38.162 12.205 C 38.531 12.205 38.899 12.049 39.204 11.738 Z M 31.184 10.991 C 31.268 11.779 31.9 12.319 32.784 12.319 C 33.268 12.319 33.805 12.142 34.352 11.831 L 34.352 12.941 C 33.792 13.202 33.182 13.34 32.563 13.346 C 30.974 13.346 29.858 12.205 29.858 10.586 C 29.858 9.019 30.953 7.908 32.458 7.908 C 33.836 7.908 34.773 8.977 34.773 10.503 C 34.773 10.648 34.773 10.814 34.752 10.991 Z M 32.405 8.936 C 31.753 8.936 31.248 9.413 31.184 10.129 L 33.478 10.129 C 33.436 9.423 33.005 8.936 32.405 8.936 Z M 27.637 9.755 L 27.637 13.222 L 26.29 13.222 L 26.29 8.032 L 27.637 8.032 L 27.637 8.551 C 28.016 8.136 28.479 7.908 28.931 7.908 C 29.079 7.908 29.227 7.919 29.374 7.96 L 29.374 9.144 C 29.219 9.101 29.06 9.08 28.9 9.081 C 28.458 9.081 27.984 9.32 27.637 9.755 Z M 21.627 10.991 C 21.712 11.779 22.342 12.319 23.227 12.319 C 23.711 12.319 24.248 12.142 24.795 11.831 L 24.795 12.941 C 24.235 13.202 23.625 13.34 23.005 13.346 C 21.416 13.346 20.301 12.205 20.301 10.586 C 20.301 9.019 21.396 7.908 22.9 7.908 C 24.28 7.908 25.216 8.977 25.216 10.503 C 25.216 10.648 25.216 10.814 25.195 10.991 Z M 22.847 8.936 C 22.195 8.936 21.69 9.413 21.627 10.129 L 23.922 10.129 C 23.879 9.423 23.448 8.936 22.847 8.936 Z M 16.922 13.222 L 15.848 9.694 L 14.786 13.222 L 13.575 13.222 L 11.765 8.032 L 13.112 8.032 L 14.175 11.562 L 15.238 8.032 L 16.459 8.032 L 17.521 11.562 L 18.585 8.032 L 19.931 8.032 L 18.132 13.222 Z M 8.691 13.346 C 7.102 13.346 5.976 12.215 5.976 10.627 C 5.976 9.029 7.102 7.908 8.691 7.908 C 10.28 7.908 11.396 9.029 11.396 10.627 C 11.396 12.215 10.28 13.346 8.691 13.346 Z M 8.691 9.019 C 7.901 9.019 7.354 9.672 7.354 10.627 C 7.354 11.582 7.901 12.236 8.691 12.236 C 9.47 12.236 10.017 11.582 10.017 10.627 C 10.017 9.672 9.47 9.019 8.691 9.019 Z M 2.776 10.659 L 1.565 10.659 L 1.565 13.222 L 0.219 13.222 L 0.219 6.082 L 2.776 6.082 C 4.249 6.082 5.301 7.026 5.301 8.375 C 5.301 9.724 4.249 10.659 2.776 10.659 Z M 2.586 7.161 L 1.565 7.161 L 1.565 9.579 L 2.586 9.579 C 3.365 9.579 3.912 9.092 3.912 8.375 C 3.912 7.649 3.365 7.161 2.586 7.161 Z M 110.728 11.309 L 104.259 11.309 C 104.406 12.837 105.541 13.286 106.829 13.286 C 108.142 13.286 109.175 13.014 110.076 12.566 L 110.076 15.191 C 109.178 15.681 107.993 16.036 106.412 16.036 C 103.194 16.036 100.938 14.048 100.938 10.118 C 100.938 6.799 102.851 4.163 105.996 4.163 C 109.135 4.163 110.773 6.798 110.773 10.135 C 110.773 10.45 110.744 11.133 110.728 11.309 Z M 105.974 6.82 C 105.148 6.82 104.23 7.435 104.23 8.903 L 107.646 8.903 C 107.646 7.437 106.786 6.82 105.974 6.82 Z M 95.697 16.036 C 94.54 16.036 93.834 15.555 93.359 15.211 L 93.352 18.899 L 90.048 19.592 L 90.046 4.38 L 92.956 4.38 L 93.128 5.185 C 93.585 4.764 94.422 4.163 95.717 4.163 C 98.038 4.163 100.224 6.224 100.224 10.018 C 100.224 14.16 98.061 16.036 95.697 16.036 Z M 94.928 7.05 C 94.168 7.05 93.693 7.323 93.349 7.695 L 93.369 12.538 C 93.689 12.881 94.152 13.157 94.928 13.157 C 96.149 13.157 96.968 11.845 96.968 10.09 C 96.968 8.385 96.137 7.05 94.928 7.05 Z M 85.378 4.38 L 88.696 4.38 L 88.696 15.803 L 85.378 15.803 Z M 85.378 0.733 L 88.696 0.037 L 88.696 2.691 L 85.378 3.387 Z M 81.951 8.059 L 81.951 15.803 L 78.647 15.803 L 78.647 4.38 L 81.505 4.38 L 81.713 5.343 C 82.485 3.941 84.031 4.225 84.471 4.381 L 84.471 7.376 C 84.05 7.242 82.732 7.047 81.951 8.059 Z M 74.976 11.795 C 74.976 13.716 77.061 13.118 77.485 12.951 L 77.485 15.604 C 77.044 15.842 76.245 16.036 75.165 16.036 C 73.204 16.036 71.732 14.611 71.732 12.682 L 71.746 2.226 L 74.973 1.55 L 74.976 4.38 L 77.486 4.38 L 77.486 7.159 L 74.976 7.159 Z M 70.966 12.351 C 70.966 14.697 69.072 16.036 66.324 16.036 C 65.184 16.036 63.939 15.818 62.71 15.296 L 62.71 12.185 C 63.819 12.779 65.233 13.225 66.327 13.225 C 67.065 13.225 67.595 13.03 67.595 12.428 C 67.595 10.873 62.571 11.459 62.571 7.85 C 62.571 5.543 64.358 4.163 67.039 4.163 C 68.134 4.163 69.228 4.329 70.323 4.759 L 70.323 7.828 C 69.318 7.293 68.042 6.99 67.036 6.99 C 66.344 6.99 65.913 7.187 65.913 7.696 C 65.913 9.162 70.966 8.465 70.966 12.351 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'linkedin',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"LinkedIn logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>LinkedIn</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 19.68 19.51 L 16.519 19.51 L 16.519 14.56 C 16.519 13.38 16.497 11.86 14.875 11.86 C 13.228 11.86 12.976 13.147 12.976 14.473 L 12.976 19.509 L 9.816 19.509 L 9.816 9.331 L 12.851 9.331 L 12.851 10.72 L 12.892 10.72 C 13.511 9.662 14.662 9.03 15.887 9.076 C 19.091 9.076 19.681 11.183 19.681 13.924 L 19.68 19.509 Z M 6.249 7.939 C 5.582 7.957 4.958 7.611 4.619 7.036 C 4.281 6.461 4.281 5.748 4.619 5.173 C 4.958 4.598 5.582 4.253 6.249 4.271 C 7.243 4.297 8.035 5.111 8.035 6.105 C 8.035 7.099 7.243 7.912 6.249 7.939 Z M 7.829 19.51 L 4.665 19.51 L 4.665 9.331 L 7.829 9.331 Z M 21.256 1.333 L 3.077 1.333 C 2.218 1.324 1.513 2.012 1.503 2.872 L 1.503 21.125 C 1.507 21.538 1.675 21.933 1.97 22.222 C 2.265 22.511 2.663 22.671 3.076 22.666 L 21.256 22.666 C 22.117 22.678 22.824 21.989 22.836 21.128 L 22.836 2.871 C 22.824 2.01 22.117 1.322 21.256 1.333\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'apple',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 814 1000\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Apple logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Apple</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M788.1 340.9c-5.8 4.5-108.2 62.2-108.2 190.5 0 148.4 130.3 200.9 134.2 202.2-.6 3.2-20.7 71.9-68.7 141.9-42.8 61.6-87.5 123.1-155.5 123.1s-85.5-39.5-164-39.5c-76.5 0-103.7 40.8-165.9 40.8s-105.6-57-155.5-127C46.7 790.7 0 663 0 541.8c0-194.4 126.4-297.5 250.8-297.5 66.1 0 121.2 43.4 162.7 43.4 39.5 0 101.1-46 176.3-46 28.5 0 130.9 2.6 198.3 99.2zm-234-181.5c31.1-36.9 53.1-88.1 53.1-139.3 0-7.1-.6-14.3-1.9-20.1-50.6 1.9-110.8 33.7-147.1 75.8-28.5 32.4-55.1 83.6-55.1 135.5 0 7.8 1.3 15.6 1.9 18.1 3.2.6 8.4 1.3 13.6 1.3 45.4 0 102.5-30.4 135.5-71.3z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'outlook',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 1831.085 1703.335\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Outlook logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Outlook</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0A2767\"\n\t\t\t\t\t\t\td=\"M1831.083 894.25a40.879 40.879 0 0 0-19.503-35.131h-.213l-.767-.426-634.492-375.585a86.175 86.175 0 0 0-8.517-5.067 85.17 85.17 0 0 0-78.098 0 86.37 86.37 0 0 0-8.517 5.067l-634.49 375.585-.766.426c-19.392 12.059-25.337 37.556-13.278 56.948a41.346 41.346 0 0 0 14.257 13.868l634.492 375.585a95.617 95.617 0 0 0 8.517 5.068 85.17 85.17 0 0 0 78.098 0 95.52 95.52 0 0 0 8.517-5.068l634.492-375.585a40.84 40.84 0 0 0 20.268-35.685z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0364B8\"\n\t\t\t\t\t\t\td=\"M520.453 643.477h416.38v381.674h-416.38V643.477zM1745.917 255.5V80.908c1-43.652-33.552-79.862-77.203-80.908H588.204C544.552 1.046 510 37.256 511 80.908V255.5l638.75 170.333L1745.917 255.5z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path fill=\"#0078D4\" d=\"M511 255.5h425.833v383.25H511V255.5z\" />\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#28A8EA\"\n\t\t\t\t\t\t\td=\"M1362.667 255.5H936.833v383.25L1362.667 1022h383.25V638.75l-383.25-383.25z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0078D4\"\n\t\t\t\t\t\t\td=\"M936.833 638.75h425.833V1022H936.833V638.75z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0364B8\"\n\t\t\t\t\t\t\td=\"M936.833 1022h425.833v383.25H936.833V1022z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#14447D\"\n\t\t\t\t\t\t\td=\"M520.453 1025.151h416.38v346.969h-416.38v-346.969z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0078D4\"\n\t\t\t\t\t\t\td=\"M1362.667 1022h383.25v383.25h-383.25V1022z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<linearGradient\n\t\t\t\t\t\t\tid=\"a\"\n\t\t\t\t\t\t\tx1=\"1128.458\"\n\t\t\t\t\t\t\tx2=\"1128.458\"\n\t\t\t\t\t\t\ty1=\"811.083\"\n\t\t\t\t\t\t\ty2=\"1.998\"\n\t\t\t\t\t\t\tgradientTransform=\"matrix(1 0 0 -1 0 1705.333)\"\n\t\t\t\t\t\t\tgradientUnits=\"userSpaceOnUse\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<stop offset=\"0\" stopColor=\"#35b8f1\" />\n\t\t\t\t\t\t\t<stop offset=\"1\" stopColor=\"#28a8ea\" />\n\t\t\t\t\t\t</linearGradient>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"url(#a)\"\n\t\t\t\t\t\t\td=\"m1811.58 927.593-.809.426-634.492 356.848c-2.768 1.703-5.578 3.321-8.517 4.769a88.437 88.437 0 0 1-34.407 8.517l-34.663-20.27a86.706 86.706 0 0 1-8.517-4.897L447.167 906.003h-.298l-21.036-11.753v722.384c.328 48.196 39.653 87.006 87.849 86.7h1230.914c.724 0 1.363-.341 2.129-.341a107.79 107.79 0 0 0 29.808-6.217 86.066 86.066 0 0 0 11.966-6.217c2.853-1.618 7.75-5.152 7.75-5.152a85.974 85.974 0 0 0 34.833-68.772V894.25a38.323 38.323 0 0 1-19.502 33.343z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#0A2767\"\n\t\t\t\t\t\t\td=\"M1797.017 891.397v44.287l-663.448 456.791-686.87-486.174a.426.426 0 0 0-.426-.426l-63.023-37.899v-31.938l25.976-.426 54.932 31.512 1.277.426 4.684 2.981s645.563 368.346 647.267 369.197l24.698 14.478c2.129-.852 4.258-1.703 6.813-2.555 1.278-.852 640.879-360.681 640.879-360.681l7.241.427z\"\n\t\t\t\t\t\t\topacity=\".5\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#1490DF\"\n\t\t\t\t\t\t\td=\"m1811.58 927.593-.809.468-634.492 356.848c-2.768 1.703-5.578 3.321-8.517 4.769a88.96 88.96 0 0 1-78.098 0 96.578 96.578 0 0 1-8.517-4.769l-634.49-356.848-.766-.468a38.326 38.326 0 0 1-20.057-33.343v722.384c.305 48.188 39.616 87.004 87.803 86.7H1743.277c48.188.307 87.5-38.509 87.807-86.696V894.25a38.33 38.33 0 0 1-19.504 33.343z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m1185.52 1279.629-9.496 5.323a92.806 92.806 0 0 1-8.517 4.812 88.173 88.173 0 0 1-33.47 8.857l241.405 285.479 421.107 101.476a86.785 86.785 0 0 0 26.7-33.343l-637.729-372.604z\"\n\t\t\t\t\t\t\topacity=\".1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m1228.529 1255.442-52.505 29.51a92.806 92.806 0 0 1-8.517 4.812 88.173 88.173 0 0 1-33.47 8.857l113.101 311.838 549.538 74.989a86.104 86.104 0 0 0 34.407-68.815v-9.326l-602.554-351.865z\"\n\t\t\t\t\t\t\topacity=\".05\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#28A8EA\"\n\t\t\t\t\t\t\td=\"M514.833 1703.333h1228.316a88.316 88.316 0 0 0 52.59-17.033l-697.089-408.331a86.706 86.706 0 0 1-8.517-4.897L447.125 906.088h-.298l-20.993-11.838v719.914c-.048 49.2 39.798 89.122 88.999 89.169-.001 0-.001 0 0 0z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M1022 418.722v908.303c-.076 31.846-19.44 60.471-48.971 72.392a73.382 73.382 0 0 1-28.957 5.962H425.833V383.25H511v-42.583h433.073c43.019.163 77.834 35.035 77.927 78.055z\"\n\t\t\t\t\t\t\topacity=\".1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M979.417 461.305v908.302a69.36 69.36 0 0 1-6.388 29.808c-11.826 29.149-40.083 48.273-71.54 48.417H425.833V383.25h475.656a71.493 71.493 0 0 1 35.344 8.943c26.104 13.151 42.574 39.883 42.584 69.112z\"\n\t\t\t\t\t\t\topacity=\".2\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M979.417 461.305v823.136c-.208 43-34.928 77.853-77.927 78.225H425.833V383.25h475.656a71.493 71.493 0 0 1 35.344 8.943c26.104 13.151 42.574 39.883 42.584 69.112z\"\n\t\t\t\t\t\t\topacity=\".2\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M936.833 461.305v823.136c-.046 43.067-34.861 78.015-77.927 78.225H425.833V383.25h433.072c43.062.023 77.951 34.951 77.927 78.013a.589.589 0 0 1 .001.042z\"\n\t\t\t\t\t\t\topacity=\".2\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<linearGradient\n\t\t\t\t\t\t\tid=\"b\"\n\t\t\t\t\t\t\tx1=\"162.747\"\n\t\t\t\t\t\t\tx2=\"774.086\"\n\t\t\t\t\t\t\ty1=\"1383.074\"\n\t\t\t\t\t\t\ty2=\"324.259\"\n\t\t\t\t\t\t\tgradientTransform=\"matrix(1 0 0 -1 0 1705.333)\"\n\t\t\t\t\t\t\tgradientUnits=\"userSpaceOnUse\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<stop offset=\"0\" stopColor=\"#1784d9\" />\n\t\t\t\t\t\t\t<stop offset=\".5\" stopColor=\"#107ad5\" />\n\t\t\t\t\t\t\t<stop offset=\"1\" stopColor=\"#0a63c9\" />\n\t\t\t\t\t\t</linearGradient>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"url(#b)\"\n\t\t\t\t\t\t\td=\"M78.055 383.25h780.723c43.109 0 78.055 34.947 78.055 78.055v780.723c0 43.109-34.946 78.055-78.055 78.055H78.055c-43.109 0-78.055-34.947-78.055-78.055V461.305c0-43.108 34.947-78.055 78.055-78.055z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#FFF\"\n\t\t\t\t\t\t\td=\"M243.96 710.631a227.05 227.05 0 0 1 89.17-98.495 269.56 269.56 0 0 1 141.675-35.515 250.91 250.91 0 0 1 131.114 33.683 225.014 225.014 0 0 1 86.742 94.109 303.751 303.751 0 0 1 30.405 138.396 320.567 320.567 0 0 1-31.299 144.783 230.37 230.37 0 0 1-89.425 97.388 260.864 260.864 0 0 1-136.011 34.578 256.355 256.355 0 0 1-134.01-34.067 228.497 228.497 0 0 1-87.892-94.28 296.507 296.507 0 0 1-30.745-136.735 329.29 329.29 0 0 1 30.276-143.845zm95.046 231.227a147.386 147.386 0 0 0 50.163 64.812 131.028 131.028 0 0 0 78.353 23.591 137.244 137.244 0 0 0 83.634-24.358 141.156 141.156 0 0 0 48.715-64.812 251.594 251.594 0 0 0 15.543-90.404 275.198 275.198 0 0 0-14.649-91.554 144.775 144.775 0 0 0-47.182-67.537 129.58 129.58 0 0 0-82.91-25.55 135.202 135.202 0 0 0-80.184 23.804 148.626 148.626 0 0 0-51.1 65.365 259.759 259.759 0 0 0-.341 186.728l-.042-.085z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill=\"#50D9FF\"\n\t\t\t\t\t\t\td=\"M1362.667 255.5h383.25v383.25h-383.25V255.5z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'outlook-com',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 103.173 104.313\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Outlook.com logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Outlook.com</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M64.567 22.116v20.405l7.13 4.49c.188.054.596.058.784 0l30.688-20.69c0-2.45-2.284-4.205-3.573-4.205h-35.03z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"m64.567 50.133 6.507 4.47c.917.674 2.022 0 2.022 0-1.101.674 30.077-20.036 30.077-20.036V72.07c0 4.083-2.613 5.795-5.551 5.795h-33.06v-27.73z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M11.321 20.958c-.566 0-1.017.266-1.35.797-.333.531-.5 1.234-.5 2.109 0 .888.167 1.59.5 2.106.333.517.77.774 1.31.774.557 0 .999-.251 1.325-.753.326-.502.49-1.199.49-2.09 0-.929-.158-1.652-.475-2.169-.317-.516-.75-.774-1.3-.774z\"\n\t\t\t\t\t\t\ttransform=\"translate(-13.481 -41.384) scale(3.91787)\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M3.441 13.563v20.375l15.5 3.25V10.563l-15.5 3zm10.372 13.632c-.655.862-1.509 1.294-2.563 1.294-1.027 0-1.863-.418-2.51-1.253-.646-.836-.97-1.924-.97-3.266 0-1.417.328-2.563.985-3.438s1.527-1.313 2.61-1.313c1.023 0 1.851.418 2.482 1.256.632.838.948 1.942.948 3.313.001 1.409-.327 2.545-.982 3.407z\"\n\t\t\t\t\t\t\ttransform=\"translate(-13.481 -41.384) scale(3.91787)\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'google',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Google logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Google</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t\td=\"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t\td=\"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t\td=\"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t\td=\"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path fill=\"none\" d=\"M1 1h22v22H1z\" />\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'yahoo',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tfillRule=\"evenodd\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Yahoo logo\"\n\t\t\t\t\t\timageRendering=\"optimizeQuality\"\n\t\t\t\t\t\tshapeRendering=\"geometricPrecision\"\n\t\t\t\t\t\ttextRendering=\"geometricPrecision\"\n\t\t\t\t\t\tviewBox=\"0 0 3386.34 3010.5\"\n\t\t\t\t\t\tclipRule=\"evenodd\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Yahoo</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t\tfillRule=\"nonzero\"\n\t\t\t\t\t\t\td=\"M0 732.88h645.84l376.07 962.1 380.96-962.1h628.76l-946.8 2277.62H451.98l259.19-603.53L.02 732.88zm2763.84 768.75h-704.26L2684.65 0l701.69.03-622.5 1501.6zm-519.78 143.72c216.09 0 391.25 175.17 391.25 391.22 0 216.06-175.16 391.23-391.25 391.23-216.06 0-391.19-175.17-391.19-391.23 0-216.05 175.16-391.22 391.19-391.22z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'pdf',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox={'0,0,31,39'}\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"PDF logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>PDF</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 1 36 L 1 3 C 1 1.895 1.895 1 3 1 L 17.384 1 C 19.041 1 20.384 2.343 20.384 4 L 20.384 8.361 C 20.384 9.466 21.279 10.361 22.384 10.361 L 27 10.361 C 28.657 10.361 30 11.704 30 13.361 L 30 36 C 30 37.105 29.105 38 28 38 L 3 38 C 1.895 38 1 37.105 1 36 Z\"\n\t\t\t\t\t\t\tfill={'rgb(233, 233, 224)'}\n\t\t\t\t\t\t\tstroke={'rgb(233, 233, 224)'}\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 20 9 L 20 2.5 L 28.5 11 L 22 11 C 20.895 11 20 10.105 20 9 Z\"\n\t\t\t\t\t\t\tfill={'rgb(217, 215, 202)'}\n\t\t\t\t\t\t\tstroke={'rgb(217, 215, 202)'}\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 14.389 11.988 C 14.389 11.988 15.632 12.075 15.712 14.204 C 15.759 15.391 15.506 17.005 13.21 22.133 C 10.906 27.26 8.966 30.347 7.794 30.845 C 6.622 31.344 6.171 30.299 6.171 30.299 C 6.171 30.299 5.482 29.405 6.828 28.02 C 7.66 27.173 9.338 25.488 14.833 24.404 C 20.328 23.328 23.17 24.024 24.255 24.697 C 25.339 25.369 24.912 26.39 24.912 26.39 C 24.912 26.39 24.5 27.522 22.782 27.063 C 21.729 26.778 20.993 26.366 17.461 22.489 C 13.392 18.018 13.004 16.024 13.059 13.753 C 13.099 11.972 14.381 11.98 14.381 11.98 Z\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tstrokeWidth={1.5}\n\t\t\t\t\t\t\tstroke={'rgb(204, 75, 75)'}\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'impossible foods',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 875 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Impossible Foods logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Impossible Foods</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 57.965 5.104 L 97.673 5.104 L 112.462 112.733 L 127.524 5.104 L 164.494 5.104 L 164.494 208.862 L 135.464 208.862 L 135.464 77.131 L 116.842 208.862 L 104.518 208.862 L 85.623 77.131 L 85.623 208.862 L 57.965 208.862 Z M 209.699 102.301 L 217.634 102.301 C 226.941 102.301 228.319 95.712 228.319 87.49 L 228.319 46.737 C 228.319 38.803 226.681 32.77 217.634 32.77 L 209.699 32.77 Z M 209.699 131.58 L 209.699 208.862 L 178.756 208.862 L 178.756 5.117 L 227.769 5.117 C 249.667 5.117 259.531 14.431 259.531 38.801 L 259.531 94.329 C 259.531 118.444 248.855 131.58 227.769 131.58 Z M 321.151 48.381 C 321.151 37.717 317.58 32.768 310.477 32.768 C 302.524 32.768 299.523 37.978 299.523 48.381 L 299.523 165.612 C 299.523 174.363 301.98 181.2 310.743 181.2 C 318.971 181.2 321.151 174.365 321.151 165.612 Z M 352.629 163.394 C 352.629 191.883 343.054 211.328 313.218 211.328 L 308.002 211.328 C 278.431 211.328 268.027 191.883 268.027 163.394 L 268.027 50.026 C 268.027 21.818 278.704 3.188 307.725 3.188 L 312.934 3.188 C 343.056 3.188 352.631 21.818 352.631 49.757 L 352.631 163.394 Z M 406.307 3.199 C 431.779 3.199 441.636 14.431 441.636 38.524 L 441.636 71.937 L 411.783 71.937 L 411.783 42.639 C 411.783 35.791 410.422 30.586 403.022 30.586 C 395.625 30.586 393.993 35.239 393.993 44.828 L 393.993 48.644 C 393.993 60.151 396.175 66.452 406.587 79.894 L 426.301 105.335 C 440.265 123.429 444.653 133.835 444.653 156.832 L 444.653 163.394 C 444.653 193.251 431.779 211.046 404.669 211.046 L 398.634 211.046 C 373.995 211.046 360.853 197.632 360.853 172.436 L 360.853 131.629 L 391.514 131.629 L 391.514 167.24 C 391.514 176.562 394.535 181.486 401.655 181.486 C 409.053 181.486 411.785 176.562 411.785 163.946 L 411.785 159.304 C 411.785 144.781 410.424 139.569 399.189 125.066 L 379.475 99.874 C 366.33 82.885 362.502 69.748 362.502 49.482 L 362.502 42.903 C 362.502 15.805 376.196 3.201 400.561 3.201 L 406.307 3.201 Z M 497.772 3.199 C 523.237 3.199 533.081 14.431 533.081 38.524 L 533.081 71.937 L 503.248 71.937 L 503.248 42.639 C 503.248 35.791 501.878 30.586 494.485 30.586 C 487.087 30.586 485.438 35.239 485.438 44.828 L 485.438 48.644 C 485.438 60.151 487.637 66.452 498.047 79.894 L 517.761 105.335 C 531.74 123.429 536.1 133.835 536.1 156.832 L 536.1 163.394 C 536.1 193.251 523.237 211.046 496.114 211.046 L 490.097 211.046 C 465.453 211.046 452.313 197.632 452.313 172.436 L 452.313 131.629 L 482.974 131.629 L 482.974 167.24 C 482.974 176.562 485.997 181.486 493.115 181.486 C 500.509 181.486 503.25 176.562 503.25 163.946 L 503.25 159.304 C 503.25 144.781 501.88 139.569 490.649 125.066 L 470.937 99.874 C 457.797 82.885 453.944 69.748 453.944 49.482 L 453.944 42.903 C 453.944 15.805 467.656 3.201 492.01 3.201 L 497.772 3.201 Z M 623.785 116.044 L 623.785 180.11 L 633.092 180.11 C 642.94 180.11 645.139 175.446 645.139 166.421 L 645.139 129.178 C 645.139 120.688 642.94 116.044 633.092 116.044 Z M 623.785 32.783 L 623.785 85.624 L 633.092 85.624 C 641.308 85.624 643.759 79.894 643.759 71.386 L 643.759 45.655 C 643.759 37.429 641.577 32.785 633.092 32.785 L 623.785 32.785 Z M 592.833 5.117 L 641.577 5.117 C 667.32 5.117 674.165 18.542 674.165 38.242 L 674.165 69.477 C 674.165 86.445 666.778 94.665 658.826 97.685 C 667.038 100.407 676.624 107.257 676.624 127.529 L 676.624 171.615 C 676.624 193.248 667.038 208.86 643.757 208.86 L 592.831 208.86 L 592.831 5.117 Z M 720.095 5.117 L 720.095 177.386 L 744.537 177.386 L 744.537 208.862 L 689.156 208.862 L 689.156 5.117 Z M 820.744 5.117 L 820.744 34.697 L 785.531 34.697 L 785.531 88.094 L 812.963 88.094 L 812.963 119.041 L 785.531 119.041 L 785.531 177.91 L 821.664 177.91 L 821.664 208.862 L 754.607 208.862 L 754.607 5.117 Z M 546.924 5.117 L 577.863 5.117 L 577.863 208.862 L 546.924 208.862 Z M 12.996 5.117 L 43.928 5.117 L 43.928 208.862 L 12.996 208.862 Z M 844.76 5.117 L 844.76 9.413 L 840.982 9.413 L 840.982 34.697 L 836.53 34.697 L 836.53 9.413 L 832.753 9.413 L 832.753 5.117 Z M 846.026 5.117 L 851.79 5.117 L 853.938 20.743 L 856.122 5.117 L 861.49 5.117 L 861.49 34.695 L 857.276 34.695 L 857.276 15.575 L 854.574 34.697 L 852.785 34.697 L 850.042 15.575 L 850.042 34.697 L 846.026 34.697 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'gong',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 614 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Gong logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Gong</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 193.768 92.092 L 135.438 92.092 C 132.061 92.092 129.605 95.47 130.731 98.644 L 144.75 134.989 C 145.364 136.627 144.136 138.368 142.397 138.265 L 124.488 137.139 C 123.67 137.037 122.851 137.446 122.442 138.163 L 108.524 157.923 C 107.808 159.049 106.273 159.458 105.147 158.639 L 84.476 144.613 C 83.657 144.101 82.532 144.101 81.815 144.613 L 53.162 163.963 C 51.32 165.192 48.864 163.451 49.478 161.301 L 57.46 132.839 C 57.767 131.611 57.255 130.485 56.027 129.973 L 40.882 123.83 C 39.347 123.215 38.938 121.373 39.961 120.144 L 53.264 103.558 C 53.878 102.739 53.981 101.613 53.367 100.692 L 42.11 84.413 C 41.087 82.877 42.008 80.83 43.952 80.727 L 61.451 79.396 C 62.679 79.294 63.702 78.168 63.702 76.837 L 62.27 52.368 C 62.167 50.627 63.907 49.399 65.647 50.013 L 87.341 59.023 C 88.262 59.432 89.388 59.227 90.002 58.408 L 104.943 41.72 C 106.171 40.389 108.32 40.799 109.036 42.335 L 118.041 65.473 C 119.269 68.339 122.851 69.363 125.307 67.418 L 160.407 41.311 C 164.398 38.342 161.84 31.994 156.928 32.711 L 133.801 35.782 C 132.675 35.987 131.652 35.27 131.242 34.246 L 119.065 3.02 C 117.734 -0.256 113.539 -1.075 111.083 1.587 L 84.681 30.254 C 83.964 30.97 82.941 31.175 82.02 30.765 L 47.227 16.125 C 44.157 14.896 40.677 17.046 40.575 20.425 L 39.347 56.361 C 39.245 57.589 38.324 58.613 37.096 58.613 L 5.372 60.661 C 1.688 60.865 -0.358 65.063 1.688 68.135 L 22.769 99.258 C 23.383 100.18 23.281 101.306 22.564 102.227 L 1.177 126.799 C -0.972 129.256 -0.051 133.044 2.916 134.375 L 27.476 145.023 C 28.602 145.535 29.114 146.661 28.807 147.787 L 13.047 209.215 C 11.922 213.618 16.834 216.894 20.518 214.335 L 79.564 171.949 C 80.383 171.437 81.508 171.335 82.327 171.949 L 109.241 190.889 C 111.492 192.527 114.46 191.811 115.995 189.661 L 132.777 163.861 C 133.289 163.042 134.21 162.632 135.029 162.837 L 175.246 167.649 C 178.52 168.161 181.795 165.396 180.567 162.427 L 163.784 119.12 C 163.273 117.892 163.784 116.663 165.217 115.946 L 195.815 101.511 C 200.522 99.054 198.885 92.092 193.768 92.092 Z M 612.209 92.092 L 566.875 92.092 C 565.954 92.092 565.238 92.808 565.238 93.73 L 565.238 113.796 C 565.238 114.718 565.954 115.435 566.875 115.435 L 586.216 115.435 C 587.137 115.435 587.854 116.151 587.854 117.073 C 587.649 127.413 585.602 145.944 566.773 145.944 C 551.423 145.944 545.385 127.413 545.385 105.811 C 545.385 80.113 551.73 64.244 565.954 64.244 C 576.29 64.244 579.667 72.946 580.588 76.223 C 580.793 76.939 581.509 77.451 582.225 77.451 L 605.762 77.451 C 606.683 77.451 607.502 76.632 607.399 75.711 C 606.478 62.811 595.426 40.287 566.364 40.287 C 545.999 40.287 526.965 52.675 520.928 83.287 L 520.928 43.87 C 520.928 43.358 520.518 43.051 520.109 43.051 L 495.14 43.051 C 494.628 43.051 494.321 43.461 494.321 43.87 L 494.321 114.206 C 494.321 115.127 493.093 115.332 492.684 114.513 L 459.937 43.461 C 459.732 43.154 459.528 42.949 459.221 42.949 L 437.117 42.949 C 436.605 42.949 436.298 43.358 436.298 43.768 L 436.298 83.185 C 428.111 58.204 405.905 40.185 377.047 40.185 C 344.812 40.185 320.968 62.504 315.442 92.092 L 270.313 92.092 C 269.802 92.092 269.495 92.501 269.495 92.911 L 269.495 114.615 C 269.495 115.127 269.904 115.435 270.313 115.435 L 291.394 115.435 C 291.906 115.435 292.213 115.844 292.213 116.254 C 292.11 126.287 290.371 145.944 271.132 145.944 C 255.782 145.944 249.744 127.413 249.744 105.811 C 249.744 80.113 256.089 64.244 270.313 64.244 C 281.263 64.244 284.435 74.175 285.152 76.837 C 285.254 77.246 285.561 77.451 285.97 77.451 L 311.247 77.451 C 311.758 77.451 312.168 77.042 312.065 76.53 C 311.554 63.835 300.706 40.287 270.927 40.287 C 246.265 40.287 223.445 58.511 223.445 105.606 C 223.445 137.958 236.134 170.004 271.337 170.004 C 297.329 170.004 314.01 149.835 317.694 125.57 C 325.573 151.37 347.984 170.004 377.456 170.004 C 406.928 170.004 428.521 151.985 436.707 126.799 L 436.707 166.625 C 436.707 167.137 437.117 167.444 437.526 167.444 L 462.495 167.444 C 463.007 167.444 463.314 167.035 463.314 166.625 L 463.314 97.415 C 463.314 96.494 464.542 96.289 464.951 97.108 L 497.698 167.035 C 497.903 167.342 498.107 167.546 498.414 167.546 L 520.518 167.546 C 521.03 167.546 521.337 167.137 521.337 166.727 L 521.337 127.208 C 526.147 150.961 539.859 170.208 567.08 170.208 C 596.757 170.208 614.256 144.101 614.256 115.537 L 614.256 94.139 C 613.846 92.808 613.13 92.092 612.209 92.092 Z M 377.252 144.101 C 356.274 144.101 341.742 128.027 341.742 105.196 C 341.742 82.365 356.274 66.292 377.252 66.292 C 398.23 66.292 412.762 82.365 412.762 105.196 C 412.762 128.027 398.128 144.101 377.252 144.101 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'zoom',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 956 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Zoom logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Zoom</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 778.375 64.404 C 782.008 70.711 783.251 77.878 783.633 85.904 L 784.111 96.607 L 784.111 171.713 L 784.685 182.511 C 785.736 200.093 798.738 213.089 816.424 214.14 L 827.131 214.713 L 827.131 96.702 L 827.705 86 C 828.183 78.069 829.33 70.711 833.058 64.404 C 845.008 43.956 871.203 36.98 891.757 48.829 C 898.258 52.556 903.611 58.002 907.435 64.5 C 911.068 70.807 912.215 78.069 912.693 86 L 913.267 96.702 L 913.267 171.904 L 913.84 182.702 C 914.988 200.38 927.798 213.376 945.58 214.331 L 956.287 214.904 L 956.287 85.904 C 956 38.509 917.569 0 870.056 0 C 845.391 0 821.873 10.607 805.621 29.049 C 789.369 10.607 765.852 0 741.187 0 C 723.31 0 706.771 5.447 693.1 14.716 C 684.687 5.447 665.95 0 655.242 0 L 655.242 214.713 L 665.95 214.14 C 683.922 212.993 696.924 200.284 697.593 182.511 L 698.167 171.713 L 698.167 96.607 L 698.74 85.904 C 699.218 77.782 700.366 70.711 703.998 64.309 C 711.742 51.027 725.891 42.904 741.187 42.904 C 756.483 43 770.727 51.122 778.375 64.404 Z M 42.924 214.236 L 53.632 214.713 L 214.718 214.713 L 214.144 204.011 C 212.71 186.333 200.186 173.433 182.5 172.287 L 171.793 171.713 L 75.237 171.713 L 204.106 42.904 L 203.532 32.202 C 202.672 14.429 189.67 1.529 171.889 0.573 L 161.182 0.096 L 0 0 L 0.574 10.702 C 1.912 28.284 14.627 41.376 32.217 42.427 L 43.02 43 L 139.576 43 L 10.707 171.809 L 11.281 182.511 C 12.332 200.284 25.143 213.089 42.924 214.236 Z M 613.083 31.438 C 655.051 73.387 655.051 141.327 613.083 183.276 C 571.114 225.224 503.143 225.224 461.174 183.276 C 419.206 141.327 419.206 73.387 461.174 31.438 C 481.25 11.276 508.496 0 536.985 0 C 565.57 0 592.911 11.276 613.083 31.438 Z M 491.575 61.824 C 466.432 86.956 466.432 127.758 491.575 152.889 C 516.718 178.02 557.539 178.02 582.682 152.889 C 607.825 127.758 607.825 86.956 582.682 61.824 C 557.444 36.693 516.718 36.693 491.575 61.824 Z M 311.56 0 C 340.049 0 367.295 11.276 387.467 31.438 C 429.435 73.387 429.435 141.327 387.467 183.276 C 345.498 225.224 277.527 225.224 235.558 183.276 C 193.59 141.327 193.59 73.387 235.558 31.438 C 255.634 11.276 282.976 0 311.465 0 Z M 265.959 61.92 C 240.816 87.051 240.816 127.853 265.959 152.984 C 291.102 178.116 331.923 178.116 357.066 152.984 C 382.209 127.758 382.209 86.956 357.066 61.824 C 331.923 36.693 291.102 36.693 265.959 61.92 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'seattle seahawks',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 546 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Seattle Seahawks logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Seattle Seahawks</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 207.834 172.721 C 206.368 172.794 205.403 172.892 204.426 172.892 L 43.998 172.892 C 34.287 172.892 24.723 171.902 15.586 168.335 C 1.906 162.997 -1.759 153.493 0.696 139.811 C 2.59 129.281 8.245 120.376 13.045 111.104 C 14.865 107.61 16.172 102.98 19.116 101.184 C 21.95 99.45 26.604 100.635 30.464 100.622 C 75.096 100.622 119.729 100.684 164.362 100.61 C 175.38 100.598 185.09 103.835 193.58 110.908 C 198.417 114.939 203.425 118.775 208.359 122.697 C 210.668 124.529 212.879 126.496 215.285 128.194 C 217.252 129.586 217.533 130.857 216.238 132.995 C 212.769 138.724 209.666 144.685 206.173 150.402 C 201.8 157.549 201.837 164.377 206.93 171.096 C 207.175 171.414 207.321 171.792 207.834 172.721 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 27.691 83.496 C 31.783 75.702 35.533 68.531 39.319 61.373 C 49.616 41.888 59.926 22.416 70.223 2.932 C 72.177 -0.757 72.189 -0.782 75.255 1.796 C 83.048 8.331 92.136 11.324 102.164 11.813 C 104.4 11.923 106.635 11.923 108.87 11.923 L 322.372 11.923 C 337.531 11.923 352.665 12.094 367.677 14.549 C 387.892 17.847 406.251 24.982 420.725 40.141 C 422.619 42.133 424.805 42.768 427.395 43.244 C 442.065 45.944 456.783 48.448 471.294 51.82 C 485.329 55.082 498.985 59.736 511.982 66.137 C 521.119 70.632 529.339 76.337 535.679 84.4 C 547.539 99.462 549.127 116.222 542.287 133.605 C 532.332 158.905 518.468 181.883 498.985 201.098 C 494.527 205.496 489.36 209.185 484.486 213.155 C 483.656 213.839 482.618 214.267 481.25 215.073 C 482.447 210.578 483.644 206.644 484.523 202.625 C 486.575 193.366 483.167 185.718 474.409 182.2 C 467.827 179.564 460.979 177.643 453.986 176.471 C 434.174 173.173 414.142 172.831 394.097 172.855 C 343.162 172.928 292.226 172.977 241.29 172.721 C 236.405 172.696 231.238 171.157 226.706 169.178 C 219.023 165.819 216.873 159.063 221.136 151.795 C 226.12 143.305 231.8 135.23 237.199 126.984 C 239.727 123.124 239.764 123.124 236.246 120.253 C 225.069 111.116 213.893 101.991 202.728 92.853 C 201.959 92.23 201.25 91.522 199.846 90.239 C 201.629 88.773 203.241 87.576 204.732 86.22 C 217.594 74.468 230.908 63.364 246.592 55.448 C 263.411 46.958 281.184 45.028 299.665 47.324 C 318.182 49.633 334.917 57.219 351.834 64.402 C 362.412 68.886 373.198 72.807 384.863 73.344 C 391.263 73.637 397.481 73.014 402.99 69.374 C 404.37 68.458 405.542 67.236 407.191 65.819 C 402.33 66.381 398.152 67.151 393.963 67.297 C 382.237 67.713 371.683 63.315 361.288 58.649 C 346.936 52.211 332.584 45.797 317.425 41.424 C 298.834 36.074 279.999 33.691 260.822 37.527 C 245.163 40.655 231.152 47.764 217.899 56.45 C 207.627 63.181 197.562 70.241 187.13 76.704 C 179.13 81.663 170.188 83.716 160.685 83.703 C 117.677 83.606 74.681 83.667 31.673 83.655 C 30.586 83.655 29.486 83.545 27.691 83.459 Z M 390.311 85.658 C 384.228 85.658 373 87.25 354.5 80.5 C 336 73.75 325.875 68 316 64 C 305.297 61.197 305 61.202 298.223 61.202 C 291.375 61.202 285.862 62.619 280.268 63.84 C 267.552 66.638 256.767 73.124 247.386 82.054 C 246.213 83.166 245.981 84.143 247.19 85.389 C 259.735 98.216 274.441 106.877 292.605 108.538 C 312.393 110.346 332.205 110.249 351.993 108.538 C 360.238 107.818 368.251 105.985 375.482 101.673 C 381.772 97.911 386.744 92.902 390.311 85.658 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'envu',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 961 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Envu logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Envu</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 456.105 216.545 L 417.598 216.545 L 417.598 108.273 C 417.598 69.808 386.282 38.498 347.808 38.498 C 309.334 38.498 278.018 69.808 278.018 108.273 L 278.018 216.545 L 239.511 216.545 L 239.511 108.273 C 239.511 48.476 287.998 0 347.808 0 C 407.619 0 456.105 48.476 456.105 108.273 Z M 687.821 108.273 C 687.821 168.07 736.307 216.545 796.118 216.545 C 855.928 216.545 904.415 168.07 904.415 108.273 L 904.415 0 L 865.908 0 L 865.908 108.273 C 865.908 146.737 834.592 178.047 796.118 178.047 C 757.644 178.047 726.328 146.738 726.328 108.273 L 726.328 0 L 687.821 0 Z M 626.33 0 L 556.641 136.491 L 486.951 0 L 443.505 0 L 556.641 216.579 L 669.777 0 Z M 22.983 174.956 C 42.808 200.286 73.654 216.545 108.297 216.545 C 142.94 216.545 173.786 200.286 193.611 174.956 Z M 216.628 108.273 C 216.628 118.015 215.318 127.488 212.898 136.458 L 3.73 136.458 C 1.31 127.455 0 118.015 0 108.273 C 0 48.476 48.487 0 108.297 0 C 168.108 0 216.595 48.476 216.595 108.273 Z M 177.348 97.959 C 172.342 64.366 143.31 38.465 108.331 38.465 C 73.352 38.465 44.287 64.332 39.314 97.959 Z M 957.337 0 L 951.491 11.489 L 945.611 0 L 941.948 0 L 941.948 18.241 L 945.207 18.241 L 945.207 6.181 L 951.491 18.241 L 957.741 6.181 L 957.741 18.241 L 961 18.241 L 961 0 Z M 922.493 0 L 922.493 3.225 L 929.079 3.225 L 929.079 18.241 L 932.304 18.241 L 932.304 3.225 L 938.924 3.225 L 938.924 0 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'smile',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 641 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Smile logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Smile</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 44.848 155.337 C 3.764 144.265 3.442 123.41 3.764 110.725 C 4.087 90.515 28.501 71.702 57.217 71.702 C 84.535 71.702 113.358 83.742 113.681 117.175 L 75.07 117.175 C 74.747 106.855 65.928 105.135 59.475 105.135 C 50.656 105.135 44.741 109.22 45.064 115.455 C 45.386 119.54 48.828 123.732 57.109 125.775 L 80.34 131.902 C 113.573 141.04 117.66 163.077 117.66 171.892 C 117.66 200.917 87.116 214.785 58.292 214.785 C 30.329 214.785 1.291 198.015 0.968 167.485 L 39.148 167.485 C 39.471 175.44 48.29 183.395 59.368 183.395 C 68.51 183.072 76.146 178.987 76.146 171.892 C 76.146 165.98 72.596 162.755 62.594 160.175 Z M 262.853 139.212 L 262.853 211.775 L 221.984 211.775 L 221.984 137.707 C 221.661 120.4 211.121 111.262 199.398 111.262 C 187.03 111.262 175.63 118.357 175.63 139.212 L 175.63 211.775 L 134.761 211.775 L 134.761 74.605 L 175.63 74.605 L 175.63 94.6 C 182.083 80.195 196.817 72.025 211.444 72.025 C 233.169 72.025 247.904 80.302 255.54 96.105 C 268.768 74.605 286.944 71.702 296.624 71.702 C 329.212 71.702 349.539 92.557 349.539 133.945 L 349.539 211.775 L 308.992 211.775 L 308.992 138.675 C 308.992 120.722 298.452 111.37 286.407 111.37 C 273.501 111.37 262.853 119.325 262.853 139.32 M 394.28 0 C 408.153 0 419.231 10.32 419.231 23.757 C 419.231 37.195 408.046 47.838 394.28 47.838 C 380.513 47.838 368.683 37.302 368.683 23.757 C 368.683 10.212 380.406 0 394.28 0 M 414.499 211.775 L 373.953 211.775 L 373.953 74.605 L 414.499 74.605 Z M 440.419 0 L 481.288 0 L 481.288 211.775 L 440.419 211.775 Z M 633.149 186.835 C 619.382 207.367 593.785 214.785 570.555 214.785 C 531.191 214.785 498.818 185.975 498.818 142.76 C 498.818 99.545 531.191 71.702 570.555 71.702 C 609.595 71.702 640.785 100.835 640.785 143.942 C 640.785 147.49 640.462 153.08 640.247 156.52 L 539.688 156.52 C 541.731 172.43 559.047 179.417 573.458 179.417 C 584.644 179.417 596.689 175.332 603.465 166.517 Z M 599.701 131.042 C 597.657 114.272 582.385 107.607 570.877 107.607 C 559.369 107.607 543.882 113.842 540.333 131.042 Z M 617.339 11.933 L 621.426 24.725 L 625.405 11.933 L 634.655 11.933 L 634.655 34.293 L 628.739 34.293 L 628.739 18.06 L 623.899 34.185 L 618.845 34.185 L 614.005 18.06 L 614.005 34.185 L 608.09 34.185 L 608.09 11.933 Z M 586.472 17.308 L 586.472 11.933 L 606.154 11.933 L 606.154 17.308 L 599.486 17.308 L 599.486 34.293 L 593.033 34.293 L 593.033 17.2 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'drift',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 942 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Drift logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Drift</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 413.067 73.288 C 413.067 33.898 387.005 0.785 338.649 0.785 L 228.592 0.785 L 228.592 212.646 L 290.921 212.646 L 290.921 147.675 L 314.471 147.675 L 341.789 212.646 L 413.067 212.646 L 375.544 137.631 C 392.029 129.157 413.067 110.168 413.067 73.288 Z M 329.072 98.712 L 290.921 98.712 L 290.921 56.653 L 329.072 56.653 C 339.905 56.653 349.482 63.088 349.482 77.682 C 349.482 92.277 339.277 98.712 329.072 98.712 Z M 588.122 212.646 L 651.079 212.646 L 651.079 140.77 L 743.395 140.77 L 743.395 84.745 L 651.079 84.745 L 651.079 56.81 L 745.907 56.81 L 745.907 0.785 L 588.122 0.785 Z M 92.944 0.785 L 0 0.785 L 0 212.646 L 93.572 212.646 C 158.57 212.646 207.554 174.511 207.554 106.401 C 206.926 38.92 158.413 0.785 92.944 0.785 Z M 92.944 156.62 L 62.957 156.62 L 62.957 56.81 L 93.572 56.81 C 127.327 56.81 143.184 77.839 143.184 106.401 C 143.184 133.08 124.815 156.62 92.944 156.62 Z M 768.201 0.785 L 768.201 56.81 L 823.622 56.81 L 823.622 212.646 L 886.579 212.646 L 886.579 56.81 L 942 56.81 L 942 0.785 Z M 567.712 0.785 L 570.224 0.785 C 573.364 1.412 574.62 4.551 573.364 6.434 C 572.736 7.062 572.736 7.69 572.108 8.318 L 519.356 68.737 C 519.356 68.737 518.1 69.993 518.1 70.62 C 516.216 73.131 518.1 76.27 521.868 77.055 L 544.162 77.055 C 547.93 77.682 549.186 80.821 547.93 83.489 C 547.302 84.117 546.674 85.372 546.674 85.372 L 506.011 128.058 C 505.383 128.686 505.383 129.314 504.755 129.942 C 502.871 132.453 504.755 135.591 508.523 135.591 L 522.496 135.591 C 524.38 135.591 526.264 136.219 526.892 138.102 C 527.52 139.358 526.892 141.241 525.636 142.496 C 525.008 143.124 524.38 143.124 524.38 143.124 L 434.733 211.861 C 434.733 211.861 433.477 213.117 432.849 213.117 C 432.221 213.745 430.965 213.745 429.709 213.117 C 429.081 212.489 428.453 211.861 429.081 211.234 C 429.081 210.606 429.709 209.35 429.709 209.35 L 454.515 157.876 L 455.143 156.62 C 457.027 153.482 455.143 150.186 451.375 150.186 L 431.122 150.186 C 427.982 149.558 426.726 147.047 427.354 144.536 C 427.354 143.909 427.982 142.653 427.982 142.653 L 459.225 91.179 L 459.853 90.551 C 461.737 87.412 459.225 84.901 455.457 84.117 L 434.576 84.117 C 432.064 84.117 430.18 82.861 429.552 80.978 C 429.552 79.723 429.552 79.095 430.18 77.839 L 439.757 61.361 L 470.372 7.219 L 471 5.964 C 474.768 2.197 477.437 0.942 481.205 0.942 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'taylor made',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 1064 215\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Taylor Made logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Taylor Made</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 123.179 6.087 C 78.437 6.399 39.991 24.677 17.474 50.935 C 99.32 33.837 166.428 40.107 216.364 48.175 C 216.556 46.761 216.863 45.399 217.009 44.109 C 217.05 43.782 216.998 43.47 217.009 43.137 L 217.009 42.16 C 217.326 35.885 213.991 29.907 208.391 27.053 C 179.13 12.118 150.026 5.906 123.179 6.093 Z M 411.501 37.445 L 386.294 149.702 L 415.732 149.702 L 440.939 37.445 Z M 927.489 37.445 L 917.248 84.393 L 916.92 84.393 C 912.554 76.018 902.375 69.936 887.648 69.936 C 858.845 69.936 844.878 93.74 844.878 119.321 C 844.878 136.82 858.148 151.49 876.268 151.49 C 892.457 151.49 899.399 145.865 906.84 137.194 L 907.163 137.194 L 904.889 149.702 L 931.719 149.702 C 932.047 146.562 932.536 142.642 933.51 138.005 L 956.115 37.445 L 927.494 37.445 Z M 626.319 45.243 L 601.767 149.702 L 629.249 149.702 L 648.924 64.087 L 649.252 64.087 L 653.316 149.702 L 681.937 149.702 L 726.169 64.087 L 726.497 64.087 L 706.005 149.702 L 735.437 149.702 L 759.344 45.243 L 711.208 45.243 L 675.755 115.423 L 675.432 115.423 L 673.642 45.243 Z M 1046.526 52.879 C 1040.237 52.882 1035.142 57.977 1035.145 64.259 C 1035.148 70.541 1040.248 75.631 1046.536 75.628 C 1052.824 75.626 1057.921 70.533 1057.919 64.251 C 1057.918 57.969 1052.819 52.878 1046.531 52.879 Z M 1046.526 54.99 C 1051.636 54.99 1055.632 59.164 1055.632 64.248 C 1055.632 69.338 1051.636 73.512 1046.526 73.512 C 1041.415 73.489 1037.28 69.353 1037.263 64.248 C 1037.263 59.164 1041.436 54.99 1046.526 54.99 Z M 1043.112 57.75 L 1040.671 69.447 L 1043.117 69.447 L 1044.09 64.898 L 1046.531 64.898 C 1048.352 64.898 1048.326 65.569 1047.988 67.175 C 1047.738 68.381 1047.78 68.891 1047.832 69.447 L 1050.434 69.447 L 1050.59 69.125 C 1050.122 68.927 1050.069 68.563 1050.434 66.848 C 1050.902 64.664 1050.496 64.337 1049.617 63.926 C 1050.866 63.509 1051.797 62.456 1052.057 61.166 C 1052.271 60.152 1052.245 57.75 1049.128 57.75 Z M 1045.063 59.866 L 1048.154 59.866 C 1049.591 59.866 1049.742 60.708 1049.617 61.322 C 1049.367 62.481 1048.618 62.949 1047.343 62.949 L 1044.413 62.949 Z M 261.08 69.936 C 247.971 69.936 238.761 71.786 230.18 74.484 L 227.255 93.979 C 236.96 89.347 244.058 87.969 254.575 87.969 C 264.119 87.969 270.186 92.341 270.186 97.878 C 270.186 98.922 270.186 100.082 269.859 101.127 C 265.815 100.83 259.919 100.316 254.091 100.316 C 228.358 100.316 207.741 109.761 207.741 128.907 C 207.741 144.014 217.753 151.49 235.873 151.49 C 247.201 151.49 258.025 147.788 264.171 138.816 L 264.171 138.494 L 264.494 138.816 L 263.193 149.702 L 286.938 149.702 C 290.174 126.215 297.668 108.685 297.668 96.417 C 297.668 77.265 281.146 69.936 261.08 69.936 Z M 486.795 69.936 C 453.782 69.936 432.316 88.541 432.316 115.911 C 432.316 135.51 444.992 151.49 476.226 151.49 C 507.782 151.49 530.538 137.324 530.538 104.859 C 530.538 85.271 515.436 69.936 486.795 69.936 Z M 595.913 69.936 C 583.934 69.936 574.583 78.685 569.894 87.808 L 569.566 87.808 L 572.819 71.724 L 545.826 71.724 C 545.02 78.752 543.703 85.297 542.246 92.029 L 529.075 149.702 L 558.186 149.702 L 566.48 113.801 C 568.583 102.275 575.977 92.357 588.269 92.357 C 593.774 92.357 597.88 93.069 601.606 95.767 L 608.267 71.885 C 604.395 70.393 599.795 69.936 595.913 69.936 Z M 802.436 69.936 C 789.333 69.936 780.112 71.786 771.541 74.484 L 768.612 93.979 C 778.317 89.347 785.415 87.969 795.932 87.969 C 805.48 87.969 811.382 92.341 811.382 97.878 C 811.382 98.922 811.382 100.082 811.054 101.127 C 807.01 100.83 801.271 100.316 795.442 100.316 C 769.71 100.316 748.936 109.761 748.936 128.907 C 748.936 144.014 759.109 151.49 777.234 151.49 C 788.558 151.49 799.376 147.788 805.527 138.816 L 805.527 138.494 L 805.855 138.816 L 804.554 149.702 L 828.294 149.702 C 831.536 126.215 839.029 108.685 839.029 96.417 C 839.029 77.265 822.507 69.936 802.436 69.936 Z M 997.74 69.936 C 960.205 69.936 947.331 97.815 947.331 115.911 C 947.331 135.51 962.604 151.49 990.751 151.49 C 999.176 151.49 1009.99 149.946 1020.184 147.102 L 1023.926 128.096 C 1015.839 131.683 1005.343 133.451 997.579 133.451 C 979.777 133.451 975.14 126.885 974.812 118.51 L 1034.494 118.51 C 1035.634 113.879 1036.607 107.032 1036.607 103.887 C 1036.607 80.26 1019.908 69.936 997.74 69.936 Z M 301.081 71.724 L 319.623 149.374 C 316.224 157.312 310.963 162.209 302.71 162.209 C 297.21 162.209 293.099 160.982 289.373 159.937 L 283.196 179.588 C 288.696 181.23 295.768 182.842 306.124 182.842 C 324.738 182.842 334.297 173.698 342.878 159.937 L 398.169 71.719 L 367.269 71.719 L 338.648 120.949 L 338.325 120.949 L 330.681 71.719 L 301.081 71.719 Z M 89.198 85.531 C 86.95 85.599 84.645 85.677 82.043 86.02 C 47.36 90.594 20.399 99.505 6.094 105.026 C 6.749 108.046 7.452 109.917 7.556 110.224 L 7.717 110.874 C 13.67 130.758 33.164 153.73 65.615 179.104 C 66.832 180.061 68.019 180.976 69.19 181.865 C 88.308 153.491 98.768 131.985 106.105 109.252 C 111.809 91.561 104.935 85.063 89.193 85.531 Z M 193.43 86.181 C 191.854 86.212 190.293 86.373 188.716 86.508 C 168.541 88.208 160.875 101.912 149.849 119.483 C 141.283 133.129 113.443 182.109 101.386 203.309 C 115.498 210.061 128.669 210.446 143.016 205.908 C 152.872 202.789 157.909 200.252 163.509 196.161 C 165.377 194.799 166.995 193.374 168.223 191.612 L 168.712 190.962 C 168.874 190.739 169.045 190.546 169.202 190.312 C 187.321 162.084 200.32 118.978 206.44 95.767 C 207.174 92.986 207.876 90.069 208.553 87.319 C 203.558 86.473 198.496 86.092 193.43 86.181 Z M 998.068 87.969 C 1008.741 87.969 1012.378 94.862 1012.378 103.237 L 976.602 103.237 C 978.71 95.767 985.449 87.969 998.068 87.969 Z M 485.332 88.78 C 496.656 88.78 500.455 96.469 500.455 104.537 C 500.455 122.196 491.931 132.645 478.338 132.645 C 468.472 132.791 462.566 125.731 462.566 115.261 C 462.566 102.842 471.256 88.78 485.332 88.78 Z M 897.083 90.568 C 906.793 90.568 910.904 98.709 910.904 106.486 C 910.904 116.805 902.708 130.857 888.949 130.857 C 879.728 130.857 874.967 124.343 874.967 114.773 C 874.967 102.655 883.329 90.568 897.083 90.568 Z M 259.29 114.612 C 261.075 114.612 264.67 114.658 267.095 115.1 C 264.993 125.575 257.598 133.451 245.146 133.451 C 238.995 133.451 235.222 129.412 235.222 125.82 C 235.222 118.937 245.38 114.164 259.29 114.612 Z M 800.646 114.612 C 802.426 114.612 806.027 114.658 808.452 115.1 C 806.355 125.575 798.794 133.451 786.336 133.451 C 780.195 133.451 776.579 129.412 776.579 125.82 C 776.579 118.937 786.736 114.164 800.646 114.612 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'slice',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\twidth={width}\n\t\t\t\t\t\tviewBox=\"0 0 285.92 121.92\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Slice Logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M16.45,67.75c2.56,0,4.83.75,6.19,2.41v2.87c0,20.52,9.36,29.58,19.47,29.58,5.73,0,10.26-5.28,10.26-12.98,0-4.98-.91-9.05-14.94-26.86-8-10.26-10.56-18.71-10.56-28.07C26.86,17.96,39.84,0,58.85,0c16.3,0,22.78,9.36,22.78,18.41,0,5.88-3.17,10.71-6.49,12.37-8-6.64-13.58-9.66-19.16-9.66-3.32,0-6.04,2.87-6.04,7.24,0,4.83,2.56,10.71,11.32,22.94,12.68,17.96,14.79,24.29,14.79,33.2,0,17.05-15.69,37.42-41.04,37.42C11.77,121.92,0,108.19,0,91.59c0-11.02,5.89-23.84,16.45-23.84Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M94,32.59C96.72,12.22,107.43,0,119.35,0c6.49,0,10.56,3.02,10.56,10.71,0,6.64-3.02,14.03-14.33,35.31-4.07,14.64-11.17,40.89-11.17,44.66,0,1.66.75,2.26,2.11,2.26,4.68,0,13.58-8.6,21.43-20.82,2.87,0,5.73,2.11,5.73,5.13,0,11.47-24.44,35.16-39.69,35.16-8.75,0-11.92-3.77-11.92-11.62,0-10.11,4.83-27.61,6.04-33.95,1.81-9.81,4.53-23.99,5.88-34.25Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M126.44,68.66c0-8.9,13.43-24.75,22.78-24.75,6.94,0,7.54,3.77,7.54,9.66,0,3.92-2.57,10.26-5.28,16.6-4.23,10.41-6.19,15.24-6.19,18.71,0,1.66.75,2.26,2.11,2.26,2.11,0,8.9-4.83,19.01-19.16,2.87,0,5.88,2.41,5.88,5.43,0,9.51-23.99,35.01-37.87,35.01-8.9,0-11.92-3.92-11.92-12.22,0-6.64,1.66-12.83,5.43-22.18-1.21-2.87-1.51-6.34-1.51-9.36ZM154.81,4.07c6.04,0,12.83,6.64,12.83,11.32,0,3.62-2.87,9.51-10.11,18.41-5.88,0-10.11-4.38-10.11-13.13,0-12.22,2.57-16.6,7.39-16.6Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M160.24,86.31c0-23.24,18.56-46.17,34.71-46.17,10.26,0,15.39,5.43,15.39,14.64,0,9.66-6.79,17.35-14.03,17.35-3.32,0-5.28-1.06-6.49-2.87,1.06-4.07,1.51-7.54,1.51-9.51,0-2.11-1.06-3.17-1.96-3.17-2.87,0-8.15,9.66-8.15,24.9,0,8.3,2.26,11.62,8.15,11.62,8.45,0,20.07-8.6,28.22-21.28,2.72,0,5.88,1.81,5.88,4.98,0,10.41-23.84,35.01-42.1,35.01-14.79,0-21.12-9.21-21.12-25.5Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M211.24,86.31c0-22.79,18.56-46.02,33.2-46.02,10.41,0,16.15,4.98,16.15,15.54,0,12.68-7.39,22.48-28.07,27.16,0,6.79,1.36,10.56,7.24,10.56,10.26,0,23.54-8.75,32.14-21.88,3.62.15,5.73,2.57,5.73,4.98,0,11.17-25.2,35.16-44.82,35.16-14.79,0-21.58-9.21-21.58-25.5ZM240.66,56.13c-2.11,0-6.19,5.13-7.24,15.69,8.45-1.51,10.26-6.19,10.26-10.71,0-3.17-1.21-4.98-3.02-4.98Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M283.49,27.94c1.62,1.62,2.43,3.57,2.43,5.86s-.83,4.34-2.49,5.95c-1.61,1.56-3.55,2.34-5.8,2.34s-4.3-.8-5.89-2.4c-1.6-1.6-2.4-3.56-2.4-5.89s.86-4.44,2.59-6.04c1.62-1.5,3.52-2.25,5.7-2.25s4.24.81,5.86,2.43ZM277.63,26.93c-1.9,0-3.53.69-4.87,2.07-1.32,1.35-1.98,2.95-1.98,4.8s.67,3.55,2.01,4.89c1.33,1.34,2.95,2.01,4.84,2.01s3.49-.68,4.83-2.02c1.33-1.36,2-2.98,2-4.88s-.66-3.45-1.99-4.8c-1.34-1.38-2.95-2.07-4.84-2.07ZM276.41,35.16v3.25h-2.41v-9.19c.57,0,1.42,0,2.56,0,1.14,0,1.77,0,1.9.02.73.05,1.33.21,1.81.47.82.45,1.23,1.18,1.23,2.19,0,.77-.22,1.33-.65,1.68s-.96.55-1.59.62c.58.12,1.01.3,1.3.53.54.44.81,1.12.81,2.06v.82c0,.09,0,.18.02.27.01.09.03.18.06.27l.08.26h-2.29c-.07-.29-.12-.72-.15-1.27-.02-.55-.07-.93-.15-1.13-.12-.32-.34-.55-.67-.67-.18-.07-.45-.12-.82-.15l-.53-.03h-.51ZM277.34,33.51c.56,0,1-.11,1.32-.34.32-.23.47-.59.47-1.09s-.25-.85-.74-1.05c-.33-.13-.8-.19-1.39-.19h-.58v2.67h.93Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'yelp',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\tviewBox=\"0 0 474 178\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Yelp logo\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Yelp</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 190.562 47.187 C 190.562 40.674 195.964 35.354 202.489 35.354 C 208.921 35.354 214.143 40.674 214.422 47.285 L 214.422 139.653 C 214.422 146.166 209.014 151.487 202.489 151.487 C 199.304 151.485 196.251 150.234 194.011 148.011 C 191.771 145.789 190.529 142.779 190.562 139.653 Z M 179.466 104.243 C 179.373 106.076 178.908 109.472 176.489 111.95 C 173.878 114.61 170.337 115.249 168.284 115.249 C 159.756 115.298 151.228 115.322 142.7 115.341 C 134.172 115.365 125.644 115.389 117.115 115.432 C 117.86 117.727 119.348 121.215 122.704 124.423 C 124.75 126.352 126.71 127.448 127.554 127.911 C 128.577 128.55 132.119 130.388 136.497 130.388 C 141.161 130.388 145.261 128.915 149.274 126.9 L 149.603 126.73 C 152.394 125.311 155.265 123.851 158.311 123.321 C 161.288 122.864 164.463 123.412 166.789 125.433 C 169.586 127.819 170.709 131.301 169.679 134.881 C 168.47 138.916 165.021 142.405 161.387 144.511 C 159.307 145.705 157.123 146.718 154.862 147.536 C 149.094 149.545 142.994 150.48 136.876 150.294 C 135.387 150.294 133.799 150.294 132.212 150.111 C 130.537 149.928 128.862 149.557 127.275 149.192 C 124.701 148.644 122.198 147.813 119.813 146.714 C 117.428 145.676 115.15 144.417 113.01 142.952 C 110.875 141.446 108.88 139.758 107.049 137.906 C 105.229 136.031 103.575 134.007 102.106 131.855 C 97.076 124.331 94.744 115.067 95.209 106.076 C 95.581 97.273 98.565 88.465 103.973 81.313 C 104.556 80.412 105.232 79.651 105.871 78.933 C 106.15 78.616 106.423 78.312 106.677 78.007 C 113.351 69.996 122.27 67.464 125.947 66.417 L 126.152 66.356 C 133.617 64.276 141.524 64.276 148.989 66.356 C 150.763 66.819 160.736 69.844 168.47 78.007 C 168.842 78.373 169.872 79.566 171.174 81.313 C 174.482 85.734 176.912 90.727 178.338 96.032 L 178.35 96.08 C 178.908 98.095 179.466 100.847 179.466 104.237 Z M 124.757 89.11 C 121.077 92.048 118.515 96.119 117.488 100.664 L 158.125 100.664 C 157.028 96.123 154.441 92.061 150.763 89.104 C 147.057 86.188 142.463 84.574 137.713 84.521 C 132.989 84.567 128.419 86.182 124.75 89.104 Z M 279.291 64.798 C 268.667 64.798 258.973 69.479 252.076 77.094 L 252.076 76.814 C 251.788 70.452 246.356 65.491 239.869 65.667 C 233.382 65.843 228.238 71.091 228.309 77.459 L 228.309 165.609 C 228.294 168.723 229.545 171.713 231.786 173.918 C 234.026 176.122 237.07 177.358 240.242 177.352 C 243.413 177.356 246.455 176.12 248.694 173.915 C 250.933 171.711 252.184 168.722 252.169 165.609 L 252.169 138.089 C 259.066 145.612 268.667 150.385 279.384 150.385 C 300.732 150.385 318.067 131.393 318.067 107.725 C 317.974 84.064 300.639 64.798 279.291 64.798 Z M 274.075 131.21 C 261.956 131.21 252.076 120.843 252.076 107.914 C 252.076 94.887 261.863 84.521 274.075 84.521 C 286.188 84.521 296.068 94.887 296.068 107.914 C 295.975 120.843 286.188 131.21 274.075 131.21 Z M 77.316 113.873 L 73.402 122.317 C 71.628 125.981 69.855 129.743 68.18 133.505 L 66.561 137.036 C 59.106 153.301 50.268 172.61 30.991 176.706 C 21.67 178.727 7.597 175.976 2.374 167.35 C -2.842 158.639 4.893 148.638 14.866 150.933 C 16.441 151.274 17.985 152.028 19.548 152.795 C 22.147 154.074 24.783 155.358 27.636 154.786 C 30.34 154.329 32.015 152.4 34.161 149.922 C 37.138 146.532 38.447 142.952 39.005 140.84 L 38.868 140.524 C 38.825 140.414 38.777 140.307 38.726 140.201 C 36.301 135.757 34.179 131.788 32.412 128.471 C 31.418 126.597 30.415 124.729 29.404 122.864 L 25.341 115.292 C 22.364 109.752 21.868 108.839 20.553 106.447 C 17.654 101.077 14.608 95.785 11.417 90.577 C 7.969 84.886 4.427 78.561 7.318 71.859 C 9.57 66.479 15.647 63.69 21.297 65.443 C 27.295 67.227 29.956 72.833 32.437 78.068 C 32.889 79.018 33.33 79.955 33.789 80.85 C 37.795 88.648 41.709 96.446 45.622 104.243 C 45.97 105.017 46.491 106.07 47.136 107.36 C 47.706 108.505 48.37 109.838 49.071 111.305 L 50.107 113.423 C 50.51 114.251 50.863 114.957 51.124 115.523 C 52.941 111.079 54.783 106.654 56.619 102.222 C 58.461 97.797 60.303 93.372 62.12 88.922 C 62.17 88.678 62.604 87.729 63.262 86.298 C 63.814 85.087 64.521 83.535 65.29 81.769 L 66.077 79.9 C 68.496 74.118 71.411 67.16 77.874 65.261 C 82.576 63.921 87.626 65.651 90.458 69.57 C 91.854 71.494 92.412 73.698 92.505 75.901 C 92.58 80.771 90.185 85.994 88.126 90.474 C 87.63 91.57 87.146 92.617 86.731 93.603 L 86.483 94.139 C 85.912 95.399 84.362 98.807 81.695 104.426 C 80.733 106.435 79.809 108.456 78.873 110.495 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 383.476 104 L 391.198 102.247 C 391.359 102.21 391.632 102.149 391.954 102.046 C 396.388 100.879 399.083 96.476 398.051 92.087 L 398.02 91.953 C 397.765 90.941 397.319 89.986 396.705 89.135 C 395.841 88.058 394.771 87.156 393.555 86.481 C 392.123 85.68 390.625 85 389.077 84.448 L 380.611 81.41 C 375.86 79.675 371.109 77.989 366.308 76.339 C 363.201 75.256 360.565 74.3 358.276 73.6 C 357.841 73.482 357.409 73.352 356.98 73.211 C 354.214 72.383 352.266 72.036 350.623 72.023 C 349.524 71.983 348.43 72.179 347.416 72.596 C 346.357 73.046 345.406 73.709 344.625 74.544 C 344.238 74.975 343.874 75.426 343.534 75.895 C 342.873 76.891 342.328 77.957 341.909 79.073 C 340.336 83.632 339.552 88.418 339.589 93.232 C 339.62 97.578 339.738 103.16 342.175 106.946 C 342.765 107.92 343.552 108.76 344.489 109.412 C 346.226 110.586 347.975 110.745 349.804 110.872 C 352.533 111.061 355.169 110.41 357.805 109.807 L 383.457 103.994 Z M 469.625 63.769 C 467.517 59.427 464.683 55.462 461.239 52.039 C 460.795 51.604 460.318 51.201 459.813 50.834 C 459.347 50.49 458.862 50.171 458.362 49.878 C 457.846 49.601 457.316 49.351 456.774 49.129 C 455.703 48.716 454.555 48.529 453.406 48.581 C 452.308 48.642 451.235 48.947 450.262 49.452 C 448.792 50.17 447.198 51.327 445.077 53.256 C 444.785 53.543 444.419 53.865 444.084 54.17 C 442.341 55.783 440.394 57.773 438.08 60.086 C 434.502 63.635 430.985 67.202 427.481 70.8 L 421.217 77.179 C 420.073 78.343 419.031 79.599 418.103 80.935 C 417.308 82.066 416.746 83.337 416.447 84.679 C 416.279 85.71 416.305 86.762 416.521 87.783 L 416.552 87.917 C 417.581 92.302 421.962 95.1 426.464 94.248 C 426.724 94.212 426.983 94.163 427.239 94.102 L 460.619 86.529 C 463.255 85.933 465.922 85.385 468.285 84.034 C 469.873 83.139 471.38 82.244 472.416 80.442 C 472.968 79.45 473.301 78.355 473.396 77.228 C 473.911 72.76 471.535 67.689 469.625 63.769 Z M 409.866 77.545 C 412.285 74.562 412.285 70.118 412.496 66.478 C 413.228 54.334 413.991 42.19 414.605 30.04 C 414.834 25.438 415.337 20.897 415.058 16.258 C 414.828 12.435 414.803 8.04 412.341 4.899 C 408 -0.64 398.734 -0.184 392.413 0.681 C 390.464 0.945 388.528 1.303 386.614 1.752 C 384.692 2.203 382.781 2.696 380.921 3.286 C 374.855 5.234 366.327 8.813 364.888 15.674 C 364.069 19.551 366.004 23.514 367.493 27.057 C 369.31 31.342 371.785 35.208 374.042 39.244 C 380.015 49.902 386.093 60.5 392.153 71.104 C 393.97 74.27 395.936 78.275 399.441 79.919 C 399.676 80.016 399.912 80.101 400.154 80.18 C 401.723 80.765 403.441 80.874 405.072 80.503 L 405.364 80.442 C 406.877 80.034 408.242 79.225 409.314 78.111 C 409.513 77.928 409.693 77.746 409.873 77.545 Z M 406.97 110.057 C 405.033 107.383 401.564 106.236 398.374 107.214 C 398.008 107.332 397.651 107.477 397.307 107.646 C 396.774 107.913 396.266 108.225 395.787 108.578 C 394.422 109.633 393.202 110.859 392.159 112.224 C 391.892 112.559 391.644 113.003 391.322 113.295 L 385.951 120.539 C 382.912 124.605 379.904 128.678 376.933 132.811 C 374.985 135.483 373.311 137.742 371.977 139.732 C 371.729 140.11 371.469 140.524 371.233 140.864 C 369.639 143.275 368.74 145.04 368.274 146.611 C 367.927 147.654 367.817 148.76 367.952 149.849 C 368.101 150.981 368.491 152.071 369.093 153.051 C 369.416 153.538 369.763 154.013 370.135 154.469 C 370.939 155.378 371.844 156.194 372.833 156.904 C 376.542 159.437 380.598 161.257 384.865 162.663 C 388.419 163.82 392.11 164.513 395.843 164.72 C 396.482 164.751 397.121 164.739 397.754 164.684 C 398.34 164.63 398.924 164.549 399.503 164.44 C 400.082 164.308 400.653 164.146 401.214 163.953 C 402.306 163.552 403.299 162.93 404.129 162.127 C 404.917 161.354 405.525 160.423 405.903 159.394 C 406.523 157.872 406.933 155.949 407.206 153.088 C 407.224 152.68 407.286 152.193 407.33 151.748 C 407.541 149.374 407.64 146.574 407.789 143.299 C 408.055 138.253 408.26 133.231 408.421 128.197 L 408.769 119.236 C 408.849 117.179 408.781 114.89 408.198 112.839 C 407.942 111.853 407.527 110.914 406.97 110.057 Z M 467.584 124.076 C 466.468 122.864 464.88 121.665 462.374 120.18 C 462.015 119.979 461.587 119.717 461.196 119.486 C 459.112 118.25 456.6 116.96 453.667 115.395 C 449.158 112.96 444.649 110.599 440.09 108.249 L 432.046 104.061 C 431.63 103.939 431.208 103.647 430.811 103.458 C 429.265 102.683 427.622 102.108 425.924 101.748 C 425.339 101.637 424.746 101.576 424.15 101.565 C 423.765 101.563 423.379 101.585 422.997 101.632 C 419.693 102.133 417.091 104.659 416.546 107.896 C 416.428 108.9 416.466 109.917 416.664 110.903 C 417.055 113.009 418.01 115.085 419.002 116.905 L 423.294 124.812 C 425.688 129.268 428.107 133.7 430.588 138.119 C 432.188 140.998 433.522 143.464 434.768 145.509 C 435.004 145.893 435.271 146.306 435.475 146.666 C 436.995 149.119 438.211 150.665 439.445 151.779 C 441.109 153.35 443.402 154.109 445.697 153.849 C 446.287 153.778 446.873 153.676 447.452 153.544 C 448.638 153.232 449.785 152.789 450.869 152.223 C 454.134 150.427 457.143 148.217 459.819 145.649 C 463.032 142.545 465.873 139.16 468.081 135.288 C 468.391 134.741 468.651 134.175 468.874 133.584 C 469.082 133.043 469.262 132.493 469.414 131.934 C 469.544 131.362 469.643 130.79 469.712 130.212 C 469.823 129.075 469.69 127.928 469.321 126.845 C 468.957 125.806 468.364 124.859 467.584 124.07 Z\"\n\t\t\t\t\t\t\tfill={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'slice logo',\n\t\t\t\tsvg: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\theight={adjustedHeight}\n\t\t\t\t\t\twidth={width}\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Slice Logo\"\n\t\t\t\t\t\tviewBox=\"0 0 285.92 146.69\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceBgColor}\n\t\t\t\t\t\t\td=\"M164.06,117.97c-37.96,8.95-75.71,43.62-109.5,21.42C-10.41,96.71,70.15,23.34,132.34,6.8c34.92-9.28,74.76-10.35,101.58,4.97,15.56,8.89,19.23,21.09,27.38,38.03,10.23,21.27-7.21,45.31-27.41,53.17l-69.83,14.99Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M16.45,69.27c2.56,0,4.83.75,6.19,2.41v2.87c0,20.52,9.36,29.58,19.47,29.58,5.73,0,10.26-5.28,10.26-12.98,0-4.98-.91-9.05-14.94-26.86-8-10.26-10.56-18.71-10.56-28.07C26.86,19.48,39.84,1.52,58.85,1.52c16.3,0,22.78,9.36,22.78,18.41,0,5.88-3.17,10.71-6.49,12.37-8-6.64-13.58-9.66-19.16-9.66-3.32,0-6.04,2.87-6.04,7.24,0,4.83,2.56,10.71,11.32,22.94,12.68,17.96,14.79,24.29,14.79,33.2,0,17.05-15.69,37.42-41.04,37.42C11.77,123.44,0,109.71,0,93.11c0-11.02,5.89-23.84,16.45-23.84Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M94,34.11C96.72,13.74,107.43,1.52,119.35,1.52c6.49,0,10.56,3.02,10.56,10.71,0,6.64-3.02,14.03-14.33,35.31-4.07,14.64-11.17,40.89-11.17,44.66,0,1.66.75,2.26,2.11,2.26,4.68,0,13.58-8.6,21.43-20.82,2.87,0,5.73,2.11,5.73,5.13,0,11.47-24.44,35.16-39.69,35.16-8.75,0-11.92-3.77-11.92-11.62,0-10.11,4.83-27.61,6.04-33.95,1.81-9.81,4.53-23.99,5.88-34.25Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M126.44,70.18c0-8.9,13.43-24.75,22.78-24.75,6.94,0,7.54,3.77,7.54,9.66,0,3.92-2.57,10.26-5.28,16.6-4.23,10.41-6.19,15.24-6.19,18.71,0,1.66.75,2.26,2.11,2.26,2.11,0,8.9-4.83,19.01-19.16,2.87,0,5.88,2.41,5.88,5.43,0,9.51-23.99,35.01-37.87,35.01-8.9,0-11.92-3.92-11.92-12.22,0-6.64,1.66-12.83,5.43-22.18-1.21-2.87-1.51-6.34-1.51-9.36ZM154.81,5.59c6.04,0,12.83,6.64,12.83,11.32,0,3.62-2.87,9.51-10.11,18.41-5.88,0-10.11-4.38-10.11-13.13,0-12.22,2.57-16.6,7.39-16.6Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M160.24,87.83c0-23.24,18.56-46.17,34.71-46.17,10.26,0,15.39,5.43,15.39,14.64,0,9.66-6.79,17.35-14.03,17.35-3.32,0-5.28-1.06-6.49-2.87,1.06-4.07,1.51-7.54,1.51-9.51,0-2.11-1.06-3.17-1.96-3.17-2.87,0-8.15,9.66-8.15,24.9,0,8.3,2.26,11.62,8.15,11.62,8.45,0,20.07-8.6,28.22-21.28,2.72,0,5.88,1.81,5.88,4.98,0,10.41-23.84,35.01-42.1,35.01-14.79,0-21.12-9.21-21.12-25.5Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M211.24,87.83c0-22.79,18.56-46.02,33.2-46.02,10.41,0,16.15,4.98,16.15,15.54,0,12.68-7.39,22.48-28.07,27.16,0,6.79,1.36,10.56,7.24,10.56,10.26,0,23.54-8.75,32.14-21.88,3.62.15,5.73,2.57,5.73,4.98,0,11.17-25.2,35.16-44.82,35.16-14.79,0-21.58-9.21-21.58-25.5ZM240.66,57.65c-2.11,0-6.19,5.13-7.24,15.69,8.45-1.51,10.26-6.19,10.26-10.71,0-3.17-1.21-4.98-3.02-4.98Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\tfill={sliceColor}\n\t\t\t\t\t\t\td=\"M283.49,29.46c1.62,1.62,2.43,3.57,2.43,5.86s-.83,4.34-2.49,5.95c-1.61,1.56-3.55,2.34-5.8,2.34s-4.3-.8-5.89-2.4c-1.6-1.6-2.4-3.56-2.4-5.89s.86-4.44,2.59-6.04c1.62-1.5,3.52-2.25,5.7-2.25s4.24.81,5.86,2.43ZM277.63,28.45c-1.9,0-3.53.69-4.87,2.07-1.32,1.35-1.98,2.95-1.98,4.8s.67,3.55,2.01,4.89c1.33,1.34,2.95,2.01,4.84,2.01s3.49-.68,4.83-2.02c1.33-1.36,2-2.98,2-4.88s-.66-3.45-1.99-4.8c-1.34-1.38-2.95-2.07-4.84-2.07ZM276.41,36.68v3.25h-2.41v-9.19c.57,0,1.42,0,2.56,0,1.14,0,1.77,0,1.9.02.73.05,1.33.21,1.81.47.82.45,1.23,1.18,1.23,2.19,0,.77-.22,1.33-.65,1.68s-.96.55-1.59.62c.58.12,1.01.3,1.3.53.54.44.81,1.12.81,2.06v.82c0,.09,0,.18.02.27.01.09.03.18.06.27l.08.26h-2.29c-.07-.29-.12-.72-.15-1.27-.02-.55-.07-.93-.15-1.13-.12-.32-.34-.55-.67-.67-.18-.07-.45-.12-.82-.15l-.53-.03h-.51ZM277.34,35.03c.56,0,1-.11,1.32-.34.32-.23.47-.59.47-1.09s-.25-.85-.74-1.05c-.33-.13-.8-.19-1.39-.19h-.58v2.67h.93Z\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t];\n\n\t\tconst item = images.filter((data) => image === data.name);\n\t\treturn item[0] ? item[0].svg : null;\n\t}, [adjustedHeight, width, image, color, sliceColor, sliceBgColor]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Logos');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={divClass.trim()}\n\t\t\tstyle={{\n\t\t\t\t...divStyle,\n\t\t\t\tdisplay: 'inline',\n\t\t\t\twidth: width ?? 'unset',\n\t\t\t\theight: adjustedHeight ?? 'unset',\n\t\t\t}}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{renderIcon}\n\t\t</div>\n\t);\n}\n","import { AnimatePresence, motion } from 'motion/react';\nimport React, { useCallback, useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './Overlay.module.css';\nimport type { OverlayProps } from './_types';\n\nexport const Overlay = React.memo((props: OverlayProps) => {\n\tconst {\n\t\tonClick = () => null,\n\t\ttoggleOverlay = () => null,\n\t\topacity = 0,\n\t\tcolor = 'rgb(0,0,0)',\n\t\ttype = 'clear',\n\t\tglobal = false,\n\t\toverlay,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst show = !global || (global && overlay);\n\n\t// Memoize computed opacity value\n\tconst computedOpacity = useMemo(() => {\n\t\tif (type === 'clear') return 0;\n\t\tif (opacity !== undefined) return opacity;\n\t\tif (type === 'dark') return 0.8;\n\t\treturn 0;\n\t}, [type, opacity]);\n\n\tconst handleClick = useCallback(() => {\n\t\tif (global) toggleOverlay(false);\n\t\tonClick();\n\t}, [global, toggleOverlay, onClick]);\n\n\tconst handleContextMenu = useCallback((e: React.MouseEvent) => {\n\t\te.preventDefault();\n\t}, []);\n\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--overlay-color': color ?? 'rgb(0,0,0)',\n\t\t} as React.CSSProperties;\n\t}, [color]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Overlay');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<AnimatePresence initial={false}>\n\t\t\t{show && (\n\t\t\t\t<motion.div\n\t\t\t\t\tid={divId}\n\t\t\t\t\tclassName={`${css.overlay}${divClass}`}\n\t\t\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t\t\tinitial={{ opacity: 0 }}\n\t\t\t\t\tanimate={{ opacity: computedOpacity }}\n\t\t\t\t\texit={{ opacity: 0 }}\n\t\t\t\t\tonClick={handleClick}\n\t\t\t\t\tonContextMenu={handleContextMenu}\n\t\t\t\t\t{...(rest as any)}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n});\n","import { motion } from 'motion/react';\nimport React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './FlexDiv.module.css';\nimport type { FlexDivProps } from './_types';\n\n// Extract helper functions outside component\nfunction setSize(style: string | number, isHeight: boolean) {\n\tif (typeof style === 'number') return `${style}px`;\n\tif (style === 'grow') return 'unset';\n\tif (style === 'fill') return '100%';\n\tif (style === 'fit') return 'auto';\n\tif (style === 'viewport') return isHeight ? '100vh' : '100vw';\n\treturn style;\n}\n\nfunction setBox(style: string | number) {\n\tif (typeof style === 'number') return `${style}px`;\n\treturn style;\n}\n\nfunction setFlex(style: string) {\n\tif (style === 'start' || style === 'top') return 'flex-start';\n\tif (style === 'end' || style === 'bottom') return 'flex-end';\n\tif (style === 'between') return 'space-between';\n\treturn style;\n}\n\nexport const FlexDiv = React.memo(\n\tReact.forwardRef<HTMLDivElement, FlexDivProps>((props, ref) => {\n\t\tconst {\n\t\t\tchildren,\n\t\t\tscrollY = false,\n\t\t\tscrollX = false,\n\t\t\tbackground = 'var(--core-surface-primary)',\n\t\t\tdirection = 'column',\n\t\t\talignItems = 'start',\n\t\t\tjustify = 'start',\n\t\t\theight = 'fit',\n\t\t\twidth = 'fill',\n\t\t\tmaxWidth = undefined,\n\t\t\tcenterSelf = undefined,\n\t\t\twrap = false,\n\t\t\treverse = false,\n\t\t\tpadding = 0,\n\t\t\tmargin = 0,\n\t\t\tabsolute = false,\n\t\t\tflex,\n\t\t\tgap,\n\t\t\tvariants,\n\t\t\ttransition,\n\t\t\tanimate,\n\t\t\tenter,\n\t\t\texit,\n\t\t\tborder,\n\t\t\tclassName,\n\t\t\tscrollHandle,\n\t\t\tscrollHandleHover,\n\t\t\t...divAttributes\n\t\t} = props;\n\t\tconst { id: divId, style: userStyle, ...rest } = divAttributes;\n\t\tconst wrapperStyle = (userStyle ?? {}) as React.CSSProperties;\n\n\t\t// Memoize layout\n\t\tconst style = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tposition: `${absolute ? 'absolute' : 'relative'}`,\n\t\t\t\tflexDirection: `${direction}${reverse ? '-reverse' : ''}`,\n\t\t\t\tflexWrap: `${wrap ? 'wrap' : 'nowrap'}`,\n\t\t\t\tjustifyContent: `${setFlex(justify)}`,\n\t\t\t\talignItems: `${setFlex(alignItems)}`,\n\t\t\t\tboxSizing: 'border-box',\n\t\t\t\tpadding: `${setBox(padding)}`,\n\t\t\t\tmargin: centerSelf ? '0 auto' : `${setBox(margin)}`,\n\t\t\t\twidth: `${absolute ? 'unset' : setSize(width, false)}`,\n\t\t\t\theight: `${absolute ? 'unset' : setSize(height, true)}`,\n\t\t\t\tmaxWidth: `${maxWidth ? setSize(maxWidth, false) : 'unset'}`,\n\t\t\t\tflex: `${absolute ? 'unset' : (flex ?? 'unset')}`,\n\t\t\t\ttop: `${absolute ? '0' : 'unset'}`,\n\t\t\t\tbottom: `${absolute ? '0' : 'unset'}`,\n\t\t\t\tleft: `${absolute ? '0' : 'unset'}`,\n\t\t\t\tright: `${absolute ? '0' : 'unset'}`,\n\t\t\t\tgap: gap ? `${gap}px` : 'unset',\n\t\t\t\tborder: `${border ?? 'unset'}`,\n\t\t\t\tbackground: `${background ?? 'transparent'}`,\n\t\t\t\toverflow: 'hidden',\n\t\t\t\toverflowY: `${scrollY ? 'auto' : 'unset'}`,\n\t\t\t\toverflowX: `${scrollX ? 'auto' : 'unset'}`,\n\t\t\t\tcolor: 'var(--core-text-primary)',\n\t\t\t\t'--flex-div-scroll-border': `${background ?? 'transparent'}`,\n\t\t\t\t'--flex-div-scroll-handle': `${scrollHandle ?? 'var(--scroll-bar)'}`,\n\t\t\t\t'--flex-div-scroll-handle-hover': `${scrollHandleHover ?? 'var(--scroll-bar-hover)'}`,\n\t\t\t} as React.CSSProperties;\n\t\t}, [\n\t\t\tabsolute,\n\t\t\tdirection,\n\t\t\treverse,\n\t\t\twrap,\n\t\t\tjustify,\n\t\t\talignItems,\n\t\t\tpadding,\n\t\t\tmargin,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tflex,\n\t\t\tgap,\n\t\t\tborder,\n\t\t\tbackground,\n\t\t\tscrollY,\n\t\t\tscrollX,\n\t\t\tcenterSelf,\n\t\t\tmaxWidth,\n\t\t\tscrollHandle,\n\t\t\tscrollHandleHover,\n\t\t]);\n\n\t\t/* START.DEBUG */\n\t\t// useTrackRenders(props, 'FlexDiv');\n\t\t/* END.DEBUG */\n\n\t\treturn (\n\t\t\t<motion.div\n\t\t\t\tid={divId}\n\t\t\t\tref={ref}\n\t\t\t\tclassName={`${css.flexDiv} ${className ?? ''}`}\n\t\t\t\tstyle={{ ...wrapperStyle, ...style }}\n\t\t\t\ttransition={transition}\n\t\t\t\tvariants={variants}\n\t\t\t\tinitial={enter}\n\t\t\t\tanimate={animate}\n\t\t\t\texit={exit}\n\t\t\t\t{...(rest as any)}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</motion.div>\n\t\t);\n\t}),\n);\n","import { type Transition, useAnimate, usePresence } from 'motion/react';\nimport React, { useEffect } from 'react';\nimport { useTheme } from '../../../hooks';\nimport { useTrackRenders } from '../../../hooks/useTrackRenders/useTrackRenders';\nimport type { DoneCheckProps } from './_types';\n\nexport const DoneCheck = React.memo((props: DoneCheckProps) => {\n\tconst theme = useTheme();\n\tconst {\n\t\tsize = 88,\n\t\tstroke = 0.75,\n\t\tduration = 0.35,\n\t\tbounce = 0.7,\n\t\tdelay = 0.5,\n\t\tcolor = theme.current.colors['feedback-positive'],\n\t\tdidEnd = () => null,\n\t\tdidStart = () => null,\n\t\tplay = false,\n\t\t...svgAttributes\n\t} = props;\n\tconst { id: svgId, className, style, ...rest } = svgAttributes;\n\tconst [check, animateCheck] = useAnimate();\n\tconst [isPresent, safeToRemove] = usePresence();\n\n\tuseEffect(() => {\n\t\tconst variants = { initial: { scale: 0.9 }, animate: { scale: 1 } };\n\t\tconst spring: Transition = {\n\t\t\ttype: 'spring',\n\t\t\ttime: duration,\n\t\t\tbounce,\n\t\t\tdelay,\n\t\t};\n\t\tconst instant: Transition = { ease: 'linear', duration: 0, delay: 0 };\n\t\tif (isPresent && play) {\n\t\t\tconst enterAnimation = async () => {\n\t\t\t\tdidStart();\n\t\t\t\tawait animateCheck(check.current, variants.initial, instant);\n\t\t\t\tawait animateCheck(check.current, variants.animate, spring);\n\t\t\t\tdidEnd();\n\t\t\t};\n\t\t\tenterAnimation();\n\t\t} else if (isPresent && !play) {\n\t\t\tconst enterAnimation = async () => {\n\t\t\t\tawait animateCheck(check.current, variants.animate, instant);\n\t\t\t};\n\t\t\tenterAnimation();\n\t\t} else if (!isPresent) {\n\t\t\tconst exitAnimation = async () => {\n\t\t\t\tawait animateCheck(check.current, variants.initial, instant);\n\t\t\t\tsafeToRemove();\n\t\t\t};\n\t\t\texitAnimation();\n\t\t}\n\t}, [\n\t\tisPresent,\n\t\tplay,\n\t\tanimateCheck,\n\t\tcheck,\n\t\tdidEnd,\n\t\tdidStart,\n\t\tsafeToRemove,\n\t\tbounce,\n\t\tdelay,\n\t\tduration,\n\t]);\n\n\tconst checkMark = () => {\n\t\treturn (\n\t\t\t<svg\n\t\t\t\tid={svgId}\n\t\t\t\tclassName={className}\n\t\t\t\tref={check}\n\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\twidth={size}\n\t\t\t\theight={size}\n\t\t\t\tscale={0.9}\n\t\t\t\tviewBox=\"0 0 20 20\"\n\t\t\t\tfill=\"none\"\n\t\t\t\tstyle={(style ?? {}) as React.CSSProperties}\n\t\t\t\taria-label=\"Checkmark icon\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t<title>Checkmark</title>\n\t\t\t\t<path d=\"M 1 1 L 19 1 L 19 19 L 1 19 Z\" fill=\"transparent\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M 10 2 C 14.418 2 18 5.582 18 10 C 18 14.418 14.418 18 10 18 C 5.582 18 2 14.418 2 10 C 2 5.582 5.582 2 10 2 Z\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={color}\n\t\t\t\t/>\n\t\t\t\t<path\n\t\t\t\t\td=\"M 6.5 9.5 L 9 12 L 13.5 7.5\"\n\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\tstrokeWidth={stroke}\n\t\t\t\t\tstroke={color}\n\t\t\t\t/>\n\t\t\t</svg>\n\t\t);\n\t};\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'DoneCheck');\n\t/* END.DEBUG */\n\n\treturn checkMark();\n});\n","import { AnimatePresence, motion } from 'motion/react';\nimport type React from 'react';\nimport { useEffect, useMemo, useRef, useState } from 'react';\nimport { useTheme } from '../../../hooks';\nimport { useTrackRenders } from '../../../hooks/useTrackRenders/useTrackRenders';\nimport css from './ProgressIndicator.module.css';\nimport type { ProgressIndicatorProps } from './_types';\n\nexport function ProgressIndicator(props: Readonly<ProgressIndicatorProps>) {\n\tconst theme = useTheme();\n\tconst {\n\t\tsize = 20,\n\t\tsecondsPerSpin = 1,\n\t\tshow = false,\n\t\tcolor = theme.current.colors['core-icon-primary'],\n\t\tstroke = 1.5,\n\t\tinline = false,\n\t\tduration = undefined,\n\t\tdidStart = () => null,\n\t\tdidStop = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [playing, setPlaying] = useState<boolean>(show);\n\tconst timer = useRef<any>(null);\n\n\tuseEffect(() => {\n\t\tif (show) {\n\t\t\tsetPlaying(true);\n\t\t\tdidStart();\n\t\t\tif (duration) {\n\t\t\t\ttimer.current = setTimeout(() => {\n\t\t\t\t\tsetPlaying(false);\n\t\t\t\t\tdidStop();\n\t\t\t\t}, duration * 1000);\n\t\t\t}\n\t\t} else {\n\t\t\tsetPlaying(false);\n\t\t\tdidStop();\n\t\t}\n\t\treturn () => {\n\t\t\tif (timer?.current) clearTimeout(timer.current);\n\t\t};\n\t}, [show, didStart, didStop, duration]);\n\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--pi-position': inline ? 'relative' : 'absolute',\n\t\t\t'--pi-inset': inline ? 'unset' : '0',\n\t\t\t'--pi-icon-size': `${size ?? 0}px`,\n\t\t} as React.CSSProperties;\n\t}, [inline, size]);\n\n\tconst openCircle = useMemo(() => {\n\t\treturn OpenCircle(size, secondsPerSpin, color, stroke, playing);\n\t}, [size, secondsPerSpin, color, stroke, playing]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Progress Indicator');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<AnimatePresence initial={true}>\n\t\t\t{show && (\n\t\t\t\t<motion.div\n\t\t\t\t\tid={divId}\n\t\t\t\t\tclassName={`${css.container}${divClass}`}\n\t\t\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t\t\tinitial={{ opacity: 0 }}\n\t\t\t\t\tanimate={{ opacity: 1 }}\n\t\t\t\t\texit={{ opacity: 0 }}\n\t\t\t\t\t{...(rest as any)}\n\t\t\t\t>\n\t\t\t\t\t{openCircle}\n\t\t\t\t</motion.div>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n}\n\nexport const OpenCircle = (\n\tsize: number,\n\tsecondsPerSpin: number,\n\tcolor: string,\n\tstroke = 1.5,\n\tplaying = false,\n) => {\n\treturn (\n\t\t<motion.svg\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\twidth={size}\n\t\t\theight={size}\n\t\t\tviewBox=\"0 0 20 20\"\n\t\t\trole=\"img\"\n\t\t\taria-label=\"Loading spinner\"\n\t\t\ttransition={{\n\t\t\t\tease: 'linear',\n\t\t\t\trepeatType: 'loop',\n\t\t\t\trepeat: playing ? Number.POSITIVE_INFINITY : 0,\n\t\t\t\tduration: secondsPerSpin,\n\t\t\t}}\n\t\t\tanimate={playing ? { rotate: 360 } : { rotate: 0 }}\n\t\t>\n\t\t\t<title>Loading</title>\n\t\t\t<defs>\n\t\t\t\t<linearGradient id=\"strokeFill\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\n\t\t\t\t\t<stop offset=\"0%\" stopColor={color} stopOpacity={1} />\n\t\t\t\t\t<stop offset=\"50%\" stopColor={color} stopOpacity={1} />\n\t\t\t\t\t<stop offset=\"100%\" stopColor={color} stopOpacity={0} />\n\t\t\t\t</linearGradient>\n\t\t\t</defs>\n\t\t\t<motion.path\n\t\t\t\td=\"M 17.371 6.886 C 17.776 7.843 18 8.895 18 10 C 18 14.418 14.418 18 10 18 C 5.582 18 2 14.418 2 10 C 2 5.582 5.582 2 10 2\"\n\t\t\t\tfill=\"transparent\"\n\t\t\t\tstrokeWidth={stroke}\n\t\t\t\tstroke={'url(#strokeFill)'}\n\t\t\t/>\n\t\t</motion.svg>\n\t);\n};\n","import { motion } from 'motion/react';\nimport React, {\n\tforwardRef,\n\tuseCallback,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Badge } from '../Badge';\nimport { Dot } from '../Dot';\nimport { Icon } from '../Icon';\nimport { ProgressIndicator } from '../Progress';\nimport { ToolTipType } from '../sharedTypes';\nimport type { ToolTip } from '../sharedTypes';\nimport css from './UIButton.module.css';\nimport type { UIButtonHandle, UIButtonProps } from './_types';\n\nconst UIButtonComponent = forwardRef<UIButtonHandle, UIButtonProps>(\n\t(props, buttonRef: React.Ref<UIButtonHandle>) => {\n\t\tconst theme = useTheme();\n\t\tconst {\n\t\t\tsize = 'medium',\n\t\t\tvariant = 'outline',\n\t\t\tlabel = undefined,\n\t\t\tlabelSize = 'm',\n\t\t\ticonRight = undefined,\n\t\t\ticonLeft = undefined,\n\t\t\tcount = props.count === undefined ? undefined : Number(props.count),\n\t\t\tshowDot = undefined,\n\t\t\ttooltip = undefined,\n\t\t\tround = false,\n\t\t\tstate = 'normal',\n\t\t\tfill = false,\n\t\t\ticonSize = props.iconSize === undefined ? 20 : Number(props.iconSize),\n\t\t\twidth = 'auto',\n\t\t\tunderline = false,\n\t\t\tborderRadius = undefined,\n\t\t\ticonColor = undefined,\n\t\t\tbgColor = undefined,\n\t\t\tbgColorDisabled = undefined,\n\t\t\tlabelColor = undefined,\n\t\t\ttransition = undefined,\n\t\t\tvariants = undefined,\n\t\t\tinitial = undefined,\n\t\t\tanimate = undefined,\n\t\t\texit = undefined,\n\t\t\tpaddingRight = undefined,\n\t\t\tpaddingLeft = undefined,\n\t\t\tprogress = false,\n\t\t\tworking = false,\n\t\t\tduration = undefined,\n\t\t\ttrigger = false,\n\t\t\tdestructive = false,\n\t\t\tonClick = () => null,\n\t\t\tonToolTip = () => null,\n\t\t\t...divAttributes\n\t\t} = props;\n\t\tconst { id: divId, className, style, ...rest } = divAttributes;\n\t\tconst divStyle = style ?? ({} as React.CSSProperties);\n\t\tconst divClass = className ? ` ${className}` : '';\n\n\t\tconst [btnState, setBtnState] = useState<'normal' | 'hover' | 'disabled'>(\n\t\t\tstate,\n\t\t);\n\t\tconst [btnWidth, setBtnWidth] = useState<number | string | undefined>(\n\t\t\tundefined,\n\t\t);\n\t\tconst [playing, setPlaying] = useState<boolean>(working);\n\t\tconst ref = useRef<HTMLDivElement | null>(null);\n\n\t\tconst handleClick = useCallback(\n\t\t\t(e: React.MouseEvent<any> | undefined) => {\n\t\t\t\tonToolTip(null);\n\t\t\t\tif (state === 'disabled') return;\n\t\t\t\tif (progress && duration) {\n\t\t\t\t\tsetPlaying(true);\n\t\t\t\t} else {\n\t\t\t\t\tonClick(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[onToolTip, state, progress, duration, onClick],\n\t\t);\n\n\t\tuseEffect(() => setBtnState(state), [state]);\n\t\tuseEffect(() => setPlaying(working), [working]);\n\n\t\t// memo button width - note the inclusion of unnecessary dependencies for story book purposes\n\t\t// biome-ignore lint/correctness/useExhaustiveDependencies: avoid expensive observers\n\t\tuseEffect(() => {\n\t\t\tif (!variant || !size || !labelSize) return;\n\t\t\tif (ref?.current) setBtnWidth(ref.current.offsetWidth);\n\t\t\telse setBtnWidth(width);\n\t\t}, [width, variant, labelSize, size, iconLeft, iconRight]);\n\n\t\tuseImperativeHandle(buttonRef, () => ({\n\t\t\ttriggerClick: () => handleClick(undefined),\n\t\t}));\n\n\t\tuseEffect(() => {\n\t\t\tif (trigger) handleClick(undefined);\n\t\t}, [trigger, handleClick]);\n\n\t\t// memo destructive check\n\t\tconst destructiveColor = useCallback(\n\t\t\t(icon: boolean) => {\n\t\t\t\tif (icon && variant === 'solid') {\n\t\t\t\t\treturn theme.current.colors['core-text-light'];\n\t\t\t\t}\n\t\t\t\tif (destructive) return theme.current.colors['feedback-warning'];\n\t\t\t\treturn theme.current.colors['core-text-primary'];\n\t\t\t},\n\t\t\t[destructive, theme, variant],\n\t\t);\n\n\t\t// memo solid styles\n\t\tconst solid = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tborder: '0px',\n\t\t\t\ticonColor: {\n\t\t\t\t\tnormal: iconColor || destructiveColor(true),\n\t\t\t\t\thover: iconColor || destructiveColor(true),\n\t\t\t\t\tdisabled: iconColor || destructiveColor(true),\n\t\t\t\t},\n\t\t\t\tbackground: {\n\t\t\t\t\tnormal:\n\t\t\t\t\t\tbgColor ||\n\t\t\t\t\t\t(destructive\n\t\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t\t: 'var(--core-button-primary)'),\n\t\t\t\t\thover:\n\t\t\t\t\t\tbgColor ||\n\t\t\t\t\t\t(destructive\n\t\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t\t: 'var(--core-button-primary)'),\n\t\t\t\t\tdisabled: bgColorDisabled || 'var(--core-button-disabled)',\n\t\t\t\t},\n\t\t\t\tborderColor: {\n\t\t\t\t\tnormal: 'transparent',\n\t\t\t\t\thover: 'transparent',\n\t\t\t\t\tdisabled: 'transparent',\n\t\t\t\t},\n\t\t\t\tcolor: {\n\t\t\t\t\tnormal:\n\t\t\t\t\t\tlabelColor || (destructive ? 'white' : 'var(--core-text-light)'),\n\t\t\t\t\thover:\n\t\t\t\t\t\tlabelColor || (destructive ? 'white' : 'var(--core-text-light)'),\n\t\t\t\t\tdisabled: 'var(--core-text-disabled)',\n\t\t\t\t},\n\t\t\t};\n\t\t}, [\n\t\t\tlabelColor,\n\t\t\tdestructive,\n\t\t\tdestructiveColor,\n\t\t\tbgColor,\n\t\t\tbgColorDisabled,\n\t\t\ticonColor,\n\t\t]);\n\n\t\t// memo outline styles\n\t\tconst outline = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tborder: '1px',\n\t\t\t\ticonColor: {\n\t\t\t\t\tnormal: iconColor || destructiveColor(true),\n\t\t\t\t\thover: iconColor || destructiveColor(true),\n\t\t\t\t\tdisabled: iconColor || 'var(--core-text-disabled)',\n\t\t\t\t},\n\t\t\t\tbackground: {\n\t\t\t\t\tnormal: bgColor || 'var(--core-surface-primary)',\n\t\t\t\t\thover: bgColor || 'var(--core-surface-primary)',\n\t\t\t\t\tdisabled: bgColorDisabled || 'var(--core-surface-primary)',\n\t\t\t\t},\n\t\t\t\tborderColor: {\n\t\t\t\t\tnormal: destructive\n\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t: 'var(--core-outline-primary)',\n\t\t\t\t\thover: destructive\n\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t: 'var(--core-outline-primary)',\n\t\t\t\t\tdisabled: 'var(--core-outline-primary)',\n\t\t\t\t},\n\t\t\t\tcolor: {\n\t\t\t\t\tnormal:\n\t\t\t\t\t\tlabelColor ||\n\t\t\t\t\t\t(destructive\n\t\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t\t: 'var(--core-text-primary)'),\n\t\t\t\t\thover:\n\t\t\t\t\t\tlabelColor ||\n\t\t\t\t\t\t(destructive\n\t\t\t\t\t\t\t? 'var(--feedback-warning)'\n\t\t\t\t\t\t\t: 'var(--core-text-special)'),\n\t\t\t\t\tdisabled: 'var(--core-text-disabled)',\n\t\t\t\t},\n\t\t\t};\n\t\t}, [\n\t\t\ticonColor,\n\t\t\tdestructive,\n\t\t\tbgColor,\n\t\t\tbgColorDisabled,\n\t\t\tlabelColor,\n\t\t\tdestructiveColor,\n\t\t]);\n\n\t\t// memo text styles\n\t\tconst text = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tborder: '1px',\n\t\t\t\ticonColor: {\n\t\t\t\t\tnormal: destructiveColor(true),\n\t\t\t\t\thover: destructiveColor(true),\n\t\t\t\t\tdisabled: 'var(--core-text-disabled)',\n\t\t\t\t},\n\t\t\t\tbackground: {\n\t\t\t\t\tnormal: 'transparent',\n\t\t\t\t\thover: 'transparent',\n\t\t\t\t\tdisabled: 'transparent',\n\t\t\t\t},\n\t\t\t\tborderColor: {\n\t\t\t\t\tnormal: 'transparent',\n\t\t\t\t\thover: 'transparent',\n\t\t\t\t\tdisabled: 'transparent',\n\t\t\t\t},\n\t\t\t\tcolor: {\n\t\t\t\t\tnormal: labelColor || destructiveColor(false),\n\t\t\t\t\thover: labelColor || destructiveColor(false),\n\t\t\t\t\tdisabled: 'var(--core-text-disabled)',\n\t\t\t\t},\n\t\t\t};\n\t\t}, [destructiveColor, labelColor]);\n\n\t\t// memo color styles\n\t\tconst colorStyles = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tsolid,\n\t\t\t\toutline,\n\t\t\t\ttext,\n\t\t\t};\n\t\t}, [solid, outline, text]);\n\n\t\t// Memoize sizing styles\n\t\tconst setPadding = useCallback(\n\t\t\t(side: 'left' | 'right') => {\n\t\t\t\tif (round) return 0;\n\t\t\t\tif (side === 'left' && iconLeft) return 20;\n\t\t\t\tif (side === 'right' && iconRight) return 20;\n\t\t\t\treturn 24;\n\t\t\t},\n\t\t\t[round, iconLeft, iconRight],\n\t\t);\n\n\t\tconst sizingStyles = useMemo(() => {\n\t\t\treturn {\n\t\t\t\tlarge: {\n\t\t\t\t\theight: 48,\n\t\t\t\t\tgap: 8,\n\t\t\t\t\ticonSize,\n\t\t\t\t\tpaddingLeft: setPadding('left'),\n\t\t\t\t\tpaddingRight: setPadding('right'),\n\t\t\t\t\twidth: round ? '48px' : btnWidth || 'auto',\n\t\t\t\t\tborderRadius: borderRadius ?? '500px',\n\t\t\t\t},\n\t\t\t\tmedium: {\n\t\t\t\t\theight: 36,\n\t\t\t\t\tgap: 8,\n\t\t\t\t\ticonSize,\n\t\t\t\t\tpaddingLeft: setPadding('left'),\n\t\t\t\t\tpaddingRight: setPadding('right'),\n\t\t\t\t\twidth: round ? '36px' : btnWidth || 'auto',\n\t\t\t\t\tborderRadius: borderRadius ?? '500px',\n\t\t\t\t},\n\t\t\t\ttext: {\n\t\t\t\t\theight: 20,\n\t\t\t\t\tgap: 8,\n\t\t\t\t\ticonSize,\n\t\t\t\t\tpaddingLeft: 0,\n\t\t\t\t\tpaddingRight: 0,\n\t\t\t\t\tbtnWidth,\n\t\t\t\t\tborderRadius: 0,\n\t\t\t\t},\n\t\t\t};\n\t\t}, [iconSize, btnWidth, round, borderRadius, setPadding]);\n\n\t\t// Memoize handleMouseEnter\n\t\tconst handleMouseEnter = useCallback(\n\t\t\t(e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n\t\t\t\tif (btnState !== 'disabled') setBtnState('hover');\n\t\t\t\tif (!ref?.current || !tooltip) return;\n\t\t\t\tconst tip: ToolTip = {\n\t\t\t\t\ttype: ToolTipType.button,\n\t\t\t\t\tpayload: { label: tooltip },\n\t\t\t\t\tevent: e,\n\t\t\t\t\tref,\n\t\t\t\t};\n\t\t\t\tonToolTip(tip);\n\t\t\t},\n\t\t\t[btnState, tooltip, onToolTip],\n\t\t);\n\n\t\t// Memoize handleMouseLeave\n\t\tconst handleMouseLeave = useCallback(() => {\n\t\t\tif (btnState !== 'disabled') setBtnState('normal');\n\t\t\tif (tooltip) onToolTip(null);\n\t\t}, [btnState, tooltip, onToolTip]);\n\n\t\t// Memoize handleDidStop\n\t\tconst handleDidStop = useCallback(() => {\n\t\t\tsetPlaying(false);\n\t\t\tonClick(undefined);\n\t\t}, [onClick]);\n\n\t\t// Memoize showLabel\n\t\tconst shouldShowLabel = useMemo(\n\t\t\t() => !(playing && !iconLeft && !iconRight) && Boolean(label),\n\t\t\t[playing, iconLeft, iconRight, label],\n\t\t);\n\n\t\t// Memoize button styles\n\t\tconst buttonStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\tcolor: colorStyles[variant].color[btnState],\n\t\t\t\tbackground: fill\n\t\t\t\t\t? theme.current.colors['core-surface-primary']\n\t\t\t\t\t: colorStyles[variant].background[state],\n\t\t\t\tpaddingRight: paddingRight ?? sizingStyles[size].paddingRight,\n\t\t\t\tpaddingLeft: paddingLeft ?? sizingStyles[size].paddingLeft,\n\t\t\t\tborderRadius: sizingStyles[size].borderRadius,\n\t\t\t\theight: sizingStyles[size].height,\n\t\t\t\tmaxHeight: sizingStyles[size].height,\n\t\t\t\tminHeight: sizingStyles[size].height,\n\t\t\t\tflex: width === 'fill' ? 1 : 'unset',\n\t\t\t\tgap: sizingStyles[size].gap,\n\t\t\t\tborderWidth: colorStyles[variant].border,\n\t\t\t\tborderStyle: 'solid' as const,\n\t\t\t\tborderColor: colorStyles[variant].borderColor[btnState],\n\t\t\t\tcursor:\n\t\t\t\t\tstate === 'disabled' ? ('default' as const) : ('pointer' as const),\n\t\t\t\ttransition: 'all 0s ease-in-out 0s',\n\t\t\t}),\n\t\t\t[\n\t\t\t\tcolorStyles,\n\t\t\t\tvariant,\n\t\t\t\tbtnState,\n\t\t\t\tfill,\n\t\t\t\ttheme,\n\t\t\t\tstate,\n\t\t\t\tpaddingRight,\n\t\t\t\tpaddingLeft,\n\t\t\t\tsizingStyles,\n\t\t\t\tsize,\n\t\t\t\twidth,\n\t\t\t],\n\t\t);\n\n\t\t// memo icon stroke color\n\t\tconst iconStrokeColor = useMemo(\n\t\t\t() => colorStyles[variant].iconColor[state],\n\t\t\t[colorStyles, variant, state],\n\t\t);\n\n\t\t// memo progress color\n\t\tconst progressColor = useMemo(\n\t\t\t() =>\n\t\t\t\tdestructive\n\t\t\t\t\t? theme.current.colors['feedback-warning']\n\t\t\t\t\t: colorStyles[variant].color[btnState],\n\t\t\t[destructive, theme, colorStyles, variant, btnState],\n\t\t);\n\n\t\tconst setStyle = useCallback((value: string | number | undefined) => {\n\t\t\tif (value === undefined) return 'unset';\n\t\t\tif (typeof value === 'number') return `${value}px`;\n\t\t\treturn value;\n\t\t}, []);\n\n\t\tconst iconDivSize = useMemo(() => {\n\t\t\tif (round) return `${buttonStyle.minHeight}px`;\n\t\t\treturn iconSize ? setStyle(iconSize) : 'unset';\n\t\t}, [round, iconSize, buttonStyle, setStyle]);\n\n\t\tconst cssVars = useMemo(() => {\n\t\t\treturn {\n\t\t\t\t'--ui-button-decoration': underline ? 'underline' : 'unset',\n\t\t\t\t'--ui-button-min-width': btnWidth ? setStyle(btnWidth) : 'unset',\n\t\t\t\t'--ui-button-icon-size': iconDivSize,\n\t\t\t} as React.CSSProperties;\n\t\t}, [underline, btnWidth, setStyle, iconDivSize]);\n\n\t\t/* START.DEBUG */\n\t\tuseTrackRenders(props, 'UIButton');\n\t\t/* END.DEBUG */\n\n\t\treturn (\n\t\t\t<motion.div\n\t\t\t\tid={divId}\n\t\t\t\tclassName={`${css.button}${divClass}`}\n\t\t\t\tref={ref}\n\t\t\t\tonMouseEnter={handleMouseEnter}\n\t\t\t\tonMouseLeave={handleMouseLeave}\n\t\t\t\tstyle={{ ...divStyle, ...buttonStyle, ...cssVars }}\n\t\t\t\ttransition={transition}\n\t\t\t\tvariants={variants}\n\t\t\t\tinitial={initial}\n\t\t\t\tanimate={animate}\n\t\t\t\texit={exit}\n\t\t\t\tonClick={handleClick}\n\t\t\t\t{...(rest as any)}\n\t\t\t>\n\t\t\t\t{!playing && iconLeft && (\n\t\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname={iconLeft}\n\t\t\t\t\t\t\tsize={sizingStyles[size].iconSize}\n\t\t\t\t\t\t\tstrokeColor={iconStrokeColor}\n\t\t\t\t\t\t\tpointer={state !== 'disabled'}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{playing && iconLeft && (\n\t\t\t\t\t<ProgressIndicator\n\t\t\t\t\t\tshow={playing}\n\t\t\t\t\t\tdidStop={handleDidStop}\n\t\t\t\t\t\tduration={duration}\n\t\t\t\t\t\tsize={sizingStyles[size].iconSize}\n\t\t\t\t\t\tcolor={progressColor}\n\t\t\t\t\t\tinline\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{playing && !iconLeft && !iconRight && (\n\t\t\t\t\t<ProgressIndicator\n\t\t\t\t\t\tshow={playing}\n\t\t\t\t\t\tdidStop={handleDidStop}\n\t\t\t\t\t\tduration={duration}\n\t\t\t\t\t\tsize={sizingStyles[size].iconSize}\n\t\t\t\t\t\tcolor={progressColor}\n\t\t\t\t\t\tinline={false}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{shouldShowLabel && (\n\t\t\t\t\t<div className={`${css.label} ${css[labelSize]}`}>{label}</div>\n\t\t\t\t)}\n\t\t\t\t{playing && iconRight && (\n\t\t\t\t\t<ProgressIndicator\n\t\t\t\t\t\tshow={playing}\n\t\t\t\t\t\tdidStop={handleDidStop}\n\t\t\t\t\t\tduration={duration}\n\t\t\t\t\t\tsize={sizingStyles[size].iconSize}\n\t\t\t\t\t\tcolor={progressColor}\n\t\t\t\t\t\tinline\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{!playing && iconRight && (\n\t\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname={iconRight}\n\t\t\t\t\t\t\tsize={sizingStyles[size].iconSize}\n\t\t\t\t\t\t\tstrokeColor={iconStrokeColor}\n\t\t\t\t\t\t\tpointer={state !== 'disabled'}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t<Dot show={!playing && showDot} />\n\t\t\t\t{!playing && count && (\n\t\t\t\t\t<div className={css.count}>\n\t\t\t\t\t\t<Badge variant={'light'} count={Number(count)} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</motion.div>\n\t\t);\n\t},\n);\n\nUIButtonComponent.displayName = 'UIButton';\n\nexport const UIButton = React.memo(UIButtonComponent);\n","import { memo, useCallback, useMemo } from 'react';\nimport { useTheme } from '../../../hooks';\nimport { Icon } from '../../Icon';\nimport { IconButton } from '../../IconButton';\nimport css from './ExcerptList.module.css';\nimport type { DocExcerpt, ExcerptListProps } from './_types';\n\nexport const ExcerptList = memo(function ExcerptList(\n\tprops: Readonly<ExcerptListProps>,\n) {\n\tconst {\n\t\texcerpts = [],\n\t\tonChange = () => null,\n\t\tonToolTip = () => null,\n\t} = props;\n\tconst theme = useTheme();\n\n\t// memo remove file\n\tconst handleRemoveFile = useCallback(\n\t\t(content: string | undefined) => {\n\t\t\tconst updatedList = excerpts.filter((excerpt: DocExcerpt) => {\n\t\t\t\treturn content !== excerpt.content;\n\t\t\t});\n\t\t\tonChange(updatedList);\n\t\t},\n\t\t[excerpts, onChange],\n\t);\n\n\tconst excerptItems = useMemo(() => {\n\t\treturn excerpts.map((excerpt: DocExcerpt, index: number) => {\n\t\t\treturn (\n\t\t\t\t<div className={css.excerptButton} key={`${excerpt.content}-${index}`}>\n\t\t\t\t\t<div className={css.content}>\n\t\t\t\t\t\t<div className={css.type}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"recent chats\"\n\t\t\t\t\t\t\t\tsize={16}\n\t\t\t\t\t\t\t\tstrokeColor={theme.current.colors['core-text-disabled']}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{excerpt.docTitle ? excerpt.docTitle : 'Document excerpt'}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className={css.label}>{excerpt.content}</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\ticon={'x'}\n\t\t\t\t\t\t\thover={false}\n\t\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\t\tframeSize={20}\n\t\t\t\t\t\t\ticonSize={20}\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\thandleRemoveFile(excerpt.content);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttooltip={'remove excerpt'}\n\t\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t);\n\t\t});\n\t}, [excerpts, theme.current.colors, onToolTip, handleRemoveFile]);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={css.excerptList}\n\t\t\tonKeyDown={(e) => e.stopPropagation()}\n\t\t\tonClick={(e) => e.stopPropagation()}\n\t\t>\n\t\t\t{excerptItems}\n\t\t</div>\n\t);\n});\n","import React, { useCallback, useMemo } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport type { FileIconDefinition, UIFileIconProps } from './_types';\nimport { UIFileIcons } from './_types';\n\nexport const UIFileIcon = React.memo((props: UIFileIconProps) => {\n\tconst {\n\t\tname = 'document',\n\t\tsize = 20,\n\t\tpointer = false,\n\t\tdisabled = false,\n\t\tonClick = () => null,\n\t\t...svgAttributes\n\t} = props;\n\tconst { id: svgId, className, style, ...rest } = svgAttributes;\n\tconst theme = useTheme();\n\n\tconst handleKeyDown = useCallback(\n\t\t(e: React.KeyboardEvent<SVGElement>) => {\n\t\t\tif (e.key === 'Enter' || e.key === ' ') {\n\t\t\t\te.preventDefault();\n\t\t\t\tonClick(e as any);\n\t\t\t}\n\t\t},\n\t\t[onClick],\n\t);\n\n\tconst FileIcon: FileIconDefinition[] = useMemo(() => {\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'pdf',\n\t\t\t\ticon: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\twidth={size}\n\t\t\t\t\t\theight={size}\n\t\t\t\t\t\tviewBox=\"0 0 20 20\"\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tcursor: disabled ? 'default' : pointer ? 'pointer' : 'inherit',\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonClick={(e) => onClick(e)}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\ttabIndex={pointer ? 0 : -1}\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"PDF document icon\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>PDF document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 4.5 19 L 15.5 19 C 16.328 19 17 18.328 17 17.5 L 17 5 L 14.5 5 C 13.672 5 13 4.328 13 3.5 L 13 1 L 4.5 1 C 3.672 1 3 1.672 3 2.5 L 3 17.5 C 3 18.328 3.672 19 4.5 19 Z\"\n\t\t\t\t\t\t\tfill=\"rgb(250,15,0)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 5.516 9.416 L 7.237 9.416 C 7.485 9.416 7.7 9.464 7.884 9.56 C 8.068 9.654 8.21 9.788 8.309 9.96 C 8.409 10.133 8.458 10.334 8.458 10.563 C 8.458 10.79 8.408 10.99 8.309 11.164 C 8.209 11.338 8.067 11.474 7.882 11.572 C 7.682 11.673 7.461 11.723 7.237 11.718 L 6.502 11.718 L 6.502 13 L 5.516 13 Z M 7.069 10.932 C 7.175 10.937 7.278 10.902 7.359 10.834 C 7.432 10.764 7.471 10.665 7.467 10.564 C 7.467 10.446 7.431 10.357 7.359 10.294 C 7.277 10.229 7.174 10.196 7.069 10.202 L 6.502 10.202 L 6.502 10.932 Z M 8.836 9.416 L 10.248 9.416 C 10.618 9.416 10.941 9.489 11.214 9.636 C 11.489 9.781 11.701 9.988 11.849 10.258 C 11.997 10.527 12.071 10.843 12.071 11.208 C 12.071 11.573 11.997 11.89 11.849 12.16 C 11.704 12.426 11.483 12.643 11.214 12.783 C 10.915 12.934 10.583 13.008 10.248 13 L 8.836 13 Z M 10.223 12.214 C 10.389 12.214 10.533 12.174 10.653 12.097 C 10.778 12.013 10.875 11.894 10.931 11.755 C 11 11.581 11.034 11.395 11.029 11.208 C 11.034 11.022 11.001 10.837 10.931 10.664 C 10.875 10.524 10.778 10.403 10.653 10.319 C 10.524 10.239 10.375 10.198 10.223 10.202 L 9.823 10.202 L 9.823 12.214 Z M 12.53 9.416 L 15.182 9.416 L 15.182 10.202 L 13.517 10.202 L 13.517 10.759 L 14.715 10.759 L 14.715 11.545 L 13.517 11.545 L 13.517 13 L 12.53 13 Z\"\n\t\t\t\t\t\t\tfill={theme.current.colors['core-icon-light']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 13 1 L 15 3 L 17 5 L 14 5 C 13.448 5 13 4.552 13 4 Z\"\n\t\t\t\t\t\t\tfill={theme.current.coreColors['brand-purple-300']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'spreadsheet',\n\t\t\t\ticon: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\twidth={size}\n\t\t\t\t\t\theight={size}\n\t\t\t\t\t\tviewBox=\"0 0 20 20\"\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tcursor: disabled ? 'default' : pointer ? 'pointer' : 'inherit',\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonClick={(e) => onClick(e)}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\ttabIndex={pointer ? 0 : -1}\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Spreadsheet document icon\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Spreadsheet document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 4.5 19 L 15.5 19 C 16.328 19 17 18.328 17 17.5 L 17 5 L 14.5 5 C 13.672 5 13 4.328 13 3.5 L 13 1 L 4.5 1 C 3.672 1 3 1.672 3 2.5 L 3 17.5 C 3 18.328 3.672 19 4.5 19 Z\"\n\t\t\t\t\t\t\tfill={theme.current.coreColors['brand-land-700']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 5 8 L 11 8 L 11 9.5 L 5 9.5 Z M 12 8 L 15 8 L 15 9.5 L 12 9.5 Z M 5 11 L 11 11 L 11 12.5 L 5 12.5 Z M 12 11 L 15 11 L 15 12.5 L 12 12.5 Z M 5 14 L 11 14 L 11 15.5 L 5 15.5 Z M 12 14 L 15 14 L 15 15.5 L 12 15.5 Z\"\n\t\t\t\t\t\t\tfill={theme.current.colors['core-icon-light']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 13 1 L 15 3 L 17 5 L 14 5 C 13.448 5 13 4.552 13 4 Z\"\n\t\t\t\t\t\t\tfill={theme.current.coreColors['brand-purple-300']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'document',\n\t\t\t\ticon: (\n\t\t\t\t\t<svg\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\twidth={size}\n\t\t\t\t\t\theight={size}\n\t\t\t\t\t\tviewBox=\"0 0 20 20\"\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tcursor: disabled ? 'default' : pointer ? 'pointer' : 'inherit',\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonClick={(e) => onClick(e)}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\ttabIndex={pointer ? 0 : -1}\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\taria-label=\"Document icon\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<title>Document</title>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 4.5 19 L 15.5 19 C 16.328 19 17 18.328 17 17.5 L 17 5 L 14.5 5 C 13.672 5 13 4.328 13 3.5 L 13 1 L 4.5 1 C 3.672 1 3 1.672 3 2.5 L 3 17.5 C 3 18.328 3.672 19 4.5 19 Z\"\n\t\t\t\t\t\t\tfill={theme.current.colors['core-badge-primary']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 6 14 L 14 14 M 6 10 L 12 10\"\n\t\t\t\t\t\t\tfill=\"transparent\"\n\t\t\t\t\t\t\tstrokeWidth=\"1.5\"\n\t\t\t\t\t\t\tstroke={theme.current.colors['core-icon-light']}\n\t\t\t\t\t\t\tstrokeMiterlimit=\"10\"\n\t\t\t\t\t\t\tstrokeDasharray=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<path\n\t\t\t\t\t\t\td=\"M 13 1 L 15 3 L 17 5 L 14 5 C 13.448 5 13 4.552 13 4 Z\"\n\t\t\t\t\t\t\tfill={theme.current.coreColors['brand-purple-300']}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</svg>\n\t\t\t\t),\n\t\t\t},\n\t\t];\n\t}, [size, disabled, onClick, pointer, theme, handleKeyDown]);\n\n\t// get the right icon in the array\n\tconst svgElement = FileIcon.filter((icon) => {\n\t\treturn icon.name.toLowerCase() === name.toLowerCase();\n\t});\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'UIFileIcon');\n\t/* END.DEBUG */\n\n\tif (svgElement.length > 0) {\n\t\tconst iconNode = svgElement[0].icon as React.ReactElement<any>;\n\t\treturn React.cloneElement(iconNode, {\n\t\t\tid: svgId,\n\t\t\tclassName,\n\t\t\tstyle: { ...(style ?? {}), ...(iconNode.props?.style ?? {}) },\n\t\t\tonClick: (e: React.MouseEvent<SVGElement, MouseEvent>) => onClick(e),\n\t\t\t...rest,\n\t\t});\n\t}\n\treturn null;\n});\n","import type React from 'react';\n\nexport type FileIconDefinition = {\n\tname: string;\n\ticon?: any;\n};\n\nexport enum UIFileIcons {\n\tPdf = 'pdf',\n\tDocument = 'document',\n\tSpreadhseet = 'spreadsheet',\n}\n\ntype UIFileIconBaseProps = {\n\tname?: UIFileIcons | string;\n\tsize?: number;\n\tpointer?: boolean;\n\tdisabled?: boolean;\n\tonClick?: (e: React.MouseEvent<SVGElement, MouseEvent>) => void;\n};\n\nexport type UIFileIconProps = Omit<\n\tReact.SVGAttributes<SVGSVGElement>,\n\tkeyof UIFileIconBaseProps\n> &\n\tUIFileIconBaseProps;\n","import { memo, useCallback } from 'react';\nimport { IconButton } from '../../IconButton';\nimport { UIFileIcon } from '../../UIFileIcon';\nimport { UIFileIcons } from '../../UIFileIcon/_types';\nimport css from './FileList.module.css';\nimport type { FileListProps } from './_types';\n\nexport const FileList = memo(function FileList(props: Readonly<FileListProps>) {\n\tconst { files = [], onChange = () => null, onToolTip = () => null } = props;\n\n\tconst handleRemoveFile = useCallback(\n\t\t(fileName: string) => {\n\t\t\tconst updatedList = files.filter((file: File) => {\n\t\t\t\treturn file.name !== fileName;\n\t\t\t});\n\t\t\tonChange(updatedList);\n\t\t},\n\t\t[files, onChange],\n\t);\n\n\tconst fileType = useCallback((file: File) => {\n\t\tswitch (file.type) {\n\t\t\tcase 'text/plain':\n\t\t\t\treturn 'Text file';\n\t\t\tcase 'text/html':\n\t\t\t\treturn 'Web HTML file';\n\t\t\tcase 'text/csv':\n\t\t\t\treturn 'CSV spread shseet';\n\t\t\tcase 'application/pdf':\n\t\t\t\treturn 'PDF document';\n\t\t\tcase 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n\t\t\tcase 'application/docx':\n\t\t\t\treturn 'Word document';\n\t\t\tdefault:\n\t\t\t\treturn 'Unknown file type';\n\t\t}\n\t}, []);\n\n\tconst fileIcon = useCallback((file: File) => {\n\t\tswitch (file.type) {\n\t\t\tcase 'text/plain':\n\t\t\tcase 'text/html':\n\t\t\tcase 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n\t\t\t\treturn UIFileIcons.Document;\n\t\t\tcase 'text/csv':\n\t\t\t\treturn UIFileIcons.Spreadhseet;\n\t\t\tcase 'application/pdf':\n\t\t\t\treturn UIFileIcons.Pdf;\n\t\t\tdefault:\n\t\t\t\treturn UIFileIcons.Document;\n\t\t}\n\t}, []);\n\n\tconst handleRemoveClick = useCallback(\n\t\t(e: React.MouseEvent, fileName: string) => {\n\t\t\te.stopPropagation();\n\t\t\thandleRemoveFile(fileName);\n\t\t},\n\t\t[handleRemoveFile],\n\t);\n\n\treturn (\n\t\t<div className={css.fileList}>\n\t\t\t{files.map((file: File, index: number) => {\n\t\t\t\treturn (\n\t\t\t\t\t<div className={css.fileButton} key={`${file.name}-${index}`}>\n\t\t\t\t\t\t<div className={css.content}>\n\t\t\t\t\t\t\t<div className={css.type}>\n\t\t\t\t\t\t\t\t<UIFileIcon name={fileIcon(file)} size={18} />\n\t\t\t\t\t\t\t\t{fileType(file)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={css.label}>{file.name}</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\ticon={'x'}\n\t\t\t\t\t\t\t\thover={false}\n\t\t\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\t\t\tframeSize={20}\n\t\t\t\t\t\t\t\ticonSize={20}\n\t\t\t\t\t\t\t\tonClick={(e) => handleRemoveClick(e, file.name)}\n\t\t\t\t\t\t\t\ttooltip={'remove file'}\n\t\t\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n});\n","import type { ToolTip } from '../../sharedTypes';\n\nexport type UserPresence = {\n\tid?: string;\n\tfirst?: string;\n\tlast?: string;\n\temail?: string;\n\tavatar?: string;\n\tcolor?: string;\n\tbgColor?: string;\n\tconversationID?: string;\n\tpromptState?: PrompState;\n\tpromptContent?: string;\n\tdocID?: string;\n\tdocRange?: { from: number; to: number };\n};\n\nexport enum PrompState {\n\tIdle = 'idle',\n\tDisabled = 'disabled',\n\tEnabled = 'enabled',\n}\n\nexport enum Role {\n\tOwner = 'owner',\n\tEditor = 'editor',\n\tViewer = 'viewer',\n}\n\nexport type PresensceColor = {\n\tbackground?: string;\n\tcolor?: string;\n};\n\nexport interface UserListProps {\n\tuserPresence?: UserPresence[];\n\towner?: string;\n\tcurrentUser?: string;\n\tpresenceID?: string;\n\tonTogglePrompt?: (userPresence: UserPresence) => void;\n\tonToolTip?: (tip: ToolTip | null) => void;\n}\n","import type React from 'react';\nimport { memo, useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTheme } from '../../../hooks';\nimport { Avatar } from '../../Avatar';\nimport css from './UserList.module.css';\nimport { PrompState, type UserListProps, type UserPresence } from './_types';\n\nfunction UserListComponent(props: Readonly<UserListProps>) {\n\tconst theme = useTheme();\n\tconst {\n\t\tuserPresence = [],\n\t\tonTogglePrompt = () => null,\n\t\towner = '',\n\t\tcurrentUser = '',\n\t\tpresenceID = '',\n\t} = props;\n\tconst [userList, setUserList] = useState<UserPresence[]>(userPresence);\n\tuseEffect(() => setUserList(userPresence), [userPresence]);\n\n\tconst handleTogglePrompt = useCallback(\n\t\t(user: UserPresence) => {\n\t\t\tif (currentUser !== owner) return;\n\t\t\tlet promptState: PrompState = PrompState.Disabled;\n\t\t\tif (user.promptState) {\n\t\t\t\tpromptState =\n\t\t\t\t\tuser.promptState === PrompState.Disabled\n\t\t\t\t\t\t? PrompState.Enabled\n\t\t\t\t\t\t: PrompState.Disabled;\n\t\t\t}\n\t\t\tconst presenceUpdate: UserPresence = { ...user, promptState };\n\t\t\tonTogglePrompt(presenceUpdate);\n\t\t},\n\t\t[currentUser, owner, onTogglePrompt],\n\t);\n\n\tconst getCssVars = useCallback(\n\t\t(enabled: boolean) =>\n\t\t\t({\n\t\t\t\t'--control-border-color': enabled\n\t\t\t\t\t? theme.current.colors['core-outline-primary']\n\t\t\t\t\t: theme.current.colors['feedback-warning'],\n\t\t\t\t'--cursor-background': enabled\n\t\t\t\t\t? theme.current.colors['core-icon-primary']\n\t\t\t\t\t: theme.current.colors['feedback-warning'],\n\t\t\t\t'--cursor-border-radius': enabled ? '100px' : '2px',\n\t\t\t\t'--cursor-animation': enabled ? 'blink 2s infinite' : 'none',\n\t\t\t}) as React.CSSProperties,\n\t\t[theme.current.colors],\n\t);\n\n\tconst renderedUserList = useMemo(\n\t\t() =>\n\t\t\tuserList.map((user: UserPresence, index: number) => {\n\t\t\t\tif (user.id === presenceID) return null;\n\t\t\t\tif (!user.promptContent || user.promptContent === '') return null;\n\n\t\t\t\tconst enabled = user.promptState !== PrompState.Disabled;\n\t\t\t\tconst cssVars = getCssVars(enabled);\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={css.userPrompt}\n\t\t\t\t\t\tkey={`${user.email}-${index}`}\n\t\t\t\t\t\tonClick={(e) => e.stopPropagation()}\n\t\t\t\t\t\tonKeyDown={(e) => e.stopPropagation()}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className={css.avatar}>\n\t\t\t\t\t\t\t<Avatar\n\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\tfirst={user.first}\n\t\t\t\t\t\t\t\tlast={user.last}\n\t\t\t\t\t\t\t\timage={user.avatar}\n\t\t\t\t\t\t\t\tbgColor={user.bgColor}\n\t\t\t\t\t\t\t\tcolor={user.color}\n\t\t\t\t\t\t\t\tborder={0}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className={css.prompt}>\n\t\t\t\t\t\t\t<p className={css.promptParagraph}>\n\t\t\t\t\t\t\t\t<strong className={css.promptStrong}>{user.first}:</strong>{' '}\n\t\t\t\t\t\t\t\t{user.promptContent}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{currentUser === owner &&\n\t\t\t\t\t\t\tcurrentUser !== user.email &&\n\t\t\t\t\t\t\tuser.promptContent !== '' && (\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName={css.control}\n\t\t\t\t\t\t\t\t\tstyle={cssVars}\n\t\t\t\t\t\t\t\t\trole={'button'}\n\t\t\t\t\t\t\t\t\taria-label={'Stop/Play'}\n\t\t\t\t\t\t\t\t\tonKeyDown={() => handleTogglePrompt(user)}\n\t\t\t\t\t\t\t\t\tonClick={() => handleTogglePrompt(user)}\n\t\t\t\t\t\t\t\t\ttabIndex={0}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className={css.cursor} />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t}),\n\t\t[userList, presenceID, currentUser, owner, getCssVars, handleTogglePrompt],\n\t);\n\n\treturn <div className={css.promptList}>{renderedUserList}</div>;\n}\n\nexport const UserList = memo(UserListComponent);\n","import type { DocExcerpt } from './ExcerptList/_types';\n\nexport type SendMessage = {\n\tid: string;\n\tcontent: string;\n\ttimestamp: string;\n\tpromptType: PromptType;\n\trole: Role;\n\thtmlContent: string;\n\tfiles: File[];\n\texcerpts: DocExcerpt[];\n\tdone: boolean;\n};\n\nexport enum PromptType {\n\tnone = -1,\n\ttext = 0,\n\texpand = 1,\n\tsummarize = 2,\n\tresearch = 3,\n\ttranslate = 4,\n\tshorten = 5,\n\tfile = 6,\n\tcompliance = 7,\n}\n\nexport enum Role {\n\tUSER = 'user',\n\tASSISTANT = 'assistant',\n\tTOOL = 'tool',\n\tSYSTEM = 'system',\n}\n\nexport type UploadDocument = {\n\tfileName?: string;\n\tmimeType?: string;\n\tsize?: number;\n\tdocType?: DocumentType;\n\tlastModified?: string;\n\tlocalURL?: string;\n\tfile?: File;\n};\n\nexport type JurisdictionFocus = {\n\tcountry?: string | null;\n\tstate?: string | null;\n};\n","import { AnimatePresence } from 'motion/react';\nimport type React from 'react';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useTheme } from '../../../hooks';\nimport { UIButton } from '../../UIButton';\nimport { ExcerptList } from '../ExcerptList/ExcerptList';\nimport type { DocExcerpt } from '../ExcerptList/_types';\nimport { FileList } from '../FileList/FileList';\nimport { UserList } from '../UserList/UserList';\nimport { PrompState, type UserPresence } from '../UserList/_types';\nimport {\n\ttype JurisdictionFocus,\n\tPromptType,\n\tRole,\n\ttype SendMessage,\n} from '../_types';\nimport css from './MessageInput.module.css';\nimport type { MessageInputProps } from './_types';\n\nexport function MessageInput(props: Readonly<MessageInputProps>) {\n\tconst {\n\t\tmaxHeight = 300,\n\t\tfocused = false,\n\t\terror = null,\n\t\tvalue = '',\n\t\tplaceholder = 'Ask me anytning HR compliance',\n\t\tisStreaming = false,\n\t\tisFetching = false,\n\t\tisShort = true,\n\t\tjurisdiction = null,\n\t\tfiles = [],\n\t\texcerpts = [],\n\t\tusers = [],\n\t\tcurrentUser,\n\t\tpresenceID,\n\t\towner,\n\t\tjurisdictionClick = () => null,\n\t\tattachClick = () => null,\n\t\tonChangeFiles = () => null,\n\t\tonChangeExcerpts = () => null,\n\t\tonTogglePrompt = () => null,\n\t\tonChange = () => null,\n\t\tonBlur = () => null,\n\t\tonFocus = () => null,\n\t\tonStop = () => null,\n\t\tonSend = () => null,\n\t\tonToolTip = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst theme = useTheme();\n\tconst ref = useRef<HTMLTextAreaElement>(null);\n\tconst wrapperRef = useRef<HTMLDivElement>(null);\n\tconst [message, setMessage] = useState<string>(value);\n\tconst [isFocused, setIsFocused] = useState<boolean>(focused);\n\tconst [promptType, setPromptType] = useState<PromptType>(PromptType.text);\n\tconst [invalid, setInvalid] = useState<string | null>(error);\n\tconst [remoteDisabled, setRemoteDisabled] = useState<boolean>(false);\n\n\t// reset size if the wrapper size changes\n\tuseEffect(() => {\n\t\tif (ref?.current) {\n\t\t\tref.current.style.height = '0px';\n\t\t\tref.current.style.height = `${Math.min(ref.current.scrollHeight, maxHeight)}px`;\n\t\t}\n\t}, [maxHeight]);\n\n\t// reset the message text of the active document is changed\n\tuseEffect(() => setMessage(value), [value]);\n\n\t// enable setting focus byt changing the focus prop\n\tuseEffect(() => {\n\t\tif (ref?.current) {\n\t\t\tif (focused) ref.current.focus();\n\t\t\telse ref.current.blur();\n\t\t\tsetIsFocused(focused);\n\t\t}\n\t}, [focused]);\n\n\t// disabled prompt if remote owner disabled the user\n\tuseEffect(() => {\n\t\tif (users.length > 0) {\n\t\t\tconst myPresensce = users.filter((user: UserPresence) => {\n\t\t\t\treturn user.email === currentUser;\n\t\t\t});\n\t\t\tif (myPresensce && myPresensce.length > 0) {\n\t\t\t\tsetRemoteDisabled(myPresensce[0].promptState === PrompState.Disabled);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tsetRemoteDisabled(false);\n\t}, [users, currentUser]);\n\n\t// update error is prop changes\n\tuseEffect(() => setInvalid(error), [error]);\n\n\tconst resetHeight = useCallback(() => {\n\t\tif (ref?.current) {\n\t\t\tref.current.style.height = '0px';\n\t\t\tref.current.style.height = `${Math.min(ref.current.scrollHeight, maxHeight)}px`;\n\t\t}\n\t}, [maxHeight]);\n\n\tconst doSubmit = useCallback(\n\t\t(\n\t\t\te:\n\t\t\t\t| React.MouseEvent<HTMLDivElement>\n\t\t\t\t| React.KeyboardEvent<HTMLTextAreaElement>\n\t\t\t\t| undefined,\n\t\t) => {\n\t\t\te?.preventDefault();\n\t\t\te?.stopPropagation();\n\t\t\tonToolTip(null);\n\t\t\tif (message !== '' && ref.current) {\n\t\t\t\tconst newMessage: SendMessage = {\n\t\t\t\t\tid: crypto.randomUUID(),\n\t\t\t\t\tcontent: message,\n\t\t\t\t\ttimestamp: new Date().toISOString(),\n\t\t\t\t\tpromptType,\n\t\t\t\t\trole: Role.USER,\n\t\t\t\t\thtmlContent: '',\n\t\t\t\t\tfiles,\n\t\t\t\t\texcerpts,\n\t\t\t\t\tdone: false,\n\t\t\t\t};\n\t\t\t\tonSend(newMessage);\n\t\t\t\tsetMessage('');\n\t\t\t\tonChange('');\n\t\t\t\tresetHeight();\n\t\t\t\tsetIsFocused(false);\n\t\t\t\tref.current.blur();\n\t\t\t\tref.current.value = '';\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\tmessage,\n\t\t\tpromptType,\n\t\t\tfiles,\n\t\t\texcerpts,\n\t\t\tonSend,\n\t\t\tonChange,\n\t\t\tresetHeight,\n\t\t\tonToolTip,\n\t\t],\n\t);\n\n\tconst handleKeyDown = useCallback(\n\t\t(e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n\t\t\tif (!e.shiftKey && e.key === 'Enter' && message !== '') doSubmit(e);\n\t\t\telse return;\n\t\t},\n\t\t[message, doSubmit],\n\t);\n\n\tconst setFocus = useCallback(() => {\n\t\tif (ref?.current) {\n\t\t\tref.current.focus();\n\t\t\tsetIsFocused(true);\n\t\t\tonFocus();\n\t\t}\n\t}, [onFocus]);\n\n\tconst setBlur = useCallback(() => {\n\t\tif (ref?.current) {\n\t\t\tref.current.blur();\n\t\t\tsetIsFocused(false);\n\t\t\tonBlur();\n\t\t}\n\t}, [onBlur]);\n\n\tconst setDisabled = useCallback(() => {\n\t\tif (remoteDisabled) return 'disabled';\n\t\tif (isStreaming) return 'normal';\n\t\tif (!isStreaming && files.length > 0) return 'normal';\n\t\tif (invalid && invalid !== '') return 'disabled';\n\t\tif (!isStreaming && isFetching) return 'disabled';\n\t\tif (!isStreaming && message === '') return 'disabled';\n\t\treturn 'normal';\n\t}, [remoteDisabled, isStreaming, files.length, invalid, isFetching, message]);\n\n\tconst iconColor = useCallback(() => {\n\t\tif (isFetching || isStreaming) {\n\t\t\tif (theme.current.name === 'lightMode')\n\t\t\t\treturn theme?.current.colors?.['core-text-light'];\n\t\t\treturn theme?.current.colors?.['core-surface-primary'];\n\t\t}\n\t\tif (message === '') {\n\t\t\treturn theme?.current.colors?.['core-surface-secondary'];\n\t\t}\n\t\treturn theme?.current.colors?.['core-text-light'];\n\t}, [\n\t\tisFetching,\n\t\tisStreaming,\n\t\ttheme.current.name,\n\t\ttheme?.current.colors,\n\t\tmessage,\n\t]);\n\n\tconst handleUpload = useCallback(\n\t\t(e: React.MouseEvent<any> | undefined, type: PromptType) => {\n\t\t\te?.preventDefault();\n\t\t\te?.stopPropagation();\n\t\t\tsetPromptType(type);\n\t\t\tattachClick(e);\n\t\t},\n\t\t[attachClick],\n\t);\n\n\tconst handleChange = useCallback(\n\t\t(input: string) => {\n\t\t\tif (message !== input) onChange(input);\n\t\t\tsetMessage(input);\n\t\t},\n\t\t[message, onChange],\n\t);\n\n\tconst handleStop = useCallback(\n\t\t(e: React.MouseEvent<any> | undefined) => {\n\t\t\te?.preventDefault();\n\t\t\te?.stopPropagation();\n\t\t\tonToolTip(null);\n\t\t\tsetBlur();\n\t\t\tonStop();\n\t\t},\n\t\t[onToolTip, setBlur, onStop],\n\t);\n\n\tconst working = useCallback(() => {\n\t\tif (isStreaming) return false;\n\t\tif (isFetching) return true;\n\t\treturn false;\n\t}, [isStreaming, isFetching]);\n\n\tconst toolTip = useCallback(() => {\n\t\tif (isStreaming) return 'Stop';\n\t\tif (isFetching) return 'Working ...';\n\t\treturn 'Send';\n\t}, [isStreaming, isFetching]);\n\n\tconst setJurisdiction = useCallback(() => {\n\t\tconst country = jurisdiction?.country;\n\t\tconst state = jurisdiction?.state;\n\t\tif (!country || country === 'None') return 'None';\n\t\tif (state !== 'None') return state;\n\t\treturn country;\n\t}, [jurisdiction?.country, jurisdiction?.state]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\tconst shadowValue = isShort ? 0 : 1;\n\t\treturn {\n\t\t\t'--wrapper-padding': isShort\n\t\t\t\t? '16px 12px 8px 16px'\n\t\t\t\t: '16px 12px 16px 16px',\n\t\t\t'--wrapper-shadow': `0 0 1px ${shadowValue}px transparent`,\n\t\t\t// biome-ignore lint/style/noUnusedTemplateLiteral: <explanation>\n\t\t\t'--wrapper-shadow-focused': `0 0 1px 2px var(--core-outline-special)`,\n\t\t\t'--input-wrapper-padding': isShort\n\t\t\t\t? '4px 4px 0px 4px'\n\t\t\t\t: '4px 4px 16px 4px',\n\t\t} as React.CSSProperties;\n\t}, [isShort]);\n\n\tconst wrapperClassName = [css.wrapper, isFocused ? 'focused' : '']\n\t\t.filter(Boolean)\n\t\t.join(' ');\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${wrapperClassName}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonKeyDown={() => null}\n\t\t\tonClick={() => {\n\t\t\t\tif (!isFocused) setFocus();\n\t\t\t}}\n\t\t\tref={wrapperRef}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<AnimatePresence initial={false}>\n\t\t\t\t{excerpts.length > 0 && (\n\t\t\t\t\t<ExcerptList\n\t\t\t\t\t\texcerpts={excerpts}\n\t\t\t\t\t\tonChange={(excerpts: DocExcerpt[]) => onChangeExcerpts(excerpts)}\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</AnimatePresence>\n\t\t\t<AnimatePresence initial={false}>\n\t\t\t\t{files.length > 0 && (\n\t\t\t\t\t<FileList\n\t\t\t\t\t\tfiles={files}\n\t\t\t\t\t\tonChange={(items: File[]) => onChangeFiles(items)}\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</AnimatePresence>\n\t\t\t<div className={css.inputWrapper} style={cssVars}>\n\t\t\t\t<textarea\n\t\t\t\t\tid={'messageInput'}\n\t\t\t\t\tname={'messageInput'}\n\t\t\t\t\tclassName={css.textarea}\n\t\t\t\t\tref={ref}\n\t\t\t\t\tvalue={message}\n\t\t\t\t\tonChange={({ target }) => handleChange(target.value)}\n\t\t\t\t\tonInput={() => resetHeight()}\n\t\t\t\t\tonKeyDown={(e) => handleKeyDown(e)}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\tdisabled={isStreaming}\n\t\t\t\t\tonFocus={() => setFocus()}\n\t\t\t\t\tonBlur={() => setBlur()}\n\t\t\t\t\trows={1}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<AnimatePresence initial={false}>\n\t\t\t\t{users.length > 0 && (\n\t\t\t\t\t<UserList\n\t\t\t\t\t\tuserPresence={users}\n\t\t\t\t\t\towner={owner}\n\t\t\t\t\t\tcurrentUser={currentUser}\n\t\t\t\t\t\tpresenceID={presenceID}\n\t\t\t\t\t\tonTogglePrompt={(presence) => onTogglePrompt(presence)}\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</AnimatePresence>\n\t\t\t<div className={css.buttonRow}>\n\t\t\t\t<div className={css.actionButtons}>\n\t\t\t\t\t<UIButton\n\t\t\t\t\t\tvariant={'outline'}\n\t\t\t\t\t\ticonLeft={'plus'}\n\t\t\t\t\t\ttooltip={'Attach file'}\n\t\t\t\t\t\tonClick={(e) => handleUpload(e, PromptType.file)}\n\t\t\t\t\t\tsize={'medium'}\n\t\t\t\t\t\ticonColor={theme.current.colors['core-icon-primary']}\n\t\t\t\t\t\tround\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t\t<UIButton\n\t\t\t\t\t\tpaddingRight={18}\n\t\t\t\t\t\tpaddingLeft={8}\n\t\t\t\t\t\tvariant={'outline'}\n\t\t\t\t\t\tlabel={`Focus: ${setJurisdiction()}`}\n\t\t\t\t\t\ttooltip={'Jurisdication Focus'}\n\t\t\t\t\t\tonClick={(_e) => jurisdictionClick()}\n\t\t\t\t\t\ticonLeft={'focus'}\n\t\t\t\t\t\tsize={'medium'}\n\t\t\t\t\t\ticonColor={theme.current.colors['core-icon-primary']}\n\t\t\t\t\t\tlabelColor={theme?.current.colors?.['core-text-secondary']}\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div className={css.send}>\n\t\t\t\t\t<UIButton\n\t\t\t\t\t\tvariant={'solid'}\n\t\t\t\t\t\ticonLeft={isStreaming ? 'stop' : 'arrow up'}\n\t\t\t\t\t\tbgColorDisabled={theme?.current.colors?.['core-badge-secondary']}\n\t\t\t\t\t\tbgColor={\n\t\t\t\t\t\t\tisFetching || isStreaming\n\t\t\t\t\t\t\t\t? theme?.current.colors?.['core-text-primary']\n\t\t\t\t\t\t\t\t: theme?.current.colors?.['core-button-primary']\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticonColor={iconColor()}\n\t\t\t\t\t\tstate={setDisabled()}\n\t\t\t\t\t\tsize={'medium'}\n\t\t\t\t\t\tprogress={true}\n\t\t\t\t\t\tworking={working()}\n\t\t\t\t\t\tround\n\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\tif (isStreaming) handleStop(e);\n\t\t\t\t\t\t\tif (isFetching) return;\n\t\t\t\t\t\t\tdoSubmit(e);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttooltip={toolTip()}\n\t\t\t\t\t\tonToolTip={(tip) => onToolTip(tip)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { accessibleKeyDown } from '../../util/utils';\nimport css from './Pager.module.css';\nimport type { PagerProps } from './_types';\n\nexport const Pager = React.memo((props: PagerProps) => {\n\tconst {\n\t\tsize = 8,\n\t\tindex = 0,\n\t\tcolor = undefined,\n\t\tcolorHover = undefined,\n\t\tcolorOn = undefined,\n\t\tpages = 2,\n\t\tgap = 4,\n\t\tonChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [selected, setSelected] = useState<number>(index);\n\n\tconst bullets = useMemo(() => {\n\t\treturn Array.from({ length: pages }, (_, i) => i);\n\t}, [pages]);\n\n\tuseEffect(() => setSelected(index), [index]);\n\n\tconst handleClick = useCallback(\n\t\t(i: number) => {\n\t\t\tsetSelected(i);\n\t\t\tonChange(i);\n\t\t},\n\t\t[onChange],\n\t);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--pager-gap': `${gap}px`,\n\t\t\t'--pager-size': `${size}px`,\n\t\t\t'--pager-color': color ?? 'var(--core-text-disabled)',\n\t\t\t'--pager-colorOn': colorOn ?? 'var(--core-text-primary)',\n\t\t\t'--pager-colorHover': colorHover ?? 'var(--core-text-disabled)',\n\t\t} as React.CSSProperties;\n\t}, [gap, size, color, colorOn, colorHover]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Pager');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{bullets.map((bulletId: number) => {\n\t\t\t\treturn (\n\t\t\t\t\t<input\n\t\t\t\t\t\tclassName={`${css.bullet} ${selected === bulletId ? css.selected : ''}`}\n\t\t\t\t\t\ttype={'button'}\n\t\t\t\t\t\tkey={`paging_bullet_${bulletId}`}\n\t\t\t\t\t\tonClick={() => handleClick(bulletId)}\n\t\t\t\t\t\tonKeyDown={(e) => accessibleKeyDown(e, () => handleClick(bulletId))}\n\t\t\t\t\t\tonTouchStart={() => handleClick(bulletId)}\n\t\t\t\t\t\ttabIndex={bulletId}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n});\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { IconButton } from '../IconButton';\nimport css from './RadioButton.module.css';\nimport type { RadioButtonOption, RadioButtonProps } from './_types';\n\nexport const RadioButton = React.memo((props: RadioButtonProps) => {\n\tconst theme = useTheme();\n\tconst {\n\t\toption,\n\t\tselected = false,\n\t\tdeselect = true,\n\t\ttabIndex = 1,\n\t\twrap = false,\n\t\tlist = false,\n\t\thideRadio = false,\n\t\ttoggleIcon = true,\n\t\tnoFrame = false,\n\t\ticonColor,\n\t\tonChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [isSelected, setIsSelected] = useState<boolean>(selected);\n\n\tuseEffect(() => setIsSelected(selected), [selected]);\n\n\tconst handleChange = useCallback(() => {\n\t\tif (isSelected && !deselect) return;\n\t\tsetIsSelected(!isSelected);\n\t\tonChange(option, !isSelected);\n\t}, [isSelected, deselect, onChange, option]);\n\n\tconst handleKeyDown = useCallback(\n\t\t(e: React.KeyboardEvent) => {\n\t\t\tif (e.code === 'Space') {\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t\thandleChange();\n\t\t\t}\n\t\t},\n\t\t[handleChange],\n\t);\n\n\t// memo icon color\n\tconst setIconColor = useMemo(() => {\n\t\tif (iconColor) return iconColor;\n\t\treturn toggleIcon && isSelected\n\t\t\t? theme.current.colors['core-button-primary']\n\t\t\t: theme.current.colors['core-icon-primary'];\n\t}, [iconColor, toggleIcon, isSelected, theme]);\n\n\t// memo icon name\n\tconst iconName = useMemo(\n\t\t() => (toggleIcon && isSelected ? 'checked' : 'unchecked'),\n\t\t[toggleIcon, isSelected],\n\t);\n\n\t// memo flex\n\tconst setFlex = useMemo(() => {\n\t\tif (list) return 'unset';\n\t\treturn wrap ? '40%' : '1';\n\t}, [list, wrap]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--rb-max-width': wrap ? '50%' : '100%',\n\t\t\t'--rb-flex': setFlex,\n\t\t\t'--rb-padding': noFrame ? '0' : '8px 16px 8px 10px',\n\t\t\t'--rb-bg': isSelected ? 'var(--core-surface-secondary)' : 'transparent',\n\t\t} as React.CSSProperties;\n\t}, [setFlex, isSelected, wrap, noFrame]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Radio Button');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={handleChange}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\ttabIndex={tabIndex}\n\t\t\taria-label={option.title}\n\t\t\taria-selected={isSelected}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{option.icon && !hideRadio && (\n\t\t\t\t<div className={css.radioIcon}>\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\ticon={iconName}\n\t\t\t\t\t\tcolor={setIconColor}\n\t\t\t\t\t\tframeSize={20}\n\t\t\t\t\t\ticonSize={20}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t<div className={css.radioContent}>\n\t\t\t\t<div className={css.radioTitle}>{option.title}</div>\n\t\t\t\t{option.description && option.description !== '' && (\n\t\t\t\t\t<div className={css.radioSummary}>{option.description}</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n});\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { RadioButton, type RadioButtonOption } from '../RadioButton';\nimport css from './RadioButtonList.module.css';\nimport type { RadioButtonListProps } from './_types';\n\nexport const RadioButtonList = React.memo((props: RadioButtonListProps) => {\n\tconst {\n\t\toptions = [],\n\t\tselectedIndexes = null,\n\t\tselectedOptions = null,\n\t\tlabel = null,\n\t\tdeselect = false,\n\t\tmultiSelect = false,\n\t\twrap = false,\n\t\ttabIndexSeed = 0,\n\t\tspacer = 'none',\n\t\tcustom = 0,\n\t\tgap = 16,\n\t\thideRadio = false,\n\t\tnoFrame = false,\n\t\ttoggleIcon = true,\n\t\ticonColor = undefined,\n\t\ticonSelectedColor = undefined,\n\t\tonChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// internal array of selected indexes\n\tconst [selected, setSelected] = useState<number[] | null>(selectedIndexes);\n\n\t// update indexes selected based on prop\n\tuseEffect(() => setSelected(selectedIndexes), [selectedIndexes]);\n\n\t// update indexes selected if setting selections via field name / values\n\tuseEffect(() => {\n\t\tif (!selectedOptions || !options) return;\n\t\tconst selections: number[] = [];\n\t\tfor (const item of selectedOptions) {\n\t\t\tfor (let i = 0; i < options.length; i++) {\n\t\t\t\tconst option = options[i];\n\t\t\t\tif (option.fieldName === item) selections.push(i);\n\t\t\t}\n\t\t}\n\t\tsetSelected(selections);\n\t}, [selectedOptions, options]);\n\n\t// returns if a specific option index is selected\n\tconst isSelected = useCallback(\n\t\t(index: number): boolean => {\n\t\t\tif (!selected) return false;\n\t\t\treturn selected.includes(index);\n\t\t},\n\t\t[selected],\n\t);\n\n\tconst doMultiSelection = useCallback(\n\t\t(selection: number, state: boolean) => {\n\t\t\t// **** update the selected indexes\n\t\t\tlet indexesSelected: number[] = selected ? [...selected] : [];\n\t\t\t// if deselecting and there are selections\n\t\t\tif (!state && selected) {\n\t\t\t\tconst removeAt = indexesSelected.indexOf(selection);\n\t\t\t\tindexesSelected.splice(removeAt, 1);\n\t\t\t} else if (state) {\n\t\t\t\tindexesSelected = selected ? [...selected] : [];\n\t\t\t\tconst exists = indexesSelected.includes(selection);\n\t\t\t\tif (!exists) indexesSelected.push(selection);\n\t\t\t}\n\t\t\t// **** create an array of selected options\n\t\t\tlet updatedSelections: RadioButtonOption[] | null = [];\n\t\t\tfor (const index of indexesSelected || []) {\n\t\t\t\tif (updatedSelections) updatedSelections.push(options[index]);\n\t\t\t}\n\t\t\tif (updatedSelections.length < 1) updatedSelections = null;\n\t\t\tsetSelected(indexesSelected || null);\n\t\t\tonChange(updatedSelections, indexesSelected || null);\n\t\t},\n\t\t[selected, options, onChange],\n\t);\n\n\tconst doSingleSelection = useCallback(\n\t\t(selection: number, state: boolean) => {\n\t\t\tonChange(state ? [options[selection]] : [], state ? [selection] : []);\n\t\t\tsetSelected(state ? [selection] : null);\n\t\t},\n\t\t[options, onChange],\n\t);\n\n\tconst handleChange = useCallback(\n\t\t(selection: number, state: boolean) => {\n\t\t\t// it not multiselect just pass the current selection\n\t\t\tif (multiSelect) {\n\t\t\t\tdoMultiSelection(selection, state);\n\t\t\t} else {\n\t\t\t\tdoSingleSelection(selection, state);\n\t\t\t}\n\t\t},\n\t\t[multiSelect, doMultiSelection, doSingleSelection],\n\t);\n\n\tconst renderedOptions = useMemo(() => {\n\t\treturn options.map((option: RadioButtonOption, i: number) => {\n\t\t\treturn (\n\t\t\t\t<RadioButton\n\t\t\t\t\toption={option}\n\t\t\t\t\tselected={isSelected(i)}\n\t\t\t\t\tkey={`${option.fieldName}_${i}`}\n\t\t\t\t\tdeselect={deselect}\n\t\t\t\t\twrap={wrap}\n\t\t\t\t\tnoFrame={noFrame}\n\t\t\t\t\thideRadio={hideRadio}\n\t\t\t\t\tonChange={(_option, state) => handleChange(i, state)}\n\t\t\t\t\ttabIndex={i + 1 + 100 * tabIndexSeed}\n\t\t\t\t\ttoggleIcon={toggleIcon}\n\t\t\t\t\ticonColor={isSelected(i) ? iconSelectedColor : iconColor}\n\t\t\t\t/>\n\t\t\t);\n\t\t});\n\t}, [\n\t\toptions,\n\t\tisSelected,\n\t\tdeselect,\n\t\twrap,\n\t\tnoFrame,\n\t\thideRadio,\n\t\thandleChange,\n\t\ttabIndexSeed,\n\t\ttoggleIcon,\n\t\ticonColor,\n\t\ticonSelectedColor,\n\t]);\n\n\t// memo margin\n\tconst margin = useMemo(() => {\n\t\tif (spacer === 'none') return 0;\n\t\tif (spacer === 'custom') return custom;\n\t\treturn 0;\n\t}, [spacer, custom]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--rb-list-flex-wrap': wrap ? 'wrap' : 'nowrap',\n\t\t\t'--rb-list-margin-bottom': noFrame ? 0 : `${margin}px`,\n\t\t\t'--rb-gap': `${gap}px`,\n\t\t} as React.CSSProperties;\n\t}, [wrap, margin, gap, noFrame]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Radio Button List');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper} ${noFrame ? css.column : css.row}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{label}\n\t\t\t{renderedOptions}\n\t\t</div>\n\t);\n});\n","export interface DebouncedFunction<T extends (...args: any[]) => any> {\n\t(...args: Parameters<T>): void;\n\tcancel: () => void;\n\tflush: () => void;\n}\n\n/**\n * General debounce utility with delay setting and cancel/flush methods\n * to clear a \"debounce\" or immediately \"execute\" the debounced function\n */\nexport function debounce<T extends (...args: any[]) => any>(\n\tfunc: T,\n\tdelay: number,\n): DebouncedFunction<T> {\n\tlet timeoutId: ReturnType<typeof setTimeout> | null = null;\n\tlet lastArgs: Parameters<T> | null = null;\n\n\tconst debounced = function (this: any, ...args: Parameters<T>) {\n\t\tlastArgs = args;\n\n\t\tif (timeoutId !== null) {\n\t\t\tclearTimeout(timeoutId);\n\t\t}\n\n\t\ttimeoutId = setTimeout(() => {\n\t\t\tfunc.apply(this, lastArgs ?? []);\n\t\t\ttimeoutId = null;\n\t\t\tlastArgs = null;\n\t\t}, delay);\n\t} as DebouncedFunction<T>;\n\n\tdebounced.cancel = () => {\n\t\tif (timeoutId !== null) {\n\t\t\tclearTimeout(timeoutId);\n\t\t\ttimeoutId = null;\n\t\t\tlastArgs = null;\n\t\t}\n\t};\n\n\tdebounced.flush = function (this: any) {\n\t\tif (timeoutId !== null && lastArgs !== null) {\n\t\t\tclearTimeout(timeoutId);\n\t\t\tfunc.apply(this, lastArgs);\n\t\t\ttimeoutId = null;\n\t\t\tlastArgs = null;\n\t\t}\n\t};\n\n\treturn debounced;\n}\n","import React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useObserveResize } from '../../hooks/useObserveResize/useObserveResize';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { debounce } from '../../util/debounce';\nimport { pointerPosition } from '../../util/utils';\nimport css from './Slider.module.css';\nimport type { SliderProps } from './_types';\n\nexport const Slider = React.memo((props: SliderProps) => {\n\tconst {\n\t\tvalue = 25,\n\t\tscaleMin = 0,\n\t\tscaleMax = 100,\n\t\twidth,\n\t\theight = 2,\n\t\ttouchHeight = 24,\n\t\ttrackHeadSize = 7,\n\t\theadType = 'round',\n\t\ttrackHeadWidth = 4,\n\t\tcursor = 'default',\n\t\theadColor = 'var(--core-text-primary)',\n\t\ttrackColor = 'var(--core-surface-secondary)',\n\t\tprogressColor = 'var(--core-text-primary)',\n\t\tonChange = () => null,\n\t\tonDragChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// hook into the relevant on screen elements\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst track = useRef<HTMLDivElement>(null);\n\tconst head = useRef<HTMLDivElement>(null);\n\n\t// tracking slider values via ref to avoid state issues from direct listeners\n\tconst absProgressRef = useRef<number>(value);\n\tconst relativeProgressRef = useRef<number>(value / scaleMax);\n\tconst didMount = useRef<boolean>(false);\n\n\t// use resize observer to track changes to container size for responsive behavior\n\tconst size = useObserveResize(ref, { ignore: 'height' });\n\n\t// use a \"debounce\" to limit the number of onChange calls\n\tconst debouncedOnChange = debounce((value: number, percent: number) => {\n\t\tonChange(value, percent);\n\t}, 0);\n\n\t// set padding based on head size since dragging the head all the way to the edge will move it\n\t// such that half the head would be outside the track constraints\n\tconst padding = useMemo(() => {\n\t\tif (headType === 'none' || !trackHeadSize) return 0;\n\t\treturn trackHeadSize / 2;\n\t}, [headType, trackHeadSize]);\n\n\t// set the position of the track progress and track head\n\t// based on the pixel position / adjust for half the size of the head (= padding)\n\tconst setTrackAndHead = useCallback(\n\t\t(pixelPos: number, max = false) => {\n\t\t\tconst tr = track.current;\n\t\t\tconst hd = head.current;\n\t\t\tlet adjustment = 0;\n\t\t\tif (pixelPos === 0) adjustment = padding;\n\t\t\tif (max) adjustment = -padding;\n\t\t\tif (tr && hd) {\n\t\t\t\ttr.style.width = `${pixelPos}px`;\n\t\t\t\thd.style.left = `${pixelPos - padding + adjustment}px`;\n\t\t\t}\n\t\t\tdidMount.current = true;\n\t\t},\n\t\t[padding],\n\t);\n\n\t// set the initial position of the slider absolute value within scale\n\tconst initialProgress = useCallback(\n\t\t(current: number): void => {\n\t\t\tif (!ref?.current) return;\n\t\t\tconst sliderWidth = ref.current.getBoundingClientRect().width;\n\t\t\tlet adjustedCurrent = current;\n\t\t\tif (adjustedCurrent > scaleMax || adjustedCurrent < scaleMin) {\n\t\t\t\tconsole.warn('Slider outside range. Adjusted to mid point.');\n\t\t\t\tadjustedCurrent = (scaleMax - scaleMin) / 2;\n\t\t\t}\n\t\t\tconst normalized = (adjustedCurrent - scaleMin) / (scaleMax - scaleMin);\n\t\t\tconst pixelPos = normalized * sliderWidth;\n\t\t\tabsProgressRef.current = adjustedCurrent; // updated the progress value\n\t\t\trelativeProgressRef.current = normalized; // updated the relative value\n\t\t\tconst max = relativeProgressRef.current === 1; // flag if at max value\n\t\t\tsetTrackAndHead(pixelPos, max);\n\t\t\tdidMount.current = true;\n\t\t},\n\t\t[scaleMax, scaleMin, setTrackAndHead],\n\t);\n\n\t// based on x pos of a mouse drag/click, update the percent and normalized value of the slider\n\tconst progress = useCallback(\n\t\t(posX: number) => {\n\t\t\tconst el = ref?.current;\n\t\t\tif (!el) return { value: 0, percent: 0 };\n\t\t\tconst rect = el.getBoundingClientRect();\n\t\t\tconst sliderWidth = rect.width;\n\t\t\trelativeProgressRef.current = posX / sliderWidth;\n\t\t\tabsProgressRef.current =\n\t\t\t\tscaleMin + relativeProgressRef.current * (scaleMax - scaleMin);\n\t\t},\n\t\t[scaleMax, scaleMin],\n\t);\n\n\t// take a mouse pos and sets the slider position accordingly\n\t// returns the pos value making sure it's in bounds\n\tconst updateSlider = useCallback(\n\t\t(e: any) => {\n\t\t\tconst newPos = pointerPosition(e);\n\t\t\tconst el = ref?.current;\n\t\t\tif (!el) return 0;\n\t\t\tconst rect = el.getBoundingClientRect();\n\t\t\tconst sliderWidth = rect.width;\n\t\t\tlet pos: number = newPos - rect.x;\n\t\t\tif (pos > sliderWidth - padding) pos = sliderWidth;\n\t\t\telse if (pos < padding) pos = 0;\n\t\t\tconst max = pos === sliderWidth;\n\t\t\tsetTrackAndHead(pos, max);\n\t\t\treturn pos;\n\t\t},\n\t\t[setTrackAndHead, padding],\n\t);\n\n\t// on mouse move, push slider to the updated mouse position and trigger the update events\n\t// use ref values in the call back to avoid state issues\n\tconst handleMouseMove = useCallback(\n\t\t(e: MouseEvent | TouchEvent) => {\n\t\t\te.preventDefault();\n\t\t\tconst el = ref?.current;\n\t\t\tif (el) {\n\t\t\t\tconst pos = updateSlider(e); // return new pixel pos and updates head/track\n\t\t\t\tprogress(pos); // update the slider progress\n\t\t\t\tdebouncedOnChange(absProgressRef.current, relativeProgressRef.current); // debounce updates\n\t\t\t}\n\t\t},\n\t\t[progress, updateSlider, debouncedOnChange],\n\t);\n\n\t// on mouse up, push slider to the updated mouse up position and trigger the update events\n\t// also cleaning up the mouse move and mouse up listeners attached to the window\n\tconst handleMouseUp = useCallback(\n\t\t(e: MouseEvent | TouchEvent) => {\n\t\t\te.preventDefault();\n\t\t\tconst el = ref?.current;\n\t\t\tif (el) {\n\t\t\t\tconst pos = updateSlider(e); // return new pixel pos and updates head/track\n\t\t\t\tprogress(pos);\n\t\t\t\tdebouncedOnChange.cancel(); // cancel current debounce if any\n\t\t\t\tonDragChange(absProgressRef.current, relativeProgressRef.current); // immediate update\n\t\t\t\tonChange(absProgressRef.current, relativeProgressRef.current);\n\t\t\t}\n\t\t\tglobalThis.removeEventListener('mousemove', handleMouseMove, false);\n\t\t\tglobalThis.removeEventListener('touchmove', handleMouseMove, false);\n\t\t\tglobalThis.removeEventListener('mouseup', handleMouseUp, false);\n\t\t\tglobalThis.removeEventListener('touchend', handleMouseUp, false);\n\t\t},\n\t\t[\n\t\t\thandleMouseMove,\n\t\t\tprogress,\n\t\t\tupdateSlider,\n\t\t\tdebouncedOnChange,\n\t\t\tonDragChange,\n\t\t\tonChange,\n\t\t],\n\t);\n\n\t// On mouse down push the progress of then slider to the mouse down point\n\t// and trigger events - add the drag and mouse up window listeners\n\tconst handleMouseDown = useCallback(\n\t\t(e: MouseEvent | TouchEvent) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tglobalThis.addEventListener('mousemove', handleMouseMove, false);\n\t\t\tglobalThis.addEventListener('touchmove', handleMouseMove, false);\n\t\t\tglobalThis.addEventListener('mouseup', handleMouseUp, false);\n\t\t\tglobalThis.addEventListener('touchend', handleMouseUp, false);\n\t\t\tconst el = ref?.current;\n\t\t\tif (el) {\n\t\t\t\tconst pos = updateSlider(e); // return new pixel pos and updates head/track\n\t\t\t\tprogress(pos);\n\t\t\t\tdebouncedOnChange.cancel(); // cancel current debounce if any\n\t\t\t\tonChange(absProgressRef.current, relativeProgressRef.current); // immediate update\n\t\t\t\tonDragChange(absProgressRef.current, relativeProgressRef.current);\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\thandleMouseMove,\n\t\t\thandleMouseUp,\n\t\t\tonChange,\n\t\t\tonDragChange,\n\t\t\tprogress,\n\t\t\tupdateSlider,\n\t\t\tdebouncedOnChange,\n\t\t],\n\t);\n\n\t// on mount, set the initial position of the slider\n\tuseEffect(() => {\n\t\tif (didMount.current && value === absProgressRef.current) return;\n\t\tinitialProgress(value);\n\t}, [value, initialProgress]);\n\n\t// set up slider\n\tuseEffect(() => {\n\t\tconst el = ref?.current;\n\t\tel?.addEventListener('mousedown', handleMouseDown, false);\n\t\tel?.addEventListener('touchstart', handleMouseDown, false);\n\t\treturn () => {\n\t\t\tel?.removeEventListener('mousedown', handleMouseDown, false);\n\t\t\tel?.removeEventListener('touchstart', handleMouseDown, false);\n\t\t};\n\t}, [handleMouseDown]);\n\n\t// respond to size changes triggered by browser resizing as opposed to props\n\t// note: this causes an extra render with every width prop change\n\tuseEffect(() => {\n\t\tconst sliderWidth = ref?.current?.offsetWidth;\n\t\tif (!sliderWidth || size.width === 0) return;\n\t\tconst max = relativeProgressRef.current === 1;\n\t\tsetTrackAndHead(relativeProgressRef.current * sliderWidth, max);\n\t}, [size.width, setTrackAndHead]);\n\n\t// memo head color\n\tconst trackHeadColor = useMemo(() => {\n\t\tif (headType === 'none') return 'transparent';\n\t\treturn headColor ?? 'var(--core-text-primary)';\n\t}, [headColor, headType]);\n\n\t// memo head height\n\tconst headSize = useMemo(() => {\n\t\tif (headType === 'none') return height;\n\t\treturn trackHeadSize;\n\t}, [trackHeadSize, headType, height]);\n\n\t// memo head width\n\tconst headWidth = useMemo(() => {\n\t\tif (headType === 'round') return trackHeadSize;\n\t\treturn trackHeadWidth;\n\t}, [headType, trackHeadSize, trackHeadWidth]);\n\n\t// set container width\n\tconst setWidth = useMemo(() => {\n\t\tif (width && typeof width === 'string') {\n\t\t\tif (width === 'auto') return '100%';\n\t\t\treturn width;\n\t\t}\n\t\treturn `${width ?? 100}px`;\n\t}, [width]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--slider-padding': `${padding}px`,\n\t\t\t'--slider-width': setWidth,\n\t\t\t'--slider-height': `${height}px`,\n\t\t\t'--slider-touch-height': `${touchHeight}px`,\n\t\t\t'--slider-cursor': cursor,\n\t\t\t'--slider-head-display': height ? 'block' : 'none',\n\t\t\t'--slider-head-radius': headType === 'round' ? '100%' : '0px',\n\t\t\t'--slider-head-size': `${headSize}px`,\n\t\t\t'--slider-head-width': `${headWidth}px`,\n\t\t\t'--slider-head-color': trackHeadColor,\n\t\t\t'--slider-progress-color': progressColor ?? 'var(--core-text-primary)',\n\t\t\t'--slider-track-color': trackColor ?? 'var(--core-surface-secondary)',\n\t\t} as React.CSSProperties;\n\t}, [\n\t\tpadding,\n\t\theight,\n\t\ttouchHeight,\n\t\tcursor,\n\t\theadWidth,\n\t\tprogressColor,\n\t\ttrackColor,\n\t\theadSize,\n\t\ttrackHeadColor,\n\t\theadType,\n\t\tsetWidth,\n\t]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders({ ...props, sizeObserver: size }, 'Slider');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className={css.trackBg}>\n\t\t\t\t<div className={css.track} ref={track}>\n\t\t\t\t\t<div className={css.trackHead} ref={head} />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n});\n","import React, { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport type { SpacerProps } from './_types';\n\nexport const Spacer = React.memo((props: SpacerProps) => {\n\tconst { size = 8, ...divAttributes } = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\n\tconst spacerStyle = useMemo(\n\t\t() => ({ height: size, minHeight: size, maxHeight: size }),\n\t\t[size],\n\t);\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Spacer');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={divClass.trim()}\n\t\t\tstyle={{ ...divStyle, ...spacerStyle }}\n\t\t\t{...rest}\n\t\t/>\n\t);\n});\n","import { motion } from 'motion/react';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './Switch.module.css';\nimport type { SwitchProps } from './_types';\n\nexport const Switch = React.memo((props: SwitchProps) => {\n\tconst {\n\t\tstate = false,\n\t\theight = 22,\n\t\twidth = 44,\n\t\tpadding = 3,\n\t\tbgColorOn = 'var(--feedback-positive)',\n\t\tbgColorOff = 'var(--core-text-disabled)',\n\t\tknobColor = 'var(--core-surface-primary)',\n\t\tonChange = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst [on, setOn] = useState<boolean>(state);\n\n\t// Sync with prop changes\n\tuseEffect(() => {\n\t\tsetOn(state);\n\t}, [state]);\n\n\tconst handleClick = useCallback(() => {\n\t\tsetOn(!on);\n\t\tonChange(!on);\n\t}, [on, onChange]);\n\n\t// Memoize style object\n\tconst justify = useMemo(\n\t\t() => ({ justifyContent: on ? 'flex-end' : 'flex-start' }),\n\t\t[on],\n\t);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--switch-width': `${width}px`,\n\t\t\t'--switch-height': `${height}px`,\n\t\t\t'--switch-padding': `${padding}px`,\n\t\t\t'--switch-knob-size': `${height - padding * 2}px`,\n\t\t\t'--switch-knob-color': knobColor,\n\t\t\t'--switch-bg-color': on ? bgColorOn : bgColorOff,\n\t\t} as React.CSSProperties;\n\t}, [width, height, padding, bgColorOff, bgColorOn, on, knobColor]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Switch');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<motion.div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...justify, ...cssVars }}\n\t\t\tonClick={handleClick}\n\t\t\t{...(rest as any)}\n\t\t>\n\t\t\t<motion.div className={css.knob} layout={'preserve-aspect'} />\n\t\t</motion.div>\n\t);\n});\n","import type React from 'react';\nimport type { ToolTip } from '../sharedTypes';\n\nexport type TabOption = {\n\tname?: string;\n\tvalue?: any;\n\ticon?: string | null;\n\ttoolTip?: string;\n\tcount?: number;\n\tcomponent?: any;\n};\n\nexport const placeholderOptions: TabOption[] = [\n\t{ name: 'Option 1', value: 'Option 1', icon: null },\n\t{ name: 'Option 2', value: 'Option 2', icon: 'wallet' },\n];\n\ntype TabBarBaseProps = {\n\toptions?: TabOption[];\n\tselected?: number;\n\tunderline?: boolean;\n\tborder?: boolean;\n\tselectedValue?: string;\n\theight?: number | string;\n\twidth?: number | string;\n\ttabWidth?: 'min-content' | 'distribute' | number;\n\tcloseWidth?: number | string;\n\tpadding?: number | string;\n\ticonSize?: number;\n\ticonGap?: number;\n\ttabGap?: number;\n\tdisabled?: boolean;\n\thasClose?: boolean;\n\tonToolTip?: (tip: ToolTip | null) => void;\n\tonChange?: (index: number) => void;\n\tonTabChange?: (option: TabOption) => void;\n\tonClose?: () => void;\n};\n\nexport type TabBarProps = Omit<\n\tReact.HTMLAttributes<HTMLDivElement>,\n\tkeyof TabBarBaseProps\n> &\n\tTabBarBaseProps;\n\nexport interface TabOptionProps {\n\tlabel?: string;\n\tvalue?: number;\n\ticon?: string | null;\n\tshowToolTip?: string | null;\n\tselected?: boolean;\n\tpadding?: number | string;\n\ticonSize?: number;\n\ticonGap?: number;\n\tdisabled?: boolean;\n\tcount?: number;\n\ttabWidth?: 'min-content' | 'distribute' | number;\n\tunderline?: boolean;\n\tonClick?: (value: number) => void;\n\tonToolTip?: (tip: ToolTip | null) => void;\n}\n","import React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Badge } from '../Badge';\nimport { Icon } from '../Icon';\nimport { IconButton } from '../IconButton';\nimport { type ToolTip, ToolTipType } from '../sharedTypes';\nimport css from './TabBar.module.css';\nimport type { TabBarProps, TabOption, TabOptionProps } from './_types';\nimport { placeholderOptions } from './_types';\n\nexport const TabBar = React.memo((props: TabBarProps) => {\n\tconst {\n\t\toptions = placeholderOptions,\n\t\tselected = 0,\n\t\tborder = true,\n\t\tunderline = true,\n\t\theight = '100%',\n\t\twidth = '100%',\n\t\ttabWidth = 'distribute',\n\t\tpadding = 8,\n\t\ticonSize = 20,\n\t\ticonGap = 8,\n\t\ttabGap = 0,\n\t\tdisabled = false,\n\t\thasClose = false,\n\t\tcloseWidth = 'auto',\n\t\tselectedValue = null,\n\t\tonChange = () => null,\n\t\tonTabChange = () => null,\n\t\tonClose = () => null,\n\t\tonToolTip = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst [index, setIndex] = useState<number>(selected);\n\n\tuseEffect(() => {\n\t\tlet selectedIndex = 0;\n\t\tif (selectedValue && options) {\n\t\t\tselectedIndex = options.findIndex(\n\t\t\t\t(option) => option.value === selectedValue,\n\t\t\t);\n\t\t\tsetIndex(selectedIndex === -1 ? selected : selectedIndex);\n\t\t} else {\n\t\t\tsetIndex(selected);\n\t\t}\n\t}, [selected, selectedValue, options]);\n\n\t// memo handleClick\n\tconst handleClick = useCallback(\n\t\t(i: number) => {\n\t\t\tsetIndex(i);\n\t\t\tonChange(i);\n\t\t\tonTabChange(options[i]);\n\t\t},\n\t\t[onChange, onTabChange, options],\n\t);\n\n\t// memo handleOptionClick\n\tconst handleOptionClick = useCallback(\n\t\t(i: number) => {\n\t\t\tonToolTip(null);\n\t\t\thandleClick(i);\n\t\t},\n\t\t[onToolTip, handleClick],\n\t);\n\n\t// memo rendered options\n\tconst renderedOptions = useMemo(\n\t\t() =>\n\t\t\toptions.map((option: TabOption, i: number) => (\n\t\t\t\t<Option\n\t\t\t\t\tkey={`${i}_option_${option.name}`}\n\t\t\t\t\tlabel={option.name}\n\t\t\t\t\tvalue={i}\n\t\t\t\t\tshowToolTip={option.toolTip}\n\t\t\t\t\tselected={i === index}\n\t\t\t\t\tpadding={padding}\n\t\t\t\t\ticon={option.icon}\n\t\t\t\t\ticonSize={iconSize}\n\t\t\t\t\ticonGap={iconGap}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tcount={option.count}\n\t\t\t\t\tonClick={handleOptionClick}\n\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\tunderline={underline}\n\t\t\t\t\ttabWidth={tabWidth}\n\t\t\t\t/>\n\t\t\t)),\n\t\t[\n\t\t\toptions,\n\t\t\tindex,\n\t\t\tpadding,\n\t\t\ticonSize,\n\t\t\ticonGap,\n\t\t\tdisabled,\n\t\t\tunderline,\n\t\t\ttabWidth,\n\t\t\tonToolTip,\n\t\t\thandleOptionClick,\n\t\t],\n\t);\n\n\tconst setStyle = useCallback((value: string | number) => {\n\t\tif (typeof value === 'string') return value;\n\t\treturn `${value}px`;\n\t}, []);\n\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--tab-bar-gap': `${tabGap}px`,\n\t\t\t'--tab-bar-height': `${setStyle(height)}px`,\n\t\t\t'--tab-bar-width': setStyle(width),\n\t\t\t'--tab-bar-border-bottom': `${border ? '1px' : '0'}`,\n\t\t\t'--tab-bar-close-width': `${closeWidth}px`,\n\t\t\t'--tab-bar-close-padding': padding ? `${padding}px` : '8px',\n\t\t} as React.CSSProperties;\n\t}, [tabGap, height, width, border, setStyle, closeWidth, padding]);\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{renderedOptions}\n\t\t\t{hasClose && (\n\t\t\t\t<div className={css.close}>\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\ticonSize={iconSize - 4}\n\t\t\t\t\t\tframeSize={iconSize}\n\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\thover={true}\n\t\t\t\t\t\ticon={'x'}\n\t\t\t\t\t\tonClick={onClose}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n});\n\nTabBar.displayName = 'TabBar';\n\nconst Option = React.memo(\n\t(props: TabOptionProps) => {\n\t\tconst theme = useTheme();\n\t\tconst {\n\t\t\tlabel = 'Option',\n\t\t\tvalue = 0,\n\t\t\ticon = null,\n\t\t\tselected = false,\n\t\t\tonClick = () => null,\n\t\t\tonToolTip = () => null,\n\t\t\tpadding = 8,\n\t\t\ticonSize = 20,\n\t\t\ticonGap = 6,\n\t\t\tdisabled = false,\n\t\t\tshowToolTip = null,\n\t\t\tunderline = true,\n\t\t\ttabWidth = 'distribute',\n\t\t\tcount = 0,\n\t\t} = props;\n\n\t\tconst ref = useRef<HTMLDivElement>(null);\n\n\t\t// memo icon color\n\t\tconst strokeColor = useMemo(() => {\n\t\t\tif (!disabled && selected)\n\t\t\t\treturn theme.current.colors['core-text-special'];\n\t\t\tif (disabled) return theme.current.colors['core-text-disabled'];\n\t\t\treturn theme.current.colors['core-text-primary'];\n\t\t}, [disabled, selected, theme]);\n\n\t\t// memo handleMouseOver\n\t\tconst handleMouseOver = useCallback(\n\t\t\t(e: React.MouseEvent) => {\n\t\t\t\tonToolTip(null);\n\t\t\t\tif (showToolTip && ref.current) {\n\t\t\t\t\tconst tip: ToolTip = {\n\t\t\t\t\t\ttype: ToolTipType.button,\n\t\t\t\t\t\tpayload: { label: showToolTip },\n\t\t\t\t\t\tevent: e,\n\t\t\t\t\t\tref,\n\t\t\t\t\t};\n\t\t\t\t\tonToolTip(tip);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[showToolTip, onToolTip],\n\t\t);\n\n\t\t// memo handleMouseLeave\n\t\tconst handleMouseLeave = useCallback(() => {\n\t\t\tif (showToolTip) onToolTip(null);\n\t\t}, [showToolTip, onToolTip]);\n\n\t\t// memo color\n\t\tconst textColor = useMemo(() => {\n\t\t\tif (disabled) return 'var(--core-text-disabled)';\n\t\t\tif (selected) return 'var(--core-text-special)';\n\t\t\treturn 'var(--core-text-primary)';\n\t\t}, [disabled, selected]);\n\n\t\t// memo tab width\n\t\tconst setTabWidth = useMemo(() => {\n\t\t\tif (tabWidth === 'min-content') return 'min-content';\n\t\t\tif (tabWidth === 'distribute') return 'unset';\n\t\t\treturn `${tabWidth}px`;\n\t\t}, [tabWidth]);\n\n\t\t// memo flex tab\n\t\tconst setTabFlex = useMemo(() => {\n\t\t\tif (tabWidth === 'distribute') return '1';\n\t\t\treturn 'unset';\n\t\t}, [tabWidth]);\n\n\t\t// memo underline\n\t\tconst setUnderline = useMemo(() => {\n\t\t\tif (selected && underline && !disabled) return '1px';\n\t\t\treturn '0';\n\t\t}, [underline, disabled, selected]);\n\n\t\tconst cssVars = useMemo(() => {\n\t\t\treturn {\n\t\t\t\t'--tab-bar-option-border': setUnderline,\n\t\t\t\t'--tab-bar-option-padding': `${padding}px`,\n\t\t\t\t'--tab-bar-option-icon-size': `${iconSize}px`,\n\t\t\t\t'--tab-bar-option-cursor': disabled ? 'default' : 'pointer',\n\t\t\t\t'--tab-bar-option-gap': `${iconGap ?? 0}px`,\n\t\t\t\t'--tab-bar-option-color': textColor,\n\t\t\t\t'--tab-bar-option-width': setTabWidth,\n\t\t\t\t'--tab-bar-option-flex': setTabFlex,\n\t\t\t} as React.CSSProperties;\n\t\t}, [\n\t\t\tpadding,\n\t\t\ticonSize,\n\t\t\tdisabled,\n\t\t\ttextColor,\n\t\t\ticonGap,\n\t\t\tsetTabFlex,\n\t\t\tsetTabWidth,\n\t\t\tsetUnderline,\n\t\t]);\n\n\t\t/* START.DEBUG */\n\t\tuseTrackRenders(props, 'TabBar');\n\t\t/* END.DEBUG */\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclassName={css.option}\n\t\t\t\tstyle={cssVars}\n\t\t\t\tref={ref}\n\t\t\t\taria-selected={selected}\n\t\t\t\tonMouseEnter={handleMouseOver}\n\t\t\t\tonMouseLeave={handleMouseLeave}\n\t\t\t\tonClick={() => onClick(value)}\n\t\t\t\tonKeyDown={() => onClick(value)}\n\t\t\t>\n\t\t\t\t{icon && (\n\t\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t\t<Icon name={icon} size={iconSize} strokeColor={strokeColor} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{label}\n\t\t\t\t{count !== 0 && (\n\t\t\t\t\t<Badge variant={'light'} hideNull={false} count={count} />\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t},\n\t(prevProps, nextProps) => {\n\t\t// Custom comparison for performance\n\t\treturn (\n\t\t\tprevProps.selected === nextProps.selected &&\n\t\t\tprevProps.underline === nextProps.underline &&\n\t\t\tprevProps.tabWidth === nextProps.tabWidth &&\n\t\t\tprevProps.disabled === nextProps.disabled &&\n\t\t\tprevProps.iconGap === nextProps.iconGap &&\n\t\t\tprevProps.iconSize === nextProps.iconSize &&\n\t\t\tprevProps.count === nextProps.count &&\n\t\t\tprevProps.label === nextProps.label &&\n\t\t\tprevProps.icon === nextProps.icon\n\t\t);\n\t},\n);\n\nOption.displayName = 'TabOption';\n","import React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { UIButton } from '../UIButton';\nimport css from './TextArea.module.css';\nimport type { TextAreaProps } from './_types';\n\nexport const TextArea = React.memo((props: TextAreaProps) => {\n\tconst {\n\t\tvalue = '',\n\t\tname = 'text_area',\n\t\twidth = '100%',\n\t\tfocused = false,\n\t\tplaceholder = 'Enter text here...',\n\t\trows = 6,\n\t\tborder = false,\n\t\tborderRadius = 4,\n\t\tpadding = '16px 4px 16px 16px',\n\t\tvalidate = false,\n\t\tresizable = true,\n\t\thasSend = false,\n\t\tsendOffset = { bottom: 6, right: 6 },\n\t\tsendSize = 36,\n\t\treturnSubmits = false,\n\t\tbgColor = undefined,\n\t\tminWidth = undefined,\n\t\ttextSize = 'm',\n\t\tdisabled = false,\n\t\tsubmitClears = true,\n\t\tonChange = () => null,\n\t\tonFocus = () => null,\n\t\tonBlur = () => null,\n\t\tonValidate = () => null,\n\t\tonSubmit = () => null,\n\t\tonKeyDown = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst [isFocused, setIsFocused] = useState<boolean>(focused);\n\tconst [invalid, setInvalid] = useState<boolean>(false);\n\tconst [text, setText] = useState<string>(value);\n\tconst [initiated, setInitiated] = useState<boolean>(false);\n\tconst ref = useRef<HTMLTextAreaElement>(null);\n\n\t// update text area height\n\tconst handleResize = useCallback(() => {\n\t\tif (!ref?.current) return;\n\t\tref.current.style.height = 'auto';\n\t\tref.current.style.height = `${ref.current.scrollHeight}px`;\n\t}, []);\n\n\t// validate content\n\tconst runValidation = useCallback(\n\t\t(content: string): boolean => {\n\t\t\tlet valid = true;\n\t\t\tif (validate && content.length < 1) valid = false;\n\t\t\tif (!initiated) valid = true;\n\t\t\tonValidate(valid);\n\t\t\treturn !valid;\n\t\t},\n\t\t[initiated, onValidate, validate],\n\t);\n\n\t// focus / blur field on prop change\n\tuseEffect(() => {\n\t\tif (ref?.current) {\n\t\t\tif (focused) ref.current.focus();\n\t\t\telse ref.current.blur();\n\t\t\tsetIsFocused(focused);\n\t\t}\n\t}, [focused]);\n\n\t// update value on prop change\n\tuseEffect(() => {\n\t\tif (value) {\n\t\t\tsetText(value);\n\t\t\tsetInvalid(runValidation(value));\n\t\t}\n\t}, [value, runValidation]);\n\n\t// update height based on rows value\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: update heigt on rows change\n\tuseEffect(() => {\n\t\thandleResize();\n\t}, [rows]);\n\n\t// update value\n\tconst handleChange = useCallback(\n\t\t(content: string) => {\n\t\t\tonChange(content);\n\t\t\tsetText(content);\n\t\t\tsetInvalid(runValidation(content));\n\t\t},\n\t\t[onChange, runValidation],\n\t);\n\n\t// set focus\n\tconst handleFocus = useCallback(() => {\n\t\tif (ref?.current) ref.current.focus();\n\t\tsetInitiated(true);\n\t\tsetIsFocused(true);\n\t\tonFocus();\n\t}, [onFocus]);\n\n\t// set blur\n\tconst handleBlur = useCallback(\n\t\t(content: any) => {\n\t\t\thandleChange(content);\n\t\t\tsetIsFocused(false);\n\t\t\tonBlur();\n\t\t},\n\t\t[handleChange, onBlur],\n\t);\n\n\t// trigger submit as needed\n\tconst handleSubmit = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement, MouseEvent> | undefined) => {\n\t\t\te?.preventDefault();\n\t\t\thandleFocus();\n\t\t\tonSubmit(text);\n\t\t\tif (submitClears) setText('');\n\t\t\tif (ref?.current) ref.current.value = '';\n\t\t\thandleResize();\n\t\t},\n\t\t[handleFocus, onSubmit, text, submitClears, handleResize],\n\t);\n\n\t// handle return key\n\tconst handleKeyDownWrapper = useCallback(\n\t\t(e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n\t\t\tif (returnSubmits && e.key === 'Enter') {\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t\thandleSubmit(undefined);\n\t\t\t}\n\t\t\tonKeyDown(e);\n\t\t},\n\t\t[returnSubmits, handleSubmit, onKeyDown],\n\t);\n\n\t// set style value\n\tconst setStyleValue = useCallback((value: string | number) => {\n\t\tif (typeof value === 'string') return value;\n\t\treturn `${value}px`;\n\t}, []);\n\n\t// memo border color\n\tconst setBorderColor = useMemo(() => {\n\t\tif (isFocused) return 'var(--core-link-primary)';\n\t\tif (validate && invalid) return 'var(--feedback-warning)';\n\t\treturn border ? 'var(--core-outline-primary)' : 'transparent';\n\t}, [isFocused, invalid, validate, border]);\n\n\t// memo text size\n\tconst textClassName = useMemo(() => {\n\t\tif (textSize === 'l') return css.l;\n\t\tif (textSize === 'm') return css.m;\n\t\treturn css.s;\n\t}, [textSize]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--ta-border-radius': `${borderRadius}px`,\n\t\t\t'--ta-width': `${setStyleValue(width)}`,\n\t\t\t'--ta-min-width': minWidth ? `${minWidth}px` : 'unset',\n\t\t\t'--ta-bg-color': bgColor ?? 'var(--core-surface-secondary)',\n\t\t\t'--ta-border-color': setBorderColor,\n\t\t\t'--ta-padding': `${setStyleValue(padding)}`,\n\t\t\t'--ta-send-icon-offset-bottom': `${sendOffset.bottom}px`,\n\t\t\t'--ta-send-icon-offset-right': `${sendOffset.right}px`,\n\t\t\t'--ta-send-icon-size': `${sendSize}px`,\n\t\t\t'--ta-resize': resizable ? 'vertical' : 'none',\n\t\t} as React.CSSProperties;\n\t}, [\n\t\twidth,\n\t\tminWidth,\n\t\tbgColor,\n\t\tsetBorderColor,\n\t\tpadding,\n\t\tsendOffset,\n\t\tsendSize,\n\t\tsetStyleValue,\n\t\tborderRadius,\n\t\tresizable,\n\t]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'TextArea');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonBlur={() => handleBlur(text)}\n\t\t\tonFocus={() => handleFocus()}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{hasSend && (\n\t\t\t\t<div className={css.send} onMouseDown={(e) => handleSubmit(e)}>\n\t\t\t\t\t<UIButton\n\t\t\t\t\t\ticonLeft={'arrow up'}\n\t\t\t\t\t\tsize={'medium'}\n\t\t\t\t\t\tvariant={'solid'}\n\t\t\t\t\t\tround\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t<textarea\n\t\t\t\tclassName={`${css.textarea} ${textClassName}`}\n\t\t\t\tref={ref}\n\t\t\t\tname={name}\n\t\t\t\tvalue={text}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\trows={rows}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tonChange={(e) => handleChange(e.target.value)}\n\t\t\t\tonInput={() => handleResize()}\n\t\t\t\tonKeyDown={(e) => handleKeyDownWrapper(e)}\n\t\t\t/>\n\t\t</div>\n\t);\n});\n","import type { Transition } from 'motion/react';\nimport type React from 'react';\n\ntype TextFieldBaseProps = {\n\tvalue?: string;\n\tname?: string;\n\tlabel?: string;\n\tlabelSize?: 's' | 'm' | 'l';\n\ttextSize?: 's' | 'm' | 'l';\n\tplaceholder?: string;\n\tfocused?: boolean;\n\teditable?: boolean;\n\tonChange?: (value: string) => void;\n\tonBlur?: (value: string) => void;\n\tonFocus?: (value: string) => void;\n\tonKeydown?: (key: string, event: React.KeyboardEvent) => void;\n\tonSubmit?: (value: string) => void;\n\tonPaste?: (value: React.ClipboardEvent<HTMLInputElement>) => void;\n\tonClear?: () => void;\n\tonAction?: () => void;\n\tonValidate?: (state: boolean) => void;\n\tisValid?: boolean;\n\tinline?: boolean;\n\tmaxLength?: number;\n\tsize?: { width?: number | string; height?: number | string };\n\tpadding?: string;\n\tborderRadius?: number | string;\n\ttextAlign?: 'left' | 'center';\n\tborderColor?: { focused: string; blurred: string; error: string };\n\tbackgroundColor?: { focused: string; blurred: string };\n\tcolor?: {\n\t\tfocused: string;\n\t\tblurred: string;\n\t\terror: string;\n\t\tplaceholder: string;\n\t\tdisabled: string;\n\t\tlabel: string;\n\t};\n\tvalidate?: boolean;\n\ticonLeft?: { name?: string; size?: number; color?: string };\n\tclearButton?: { size?: number } | null;\n\tclearBlurs?: boolean;\n\tdisabled?: boolean;\n\tactionButton?: boolean;\n\tborderType?: 'box' | 'underline' | 'none';\n\tinputType?: 'text' | 'password';\n\tnoShow?: boolean;\n};\n\nexport type TextFieldProps = Omit<\n\tReact.HTMLAttributes<HTMLDivElement>,\n\tkeyof TextFieldBaseProps\n> &\n\tTextFieldBaseProps;\n\nexport const MOTION_CONFIG = {\n\tvariants: {\n\t\tinitial: { opacity: 0 },\n\t\tanimate: { opacity: 1 },\n\t\texit: { opacity: 0 },\n\t},\n\ttransition: { ease: 'easeInOut', duration: 0.25 } as Transition,\n};\n","import { AnimatePresence, motion } from 'motion/react';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Icon } from '../Icon';\nimport { IconButton } from '../IconButton';\nimport { UIButton } from '../UIButton';\nimport css from './TextField.module.css';\nimport { MOTION_CONFIG, type TextFieldProps } from './_types';\n\nexport const TextField = React.memo(\n\t(props: TextFieldProps) => {\n\t\tconst theme = useTheme();\n\t\tconst {\n\t\t\tname = 'input_name',\n\t\t\tvalue = '',\n\t\t\tlabel = '',\n\t\t\tlabelSize = 'm',\n\t\t\ttextSize = 'm',\n\t\t\tplaceholder = 'placeholder',\n\t\t\tfocused = false,\n\t\t\tonSubmit = () => null,\n\t\t\tonChange = () => null,\n\t\t\tonBlur = () => null,\n\t\t\tonFocus = () => null,\n\t\t\tonKeydown = () => null,\n\t\t\tonAction = () => null,\n\t\t\tonPaste = () => null,\n\t\t\tonClear = () => null,\n\t\t\tonValidate = () => null,\n\t\t\tactionButton = false,\n\t\t\tmaxLength = undefined,\n\t\t\tsize = { width: '100%', height: 'auto' },\n\t\t\tpadding = '8px 16px',\n\t\t\tborderRadius = 8,\n\t\t\teditable = true,\n\t\t\ttextAlign = 'left',\n\t\t\tisValid = true,\n\t\t\tinline = false,\n\t\t\tnoShow = false,\n\t\t\tborderType = 'box',\n\t\t\tvalidate = true,\n\t\t\tborderColor = {\n\t\t\t\tfocused: 'var(--core-link-primary)',\n\t\t\t\tblurred: 'var(--core-outline-primary)',\n\t\t\t\terror: 'var(--feedback-warning)',\n\t\t\t},\n\t\t\tbackgroundColor = {\n\t\t\t\tfocused: 'var(--core-surface-secondary)',\n\t\t\t\tblurred: 'var(--core-surface-secondary)',\n\t\t\t},\n\t\t\tcolor = {\n\t\t\t\tfocused: 'var(--core-text-primary)',\n\t\t\t\tblurred: 'var(--core-text-primary)',\n\t\t\t\terror: 'var(--feedback-warning)',\n\t\t\t\tplaceholder: 'var(--core-text-disabled)',\n\t\t\t\tdisabled: 'var(--core-text-disabled)',\n\t\t\t\tlabel: 'var(--core-text-tertiary)',\n\t\t\t},\n\t\t\ticonLeft = null,\n\t\t\tclearButton = { size: 20 },\n\t\t\tclearBlurs = false,\n\t\t\tdisabled = false,\n\t\t\tinputType = 'text',\n\t\t\t...divAttributes\n\t\t} = props;\n\t\tconst { id: divId, className, style, ...rest } = divAttributes;\n\t\tconst divStyle = style ?? ({} as React.CSSProperties);\n\t\tconst divClass = className ? ` ${className}` : '';\n\n\t\tconst input = useRef<HTMLInputElement>(null);\n\t\tconst [text, setText] = useState<string>(value);\n\t\tconst [isFocused, setIsFocused] = useState<boolean>(focused);\n\t\tconst [valid, setValid] = useState<boolean>(isValid);\n\t\tconst [show, setShow] = useState<boolean>(false);\n\n\t\t// update focused and blurred state on prop updates\n\t\tuseEffect(() => {\n\t\t\tif (!input.current) return;\n\t\t\tif (focused) {\n\t\t\t\tinput.current.focus();\n\t\t\t} else {\n\t\t\t\tinput.current.blur();\n\t\t\t}\n\t\t\tsetIsFocused(focused);\n\t\t}, [focused]);\n\n\t\t// update text value on prop change\n\t\tuseEffect(() => {\n\t\t\tsetText(value);\n\t\t}, [value]);\n\n\t\t// update valid on prop change\n\t\tuseEffect(() => {\n\t\t\tsetValid(isValid);\n\t\t}, [isValid]);\n\n\t\t// callback to check if the text is valid\n\t\tconst textIsValid = useCallback(\n\t\t\t(entry: string) => {\n\t\t\t\tif (!validate) return;\n\t\t\t\tconst ok = entry.length > 1 || entry === '';\n\t\t\t\tsetValid(ok);\n\t\t\t\tif (valid !== ok) onValidate(ok);\n\t\t\t},\n\t\t\t[onValidate, valid, validate],\n\t\t);\n\n\t\t// memo clear text field contents\n\t\tconst handleClearTextField = useCallback(() => {\n\t\t\tif (input?.current) {\n\t\t\t\tif (!clearBlurs) input.current.focus();\n\t\t\t\tsetText('');\n\t\t\t\ttextIsValid('');\n\t\t\t}\n\t\t\tonChange('');\n\t\t\tonClear();\n\t\t}, [clearBlurs, onChange, onClear, textIsValid]);\n\n\t\t// memo handling value updates based on input\n\t\tconst handleValueChange = useCallback(\n\t\t\t(newValue: string) => {\n\t\t\t\tsetText(newValue);\n\t\t\t\tonChange(newValue);\n\t\t\t\tif (!valid) textIsValid(text);\n\t\t\t},\n\t\t\t[onChange, textIsValid, text, valid],\n\t\t);\n\n\t\t// memo blur handler\n\t\tconst handleBlur = useCallback(() => {\n\t\t\ttextIsValid(text);\n\t\t\tsetIsFocused(false);\n\t\t\tonBlur(text);\n\t\t}, [text, onBlur, textIsValid]);\n\n\t\t// memo key stroke handling\n\t\tconst handleKeyDown = useCallback(\n\t\t\t(e: React.KeyboardEvent) => {\n\t\t\t\tif (e.key === 'Enter') {\n\t\t\t\t\thandleBlur();\n\t\t\t\t\tonSubmit(text);\n\t\t\t\t\tinput.current?.blur();\n\t\t\t\t}\n\t\t\t\tif (disabled) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tonKeydown(e.key, e);\n\t\t\t},\n\t\t\t[text, disabled, onSubmit, onKeydown, handleBlur],\n\t\t);\n\n\t\t// memo handle focus\n\t\tconst handleFocus = useCallback(() => {\n\t\t\tsetIsFocused(true);\n\t\t\tonFocus(text);\n\t\t}, [text, onFocus]);\n\n\t\t// memo toggle show (for passwords)\n\t\tconst toggleShow = useCallback(() => {\n\t\t\tsetShow((prev) => !prev);\n\t\t}, []);\n\n\t\t// memo icon style\n\t\tconst iconContainerStyle = useMemo(\n\t\t\t() =>\n\t\t\t\ticonLeft ? { width: iconLeft.size, height: iconLeft.size } : undefined,\n\t\t\t[iconLeft],\n\t\t);\n\n\t\t// memo icon color\n\t\tconst iconStrokeColor = useMemo(\n\t\t\t() =>\n\t\t\t\ticonLeft?.color\n\t\t\t\t\t? iconLeft.color\n\t\t\t\t\t: theme.current.colors['core-icon-secondary'],\n\t\t\t[iconLeft, theme],\n\t\t);\n\n\t\t// memo show clear button\n\t\tconst clearButtonStyle = useMemo(\n\t\t\t() =>\n\t\t\t\tclearButton\n\t\t\t\t\t? { width: clearButton.size, height: clearButton.size }\n\t\t\t\t\t: undefined,\n\t\t\t[clearButton],\n\t\t);\n\n\t\t// process style values that are string, number or undefined\n\t\tconst setStyleValue = useCallback((value: string | number | undefined) => {\n\t\t\tif (value === undefined) return 'unset';\n\t\t\tif (typeof value === 'string') return value;\n\t\t\treturn `${value}px`;\n\t\t}, []);\n\n\t\t// memo background color\n\t\tconst setBackgroundColor = useMemo(() => {\n\t\t\tif (inline) return 'unset';\n\t\t\tif (isFocused) return backgroundColor.focused ?? 'transparent';\n\t\t\treturn backgroundColor.blurred ?? 'transparent';\n\t\t}, [inline, isFocused, backgroundColor]);\n\n\t\t// memo border color\n\t\tconst setBorderColor = useMemo(() => {\n\t\t\tif (borderType === 'none') return 'transparent';\n\t\t\tif (validate && !valid)\n\t\t\t\treturn borderColor.error ?? borderColor.blurred ?? 'transparent';\n\t\t\tif (isFocused)\n\t\t\t\treturn borderColor.focused ?? borderColor.blurred ?? 'transparent';\n\t\t\treturn borderColor.blurred ?? 'transparent';\n\t\t}, [borderType, valid, isFocused, borderColor, validate]);\n\n\t\t// memo box shadow (border style)\n\t\tconst setBoxShadow = useMemo(() => {\n\t\t\tif (borderType === 'none') return 'unset';\n\t\t\tif (borderType === 'underline') return `0 1px 0 0 ${setBorderColor}`;\n\t\t\treturn `0 0 0 1px ${setBorderColor}`;\n\t\t}, [borderType, setBorderColor]);\n\n\t\t// memo text color\n\t\tconst textColor = useMemo(() => {\n\t\t\tif (validate && !valid) return color.error ?? 'var(--core-text-primary)';\n\t\t\tif (isFocused) return color.focused ?? 'var(--core-text-primary)';\n\t\t\treturn color.blurred ?? 'var(--core-text-primary)';\n\t\t}, [isFocused, valid, color, validate]);\n\n\t\t// memo text align\n\t\tconst setTextAlign = useMemo(() => {\n\t\t\treturn textAlign ?? 'left';\n\t\t}, [textAlign]);\n\n\t\t// memo opacity password show / hide\n\t\tconst setShowOpacity = useMemo(() => {\n\t\t\tif (inputType !== 'password') return '0';\n\t\t\tif (isFocused) return '1';\n\t\t\treturn '0.5';\n\t\t}, [inputType, isFocused]);\n\n\t\t// memo css vars\n\t\tconst cssVars = useMemo(() => {\n\t\t\treturn {\n\t\t\t\t'--tf-width': setStyleValue(size.width),\n\t\t\t\t'--tf-height': setStyleValue(size.height),\n\t\t\t\t'--tf-padding': setStyleValue(padding),\n\t\t\t\t'--tf-padding-label-left': label === '' ? 'unset' : '0',\n\t\t\t\t'--tf-border-radius': setStyleValue(borderRadius),\n\t\t\t\t'--tf-bg-color': setBackgroundColor,\n\t\t\t\t'--tf-box-shadow': setBoxShadow,\n\t\t\t\t'--tf-color': textColor,\n\t\t\t\t'--tf-label-color': color.label ?? 'var(--core-text-disabled)',\n\t\t\t\t'--tf-text-align': setTextAlign,\n\t\t\t\t'--tf-show-opacity': setShowOpacity,\n\t\t\t\t'--tf-placeholder-color':\n\t\t\t\t\tcolor.placeholder ?? 'var(--core-text-disabled)',\n\t\t\t} as React.CSSProperties;\n\t\t}, [\n\t\t\tsize,\n\t\t\tpadding,\n\t\t\tlabel,\n\t\t\tborderRadius,\n\t\t\tsetStyleValue,\n\t\t\tsetBackgroundColor,\n\t\t\tsetBoxShadow,\n\t\t\ttextColor,\n\t\t\tsetTextAlign,\n\t\t\tsetShowOpacity,\n\t\t\tcolor,\n\t\t]);\n\n\t\t/* START.DEBUG */\n\t\tuseTrackRenders(props, 'TextField');\n\t\t/* END.DEBUG */\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tid={divId}\n\t\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{label && (\n\t\t\t\t\t<div className={`${css.label} ${css[labelSize]}`}>{label}</div>\n\t\t\t\t)}\n\t\t\t\t<div className={css.container}>\n\t\t\t\t\t{iconLeft && (\n\t\t\t\t\t\t<div style={iconContainerStyle}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname={iconLeft.name}\n\t\t\t\t\t\t\t\tsize={iconLeft.size}\n\t\t\t\t\t\t\t\tstrokeColor={iconStrokeColor}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t<input\n\t\t\t\t\t\tclassName={`${css.input} ${css[textSize]}`}\n\t\t\t\t\t\tref={input}\n\t\t\t\t\t\ttype={inputType === 'password' && show ? 'text' : inputType}\n\t\t\t\t\t\tname={name}\n\t\t\t\t\t\taria-label={name}\n\t\t\t\t\t\tautoCapitalize={'none'}\n\t\t\t\t\t\tautoCorrect={'off'}\n\t\t\t\t\t\tautoComplete={'off'}\n\t\t\t\t\t\tvalue={text}\n\t\t\t\t\t\tonChange={(e) => handleValueChange(e.target.value)}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\tonPaste={onPaste}\n\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\tonFocus={handleFocus}\n\t\t\t\t\t\tonBlur={handleBlur}\n\t\t\t\t\t\tonMouseDown={(e) => e.stopPropagation()}\n\t\t\t\t\t\tdisabled={!editable}\n\t\t\t\t\t\tmaxLength={maxLength}\n\t\t\t\t\t/>\n\t\t\t\t\t<AnimatePresence initial={false}>\n\t\t\t\t\t\t{isFocused && clearButton && text !== '' && (\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tclassName={css.clearButton}\n\t\t\t\t\t\t\t\tstyle={clearButtonStyle}\n\t\t\t\t\t\t\t\tvariants={MOTION_CONFIG.variants}\n\t\t\t\t\t\t\t\tinitial={'initial'}\n\t\t\t\t\t\t\t\tanimate={'animate'}\n\t\t\t\t\t\t\t\texit={'exit'}\n\t\t\t\t\t\t\t\ttransition={MOTION_CONFIG.transition}\n\t\t\t\t\t\t\t\tonClick={handleClearTextField}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tname={'x'}\n\t\t\t\t\t\t\t\t\tsize={clearButton.size}\n\t\t\t\t\t\t\t\t\tstrokeColor={theme.current.colors['core-icon-secondary']}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t<AnimatePresence initial={false}>\n\t\t\t\t\t\t{actionButton && (\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tvariants={MOTION_CONFIG.variants}\n\t\t\t\t\t\t\t\tinitial={'initial'}\n\t\t\t\t\t\t\t\tanimate={'animate'}\n\t\t\t\t\t\t\t\texit={'exit'}\n\t\t\t\t\t\t\t\ttransition={MOTION_CONFIG.transition}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<UIButton\n\t\t\t\t\t\t\t\t\tlabel={'Translate'}\n\t\t\t\t\t\t\t\t\tvariant={'text'}\n\t\t\t\t\t\t\t\t\tsize={'text'}\n\t\t\t\t\t\t\t\t\tstate={text === '' ? 'disabled' : 'normal'}\n\t\t\t\t\t\t\t\t\tlabelColor={theme.current.colors['core-button-primary']}\n\t\t\t\t\t\t\t\t\tonClick={onAction}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{inputType === 'password' && !noShow && (\n\t\t\t\t\t\t<div className={css.showPassword}>\n\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\ticon={'view'}\n\t\t\t\t\t\t\t\ttoggleIcon={true}\n\t\t\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\t\t\tisToggled={show}\n\t\t\t\t\t\t\t\ticonSize={18}\n\t\t\t\t\t\t\t\tframeSize={18}\n\t\t\t\t\t\t\t\tonClick={toggleShow}\n\t\t\t\t\t\t\t\ttooltip={'Show / Hide'}\n\t\t\t\t\t\t\t\tdisabled={false}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t},\n\t(prevProps, nextProps) => {\n\t\t// Custom comparison for expensive props\n\t\treturn (\n\t\t\tprevProps.value === nextProps.value &&\n\t\t\tprevProps.borderType === nextProps.borderType &&\n\t\t\tprevProps.borderRadius === nextProps.borderRadius &&\n\t\t\tprevProps.borderColor === nextProps.borderColor &&\n\t\t\tprevProps.labelSize === nextProps.labelSize &&\n\t\t\tprevProps.focused === nextProps.focused &&\n\t\t\tprevProps.isValid === nextProps.isValid &&\n\t\t\tprevProps.validate === nextProps.validate &&\n\t\t\tprevProps.disabled === nextProps.disabled &&\n\t\t\tprevProps.color === nextProps.color &&\n\t\t\tprevProps.label === nextProps.label &&\n\t\t\tprevProps.inputType === nextProps.inputType &&\n\t\t\tprevProps.textSize === nextProps.textSize &&\n\t\t\tprevProps.padding === nextProps.padding &&\n\t\t\tprevProps.textAlign === nextProps.textAlign &&\n\t\t\tprevProps.placeholder === nextProps.placeholder\n\t\t);\n\t},\n);\n\nTextField.displayName = 'TextField';\n","import type React from 'react';\nimport { useEffect } from 'react';\nimport '../theme/colors/colors.css';\nimport '../theme/type/type.css';\nimport { darkTheme, lightTheme } from '../theme';\n\ninterface ThemeProviderProps {\n\tchildren?: React.ReactNode;\n\ttheme?: string;\n\tsystem?: boolean;\n}\n\n// set up media query for system theme\nconst darkModeMediaQuery = globalThis.matchMedia(\n\t'(prefers-color-scheme: dark)',\n);\n\nexport function ThemeProvider(props: Readonly<ThemeProviderProps>) {\n\tconst { children, theme, system } = props;\n\n\t// update active theme based on theme prop\n\tuseEffect(() => {\n\t\tif (theme) {\n\t\t\tconst newTheme = theme.includes('dark') ? darkTheme : lightTheme;\n\t\t\tdocument.documentElement.dataset.theme = newTheme.name;\n\t\t}\n\t}, [theme]);\n\n\t// update then active theme based on system changes\n\tuseEffect(() => {\n\t\t// handler for the media query change\n\t\tconst handleSystemThemeChange = (e: MediaQueryListEvent) => {\n\t\t\tif (system) {\n\t\t\t\tconst autoTheme = e.matches ? darkTheme : lightTheme;\n\t\t\t\tdocument.documentElement.dataset.theme = autoTheme.name;\n\t\t\t}\n\t\t};\n\n\t\t// set the current system theme\n\t\tif (system) {\n\t\t\tconst autoTheme = darkModeMediaQuery.matches ? darkTheme : lightTheme;\n\t\t\tdocument.documentElement.dataset.theme = autoTheme.name;\n\t\t}\n\n\t\t// set listener on media query\n\t\tdarkModeMediaQuery.addEventListener('change', handleSystemThemeChange);\n\n\t\t// clean up\n\t\treturn () => {\n\t\t\tdarkModeMediaQuery.removeEventListener('change', handleSystemThemeChange);\n\t\t};\n\t}, [system]);\n\n\treturn children;\n}\n","import type { HTMLMotionProps } from 'motion/react';\nimport type { ToolTip } from '../sharedTypes';\n\nexport const tipBasePos = { left: 0, top: 0 };\nexport type PosCoords = { left: number; top: number };\n\ntype ToolTipBaseProps = {\n\ttip?: ToolTip | null;\n\tsize?: 's' | 'm' | 'l';\n\tbgColor?: string;\n\tcolor?: string;\n\tborder?: boolean;\n\tborderColor?: string;\n\tpadding?: number | string;\n\tradius?: number;\n\tcoords?: { x: number; y: number };\n\tshowDelay?: number;\n\thideDelay?: number;\n};\n\nexport type ToolTipProps = Omit<\n\tHTMLMotionProps<'div'>,\n\tkeyof ToolTipBaseProps\n> &\n\tToolTipBaseProps;\n","import { motion } from 'motion/react';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { filterClasses } from '../../util/utils';\nimport css from './Tip.module.css';\nimport { type PosCoords, type ToolTipProps, tipBasePos } from './_types';\n\nconst TipBase = React.forwardRef<HTMLDivElement, ToolTipProps>((props, ref) => {\n\tconst {\n\t\ttip,\n\t\tsize = 's',\n\t\tbgColor,\n\t\tcolor,\n\t\tborder = true,\n\t\tborderColor,\n\t\tpadding,\n\t\tradius,\n\t\tcoords,\n\t\tshowDelay = 500,\n\t\thideDelay = 2500,\n\t\t...divAttributes\n\t} = props;\n\n\t// div attributes to add\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? `${className}` : '';\n\n\t// set tip position and display timer\n\t// need the animate set only after the ready state is processed\n\tconst [pos, setPos] = useState<PosCoords>(tipBasePos);\n\tconst [ready, setReady] = useState<boolean>(false);\n\tconst [animate, setAnimate] = useState<boolean>(false);\n\tconst timer = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\t// update position with delay and then auto remove\n\tuseEffect(() => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t\tconst { x, y } = coords ?? { x: 0, y: 0 };\n\t\tconst showTip = x > 0 && y > 0;\n\t\tif (showTip) {\n\t\t\ttimer.current = setTimeout(() => {\n\t\t\t\tsetPos({ left: coords?.x ?? 0, top: coords?.y ?? 0 });\n\t\t\t\tsetReady(true);\n\t\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t\t\ttimer.current = setTimeout(() => {\n\t\t\t\t\tsetReady(false);\n\t\t\t\t\tsetPos({ left: 0, top: 0 });\n\t\t\t\t}, hideDelay);\n\t\t\t}, showDelay);\n\t\t} else {\n\t\t\tsetReady(false);\n\t\t\tsetPos({ left: 0, top: 0 });\n\t\t}\n\t\t// clean up timers\n\t\treturn () => {\n\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t};\n\t}, [coords, showDelay, hideDelay]);\n\n\t// when ready, visibility has taken effect and can now be animated\n\tuseEffect(() => setAnimate(ready), [ready]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--tooltip-padding': padding ?? '3px 6px',\n\t\t\t'--tooltip-background': bgColor ?? 'var(--core-surface-secondary)',\n\t\t\t'--tooltip-color': color ?? 'var(--core-text-primary)',\n\t\t\t'--tooltip-border': border\n\t\t\t\t? `1px solid ${borderColor ?? 'var(--core-outline-primary)'}`\n\t\t\t\t: 'unset',\n\t\t\t'--tooltip-border-radius': radius ?? '4px',\n\t\t} as React.CSSProperties;\n\t}, [padding, bgColor, color, border, borderColor, radius]);\n\n\t// memo coords style\n\tconst coordStyle = useMemo(() => {\n\t\tconst { left, top } = pos;\n\t\treturn {\n\t\t\tleft: `${left ?? 0}px`,\n\t\t\ttop: `${top ?? 0}px`,\n\t\t} as React.CSSProperties;\n\t}, [pos]);\n\n\t// memo class names\n\tconst classNames = useMemo(() => {\n\t\treturn filterClasses([css.wrapper, css[size], divClass]);\n\t}, [size, divClass]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Tip');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ref}\n\t\t\tid={divId}\n\t\t\tclassName={classNames}\n\t\t\tonKeyDown={() => null}\n\t\t\tstyle={{\n\t\t\t\t...divStyle,\n\t\t\t\t...cssVars,\n\t\t\t\t...coordStyle,\n\t\t\t\tvisibility: ready ? 'visible' : 'hidden',\n\t\t\t}}\n\t\t\tinitial={{ opacity: 0 }}\n\t\t\tanimate={\n\t\t\t\tanimate\n\t\t\t\t\t? { opacity: 1, transition: { ease: 'easeInOut', duration: 0.25 } }\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t\texit={{ opacity: 0, transition: { duration: 0 } }}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{tip?.payload?.label}\n\t\t</motion.div>\n\t);\n});\n\nTipBase.displayName = 'Tip';\n\nexport const Tip = React.memo(TipBase);\n","import {\n\tAnimatePresence,\n\ttype Transition,\n\ttype Variants,\n\tmotion,\n} from 'motion/react';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tuseMemo,\n} from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { accessibleKeyDown, filterClasses, setStyle } from '../../util/utils';\nimport { Icon } from '../Icon';\nimport css from './Toast.module.css';\nimport type { ToastProps } from './_types';\n\nconst ToastBase = React.forwardRef<HTMLDivElement, ToastProps>((props, ref) => {\n\tconst {\n\t\tmessage = null,\n\t\tsize = 'm',\n\t\tborder = true,\n\t\tpadding,\n\t\tradius = 8,\n\t\tshowDelay = 0,\n\t\tduration = 5000,\n\t\tposition = 'bottom',\n\t\toffset = 24,\n\t\tclose = true,\n\t\ttype = 'info',\n\t\tdidHide = () => null,\n\t\t...divAttributes\n\t} = props;\n\n\tconst theme = useTheme();\n\n\t// div attributes to add\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? `${className}` : '';\n\n\t// need the animate set only after the ready state is processed\n\tconst [ready, setReady] = useState<boolean>(false);\n\tconst [content, setContent] = useState<string | null>(null);\n\tconst timer = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\t// update show and animation\n\tuseEffect(() => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t\tconst show = message && message.length > 0;\n\t\tif (show) {\n\t\t\ttimer.current = setTimeout(() => {\n\t\t\t\tsetContent(message);\n\t\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t\t\ttimer.current = setTimeout(() => {\n\t\t\t\t\tsetReady(false);\n\t\t\t\t}, duration);\n\t\t\t}, showDelay);\n\t\t} else {\n\t\t\tsetContent(null);\n\t\t}\n\t\t// clean up timers\n\t\treturn () => {\n\t\t\tif (timer.current) clearTimeout(timer.current);\n\t\t};\n\t}, [message, showDelay, duration]);\n\n\t// ready to animate in/out\n\tuseEffect(() => setReady(content !== null), [content]);\n\n\t// set the default padding accommodating the close icon fix\n\tconst defaultPadding = useMemo(() => {\n\t\treturn close ? '10px 12px 10px 16px' : '10px 16px';\n\t}, [close]);\n\n\tconst colorScheme = useMemo(() => {\n\t\tswitch (type) {\n\t\t\tcase 'success':\n\t\t\t\treturn {\n\t\t\t\t\tborder: 'var(--array-land-label)',\n\t\t\t\t\tbg: 'var(--array-land)',\n\t\t\t\t\ttext: 'var(--array-land-label)',\n\t\t\t\t};\n\t\t\tcase 'warning':\n\t\t\t\treturn {\n\t\t\t\t\tborder: 'var(--array-orange-label)',\n\t\t\t\t\tbg: 'var(--array-orange)',\n\t\t\t\t\ttext: 'var(--array-orange-label)',\n\t\t\t\t};\n\t\t\tcase 'error':\n\t\t\t\treturn {\n\t\t\t\t\tborder: 'var(--feedback-warning)',\n\t\t\t\t\tbg: 'var(--array-magenta)',\n\t\t\t\t\ttext: 'var(--feedback-warning)',\n\t\t\t\t};\n\t\t\tdefault:\n\t\t\t\treturn {\n\t\t\t\t\tborder: 'var(--core-outline-primary)',\n\t\t\t\t\tbg: 'var(--core-surface-secondary)',\n\t\t\t\t\ttext: 'var(--core-text-primary)',\n\t\t\t\t};\n\t\t}\n\t}, [type]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--toast-padding': setStyle(padding, defaultPadding),\n\t\t\t'--toast-background': colorScheme.bg,\n\t\t\t'--toast-color': colorScheme.text,\n\t\t\t'--toast-border': border ? `1px solid ${colorScheme.border}` : 'unset',\n\t\t\t'--toast-border-radius': setStyle(radius, 4),\n\t\t} as React.CSSProperties;\n\t}, [padding, border, colorScheme, radius, defaultPadding]);\n\n\tconst variants = useMemo(() => {\n\t\tconst positionShow =\n\t\t\tposition === 'bottom' ? { bottom: offset } : { top: offset };\n\t\tconst positionHide =\n\t\t\tposition === 'bottom' ? { bottom: -offset } : { top: -offset };\n\t\tconst transition: Transition = { ease: 'easeInOut', duration: 0.25 };\n\t\treturn {\n\t\t\tinitial: { opacity: 0, ...positionHide },\n\t\t\tanimate: { opacity: 1, ...positionShow, transition },\n\t\t\texit: { opacity: 0, ...positionHide, transition },\n\t\t} as Variants;\n\t}, [position, offset]);\n\n\t// memo class names\n\tconst classNames = useMemo(() => {\n\t\treturn filterClasses([css.wrapper, css[size], divClass]);\n\t}, [size, divClass]);\n\n\t// hide on close\n\tconst handleClose = useCallback(() => {\n\t\tsetContent(null);\n\t}, []);\n\n\t// prevent hide on hover / focus\n\tconst handleMouseOver = useCallback(() => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t}, []);\n\n\t// rest hide on mouse out / blur\n\tconst handleMouseOut = useCallback(() => {\n\t\tif (timer.current) clearTimeout(timer.current);\n\t\ttimer.current = setTimeout(() => {\n\t\t\tsetContent(null);\n\t\t}, duration);\n\t}, [duration]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'Toast');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<AnimatePresence onExitComplete={() => didHide()} initial={false}>\n\t\t\t{ready && (\n\t\t\t\t<motion.div\n\t\t\t\t\tref={ref}\n\t\t\t\t\tid={divId}\n\t\t\t\t\tclassName={classNames}\n\t\t\t\t\t{...rest}\n\t\t\t\t\tonMouseEnter={handleMouseOver}\n\t\t\t\t\tonMouseLeave={handleMouseOut}\n\t\t\t\t\tonFocus={handleMouseOver}\n\t\t\t\t\tonBlur={handleMouseOut}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t...divStyle,\n\t\t\t\t\t\t...cssVars,\n\t\t\t\t\t\tvisibility: ready ? 'visible' : 'hidden',\n\t\t\t\t\t}}\n\t\t\t\t\tvariants={variants}\n\t\t\t\t\tinitial={'initial'}\n\t\t\t\t\tanimate={'animate'}\n\t\t\t\t\texit={'exit'}\n\t\t\t\t>\n\t\t\t\t\t<div role={'status'} aria-live={'polite'} className={css.message}>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</div>\n\t\t\t\t\t{close && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={css.close}\n\t\t\t\t\t\t\ttabIndex={0}\n\t\t\t\t\t\t\trole={'button'}\n\t\t\t\t\t\t\taria-label={'dismiss message'}\n\t\t\t\t\t\t\tonKeyDown={(e) => accessibleKeyDown(e, handleClose)}\n\t\t\t\t\t\t\tonClick={handleClose}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname={'x'}\n\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\tstrokeColor={theme.current.colors['core-icon-primary']}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</motion.div>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n});\n\nToastBase.displayName = 'Toast';\n\nexport const Toast = React.memo(ToastBase);\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Icon } from '../Icon';\nimport type { IconNames } from '../Icon/_types';\nimport { type ToolTip, ToolTipType } from '../sharedTypes';\nimport css from './UIChip.module.css';\nimport type { UIChipProps } from './_types';\n\nexport const UIChip = React.memo((props: UIChipProps) => {\n\tconst {\n\t\tlabel,\n\t\ticon,\n\t\tbackground,\n\t\tdisabled = false,\n\t\tfocused = false,\n\t\tvariant = 'regular',\n\t\tunframed = false,\n\t\ticonRight = false,\n\t\tlabelSize = 'm',\n\t\ttooltip,\n\t\ticonColor,\n\t\tonToolTip = () => null,\n\t\tonClick = () => null,\n\t\tonMouseDown = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst theme = useTheme();\n\tconst [isFocused, setIsFocused] = useState<boolean>(focused);\n\tconst [isHovered, setIsHovered] = useState<boolean>(false);\n\tuseEffect(() => setIsFocused(focused), [focused]);\n\n\t// click handler\n\tconst handleClick = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement>) => {\n\t\t\tif (!disabled) onClick(e);\n\t\t},\n\t\t[disabled, onClick],\n\t);\n\n\t// handle mouse down\n\tconst handleMouseDown = useCallback(\n\t\t(e: React.MouseEvent<HTMLDivElement>) => {\n\t\t\tif (!disabled) onMouseDown(e);\n\t\t},\n\t\t[disabled, onMouseDown],\n\t);\n\n\t// handle mouse enter / leave\n\tconst handleMouseEnter = useCallback(\n\t\t(enter: boolean, event: React.MouseEvent<HTMLDivElement>) => {\n\t\t\tif (enter) {\n\t\t\t\tif (tooltip) {\n\t\t\t\t\tconst tip: ToolTip = {\n\t\t\t\t\t\ttype: ToolTipType.button,\n\t\t\t\t\t\tpayload: { label: tooltip },\n\t\t\t\t\t\tref: null,\n\t\t\t\t\t\tevent,\n\t\t\t\t\t};\n\t\t\t\t\tonToolTip(tip);\n\t\t\t\t}\n\t\t\t\tsetIsHovered(true);\n\t\t\t} else {\n\t\t\t\tonToolTip(null);\n\t\t\t\tsetIsHovered(false);\n\t\t\t}\n\t\t},\n\t\t[tooltip, onToolTip],\n\t);\n\n\t// memo padding\n\tconst padding = useMemo(() => {\n\t\tconst isSmall = variant === 'small';\n\t\tif (!icon) {\n\t\t\treturn isSmall ? '6px' : '9px 16px 9px 16px';\n\t\t}\n\t\tif (icon && iconRight) {\n\t\t\treturn isSmall ? '6px 6px 6px 10px' : '9px 12px 9px 16px';\n\t\t}\n\t\treturn isSmall ? '6px 10px 6px 6px' : '9px 16px 9px 12px';\n\t}, [variant, icon, iconRight]);\n\n\t// memo icon color\n\tconst computedIconColor = useMemo(() => {\n\t\tif (iconColor) return iconColor;\n\t\tif (disabled) return theme.current.colors['core-icon-disabled'];\n\t\tif (isHovered) return theme.current.colors['core-link-primary'];\n\t\tif (isFocused) return theme.current.colors['core-link-primary'];\n\t\treturn theme.current.colors['core-text-primary'];\n\t}, [iconColor, disabled, isFocused, isHovered, theme]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--ui-chip-padding': padding,\n\t\t\t'--ui-chip-background': background || 'transparent',\n\t\t\t'--ui-chip-gap': variant === 'small' ? '4px' : '8px',\n\t\t\t'--ui-chip-color': computedIconColor,\n\t\t\t'--ui-chip-border-radius': variant === 'small' ? '4px' : '8px',\n\t\t\t'--ui-chip-border': unframed ? '0' : '1px',\n\t\t\t'--ui-chip-border-color': unframed ? 'transparent' : computedIconColor,\n\t\t} as React.CSSProperties;\n\t}, [padding, background, variant, unframed, computedIconColor]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'UIChip');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.chip}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonMouseDown={handleMouseDown}\n\t\t\tonKeyDown={() => null}\n\t\t\tonClick={handleClick}\n\t\t\tonMouseEnter={(e) => handleMouseEnter(true, e)}\n\t\t\tonMouseLeave={(e) => handleMouseEnter(false, e)}\n\t\t\tonFocus={() => setIsFocused(true)}\n\t\t\tonBlur={() => setIsFocused(false)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{icon && !iconRight && (\n\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\tsize={variant === 'regular' ? 20 : 16}\n\t\t\t\t\t\tstrokeColor={computedIconColor}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t<div className={css[labelSize]}>{label}</div>\n\t\t\t{icon && iconRight && (\n\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\tsize={variant === 'regular' ? 20 : 16}\n\t\t\t\t\t\tstrokeColor={computedIconColor}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n});\n","import { useCallback, useEffect, useState } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { IconButton } from '../IconButton';\nimport css from './UIButtonBar.module.css';\nimport type { BarButton, UIButtonBarProps } from './_types';\n\nexport function UIButtonBar(props: Readonly<UIButtonBarProps>) {\n\tconst {\n\t\toptions = [],\n\t\tcurrent = 0,\n\t\tlabel,\n\t\tonChange = () => null,\n\t\tonToolTip = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\tconst theme = useTheme();\n\tconst [hovered, setHovered] = useState<number>(-1);\n\tconst [currentPage, setCurrentPage] = useState<number>(current);\n\n\tuseEffect(() => setCurrentPage(current), [current]);\n\n\tconst handleMouseEnter = useCallback((index: number) => {\n\t\tsetHovered(index);\n\t}, []);\n\n\tconst handleMouseLeave = useCallback(() => {\n\t\tsetHovered(-1);\n\t}, []);\n\n\tconst handleClick = useCallback(\n\t\t(button: BarButton, index: number) => {\n\t\t\tsetCurrentPage(index);\n\t\t\tonChange(button);\n\t\t},\n\t\t[onChange],\n\t);\n\n\t// memo display\n\tconst display = useCallback(\n\t\t(index: number) => {\n\t\t\treturn index === options.length - 1 ? css.last : '';\n\t\t},\n\t\t[options.length],\n\t);\n\n\t// memo selected\n\tconst selected = useCallback(\n\t\t(index: number) => {\n\t\t\treturn currentPage === index ? css.selected : '';\n\t\t},\n\t\t[currentPage],\n\t);\n\n\t// memo icon stroke color\n\tconst iconColor = useCallback(\n\t\t(index: number) => {\n\t\t\tconst isSelected = currentPage === index;\n\t\t\tconst isHovered = hovered === index;\n\t\t\tif (isSelected) return theme.current.colors['core-icon-primary'];\n\t\t\tif (isHovered) return theme.current.colors['core-button-primary'];\n\t\t\treturn theme.current.colors['core-text-disabled'];\n\t\t},\n\t\t[currentPage, hovered, theme],\n\t);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'UIButtonBar');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${css.wrapper}${divClass}`}\n\t\t\tstyle={divStyle}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{label && <div className={css.label}>{label}</div>}\n\t\t\t{options?.map((button: BarButton, index: number) => {\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={css.button}\n\t\t\t\t\t\tkey={`button-bar-${button.icon}-${index}`}\n\t\t\t\t\t\tonMouseEnter={() => handleMouseEnter(index)}\n\t\t\t\t\t\tonMouseLeave={() => handleMouseLeave()}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={selected(index)}\n\t\t\t\t\t\t\tonClick={() => handleClick(button, index)}\n\t\t\t\t\t\t\tonKeyDown={() => handleClick(button, index)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\ticon={button.icon}\n\t\t\t\t\t\t\t\tcolor={iconColor(index)}\n\t\t\t\t\t\t\t\tlabel={button.label}\n\t\t\t\t\t\t\t\ttooltip={button.tip}\n\t\t\t\t\t\t\t\tonToolTip={onToolTip}\n\t\t\t\t\t\t\t\thover\n\t\t\t\t\t\t\t\ttoggle={false}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className={`${css.divider} ${display(index)}`} />\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n}\n","import React, { useCallback, useMemo } from 'react';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport { Icon } from '../Icon';\nimport css from './UICard.module.css';\nimport type { UICardProps } from './_types';\n\nexport const UICard = React.memo(function UICard(props: Readonly<UICardProps>) {\n\tconst {\n\t\tid,\n\t\ticon,\n\t\tlabel,\n\t\tcommand,\n\t\twidth,\n\t\tonCommand = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\t// set style value callback\n\tconst setStyle = useCallback((value: string | number | undefined) => {\n\t\tif (value === undefined || value === 'fill') return 'unset';\n\t\tif (typeof value === 'string') return value;\n\t\treturn `${value}px`;\n\t}, []);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--card-width': setStyle(width),\n\t\t\t'--card-flex': width === 'fill' ? '1' : 'unset',\n\t\t} as React.CSSProperties;\n\t}, [setStyle, width]);\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'UICard');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={id}\n\t\t\tclassName={`${css.card}${divClass}`}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={() => onCommand({ id, command })}\n\t\t\tonKeyDown={() => onCommand({ id, command })}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{icon && (\n\t\t\t\t<div className={css.icon}>\n\t\t\t\t\t<Icon name={icon} />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t{label && <div className={css.label}>{label}</div>}\n\t\t</div>\n\t);\n});\n","import type React from 'react';\nimport { useCallback, useMemo } from 'react';\nimport { useTheme } from '../../hooks';\nimport { useTrackRenders } from '../../hooks/useTrackRenders/useTrackRenders';\nimport css from './UILabel.module.css';\nimport type { UILabelProps } from './_types';\n\nexport function UILabel(props: Readonly<UILabelProps>) {\n\tconst theme = useTheme();\n\tconst {\n\t\tlabel,\n\t\tstate,\n\t\tnoFill = false,\n\t\tbutton = false,\n\t\tround = false,\n\t\tonClick = () => null,\n\t\t...divAttributes\n\t} = props;\n\tconst { id: divId, className, style, ...rest } = divAttributes;\n\tconst divStyle = style ?? ({} as React.CSSProperties);\n\tconst divClass = className ? ` ${className}` : '';\n\n\tconst handleClick = useCallback(\n\t\t(e: React.MouseEvent<any>) => {\n\t\t\tif (button) onClick(e);\n\t\t},\n\t\t[button, onClick],\n\t);\n\n\t// memo background color\n\tconst backgroundColor = useMemo(() => {\n\t\tif (noFill) return 'var(--core-surface-primary)';\n\t\tswitch (state) {\n\t\t\tcase 'red':\n\t\t\t\treturn theme.current.colors['feedback-warning'];\n\t\t\tcase 'green':\n\t\t\t\treturn theme.current.colors['feedback-warning'];\n\t\t\tcase 'yellow':\n\t\t\t\treturn theme.current.colors['array-yellow'];\n\t\t\tcase 'grey':\n\t\t\t\treturn theme.current.colors['core-surface-secondary'];\n\t\t\tcase 'lightgrey':\n\t\t\t\treturn theme.current.colors['core-button-disabled'];\n\t\t\tcase 'white':\n\t\t\t\treturn theme.current.colors['core-surface-secondary'];\n\t\t\tcase 'blue':\n\t\t\t\treturn theme.current.colors['core-button-primary'];\n\t\t\tdefault:\n\t\t\t\treturn 'var(--core-surface-primary)';\n\t\t}\n\t}, [noFill, state, theme]);\n\n\t// memo border colors\n\tconst borderColors = useMemo(() => {\n\t\tconst getBorderColor = (colorState: string) => {\n\t\t\tswitch (colorState) {\n\t\t\t\tcase 'red':\n\t\t\t\t\treturn theme.current.colors['core-button-disabled'];\n\t\t\t\tcase 'green':\n\t\t\t\t\treturn noFill\n\t\t\t\t\t\t? theme.current.colors['feedback-positive']\n\t\t\t\t\t\t: theme.current.colors['core-button-disabled'];\n\t\t\t\tcase 'yellow':\n\t\t\t\t\treturn theme.current.colors['array-yellow-label'];\n\t\t\t\tcase 'grey':\n\t\t\t\t\treturn noFill\n\t\t\t\t\t\t? theme.current.colors['core-text-secondary']\n\t\t\t\t\t\t: theme.current.colors['core-button-disabled'];\n\t\t\t\tcase 'lightgrey':\n\t\t\t\t\treturn noFill\n\t\t\t\t\t\t? theme.current.colors['core-outline-primary']\n\t\t\t\t\t\t: theme.current.colors['core-button-disabled'];\n\t\t\t\tcase 'white':\n\t\t\t\t\treturn noFill\n\t\t\t\t\t\t? theme.current.colors['core-text-secondary']\n\t\t\t\t\t\t: theme.current.colors['core-badge-secondary'];\n\t\t\t\tcase 'blue':\n\t\t\t\t\treturn noFill\n\t\t\t\t\t\t? theme.current.colors['core-text-secondary']\n\t\t\t\t\t\t: theme.current.colors['core-button-primary'];\n\t\t\t\tdefault:\n\t\t\t\t\treturn 'var(--core-outline-primary)';\n\t\t\t}\n\t\t};\n\n\t\treturn {\n\t\t\tred: getBorderColor('red'),\n\t\t\tgreen: getBorderColor('green'),\n\t\t\tyellow: getBorderColor('yellow'),\n\t\t\tgrey: getBorderColor('grey'),\n\t\t\tlightgrey: getBorderColor('lightgrey'),\n\t\t\twhite: getBorderColor('white'),\n\t\t\tblue: getBorderColor('blue'),\n\t\t};\n\t}, [noFill, theme]);\n\n\t// memo css vars\n\tconst cssVars = useMemo(() => {\n\t\treturn {\n\t\t\t'--label-padding': button ? '6px 12px' : '4px 6px',\n\t\t\t'--label-border-radius': round ? '100px' : '4px',\n\t\t\t'--label-cursor': button ? 'pointer' : 'default',\n\t\t\t'--label-background': backgroundColor,\n\t\t\t'--label-border-color-red': borderColors.red,\n\t\t\t'--label-border-color-green': borderColors.green,\n\t\t\t'--label-border-color-yellow': borderColors.yellow,\n\t\t\t'--label-border-color-grey': borderColors.grey,\n\t\t\t'--label-border-color-lightgrey': borderColors.lightgrey,\n\t\t\t'--label-border-color-white': borderColors.white,\n\t\t\t'--label-border-color-blue': borderColors.blue,\n\t\t} as React.CSSProperties;\n\t}, [button, round, backgroundColor, borderColors]);\n\n\tconst classNames = [\n\t\tcss.label,\n\t\tbutton ? css.button : css.regular,\n\t\tstate ? css[state] : '',\n\t]\n\t\t.filter(Boolean)\n\t\t.join(' ');\n\n\t/* START.DEBUG */\n\tuseTrackRenders(props, 'UILabel');\n\t/* END.DEBUG */\n\n\treturn (\n\t\t<div\n\t\t\tid={divId}\n\t\t\tclassName={`${classNames}${divClass}`}\n\t\t\tonKeyDown={() => null}\n\t\t\tstyle={{ ...divStyle, ...cssVars }}\n\t\t\tonClick={handleClick}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{label}\n\t\t</div>\n\t);\n}\n"],"names":["css","_jsx","_jsxs","_Fragment","Role"],"mappings":";;;;IASY;AAAZ,CAAA,UAAY,WAAW,EAAA;AACtB,IAAA,WAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,WAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,WAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AAChB,CAAC,EALW,WAAW,KAAX,WAAW,GAAA,EAAA,CAAA,CAAA;;ACPhB,MAAM,UAAU,GAAe;AACrC,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,cAAc,EAAE,SAAS;AACzB,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,cAAc,EAAE,SAAS;AACzB,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,iBAAiB,EAAE,SAAS;AAC5B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,iBAAiB,EAAE,SAAS;AAC5B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,iBAAiB,EAAE,SAAS;AAC5B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EAAE,SAAS;AAC7B,IAAA,kBAAkB,EA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","x_google_ignoreList":[14,16]}