@quillsql/admin 1.6.0 → 1.6.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 (686) hide show
  1. package/dist/cjs/Admin.d.ts +41 -87
  2. package/dist/cjs/Admin.d.ts.map +1 -1
  3. package/dist/cjs/Admin.js +358 -443
  4. package/dist/cjs/AdminProvider.d.ts +108 -49
  5. package/dist/cjs/AdminProvider.d.ts.map +1 -1
  6. package/dist/cjs/AdminProvider.js +391 -220
  7. package/dist/cjs/api/ConnectionClient.d.ts +20 -30
  8. package/dist/cjs/api/ConnectionClient.d.ts.map +1 -1
  9. package/dist/cjs/api/ConnectionClient.js +314 -310
  10. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  11. package/dist/cjs/components/Banner/index.d.ts +0 -1
  12. package/dist/cjs/components/Banner/index.d.ts.map +1 -1
  13. package/dist/cjs/components/Banner/index.js +1 -1
  14. package/dist/cjs/components/CardSection.js +1 -1
  15. package/dist/cjs/components/CardTitle.js +1 -1
  16. package/dist/cjs/components/ClipboardButton.d.ts +8 -0
  17. package/dist/cjs/components/ClipboardButton.d.ts.map +1 -0
  18. package/dist/cjs/components/ClipboardButton.js +74 -0
  19. package/dist/cjs/components/DashboardSelectPopover.d.ts +8 -5
  20. package/dist/cjs/components/DashboardSelectPopover.d.ts.map +1 -1
  21. package/dist/cjs/components/DashboardSelectPopover.js +74 -168
  22. package/dist/cjs/components/DatabaseMismatchCard.d.ts +3 -3
  23. package/dist/cjs/components/DatabaseMismatchCard.d.ts.map +1 -1
  24. package/dist/cjs/components/DatabaseMismatchCard.js +3 -3
  25. package/dist/cjs/components/DatabaseSelector.d.ts.map +1 -1
  26. package/dist/cjs/components/DatabaseSelector.js +10 -2
  27. package/dist/cjs/components/DateRangePicker/SingleDatePicker.d.ts +10 -0
  28. package/dist/cjs/components/DateRangePicker/SingleDatePicker.d.ts.map +1 -0
  29. package/dist/cjs/components/DateRangePicker/SingleDatePicker.js +263 -0
  30. package/dist/cjs/components/DateRangePicker/YearlessDateRangePicker.d.ts +18 -0
  31. package/dist/cjs/components/DateRangePicker/YearlessDateRangePicker.d.ts.map +1 -0
  32. package/dist/cjs/components/DateRangePicker/YearlessDateRangePicker.js +288 -0
  33. package/dist/cjs/components/DateRangePicker/dateRangePickerUtils.d.ts +91 -0
  34. package/dist/cjs/components/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -0
  35. package/dist/cjs/components/DateRangePicker/dateRangePickerUtils.js +898 -0
  36. package/dist/cjs/components/DeleteButton.d.ts +0 -1
  37. package/dist/cjs/components/DeleteButton.d.ts.map +1 -1
  38. package/dist/cjs/components/DeleteButton.js +1 -1
  39. package/dist/cjs/components/DropDownMenu.js +1 -1
  40. package/dist/cjs/components/DropDownMenuWithLabel.d.ts +4 -3
  41. package/dist/cjs/components/DropDownMenuWithLabel.d.ts.map +1 -1
  42. package/dist/cjs/components/DropDownMenuWithLabel.js +55 -59
  43. package/dist/cjs/components/DynamicBanner.d.ts +2 -5
  44. package/dist/cjs/components/DynamicBanner.d.ts.map +1 -1
  45. package/dist/cjs/components/DynamicBanner.js +3 -3
  46. package/dist/cjs/components/EmptyDashboardComponent/index.d.ts +0 -1
  47. package/dist/cjs/components/EmptyDashboardComponent/index.d.ts.map +1 -1
  48. package/dist/cjs/components/EmptyDashboardComponent/index.js +14 -11
  49. package/dist/cjs/components/EmptyVirtualTablesComponent.d.ts +4 -0
  50. package/dist/cjs/components/EmptyVirtualTablesComponent.d.ts.map +1 -0
  51. package/dist/cjs/components/EmptyVirtualTablesComponent.js +41 -0
  52. package/dist/cjs/components/ExternalLink.d.ts +4 -0
  53. package/dist/cjs/components/ExternalLink.d.ts.map +1 -0
  54. package/dist/cjs/components/ExternalLink.js +15 -0
  55. package/dist/cjs/components/FormTooltip.d.ts +8 -0
  56. package/dist/cjs/components/FormTooltip.d.ts.map +1 -0
  57. package/dist/cjs/components/FormTooltip.js +89 -0
  58. package/dist/cjs/components/InputLabel.d.ts +4 -1
  59. package/dist/cjs/components/InputLabel.d.ts.map +1 -1
  60. package/dist/cjs/components/InputLabel.js +13 -8
  61. package/dist/cjs/components/InternalDashboard/ChartSkeleton.d.ts +11 -0
  62. package/dist/cjs/components/InternalDashboard/ChartSkeleton.d.ts.map +1 -0
  63. package/dist/cjs/components/InternalDashboard/ChartSkeleton.js +21 -0
  64. package/dist/cjs/components/InternalDashboard/DashboardFilter.d.ts +20 -0
  65. package/dist/cjs/components/InternalDashboard/DashboardFilter.d.ts.map +1 -0
  66. package/dist/cjs/components/InternalDashboard/DashboardFilter.js +104 -0
  67. package/dist/cjs/components/InternalDashboard/DashboardLoadingComponent.d.ts +7 -0
  68. package/dist/cjs/components/InternalDashboard/DashboardLoadingComponent.d.ts.map +1 -0
  69. package/dist/cjs/components/InternalDashboard/DashboardLoadingComponent.js +22 -0
  70. package/dist/cjs/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.d.ts +37 -0
  71. package/dist/cjs/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -0
  72. package/dist/cjs/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.js +275 -0
  73. package/dist/cjs/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts +85 -0
  74. package/dist/cjs/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -0
  75. package/dist/cjs/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.js +534 -0
  76. package/dist/cjs/components/InternalDashboard/InternalDashboard.d.ts +17 -0
  77. package/dist/cjs/components/InternalDashboard/InternalDashboard.d.ts.map +1 -0
  78. package/dist/cjs/components/InternalDashboard/InternalDashboard.js +1947 -0
  79. package/dist/cjs/components/OrgSelect.d.ts +9 -13
  80. package/dist/cjs/components/OrgSelect.d.ts.map +1 -1
  81. package/dist/cjs/components/OrgSelect.js +136 -119
  82. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts +30 -0
  83. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -0
  84. package/dist/cjs/components/QuillMultiSelectWithCombo.js +504 -0
  85. package/dist/cjs/components/QuillPopover.d.ts +11 -0
  86. package/dist/cjs/components/QuillPopover.d.ts.map +1 -0
  87. package/dist/cjs/components/QuillPopover.js +180 -0
  88. package/dist/cjs/components/QuillSelect.d.ts +1 -1
  89. package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
  90. package/dist/cjs/components/QuillSelect.js +38 -16
  91. package/dist/cjs/components/QuillSelectWithCombo.d.ts +22 -0
  92. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -0
  93. package/dist/cjs/components/QuillSelectWithCombo.js +327 -0
  94. package/dist/cjs/components/QuillTab.d.ts +12 -0
  95. package/dist/cjs/components/QuillTab.d.ts.map +1 -0
  96. package/dist/cjs/components/QuillTab.js +84 -0
  97. package/dist/cjs/components/QuillToolTipPortal.d.ts +11 -0
  98. package/dist/cjs/components/QuillToolTipPortal.d.ts.map +1 -0
  99. package/dist/cjs/components/QuillToolTipPortal.js +108 -0
  100. package/dist/cjs/components/SegmentedControl.d.ts +10 -2
  101. package/dist/cjs/components/SegmentedControl.d.ts.map +1 -1
  102. package/dist/cjs/components/SegmentedControl.js +27 -22
  103. package/dist/cjs/components/SqlTextEditor.d.ts +6 -1
  104. package/dist/cjs/components/SqlTextEditor.d.ts.map +1 -1
  105. package/dist/cjs/components/SqlTextEditor.js +62 -13
  106. package/dist/cjs/components/StepDisplay.d.ts.map +1 -1
  107. package/dist/cjs/components/StepDisplay.js +2 -2
  108. package/dist/cjs/components/Tenants/EditTenant.d.ts +41 -0
  109. package/dist/cjs/components/Tenants/EditTenant.d.ts.map +1 -0
  110. package/dist/cjs/components/Tenants/EditTenant.js +760 -0
  111. package/dist/cjs/components/UiComponents.d.ts +35 -6
  112. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  113. package/dist/cjs/components/UiComponents.js +237 -30
  114. package/dist/cjs/components/VirtualTableTile.d.ts +7 -0
  115. package/dist/cjs/components/VirtualTableTile.d.ts.map +1 -0
  116. package/dist/cjs/components/VirtualTableTile.js +51 -0
  117. package/dist/cjs/components/index.d.ts +5 -5
  118. package/dist/cjs/components/index.d.ts.map +1 -1
  119. package/dist/cjs/components/index.js +1 -1
  120. package/dist/cjs/constants/dataTypes.d.ts +2 -0
  121. package/dist/cjs/constants/dataTypes.d.ts.map +1 -0
  122. package/dist/cjs/constants/dataTypes.js +23 -0
  123. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts +15 -6
  124. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  125. package/dist/cjs/forms/client_onboard/ConnectDatabase.js +214 -109
  126. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts +13 -9
  127. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  128. package/dist/cjs/forms/client_onboard/ConnectSchema.js +158 -236
  129. package/dist/cjs/forms/client_onboard/CreateVirtualTables.d.ts +47 -0
  130. package/dist/cjs/forms/client_onboard/CreateVirtualTables.d.ts.map +1 -0
  131. package/dist/cjs/forms/client_onboard/CreateVirtualTables.js +396 -0
  132. package/dist/cjs/forms/client_onboard/__tests__/ConnectDatabase.test.d.ts +2 -0
  133. package/dist/cjs/forms/client_onboard/__tests__/ConnectDatabase.test.d.ts.map +1 -0
  134. package/dist/cjs/forms/client_onboard/__tests__/ConnectDatabase.test.js +571 -0
  135. package/dist/cjs/forms/client_onboard/__tests__/ConnectSchema.test.d.ts +2 -0
  136. package/dist/cjs/forms/client_onboard/__tests__/ConnectSchema.test.d.ts.map +1 -0
  137. package/dist/cjs/forms/client_onboard/__tests__/ConnectSchema.test.js +459 -0
  138. package/dist/cjs/forms/client_onboard/__tests__/CreateVirtualTables.test.d.ts +2 -0
  139. package/dist/cjs/forms/client_onboard/__tests__/CreateVirtualTables.test.d.ts.map +1 -0
  140. package/dist/cjs/forms/client_onboard/__tests__/CreateVirtualTables.test.js +385 -0
  141. package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.d.ts +20 -0
  142. package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.d.ts.map +1 -0
  143. package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.js +294 -0
  144. package/dist/cjs/hooks/useDashboardManager.d.ts +16 -0
  145. package/dist/cjs/hooks/useDashboardManager.d.ts.map +1 -0
  146. package/dist/cjs/hooks/useDashboardManager.js +113 -0
  147. package/dist/cjs/hooks/useDatabaseSchema.d.ts +5 -0
  148. package/dist/cjs/hooks/useDatabaseSchema.d.ts.map +1 -0
  149. package/dist/cjs/hooks/useDatabaseSchema.js +54 -0
  150. package/dist/cjs/hooks/useItemBeingEdited.d.ts +1 -2
  151. package/dist/cjs/hooks/useItemBeingEdited.d.ts.map +1 -1
  152. package/dist/cjs/hooks/useItemBeingEdited.js +2 -14
  153. package/dist/cjs/hooks/useOnClickOutside.d.ts +4 -1
  154. package/dist/cjs/hooks/useOnClickOutside.d.ts.map +1 -1
  155. package/dist/cjs/hooks/useOnClickOutside.js +50 -7
  156. package/dist/cjs/hooks/useTenants.d.ts +13 -0
  157. package/dist/cjs/hooks/useTenants.d.ts.map +1 -0
  158. package/dist/cjs/hooks/useTenants.js +174 -0
  159. package/dist/cjs/hooks/useThrottle.d.ts +2 -0
  160. package/dist/cjs/hooks/useThrottle.d.ts.map +1 -0
  161. package/dist/cjs/hooks/useThrottle.js +14 -0
  162. package/dist/cjs/icons/CheckCircleIcon.d.ts +5 -0
  163. package/dist/cjs/icons/CheckCircleIcon.d.ts.map +1 -0
  164. package/dist/cjs/icons/CheckCircleIcon.js +5 -0
  165. package/dist/cjs/icons/DownChevronIcon.d.ts +2 -0
  166. package/dist/cjs/icons/DownChevronIcon.d.ts.map +1 -0
  167. package/dist/cjs/icons/DownChevronIcon.js +7 -0
  168. package/dist/cjs/icons/ExclamationFilledIcon.d.ts +5 -0
  169. package/dist/cjs/icons/ExclamationFilledIcon.d.ts.map +1 -0
  170. package/dist/cjs/icons/ExclamationFilledIcon.js +5 -0
  171. package/dist/cjs/icons/ExteriorLinkIcon.d.ts +5 -0
  172. package/dist/cjs/icons/ExteriorLinkIcon.d.ts.map +1 -0
  173. package/dist/cjs/icons/ExteriorLinkIcon.js +5 -0
  174. package/dist/cjs/icons/GlobeIcon.d.ts +5 -0
  175. package/dist/cjs/icons/GlobeIcon.d.ts.map +1 -0
  176. package/dist/cjs/icons/GlobeIcon.js +15 -0
  177. package/dist/cjs/icons/InformationCircleIcon.d.ts +4 -0
  178. package/dist/cjs/icons/InformationCircleIcon.d.ts.map +1 -0
  179. package/dist/cjs/icons/InformationCircleIcon.js +7 -0
  180. package/dist/cjs/icons/LeftChevronIcon.d.ts +2 -0
  181. package/dist/cjs/icons/LeftChevronIcon.d.ts.map +1 -0
  182. package/dist/cjs/icons/LeftChevronIcon.js +7 -0
  183. package/dist/cjs/icons/QuestionMarkCircleIcon.d.ts +5 -0
  184. package/dist/cjs/icons/QuestionMarkCircleIcon.d.ts.map +1 -0
  185. package/dist/cjs/icons/QuestionMarkCircleIcon.js +5 -0
  186. package/dist/cjs/icons/RightChevronIcon.d.ts +2 -0
  187. package/dist/cjs/icons/RightChevronIcon.d.ts.map +1 -0
  188. package/dist/cjs/icons/RightChevronIcon.js +7 -0
  189. package/dist/cjs/icons/XMarkIcon.d.ts +0 -1
  190. package/dist/cjs/icons/XMarkIcon.d.ts.map +1 -1
  191. package/dist/cjs/icons/XMarkIcon.js +1 -1
  192. package/dist/cjs/index.d.ts +2 -3
  193. package/dist/cjs/index.d.ts.map +1 -1
  194. package/dist/cjs/index.js +6 -7
  195. package/dist/cjs/modals/CodePreview.d.ts +6 -0
  196. package/dist/cjs/modals/CodePreview.d.ts.map +1 -0
  197. package/dist/cjs/modals/CodePreview.js +151 -0
  198. package/dist/cjs/modals/EditEnvironmentModal.d.ts +15 -0
  199. package/dist/cjs/modals/EditEnvironmentModal.d.ts.map +1 -0
  200. package/dist/cjs/modals/EditEnvironmentModal.js +551 -0
  201. package/dist/cjs/modals/EditFiltersModal.d.ts +14 -10
  202. package/dist/cjs/modals/EditFiltersModal.d.ts.map +1 -1
  203. package/dist/cjs/modals/EditFiltersModal.js +1220 -254
  204. package/dist/cjs/modals/NewDashboardModal.d.ts +6 -8
  205. package/dist/cjs/modals/NewDashboardModal.d.ts.map +1 -1
  206. package/dist/cjs/modals/NewDashboardModal.js +147 -146
  207. package/dist/cjs/modals/PromoteDashboardModal.d.ts +16 -0
  208. package/dist/cjs/modals/PromoteDashboardModal.d.ts.map +1 -0
  209. package/dist/cjs/modals/PromoteDashboardModal.js +56 -0
  210. package/dist/cjs/modals/PromoteReportModal.d.ts +15 -0
  211. package/dist/cjs/modals/PromoteReportModal.d.ts.map +1 -0
  212. package/dist/cjs/modals/PromoteReportModal.js +128 -0
  213. package/dist/cjs/modals/PromoteViewModal.d.ts +5 -4
  214. package/dist/cjs/modals/PromoteViewModal.d.ts.map +1 -1
  215. package/dist/cjs/modals/PromoteViewModal.js +65 -91
  216. package/dist/cjs/modals/ReorderDashboardModal.d.ts +1 -2
  217. package/dist/cjs/modals/ReorderDashboardModal.d.ts.map +1 -1
  218. package/dist/cjs/modals/ReorderDashboardModal.js +34 -20
  219. package/dist/cjs/modals/SavedQueriesModal.d.ts +7 -0
  220. package/dist/cjs/modals/SavedQueriesModal.d.ts.map +1 -0
  221. package/dist/cjs/modals/SavedQueriesModal.js +128 -0
  222. package/dist/cjs/modals/index.d.ts +0 -1
  223. package/dist/cjs/modals/index.d.ts.map +1 -1
  224. package/dist/cjs/modals/index.js +1 -3
  225. package/dist/cjs/primitives/ButtonPrimitive.d.ts +3 -1
  226. package/dist/cjs/primitives/ButtonPrimitive.d.ts.map +1 -1
  227. package/dist/cjs/primitives/ButtonPrimitive.js +24 -16
  228. package/dist/cjs/primitives/CheckboxPrimitive.d.ts +12 -0
  229. package/dist/cjs/primitives/CheckboxPrimitive.d.ts.map +1 -0
  230. package/dist/cjs/primitives/CheckboxPrimitive.js +29 -0
  231. package/dist/cjs/primitives/HeaderPrimitive.d.ts.map +1 -1
  232. package/dist/cjs/primitives/HeaderPrimitive.js +1 -1
  233. package/dist/cjs/primitives/MiniButtonPrimitive.d.ts +7 -0
  234. package/dist/cjs/primitives/MiniButtonPrimitive.d.ts.map +1 -0
  235. package/dist/cjs/primitives/MiniButtonPrimitive.js +56 -0
  236. package/dist/cjs/primitives/ModalPrimitive.d.ts +2 -10
  237. package/dist/cjs/primitives/ModalPrimitive.d.ts.map +1 -1
  238. package/dist/cjs/primitives/ModalPrimitive.js +6 -6
  239. package/dist/cjs/primitives/PlaceholderPrimitive.d.ts +5 -0
  240. package/dist/cjs/primitives/PlaceholderPrimitive.d.ts.map +1 -0
  241. package/dist/cjs/primitives/PlaceholderPrimitive.js +18 -0
  242. package/dist/cjs/primitives/PopoverPrimitive.d.ts +8 -0
  243. package/dist/cjs/primitives/PopoverPrimitive.d.ts.map +1 -0
  244. package/dist/cjs/primitives/PopoverPrimitive.js +53 -0
  245. package/dist/cjs/primitives/SecondaryButtonPrimitive.d.ts +3 -1
  246. package/dist/cjs/primitives/SecondaryButtonPrimitive.d.ts.map +1 -1
  247. package/dist/cjs/primitives/SecondaryButtonPrimitive.js +13 -10
  248. package/dist/cjs/primitives/TextInputPrimitive.d.ts +8 -2
  249. package/dist/cjs/primitives/TextInputPrimitive.d.ts.map +1 -1
  250. package/dist/cjs/primitives/TextInputPrimitive.js +131 -21
  251. package/dist/cjs/primitives/TogglePrimitive.d.ts +6 -3
  252. package/dist/cjs/primitives/TogglePrimitive.d.ts.map +1 -1
  253. package/dist/cjs/primitives/TogglePrimitive.js +10 -7
  254. package/dist/cjs/primitives/index.d.ts +1 -1
  255. package/dist/cjs/primitives/index.d.ts.map +1 -1
  256. package/dist/cjs/primitives/index.js +3 -3
  257. package/dist/cjs/public_components/ChartQueryBuilder.d.ts +9 -0
  258. package/dist/cjs/public_components/ChartQueryBuilder.d.ts.map +1 -0
  259. package/dist/cjs/public_components/ChartQueryBuilder.js +131 -0
  260. package/dist/cjs/public_components/CreateEnvironment.d.ts +2 -1
  261. package/dist/cjs/public_components/CreateEnvironment.d.ts.map +1 -1
  262. package/dist/cjs/public_components/CreateEnvironment.js +168 -78
  263. package/dist/cjs/public_components/DashboardManager.d.ts +2 -2
  264. package/dist/cjs/public_components/DashboardManager.d.ts.map +1 -1
  265. package/dist/cjs/public_components/DashboardManager.js +354 -196
  266. package/dist/cjs/public_components/EnvSelectPopover.d.ts +12 -0
  267. package/dist/cjs/public_components/EnvSelectPopover.d.ts.map +1 -0
  268. package/dist/cjs/public_components/EnvSelectPopover.js +144 -0
  269. package/dist/cjs/public_components/VirtualTableManager.d.ts +7 -0
  270. package/dist/cjs/public_components/VirtualTableManager.d.ts.map +1 -0
  271. package/dist/cjs/public_components/VirtualTableManager.js +731 -0
  272. package/dist/cjs/public_components/__tests__/CreateEnvironment.test.d.ts +2 -0
  273. package/dist/cjs/public_components/__tests__/CreateEnvironment.test.d.ts.map +1 -0
  274. package/dist/cjs/public_components/__tests__/CreateEnvironment.test.js +685 -0
  275. package/dist/cjs/utils/astProcessing.d.ts +15 -0
  276. package/dist/cjs/utils/astProcessing.d.ts.map +1 -0
  277. package/dist/cjs/utils/astProcessing.js +105 -0
  278. package/dist/cjs/utils/astProcessing.uspec.d.ts +2 -0
  279. package/dist/cjs/utils/astProcessing.uspec.d.ts.map +1 -0
  280. package/dist/cjs/utils/astProcessing.uspec.js +30 -0
  281. package/dist/cjs/utils/columnProcessing.d.ts +15 -0
  282. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -0
  283. package/dist/cjs/utils/columnProcessing.js +208 -0
  284. package/dist/cjs/utils/constants.d.ts +4 -21
  285. package/dist/cjs/utils/constants.d.ts.map +1 -1
  286. package/dist/cjs/utils/constants.js +20 -11
  287. package/dist/cjs/utils/dataEditor.d.ts +4 -3
  288. package/dist/cjs/utils/dataEditor.d.ts.map +1 -1
  289. package/dist/cjs/utils/dataEditor.js +69 -119
  290. package/dist/cjs/utils/dataFetcher.d.ts +20 -2
  291. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  292. package/dist/cjs/utils/dataFetcher.js +46 -56
  293. package/dist/cjs/utils/databases.d.ts +20 -9
  294. package/dist/cjs/utils/databases.d.ts.map +1 -1
  295. package/dist/cjs/utils/databases.js +66 -28
  296. package/dist/cjs/utils/filter.d.ts +222 -0
  297. package/dist/cjs/utils/filter.d.ts.map +1 -0
  298. package/dist/cjs/utils/filter.js +347 -0
  299. package/dist/cjs/utils/monacoAutocomplete.d.ts +22 -0
  300. package/dist/cjs/utils/monacoAutocomplete.d.ts.map +1 -0
  301. package/dist/cjs/utils/monacoAutocomplete.js +355 -0
  302. package/dist/cjs/utils/report.d.ts +120 -0
  303. package/dist/cjs/utils/report.d.ts.map +1 -0
  304. package/dist/cjs/utils/report.js +109 -0
  305. package/dist/cjs/utils/schema.d.ts +43 -26
  306. package/dist/cjs/utils/schema.d.ts.map +1 -1
  307. package/dist/cjs/utils/schema.js +175 -0
  308. package/dist/cjs/utils/table.d.ts +70 -4
  309. package/dist/cjs/utils/table.d.ts.map +1 -1
  310. package/dist/cjs/utils/tenants.d.ts +48 -0
  311. package/dist/cjs/utils/tenants.d.ts.map +1 -0
  312. package/dist/cjs/utils/tenants.js +37 -0
  313. package/dist/cjs/utils/textProcessing.js +1 -2
  314. package/dist/cjs/utils/ui.d.ts +2 -0
  315. package/dist/cjs/utils/ui.d.ts.map +1 -0
  316. package/dist/cjs/utils/ui.js +18 -0
  317. package/dist/cjs/utils/validation.d.ts +2 -0
  318. package/dist/cjs/utils/validation.d.ts.map +1 -0
  319. package/dist/cjs/utils/validation.js +77 -0
  320. package/dist/cjs/utils/validation.uspec.d.ts +2 -0
  321. package/dist/cjs/utils/validation.uspec.d.ts.map +1 -0
  322. package/dist/cjs/utils/validation.uspec.js +53 -0
  323. package/dist/esm/Admin.d.ts +41 -87
  324. package/dist/esm/Admin.d.ts.map +1 -1
  325. package/dist/esm/Admin.js +355 -409
  326. package/dist/esm/AdminProvider.d.ts +108 -49
  327. package/dist/esm/AdminProvider.d.ts.map +1 -1
  328. package/dist/esm/AdminProvider.js +391 -221
  329. package/dist/esm/api/ConnectionClient.d.ts +20 -30
  330. package/dist/esm/api/ConnectionClient.d.ts.map +1 -1
  331. package/dist/esm/api/ConnectionClient.js +303 -295
  332. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  333. package/dist/esm/components/Banner/index.d.ts +0 -1
  334. package/dist/esm/components/Banner/index.d.ts.map +1 -1
  335. package/dist/esm/components/ClipboardButton.d.ts +8 -0
  336. package/dist/esm/components/ClipboardButton.d.ts.map +1 -0
  337. package/dist/esm/components/ClipboardButton.js +69 -0
  338. package/dist/esm/components/DashboardSelectPopover.d.ts +8 -5
  339. package/dist/esm/components/DashboardSelectPopover.d.ts.map +1 -1
  340. package/dist/esm/components/DashboardSelectPopover.js +72 -169
  341. package/dist/esm/components/DatabaseMismatchCard.d.ts +3 -3
  342. package/dist/esm/components/DatabaseMismatchCard.d.ts.map +1 -1
  343. package/dist/esm/components/DatabaseMismatchCard.js +2 -2
  344. package/dist/esm/components/DatabaseSelector.d.ts.map +1 -1
  345. package/dist/esm/components/DatabaseSelector.js +9 -1
  346. package/dist/esm/components/DateRangePicker/SingleDatePicker.d.ts +10 -0
  347. package/dist/esm/components/DateRangePicker/SingleDatePicker.d.ts.map +1 -0
  348. package/dist/esm/components/DateRangePicker/SingleDatePicker.js +227 -0
  349. package/dist/esm/components/DateRangePicker/YearlessDateRangePicker.d.ts +18 -0
  350. package/dist/esm/components/DateRangePicker/YearlessDateRangePicker.d.ts.map +1 -0
  351. package/dist/esm/components/DateRangePicker/YearlessDateRangePicker.js +282 -0
  352. package/dist/esm/components/DateRangePicker/dateRangePickerUtils.d.ts +91 -0
  353. package/dist/esm/components/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -0
  354. package/dist/esm/components/DateRangePicker/dateRangePickerUtils.js +883 -0
  355. package/dist/esm/components/DeleteButton.d.ts +0 -1
  356. package/dist/esm/components/DeleteButton.d.ts.map +1 -1
  357. package/dist/esm/components/DropDownMenuWithLabel.d.ts +4 -3
  358. package/dist/esm/components/DropDownMenuWithLabel.d.ts.map +1 -1
  359. package/dist/esm/components/DropDownMenuWithLabel.js +36 -53
  360. package/dist/esm/components/DynamicBanner.d.ts +2 -5
  361. package/dist/esm/components/DynamicBanner.d.ts.map +1 -1
  362. package/dist/esm/components/DynamicBanner.js +2 -2
  363. package/dist/esm/components/EmptyDashboardComponent/index.d.ts +0 -1
  364. package/dist/esm/components/EmptyDashboardComponent/index.d.ts.map +1 -1
  365. package/dist/esm/components/EmptyDashboardComponent/index.js +13 -10
  366. package/dist/esm/components/EmptyVirtualTablesComponent.d.ts +4 -0
  367. package/dist/esm/components/EmptyVirtualTablesComponent.d.ts.map +1 -0
  368. package/dist/esm/components/EmptyVirtualTablesComponent.js +38 -0
  369. package/dist/esm/components/ExternalLink.d.ts +4 -0
  370. package/dist/esm/components/ExternalLink.d.ts.map +1 -0
  371. package/dist/esm/components/ExternalLink.js +9 -0
  372. package/dist/esm/components/FormTooltip.d.ts +8 -0
  373. package/dist/esm/components/FormTooltip.d.ts.map +1 -0
  374. package/dist/esm/components/FormTooltip.js +84 -0
  375. package/dist/esm/components/InputLabel.d.ts +4 -1
  376. package/dist/esm/components/InputLabel.d.ts.map +1 -1
  377. package/dist/esm/components/InputLabel.js +10 -8
  378. package/dist/esm/components/InternalDashboard/ChartSkeleton.d.ts +11 -0
  379. package/dist/esm/components/InternalDashboard/ChartSkeleton.d.ts.map +1 -0
  380. package/dist/esm/components/InternalDashboard/ChartSkeleton.js +16 -0
  381. package/dist/esm/components/InternalDashboard/DashboardFilter.d.ts +20 -0
  382. package/dist/esm/components/InternalDashboard/DashboardFilter.d.ts.map +1 -0
  383. package/dist/esm/components/InternalDashboard/DashboardFilter.js +101 -0
  384. package/dist/esm/components/InternalDashboard/DashboardLoadingComponent.d.ts +7 -0
  385. package/dist/esm/components/InternalDashboard/DashboardLoadingComponent.d.ts.map +1 -0
  386. package/dist/esm/components/InternalDashboard/DashboardLoadingComponent.js +15 -0
  387. package/dist/esm/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.d.ts +37 -0
  388. package/dist/esm/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -0
  389. package/dist/esm/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.js +269 -0
  390. package/dist/esm/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts +85 -0
  391. package/dist/esm/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -0
  392. package/dist/esm/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.js +520 -0
  393. package/dist/esm/components/InternalDashboard/InternalDashboard.d.ts +17 -0
  394. package/dist/esm/components/InternalDashboard/InternalDashboard.d.ts.map +1 -0
  395. package/dist/esm/components/InternalDashboard/InternalDashboard.js +1940 -0
  396. package/dist/esm/components/OrgSelect.d.ts +9 -13
  397. package/dist/esm/components/OrgSelect.d.ts.map +1 -1
  398. package/dist/esm/components/OrgSelect.js +134 -117
  399. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +30 -0
  400. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -0
  401. package/dist/esm/components/QuillMultiSelectWithCombo.js +466 -0
  402. package/dist/esm/components/QuillPopover.d.ts +11 -0
  403. package/dist/esm/components/QuillPopover.d.ts.map +1 -0
  404. package/dist/esm/components/QuillPopover.js +144 -0
  405. package/dist/esm/components/QuillSelect.d.ts +1 -1
  406. package/dist/esm/components/QuillSelect.d.ts.map +1 -1
  407. package/dist/esm/components/QuillSelect.js +39 -16
  408. package/dist/esm/components/QuillSelectWithCombo.d.ts +22 -0
  409. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -0
  410. package/dist/esm/components/QuillSelectWithCombo.js +291 -0
  411. package/dist/esm/components/QuillTab.d.ts +12 -0
  412. package/dist/esm/components/QuillTab.d.ts.map +1 -0
  413. package/dist/esm/components/QuillTab.js +81 -0
  414. package/dist/esm/components/QuillToolTipPortal.d.ts +11 -0
  415. package/dist/esm/components/QuillToolTipPortal.d.ts.map +1 -0
  416. package/dist/esm/components/QuillToolTipPortal.js +104 -0
  417. package/dist/esm/components/SegmentedControl.d.ts +10 -2
  418. package/dist/esm/components/SegmentedControl.d.ts.map +1 -1
  419. package/dist/esm/components/SegmentedControl.js +26 -20
  420. package/dist/esm/components/SqlTextEditor.d.ts +6 -1
  421. package/dist/esm/components/SqlTextEditor.d.ts.map +1 -1
  422. package/dist/esm/components/SqlTextEditor.js +60 -11
  423. package/dist/esm/components/StepDisplay.d.ts.map +1 -1
  424. package/dist/esm/components/StepDisplay.js +1 -1
  425. package/dist/esm/components/Tenants/EditTenant.d.ts +41 -0
  426. package/dist/esm/components/Tenants/EditTenant.d.ts.map +1 -0
  427. package/dist/esm/components/Tenants/EditTenant.js +754 -0
  428. package/dist/esm/components/UiComponents.d.ts +35 -6
  429. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  430. package/dist/esm/components/UiComponents.js +231 -28
  431. package/dist/esm/components/VirtualTableTile.d.ts +7 -0
  432. package/dist/esm/components/VirtualTableTile.d.ts.map +1 -0
  433. package/dist/esm/components/VirtualTableTile.js +48 -0
  434. package/dist/esm/components/index.d.ts +5 -5
  435. package/dist/esm/components/index.d.ts.map +1 -1
  436. package/dist/esm/components/index.js +5 -5
  437. package/dist/esm/constants/dataTypes.d.ts +2 -0
  438. package/dist/esm/constants/dataTypes.d.ts.map +1 -0
  439. package/dist/esm/constants/dataTypes.js +20 -0
  440. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts +15 -6
  441. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  442. package/dist/esm/forms/client_onboard/ConnectDatabase.js +216 -111
  443. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts +13 -9
  444. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  445. package/dist/esm/forms/client_onboard/ConnectSchema.js +160 -238
  446. package/dist/esm/forms/client_onboard/CreateVirtualTables.d.ts +47 -0
  447. package/dist/esm/forms/client_onboard/CreateVirtualTables.d.ts.map +1 -0
  448. package/dist/esm/forms/client_onboard/CreateVirtualTables.js +388 -0
  449. package/dist/esm/forms/client_onboard/__tests__/ConnectDatabase.test.d.ts +2 -0
  450. package/dist/esm/forms/client_onboard/__tests__/ConnectDatabase.test.d.ts.map +1 -0
  451. package/dist/esm/forms/client_onboard/__tests__/ConnectDatabase.test.js +566 -0
  452. package/dist/esm/forms/client_onboard/__tests__/ConnectSchema.test.d.ts +2 -0
  453. package/dist/esm/forms/client_onboard/__tests__/ConnectSchema.test.d.ts.map +1 -0
  454. package/dist/esm/forms/client_onboard/__tests__/ConnectSchema.test.js +454 -0
  455. package/dist/esm/forms/client_onboard/__tests__/CreateVirtualTables.test.d.ts +2 -0
  456. package/dist/esm/forms/client_onboard/__tests__/CreateVirtualTables.test.d.ts.map +1 -0
  457. package/dist/esm/forms/client_onboard/__tests__/CreateVirtualTables.test.js +380 -0
  458. package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.d.ts +20 -0
  459. package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.d.ts.map +1 -0
  460. package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.js +288 -0
  461. package/dist/esm/hooks/useDashboardManager.d.ts +16 -0
  462. package/dist/esm/hooks/useDashboardManager.d.ts.map +1 -0
  463. package/dist/esm/hooks/useDashboardManager.js +109 -0
  464. package/dist/esm/hooks/useDatabaseSchema.d.ts +5 -0
  465. package/dist/esm/hooks/useDatabaseSchema.d.ts.map +1 -0
  466. package/dist/esm/hooks/useDatabaseSchema.js +50 -0
  467. package/dist/esm/hooks/useItemBeingEdited.d.ts +1 -2
  468. package/dist/esm/hooks/useItemBeingEdited.d.ts.map +1 -1
  469. package/dist/esm/hooks/useItemBeingEdited.js +3 -15
  470. package/dist/esm/hooks/useOnClickOutside.d.ts +4 -1
  471. package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -1
  472. package/dist/esm/hooks/useOnClickOutside.js +49 -8
  473. package/dist/esm/hooks/useTenants.d.ts +13 -0
  474. package/dist/esm/hooks/useTenants.d.ts.map +1 -0
  475. package/dist/esm/hooks/useTenants.js +170 -0
  476. package/dist/esm/hooks/useThrottle.d.ts +2 -0
  477. package/dist/esm/hooks/useThrottle.d.ts.map +1 -0
  478. package/dist/esm/hooks/useThrottle.js +11 -0
  479. package/dist/esm/icons/CheckCircleIcon.d.ts +5 -0
  480. package/dist/esm/icons/CheckCircleIcon.d.ts.map +1 -0
  481. package/dist/esm/icons/CheckCircleIcon.js +3 -0
  482. package/dist/esm/icons/DownChevronIcon.d.ts +2 -0
  483. package/dist/esm/icons/DownChevronIcon.d.ts.map +1 -0
  484. package/dist/esm/icons/DownChevronIcon.js +4 -0
  485. package/dist/esm/icons/ExclamationFilledIcon.d.ts +5 -0
  486. package/dist/esm/icons/ExclamationFilledIcon.d.ts.map +1 -0
  487. package/dist/esm/icons/ExclamationFilledIcon.js +3 -0
  488. package/dist/esm/icons/ExteriorLinkIcon.d.ts +5 -0
  489. package/dist/esm/icons/ExteriorLinkIcon.d.ts.map +1 -0
  490. package/dist/esm/icons/ExteriorLinkIcon.js +3 -0
  491. package/dist/esm/icons/GlobeIcon.d.ts +5 -0
  492. package/dist/esm/icons/GlobeIcon.d.ts.map +1 -0
  493. package/dist/esm/icons/GlobeIcon.js +12 -0
  494. package/dist/esm/icons/InformationCircleIcon.d.ts +4 -0
  495. package/dist/esm/icons/InformationCircleIcon.d.ts.map +1 -0
  496. package/dist/esm/icons/InformationCircleIcon.js +4 -0
  497. package/dist/esm/icons/LeftChevronIcon.d.ts +2 -0
  498. package/dist/esm/icons/LeftChevronIcon.d.ts.map +1 -0
  499. package/dist/esm/icons/LeftChevronIcon.js +4 -0
  500. package/dist/esm/icons/QuestionMarkCircleIcon.d.ts +5 -0
  501. package/dist/esm/icons/QuestionMarkCircleIcon.d.ts.map +1 -0
  502. package/dist/esm/icons/QuestionMarkCircleIcon.js +3 -0
  503. package/dist/esm/icons/RightChevronIcon.d.ts +2 -0
  504. package/dist/esm/icons/RightChevronIcon.d.ts.map +1 -0
  505. package/dist/esm/icons/RightChevronIcon.js +4 -0
  506. package/dist/esm/icons/XMarkIcon.d.ts +0 -1
  507. package/dist/esm/icons/XMarkIcon.d.ts.map +1 -1
  508. package/dist/esm/index.d.ts +2 -3
  509. package/dist/esm/index.d.ts.map +1 -1
  510. package/dist/esm/index.js +3 -3
  511. package/dist/esm/modals/CodePreview.d.ts +6 -0
  512. package/dist/esm/modals/CodePreview.d.ts.map +1 -0
  513. package/dist/esm/modals/CodePreview.js +145 -0
  514. package/dist/esm/modals/EditEnvironmentModal.d.ts +15 -0
  515. package/dist/esm/modals/EditEnvironmentModal.d.ts.map +1 -0
  516. package/dist/esm/modals/EditEnvironmentModal.js +545 -0
  517. package/dist/esm/modals/EditFiltersModal.d.ts +14 -10
  518. package/dist/esm/modals/EditFiltersModal.d.ts.map +1 -1
  519. package/dist/esm/modals/EditFiltersModal.js +1227 -255
  520. package/dist/esm/modals/NewDashboardModal.d.ts +6 -8
  521. package/dist/esm/modals/NewDashboardModal.d.ts.map +1 -1
  522. package/dist/esm/modals/NewDashboardModal.js +148 -146
  523. package/dist/esm/modals/PromoteDashboardModal.d.ts +16 -0
  524. package/dist/esm/modals/PromoteDashboardModal.d.ts.map +1 -0
  525. package/dist/esm/modals/PromoteDashboardModal.js +53 -0
  526. package/dist/esm/modals/PromoteReportModal.d.ts +15 -0
  527. package/dist/esm/modals/PromoteReportModal.d.ts.map +1 -0
  528. package/dist/esm/modals/PromoteReportModal.js +125 -0
  529. package/dist/esm/modals/PromoteViewModal.d.ts +5 -4
  530. package/dist/esm/modals/PromoteViewModal.d.ts.map +1 -1
  531. package/dist/esm/modals/PromoteViewModal.js +65 -91
  532. package/dist/esm/modals/ReorderDashboardModal.d.ts +1 -2
  533. package/dist/esm/modals/ReorderDashboardModal.d.ts.map +1 -1
  534. package/dist/esm/modals/ReorderDashboardModal.js +34 -20
  535. package/dist/esm/modals/SavedQueriesModal.d.ts +7 -0
  536. package/dist/esm/modals/SavedQueriesModal.d.ts.map +1 -0
  537. package/dist/esm/modals/SavedQueriesModal.js +125 -0
  538. package/dist/esm/modals/index.d.ts +0 -1
  539. package/dist/esm/modals/index.d.ts.map +1 -1
  540. package/dist/esm/modals/index.js +0 -1
  541. package/dist/esm/primitives/ButtonPrimitive.d.ts +3 -1
  542. package/dist/esm/primitives/ButtonPrimitive.d.ts.map +1 -1
  543. package/dist/esm/primitives/ButtonPrimitive.js +25 -17
  544. package/dist/esm/primitives/CheckboxPrimitive.d.ts +12 -0
  545. package/dist/esm/primitives/CheckboxPrimitive.d.ts.map +1 -0
  546. package/dist/esm/primitives/CheckboxPrimitive.js +27 -0
  547. package/dist/esm/primitives/HeaderPrimitive.d.ts.map +1 -1
  548. package/dist/esm/primitives/HeaderPrimitive.js +1 -1
  549. package/dist/esm/primitives/MiniButtonPrimitive.d.ts +7 -0
  550. package/dist/esm/primitives/MiniButtonPrimitive.d.ts.map +1 -0
  551. package/dist/esm/primitives/MiniButtonPrimitive.js +54 -0
  552. package/dist/esm/primitives/ModalPrimitive.d.ts +2 -10
  553. package/dist/esm/primitives/ModalPrimitive.d.ts.map +1 -1
  554. package/dist/esm/primitives/ModalPrimitive.js +7 -7
  555. package/dist/esm/primitives/PlaceholderPrimitive.d.ts +5 -0
  556. package/dist/esm/primitives/PlaceholderPrimitive.d.ts.map +1 -0
  557. package/dist/esm/primitives/PlaceholderPrimitive.js +15 -0
  558. package/dist/esm/primitives/PopoverPrimitive.d.ts +8 -0
  559. package/dist/esm/primitives/PopoverPrimitive.d.ts.map +1 -0
  560. package/dist/esm/primitives/PopoverPrimitive.js +49 -0
  561. package/dist/esm/primitives/SecondaryButtonPrimitive.d.ts +3 -1
  562. package/dist/esm/primitives/SecondaryButtonPrimitive.d.ts.map +1 -1
  563. package/dist/esm/primitives/SecondaryButtonPrimitive.js +14 -11
  564. package/dist/esm/primitives/TextInputPrimitive.d.ts +8 -2
  565. package/dist/esm/primitives/TextInputPrimitive.d.ts.map +1 -1
  566. package/dist/esm/primitives/TextInputPrimitive.js +100 -23
  567. package/dist/esm/primitives/TogglePrimitive.d.ts +6 -3
  568. package/dist/esm/primitives/TogglePrimitive.d.ts.map +1 -1
  569. package/dist/esm/primitives/TogglePrimitive.js +10 -7
  570. package/dist/esm/primitives/index.d.ts +1 -1
  571. package/dist/esm/primitives/index.d.ts.map +1 -1
  572. package/dist/esm/primitives/index.js +1 -1
  573. package/dist/esm/public_components/ChartQueryBuilder.d.ts +9 -0
  574. package/dist/esm/public_components/ChartQueryBuilder.d.ts.map +1 -0
  575. package/dist/esm/public_components/ChartQueryBuilder.js +125 -0
  576. package/dist/esm/public_components/CreateEnvironment.d.ts +2 -1
  577. package/dist/esm/public_components/CreateEnvironment.d.ts.map +1 -1
  578. package/dist/esm/public_components/CreateEnvironment.js +152 -72
  579. package/dist/esm/public_components/DashboardManager.d.ts +2 -2
  580. package/dist/esm/public_components/DashboardManager.d.ts.map +1 -1
  581. package/dist/esm/public_components/DashboardManager.js +358 -200
  582. package/dist/esm/public_components/EnvSelectPopover.d.ts +12 -0
  583. package/dist/esm/public_components/EnvSelectPopover.d.ts.map +1 -0
  584. package/dist/esm/public_components/EnvSelectPopover.js +138 -0
  585. package/dist/esm/public_components/VirtualTableManager.d.ts +7 -0
  586. package/dist/esm/public_components/VirtualTableManager.d.ts.map +1 -0
  587. package/dist/esm/public_components/VirtualTableManager.js +723 -0
  588. package/dist/esm/public_components/__tests__/CreateEnvironment.test.d.ts +2 -0
  589. package/dist/esm/public_components/__tests__/CreateEnvironment.test.d.ts.map +1 -0
  590. package/dist/esm/public_components/__tests__/CreateEnvironment.test.js +680 -0
  591. package/dist/esm/utils/astProcessing.d.ts +15 -0
  592. package/dist/esm/utils/astProcessing.d.ts.map +1 -0
  593. package/dist/esm/utils/astProcessing.js +98 -0
  594. package/dist/esm/utils/astProcessing.uspec.d.ts +2 -0
  595. package/dist/esm/utils/astProcessing.uspec.d.ts.map +1 -0
  596. package/dist/esm/utils/astProcessing.uspec.js +28 -0
  597. package/dist/esm/utils/columnProcessing.d.ts +15 -0
  598. package/dist/esm/utils/columnProcessing.d.ts.map +1 -0
  599. package/dist/esm/utils/columnProcessing.js +200 -0
  600. package/dist/esm/utils/constants.d.ts +4 -21
  601. package/dist/esm/utils/constants.d.ts.map +1 -1
  602. package/dist/esm/utils/constants.js +18 -9
  603. package/dist/esm/utils/dataEditor.d.ts +4 -3
  604. package/dist/esm/utils/dataEditor.d.ts.map +1 -1
  605. package/dist/esm/utils/dataEditor.js +65 -115
  606. package/dist/esm/utils/dataFetcher.d.ts +20 -2
  607. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  608. package/dist/esm/utils/dataFetcher.js +44 -53
  609. package/dist/esm/utils/databases.d.ts +20 -9
  610. package/dist/esm/utils/databases.d.ts.map +1 -1
  611. package/dist/esm/utils/databases.js +63 -25
  612. package/dist/esm/utils/filter.d.ts +222 -0
  613. package/dist/esm/utils/filter.d.ts.map +1 -0
  614. package/dist/esm/utils/filter.js +343 -0
  615. package/dist/esm/utils/monacoAutocomplete.d.ts +22 -0
  616. package/dist/esm/utils/monacoAutocomplete.d.ts.map +1 -0
  617. package/dist/esm/utils/monacoAutocomplete.js +350 -0
  618. package/dist/esm/utils/report.d.ts +120 -0
  619. package/dist/esm/utils/report.d.ts.map +1 -0
  620. package/dist/esm/utils/report.js +106 -0
  621. package/dist/esm/utils/schema.d.ts +43 -26
  622. package/dist/esm/utils/schema.d.ts.map +1 -1
  623. package/dist/esm/utils/schema.js +171 -1
  624. package/dist/esm/utils/table.d.ts +70 -4
  625. package/dist/esm/utils/table.d.ts.map +1 -1
  626. package/dist/esm/utils/tenants.d.ts +48 -0
  627. package/dist/esm/utils/tenants.d.ts.map +1 -0
  628. package/dist/esm/utils/tenants.js +31 -0
  629. package/dist/esm/utils/ui.d.ts +2 -0
  630. package/dist/esm/utils/ui.d.ts.map +1 -0
  631. package/dist/esm/utils/ui.js +14 -0
  632. package/dist/esm/utils/validation.d.ts +2 -0
  633. package/dist/esm/utils/validation.d.ts.map +1 -0
  634. package/dist/esm/utils/validation.js +74 -0
  635. package/dist/esm/utils/validation.uspec.d.ts +2 -0
  636. package/dist/esm/utils/validation.uspec.d.ts.map +1 -0
  637. package/dist/esm/utils/validation.uspec.js +51 -0
  638. package/package.json +22 -8
  639. package/dist/cjs/components/EnvSelectPopover.d.ts +0 -13
  640. package/dist/cjs/components/EnvSelectPopover.d.ts.map +0 -1
  641. package/dist/cjs/components/EnvSelectPopover.js +0 -224
  642. package/dist/cjs/components/SqlViewTile.d.ts +0 -8
  643. package/dist/cjs/components/SqlViewTile.d.ts.map +0 -1
  644. package/dist/cjs/components/SqlViewTile.js +0 -69
  645. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts +0 -24
  646. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts.map +0 -1
  647. package/dist/cjs/forms/client_onboard/CreateSqlViews.js +0 -237
  648. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts +0 -26
  649. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts.map +0 -1
  650. package/dist/cjs/forms/sql_views/CreateEditSqlView.js +0 -177
  651. package/dist/cjs/modals/PromoteDashModal.d.ts +0 -17
  652. package/dist/cjs/modals/PromoteDashModal.d.ts.map +0 -1
  653. package/dist/cjs/modals/PromoteDashModal.js +0 -133
  654. package/dist/cjs/primitives/SelectPrimitive.d.ts +0 -16
  655. package/dist/cjs/primitives/SelectPrimitive.d.ts.map +0 -1
  656. package/dist/cjs/primitives/SelectPrimitive.js +0 -43
  657. package/dist/cjs/public_components/DashboardBuilder.d.ts +0 -7
  658. package/dist/cjs/public_components/DashboardBuilder.d.ts.map +0 -1
  659. package/dist/cjs/public_components/DashboardBuilder.js +0 -309
  660. package/dist/cjs/public_components/SQLViewManager.d.ts +0 -5
  661. package/dist/cjs/public_components/SQLViewManager.d.ts.map +0 -1
  662. package/dist/cjs/public_components/SQLViewManager.js +0 -387
  663. package/dist/esm/components/EnvSelectPopover.d.ts +0 -13
  664. package/dist/esm/components/EnvSelectPopover.d.ts.map +0 -1
  665. package/dist/esm/components/EnvSelectPopover.js +0 -221
  666. package/dist/esm/components/SqlViewTile.d.ts +0 -8
  667. package/dist/esm/components/SqlViewTile.d.ts.map +0 -1
  668. package/dist/esm/components/SqlViewTile.js +0 -40
  669. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts +0 -24
  670. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts.map +0 -1
  671. package/dist/esm/forms/client_onboard/CreateSqlViews.js +0 -229
  672. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts +0 -26
  673. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts.map +0 -1
  674. package/dist/esm/forms/sql_views/CreateEditSqlView.js +0 -171
  675. package/dist/esm/modals/PromoteDashModal.d.ts +0 -17
  676. package/dist/esm/modals/PromoteDashModal.d.ts.map +0 -1
  677. package/dist/esm/modals/PromoteDashModal.js +0 -130
  678. package/dist/esm/primitives/SelectPrimitive.d.ts +0 -16
  679. package/dist/esm/primitives/SelectPrimitive.d.ts.map +0 -1
  680. package/dist/esm/primitives/SelectPrimitive.js +0 -41
  681. package/dist/esm/public_components/DashboardBuilder.d.ts +0 -7
  682. package/dist/esm/public_components/DashboardBuilder.d.ts.map +0 -1
  683. package/dist/esm/public_components/DashboardBuilder.js +0 -303
  684. package/dist/esm/public_components/SQLViewManager.d.ts +0 -5
  685. package/dist/esm/public_components/SQLViewManager.d.ts.map +0 -1
  686. package/dist/esm/public_components/SQLViewManager.js +0 -381
@@ -0,0 +1,288 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Table, SchemaListComponent, } from '@quillsql/react';
3
+ import { useEffect, useMemo, useState } from 'react';
4
+ import { useAdmin } from '../../AdminProvider';
5
+ import { getQueryFromAiWithConnection, getVirtualTableData, } from '../../api/ConnectionClient';
6
+ import SqlTextEditor from '../../components/SqlTextEditor';
7
+ import { LoadingSpinner, MemoizedButton, MemoizedSecondaryButton, MemoizedTextInput, OverflowContainer, QuillToolTip, } from '../../components/UiComponents';
8
+ import { TenantFieldModal } from '../client_onboard/CreateVirtualTables';
9
+ import DynamicBanner from '../../components/DynamicBanner';
10
+ import { getDuplicateColumns } from '../../public_components/VirtualTableManager';
11
+ import { processColumnReference } from '../../utils/columnProcessing';
12
+ import { processJoinASTWithDuplicateColumns } from '../../utils/astProcessing';
13
+ import { SINGLE_TENANT } from '../../utils/constants';
14
+ import { onlySingleDatabaseTenant } from '../../utils/tenants';
15
+ import { QuillMultiSelectComponentWithCombo } from '../../components/QuillMultiSelectWithCombo';
16
+ export default function CreateEditVirtualTable({ containerStyle, initialVirtualTable, closeEditVirtualTable: closeEditVirtualTable, addEditVirtualTable: addEditVirtualTable, LoadingComponent = () => _jsx(LoadingSpinner, {}), ButtonComponent = MemoizedButton, SecondaryButtonComponent = MemoizedSecondaryButton, TextInput = MemoizedTextInput, allTableData, schemaIsLoading, client, }) {
17
+ const name = initialVirtualTable?.name || '';
18
+ const [editVirtualTableQuery, setEditVirtualTableQuery] = useState(initialVirtualTable?.viewQuery || '');
19
+ const [ranVirtualTableQuery, setRanVirtualTableQuery] = useState(initialVirtualTable?.viewQuery || '');
20
+ const [askAIButtonLoading, setAskAIButtonLoading] = useState(false);
21
+ const [aiPrompt, setAIPrompt] = useState('');
22
+ const [virtualTableAddable, setVirtualTableAddable] = useState(false);
23
+ const [virtualTableOwners, setVirtualTableOwners] = useState(initialVirtualTable?.ownerTenantFields ??
24
+ client.ownerTenantFields?.filter((f) => f !== SINGLE_TENANT) ??
25
+ []);
26
+ const [failingTenant, setFailingTenant] = useState(undefined);
27
+ const [isLoading, setIsLoading] = useState(false);
28
+ const [tableSearchQuery, setTableSearchQuery] = useState('');
29
+ const [editorMounted, setEditorMounted] = useState(false);
30
+ const [displayedTableData, setDisplayedTableData] = useState(allTableData);
31
+ const [errorInfo, setErrorInfo] = useState({ show: false, message: '' });
32
+ const [tableData, setTableData] = useState(undefined);
33
+ const [runningQuery, setRunningQuery] = useState(false);
34
+ const { state, getToken, quillFetchWithToken } = useAdmin();
35
+ const addEditProcessVirtualTable = async (override = false) => {
36
+ const failingTenant = virtualTableOwners?.find((field) => tableData &&
37
+ !tableData.fields.find((col) => col.name === field?.replaceAll('"', '')));
38
+ if (!override && tableData && failingTenant) {
39
+ const tenant = client.allTenantTypes?.find((t) => t.tenantField === failingTenant);
40
+ setFailingTenant(tenant);
41
+ return;
42
+ }
43
+ addEditVirtualTable(initialVirtualTable ? 'edit' : 'add', ranVirtualTableQuery, virtualTableOwners, name, initialVirtualTable ? initialVirtualTable._id : undefined, tableData?.fields || [], override);
44
+ };
45
+ const dashboardOwnerTenants = useMemo(() => {
46
+ return client.allTenantTypes
47
+ ?.filter((t) => client.ownerTenantFields?.includes(t.tenantField))
48
+ .filter((t) => t.tenantField !== SINGLE_TENANT);
49
+ }, [client.ownerTenantFields, client.allTenantTypes]);
50
+ useEffect(() => {
51
+ setDisplayedTableData(allTableData);
52
+ }, [allTableData]);
53
+ // Run query on mount
54
+ useEffect(() => {
55
+ if (initialVirtualTable) {
56
+ handleRunQuery(initialVirtualTable.viewQuery);
57
+ }
58
+ }, []);
59
+ const handleRunSqlPrompt = async () => {
60
+ setErrorInfo({ show: false, message: '' });
61
+ setVirtualTableAddable(false);
62
+ setAskAIButtonLoading(true);
63
+ const results = await getQueryFromAiWithConnection(state.queryEndpoint, aiPrompt, state.client._id, getToken, state.client.schemaNames);
64
+ setEditVirtualTableQuery(results);
65
+ setAskAIButtonLoading(false);
66
+ };
67
+ const handleClickSchemaItem = async (event) => {
68
+ const name = event.target.textContent;
69
+ if (!name) {
70
+ return;
71
+ }
72
+ const newQuery = `SELECT * FROM ${processColumnReference(name, state.client.databaseType)};`;
73
+ if (!editVirtualTableQuery || editVirtualTableQuery.length === 0) {
74
+ setEditVirtualTableQuery(newQuery);
75
+ }
76
+ await navigator.clipboard.writeText(newQuery);
77
+ };
78
+ const handleRunQuery = async (overrideQuery, runOnce = false) => {
79
+ setRunningQuery(true);
80
+ const query = overrideQuery ? overrideQuery : editVirtualTableQuery;
81
+ // If this query has a limit at the end alert the user
82
+ if (/limit\s+\d+\s*;?\s*$/i.test(query)) {
83
+ setErrorInfo({
84
+ show: true,
85
+ message: 'Error: Please remove the limit at the end of your query.',
86
+ });
87
+ //TODO: Errors should have further justification/explanation in a -?- tooltip
88
+ return;
89
+ }
90
+ if (state.client.databaseType.toLowerCase() === 'mssql' &&
91
+ /\border\s+by\b/i.test(query.trim()) &&
92
+ !/top\s+\d+/i.test(query.trim())) {
93
+ setErrorInfo({
94
+ show: true,
95
+ message: 'Error: Queries with ORDER BY must include TOP.',
96
+ });
97
+ return;
98
+ }
99
+ setVirtualTableAddable(false);
100
+ setErrorInfo({ show: false, message: '' });
101
+ setTableData(undefined);
102
+ if (query.length === 0) {
103
+ setErrorInfo({ show: true, message: 'Error: Please enter a query.' });
104
+ setRunningQuery(false);
105
+ return;
106
+ }
107
+ setIsLoading(true);
108
+ const resp = await getVirtualTableData(state.client._id, query, state.client.databaseType, state.queryEndpoint, getToken);
109
+ if (!resp.success) {
110
+ setErrorInfo({ show: true, message: resp.error });
111
+ setTableData(undefined);
112
+ setVirtualTableAddable(false);
113
+ setIsLoading(false);
114
+ setRunningQuery(false);
115
+ return;
116
+ }
117
+ setErrorInfo({ show: false, message: '' });
118
+ // stringify all rows that are either jsonb or json
119
+ resp.rows = resp.rows.map((row) => {
120
+ for (const key in row) {
121
+ if (row[key] !== null && typeof row[key] === 'object') {
122
+ row[key] = JSON.stringify(row[key]);
123
+ }
124
+ }
125
+ return row;
126
+ });
127
+ const duplicateColumns = getDuplicateColumns(resp.fields);
128
+ if (duplicateColumns.length > 0 && !runOnce) {
129
+ let parsedAST = resp.ast;
130
+ if (Array.isArray(resp.ast)) {
131
+ parsedAST = resp.ast[0];
132
+ }
133
+ const tableInfo = parsedAST.from.map((table) => {
134
+ const db = table.db ? `${table.db}.` : '';
135
+ return {
136
+ tableName: `${db}${table.table}`,
137
+ alias: table.as || `${db}${table.table}`,
138
+ };
139
+ });
140
+ const newAst = processJoinASTWithDuplicateColumns(duplicateColumns, tableInfo, allTableData, parsedAST);
141
+ const { data: jsonResponse } = await quillFetchWithToken({
142
+ client: {
143
+ queryEndpoint: state.queryEndpoint,
144
+ queryHeaders: state.queryHeaders,
145
+ clientId: state.client._id,
146
+ withCredentials: false,
147
+ },
148
+ task: 'sqlify',
149
+ metadata: {
150
+ clientId: state.client._id,
151
+ ast: { ...newAst },
152
+ useNewNodeSql: true,
153
+ },
154
+ adminMode: true,
155
+ });
156
+ if (!jsonResponse) {
157
+ setErrorInfo({ show: true, message: 'Error parsing query' });
158
+ setRunningQuery(false);
159
+ return;
160
+ }
161
+ setEditVirtualTableQuery(jsonResponse.query);
162
+ await handleRunQuery(jsonResponse.query, true);
163
+ setRunningQuery(false);
164
+ return;
165
+ }
166
+ setTableData({ fields: resp.fields, rows: resp.rows });
167
+ setVirtualTableAddable(true);
168
+ setRanVirtualTableQuery(query);
169
+ setIsLoading(false);
170
+ setRunningQuery(false);
171
+ };
172
+ return (_jsx("div", { style: {
173
+ ...containerStyle,
174
+ gap: 6,
175
+ height: 'calc(100vh - 130px)',
176
+ }, children: _jsxs("div", { style: { display: 'flex', height: '100%', flexDirection: 'column' }, children: [_jsx(DynamicBanner, { header: initialVirtualTable
177
+ ? `Edit "${initialVirtualTable.name}" Virtual Table`
178
+ : 'Create Virtual Table', onExit: initialVirtualTable ? undefined : closeEditVirtualTable }), _jsxs("div", { style: {
179
+ width: '100%',
180
+ display: 'flex',
181
+ height: '100%',
182
+ flexDirection: 'row',
183
+ paddingTop: '20px',
184
+ }, children: [_jsxs("div", { style: {
185
+ display: 'flex',
186
+ flexDirection: 'column',
187
+ gap: 20,
188
+ width: '30%',
189
+ minWidth: '250px',
190
+ maxWidth: '350px',
191
+ }, children: [_jsx("div", { style: {
192
+ paddingLeft: '20px',
193
+ paddingRight: '30px',
194
+ }, children: _jsx(TextInput, { placeholder: "Filter tables...", onChange: (e) => {
195
+ setTableSearchQuery(e.target.value);
196
+ setDisplayedTableData(allTableData.filter((table) => {
197
+ return (table.tableName
198
+ ?.toLowerCase()
199
+ ?.includes(e.target.value.toLowerCase().trim()) ||
200
+ table.columns.some((col) => col.field
201
+ ?.toLowerCase()
202
+ ?.includes(e.target.value.toLowerCase().trim())));
203
+ }));
204
+ }, value: tableSearchQuery, id: 'edit-name', width: '100%' }) }), _jsx(SchemaListComponent, { schema: displayedTableData, theme: state.theme, LoadingComponent: LoadingComponent, loading: schemaIsLoading, width: '100%', onClick: handleClickSchemaItem })] }), _jsxs("div", { style: {
205
+ display: 'flex',
206
+ gap: 20,
207
+ flexDirection: 'column',
208
+ width: 'calc(100% - 250px)',
209
+ maxHeight: '100%',
210
+ overflowX: 'hidden',
211
+ paddingRight: '24px',
212
+ }, children: [_jsx(OverflowContainer, { children: _jsxs("div", { style: {
213
+ overflow: 'auto',
214
+ gap: 20,
215
+ display: 'flex',
216
+ flexDirection: 'column',
217
+ // height: '100%',
218
+ }, children: [_jsxs("div", { style: {
219
+ display: 'flex',
220
+ flexDirection: 'row',
221
+ alignItems: 'flex-start',
222
+ justifyContent: 'space-between',
223
+ gap: 20,
224
+ width: '100%',
225
+ }, children: [_jsx(TextInput, { onChange: (e) => {
226
+ setAIPrompt(e.target.value);
227
+ }, placeholder: 'Describe a query...', value: aiPrompt, id: 'ai-prompt', width: '100%' }), _jsx(QuillToolTip, { text: aiPrompt.trim().length > 500
228
+ ? 'Prompt must be less than 500 characters'
229
+ : '', enabled: aiPrompt.trim().length > 500, textStyle: {
230
+ maxWidth: '77px',
231
+ whiteSpace: 'normal',
232
+ }, displayBelow: true, children: _jsx(ButtonComponent, { label: 'Ask AI', isLoading: askAIButtonLoading, onClick: handleRunSqlPrompt, disabled: aiPrompt.trim().length > 500 }) })] }), !schemaIsLoading && (_jsx(SqlTextEditor, { value: editVirtualTableQuery, setValue: (e) => {
233
+ setEditVirtualTableQuery(e);
234
+ }, setEditorMounted: (didMount) => {
235
+ setEditorMounted(didMount);
236
+ }, schema: displayedTableData, databaseType: state.client.databaseType })), editorMounted && (_jsxs("div", { style: {
237
+ width: '100%',
238
+ display: 'flex',
239
+ flexDirection: 'row',
240
+ justifyContent: 'space-between',
241
+ }, children: [_jsx(ButtonComponent, { label: 'Run query', onClick: () => {
242
+ handleRunQuery();
243
+ } }), !!dashboardOwnerTenants?.length && (_jsx(QuillMultiSelectComponentWithCombo, { label: 'Owner Tenants', width: 230, value: virtualTableOwners, options: dashboardOwnerTenants?.map((f) => {
244
+ return { value: f.tenantField, label: f.name };
245
+ }) ?? [], onChange: (e) => setVirtualTableOwners(e.target.value), allSelectedLabel: _jsx("div", { children: "All tenants" }), noneSelectedLabel: _jsx("div", { children: "No owners" }) }))] })), errorInfo.show ? (_jsx("div", { style: {
246
+ fontSize: 15,
247
+ fontWeight: '400',
248
+ width: '100%',
249
+ }, children: _jsx("div", { style: {
250
+ padding: 30,
251
+ background: 'rgba(0,0,0,0.02)',
252
+ display: 'inline-block',
253
+ flex: 0,
254
+ borderRadius: 6,
255
+ width: '100%',
256
+ }, children: errorInfo.message }) })) : null, (tableData || runningQuery) && (_jsx(Table, { containerStyle: {
257
+ minHeight: 260,
258
+ height: 75 +
259
+ Math.min(Math.max(10, tableData?.rows.length ?? 10), 10) *
260
+ 37,
261
+ }, rows: tableData?.rows || [], columns: tableData?.fields || [], isLoading: isLoading }))] }) }), virtualTableAddable ? (_jsxs("div", { style: {
262
+ marginLeft: 'auto',
263
+ display: 'flex',
264
+ flexDirection: 'row',
265
+ gap: 12,
266
+ marginTop: 'auto',
267
+ }, children: [_jsx(SecondaryButtonComponent, { onClick: closeEditVirtualTable, label: 'Discard changes' }), _jsx(ButtonComponent, { label: `${initialVirtualTable ? 'Save changes' : 'Create virtual table'}`, onClick: () => {
268
+ const duplicateColumns = getDuplicateColumns(tableData?.fields);
269
+ if (duplicateColumns.length > 0) {
270
+ alert(`Ambiguous column names found. Either use aliases or remove the column to make every column name unique: \n\n${duplicateColumns.join('\n')}`);
271
+ return;
272
+ }
273
+ // If any owner tenants have been removed, confirm with the user
274
+ const removedTenant = initialVirtualTable?.ownerTenantFields?.find((field) => !virtualTableOwners.includes(field));
275
+ if (removedTenant) {
276
+ alert('You may not remove owners from virtual tables at this time');
277
+ return;
278
+ }
279
+ addEditProcessVirtualTable(onlySingleDatabaseTenant(client));
280
+ }, tooltipText: initialVirtualTable?.viewQuery === ranVirtualTableQuery
281
+ ? 'No changes made'
282
+ : undefined })] })) : isLoading || !initialVirtualTable ? null : (_jsx("div", { style: {
283
+ marginLeft: 'auto',
284
+ display: 'flex',
285
+ flexDirection: 'row',
286
+ gap: 12,
287
+ }, children: _jsx(SecondaryButtonComponent, { onClick: closeEditVirtualTable, label: 'Discard changes' }) }))] })] }), _jsx(TenantFieldModal, { isOpen: !!failingTenant, setClosed: () => setFailingTenant(undefined), tenant: failingTenant })] }) }));
288
+ }
@@ -0,0 +1,16 @@
1
+ export declare const useDashboardManager: () => {
2
+ setSelectedDashboard: (name: string | null, reportId?: string) => void;
3
+ selectedDashboard: {
4
+ name: string;
5
+ id: string;
6
+ reports: import("@quillsql/react").QuillReport[];
7
+ tenantKeys: string[] | undefined;
8
+ createdAt: Date;
9
+ sectionOrder: {
10
+ _id: string;
11
+ section: string;
12
+ reportOrder: string[];
13
+ }[] | undefined;
14
+ } | undefined;
15
+ };
16
+ //# sourceMappingURL=useDashboardManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDashboardManager.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDashboardManager.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAM,mBAAmB;iCAQM,MAAM,GAAG,IAAI,aAAa,MAAM;;;;;;;;;;;;;CAuGrE,CAAC"}
@@ -0,0 +1,109 @@
1
+ import { useDashboards } from '@quillsql/react';
2
+ import { useAdmin } from '../AdminProvider';
3
+ import { useMemo } from 'react';
4
+ import { SAVED_QUERIES_DASHBOARD } from '../utils/constants';
5
+ export const useDashboardManager = () => {
6
+ const { dashboards } = useDashboards();
7
+ const { state, dispatch } = useAdmin();
8
+ const selectedDashboard = useMemo(() => dashboards?.find((d) => d.name === state.selectedDashboard), [dashboards, state.selectedDashboard]);
9
+ const setSelectedDashboard = (name, reportId) => {
10
+ if (!name || name === SAVED_QUERIES_DASHBOARD) {
11
+ dispatch({
12
+ type: 'SET_SELECTED_DASHBOARD_NAME',
13
+ payload: {
14
+ dashboard: null,
15
+ reportId: null,
16
+ },
17
+ });
18
+ return;
19
+ }
20
+ dispatch({
21
+ type: 'SET_SELECTED_DASHBOARD_NAME',
22
+ payload: {
23
+ dashboard: name,
24
+ reportId,
25
+ },
26
+ });
27
+ const dashboard = dashboards?.find((d) => d.name === name);
28
+ if (!dashboard) {
29
+ return;
30
+ }
31
+ // if (asSingleDatabaseTenant(state.client)) {
32
+ // clearSingleTenantState();
33
+ // return;
34
+ // }
35
+ if (!dashboard?.tenantKeys) {
36
+ clearTenantState();
37
+ }
38
+ else if (dashboard.tenantKeys[0] !== state.selectedTenantField) {
39
+ const tenant = state.client.allTenantTypes?.find((t) => t.tenantField === dashboard.tenantKeys[0]);
40
+ if (!tenant) {
41
+ clearTenantState();
42
+ return;
43
+ }
44
+ else {
45
+ dispatch({
46
+ type: 'SET_SELECTED_TENANT_FOREIGN_KEY',
47
+ payload: tenant.tenantField,
48
+ });
49
+ dispatch({
50
+ type: 'SET_SELECTED_TENANT_VALUES',
51
+ payload: tenant.defaultId ? [tenant.defaultId] : [],
52
+ });
53
+ dispatch({
54
+ type: 'SET_SELECTED_DASHBOARD_TENANT_IDS',
55
+ payload: undefined,
56
+ });
57
+ dispatch({
58
+ type: 'SET_MAPPABLE_DASHBOARD_TENANT_IDS',
59
+ payload: undefined,
60
+ });
61
+ dispatch({
62
+ type: 'SET_CURRENT_TENANT_IDENTITY',
63
+ payload: [
64
+ {
65
+ tenantField: tenant.tenantField,
66
+ tenantIds: tenant.defaultId ? [tenant.defaultId] : [],
67
+ },
68
+ ],
69
+ });
70
+ }
71
+ }
72
+ };
73
+ // const clearSingleTenantState = () => {
74
+ // dispatch({
75
+ // type: 'SET_CURRENT_TENANT_IDENTITY',
76
+ // payload: undefined,
77
+ // });
78
+ // dispatch({
79
+ // type: 'SET_SELECTED_TENANT_VALUES',
80
+ // payload: undefined,
81
+ // });
82
+ // dispatch({
83
+ // type: 'SET_SELECTED_DASHBOARD_TENANT_IDS',
84
+ // payload: undefined,
85
+ // });
86
+ // }
87
+ const clearTenantState = () => {
88
+ dispatch({
89
+ type: 'SET_CURRENT_TENANT_IDENTITY',
90
+ payload: undefined,
91
+ });
92
+ dispatch({
93
+ type: 'SET_SELECTED_TENANT_VALUES',
94
+ payload: undefined,
95
+ });
96
+ dispatch({
97
+ type: 'SET_SELECTED_TENANT_FOREIGN_KEY',
98
+ payload: undefined,
99
+ });
100
+ dispatch({
101
+ type: 'SET_SELECTED_DASHBOARD_TENANT_IDS',
102
+ payload: undefined,
103
+ });
104
+ };
105
+ return {
106
+ setSelectedDashboard,
107
+ selectedDashboard,
108
+ };
109
+ };
@@ -0,0 +1,5 @@
1
+ export declare const useDatabaseSchema: () => {
2
+ schema: import("../utils/table").ColumnsByTable[] | null | undefined;
3
+ isLoading: boolean;
4
+ };
5
+ //# sourceMappingURL=useDatabaseSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDatabaseSchema.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDatabaseSchema.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,iBAAiB;;;CAuD7B,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { useAdmin } from '../AdminProvider';
2
+ import { useEffect, useState } from 'react';
3
+ import { getTableColumnsBySchema } from '../api/ConnectionClient';
4
+ export const useDatabaseSchema = () => {
5
+ const { state, dispatch, getToken } = useAdmin();
6
+ const [isLoading, setIsLoading] = useState(state.databaseSchema?.id !== state.client.id);
7
+ useEffect(() => {
8
+ const fetchSchema = async () => {
9
+ if ((state.databaseSchema?.schema?.length ||
10
+ state.databaseSchema?.loading) &&
11
+ state.databaseSchema?.id === state.client.id)
12
+ return;
13
+ try {
14
+ dispatch({
15
+ type: 'SET_DATABASE_SCHEMA',
16
+ payload: {
17
+ schema: state.databaseSchema?.schema ?? [],
18
+ id: state.client.id,
19
+ loading: true,
20
+ },
21
+ });
22
+ setIsLoading(true);
23
+ const schema = await getTableColumnsBySchema(state.queryEndpoint, state.client.id, getToken);
24
+ dispatch({
25
+ type: 'SET_DATABASE_SCHEMA',
26
+ payload: {
27
+ schema: schema.columnsByTable,
28
+ id: state.client.id,
29
+ loading: false,
30
+ },
31
+ });
32
+ }
33
+ catch (e) {
34
+ console.error(e);
35
+ }
36
+ finally {
37
+ setIsLoading(false);
38
+ }
39
+ };
40
+ if (state.client.id) {
41
+ fetchSchema();
42
+ }
43
+ }, [state.client.id]);
44
+ return {
45
+ schema: isLoading || state.databaseSchema?.loading
46
+ ? null
47
+ : state.databaseSchema?.schema,
48
+ isLoading: isLoading || !!state.databaseSchema?.loading,
49
+ };
50
+ };
@@ -1,4 +1,3 @@
1
- import { PropsWithChildren } from 'react';
2
1
  export declare const useItemBeingEdited: () => void;
3
- export declare const ItemBeingEditedProvider: (props: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const ItemBeingEditedProvider: () => import("react/jsx-runtime").JSX.Element;
4
3
  //# sourceMappingURL=useItemBeingEdited.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useItemBeingEdited.d.ts","sourceRoot":"","sources":["../../../src/hooks/useItemBeingEdited.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EAIlB,MAAM,OAAO,CAAC;AAsCf,eAAO,MAAM,kBAAkB,YAI9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAAW,iBAAiB,4CAM/D,CAAC"}
1
+ {"version":3,"file":"useItemBeingEdited.d.ts","sourceRoot":"","sources":["../../../src/hooks/useItemBeingEdited.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,kBAAkB,YAE9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,+CAMnC,CAAC"}
@@ -1,25 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // @ts-nocheck
3
- import { createContext, useContext, useReducer, } from 'react';
3
+ import { createContext, useContext } from 'react';
4
4
  /**
5
5
  * The actual context that this hook will monitor.
6
6
  */
7
7
  const ItemBeingEditedContext = createContext(null);
8
- const reducer = (_, action) => {
9
- switch (action.type) {
10
- case 'SET_ITEM': {
11
- return action.value;
12
- }
13
- case 'CLEAR_ITEM': {
14
- return null;
15
- }
16
- // No default necessary because action.type is a union of string literals
17
- }
18
- };
19
8
  export const useItemBeingEdited = () => {
20
- const [todos, dispatch] = useReducer(reducer, null);
21
- const foo = useContext(ItemBeingEditedContext);
9
+ useContext(ItemBeingEditedContext);
22
10
  };
23
- export const ItemBeingEditedProvider = (props) => {
11
+ export const ItemBeingEditedProvider = () => {
24
12
  return (_jsx(ItemBeingEditedContext.Provider, { value: { state, dispatch }, children: children }));
25
13
  };
@@ -1,3 +1,6 @@
1
- declare const useOnClickOutside: (ref: React.RefObject<HTMLDivElement>, handler: (event: any) => void) => void;
1
+ declare const useOnClickOutside: (ref: React.RefObject<HTMLDivElement>, handler: {
2
+ (event: any): void;
3
+ }, listening?: boolean) => void;
4
+ export declare const getEffectiveZIndex: (element: HTMLElement) => number;
2
5
  export default useOnClickOutside;
3
6
  //# sourceMappingURL=useOnClickOutside.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOnClickOutside.d.ts","sourceRoot":"","sources":["../../../src/hooks/useOnClickOutside.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,iBAAiB,QAChB,MAAM,SAAS,CAAC,cAAc,CAAC,mBACjB,GAAG,KAAG,IAAI,SAgB9B,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"useOnClickOutside.d.ts","sourceRoot":"","sources":["../../../src/hooks/useOnClickOutside.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,iBAAiB,QAChB,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,WAC3B;IAAE,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAAA;CAAE,cACnB,OAAO,SA2BpB,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,WAAW,KAAG,MAoBzD,CAAC;AAqBF,eAAe,iBAAiB,CAAC"}
@@ -1,18 +1,59 @@
1
- import { useEffect } from "react";
2
- const useOnClickOutside = (ref, handler) => {
1
+ import { useEffect } from 'react';
2
+ const useOnClickOutside = (ref, handler, listening) => {
3
3
  useEffect(() => {
4
4
  const listener = (event) => {
5
- if (!ref.current || ref.current.contains(event.target)) {
5
+ if (!ref.current ||
6
+ ref.current.contains(event.target) ||
7
+ event.target.closest('[data-portal-ignore]')) {
6
8
  return;
7
9
  }
10
+ event.preventDefault();
11
+ event.stopPropagation();
8
12
  handler(event);
9
13
  };
10
- document.addEventListener("mousedown", listener);
11
- document.addEventListener("touchstart", listener);
14
+ if (listening !== false) {
15
+ document.addEventListener('click', listener);
16
+ document.addEventListener('touchstart', listener);
17
+ }
18
+ else {
19
+ document.removeEventListener('click', listener);
20
+ document.removeEventListener('touchstart', listener);
21
+ }
12
22
  return () => {
13
- document.removeEventListener("mousedown", listener);
14
- document.removeEventListener("touchstart", listener);
23
+ document.removeEventListener('click', listener);
24
+ document.removeEventListener('touchstart', listener);
15
25
  };
16
- }, [ref, handler]);
26
+ }, [ref, handler, listening]);
27
+ };
28
+ export const getEffectiveZIndex = (element) => {
29
+ let zIndexSum = 0;
30
+ let currentElement = element;
31
+ while (currentElement && currentElement !== document.body) {
32
+ const computedStyle = window.getComputedStyle(currentElement);
33
+ const zIndex = computedStyle.zIndex;
34
+ // If the element creates a stacking context, apply its z-index
35
+ if (createsStackingContext(computedStyle)) {
36
+ if (zIndex !== 'auto' && !isNaN(parseInt(zIndex, 10))) {
37
+ zIndexSum = Math.max(zIndexSum, parseInt(zIndex, 10));
38
+ }
39
+ }
40
+ // Move up to the parent element
41
+ currentElement = currentElement.parentElement;
42
+ }
43
+ return zIndexSum;
44
+ };
45
+ // Determines if an element creates a stacking context
46
+ const createsStackingContext = (computedStyle) => {
47
+ return (computedStyle.position === 'absolute' ||
48
+ computedStyle.position === 'relative' ||
49
+ computedStyle.position === 'fixed' ||
50
+ computedStyle.position === 'sticky' ||
51
+ computedStyle.transform !== 'none' ||
52
+ computedStyle.opacity !== '1' ||
53
+ computedStyle.filter !== 'none' ||
54
+ computedStyle.perspective !== 'none' ||
55
+ computedStyle.willChange !== 'auto' ||
56
+ computedStyle.contain === 'paint' ||
57
+ computedStyle.clipPath !== 'none');
17
58
  };
18
59
  export default useOnClickOutside;
@@ -0,0 +1,13 @@
1
+ import { QuillTenant } from '../utils/tenants';
2
+ export declare const useTenants: () => {
3
+ dashboardTenants: QuillTenant[] | undefined;
4
+ dashboardOwnerTenant: QuillTenant | undefined;
5
+ selectedTenantValues: (string | number)[] | undefined;
6
+ selectedTenantType: QuillTenant;
7
+ selectedDashboardTenantIds: (string | number)[] | undefined;
8
+ dashboardTenantIdsLoading: boolean | undefined;
9
+ setSelectedTenantType: (value: string) => Promise<void>;
10
+ setSelectedTenantValues: (values: string[]) => Promise<void>;
11
+ setSelectedDashboardTenantIds: (values: string[]) => void;
12
+ };
13
+ //# sourceMappingURL=useTenants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTenants.d.ts","sourceRoot":"","sources":["../../../src/hooks/useTenants.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAKjE,eAAO,MAAM,UAAU;;;;;;;mCA6CuB,MAAM;sCAsDH,MAAM,EAAE;4CAoDR,MAAM,EAAE;CA+DxD,CAAC"}