@quillsql/admin 1.6.4 → 1.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Admin.d.ts +3 -44
- package/dist/cjs/Admin.d.ts.map +1 -1
- package/dist/cjs/Admin.js +117 -28
- package/dist/cjs/AdminProvider.d.ts +9 -145
- package/dist/cjs/AdminProvider.d.ts.map +1 -1
- package/dist/cjs/AdminProvider.js +176 -97
- package/dist/cjs/api/ConnectionClient.d.ts +7 -4
- package/dist/cjs/api/ConnectionClient.d.ts.map +1 -1
- package/dist/cjs/api/ConnectionClient.js +66 -6
- package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
- package/dist/cjs/assets/XIcon.d.ts.map +1 -1
- package/dist/cjs/components/Banner/index.js +2 -2
- package/dist/cjs/components/CardSection.js +2 -2
- package/dist/cjs/components/ClipboardButton.d.ts.map +1 -1
- package/dist/cjs/components/DashboardSelectPopover.d.ts.map +1 -1
- package/dist/cjs/components/DashboardSelectPopover.js +29 -1
- package/dist/cjs/components/DatabaseSelector.d.ts +1 -1
- package/dist/cjs/components/DatabaseSelector.d.ts.map +1 -1
- package/dist/cjs/components/DateRangePicker/SingleDatePicker.js +2 -2
- package/dist/cjs/components/DateRangePicker/YearlessDateRangePicker.js +2 -2
- package/dist/cjs/components/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/cjs/components/DropDownMenuWithLabel.js +2 -2
- package/dist/cjs/components/DynamicBanner.d.ts +1 -1
- package/dist/cjs/components/DynamicBanner.d.ts.map +1 -1
- package/dist/cjs/components/EmptyDashboardComponent/index.js +2 -2
- package/dist/cjs/components/EmptyVirtualTablesComponent.js +2 -2
- package/dist/cjs/components/FormTooltip.js +2 -2
- package/dist/cjs/components/InputLabel.js +2 -2
- package/dist/cjs/components/InternalDashboard/DashboardFilter.d.ts +1 -1
- package/dist/cjs/components/InternalDashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/cjs/components/InternalDashboard/DashboardFilter.js +2 -2
- package/dist/cjs/components/InternalDashboard/DashboardLoadingComponent.d.ts.map +1 -1
- package/dist/cjs/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.js +2 -2
- package/dist/cjs/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/cjs/components/InternalDashboard/InternalDashboard.d.ts.map +1 -1
- package/dist/cjs/components/InternalDashboard/InternalDashboard.js +118 -38
- package/dist/cjs/components/OrgSelect.d.ts.map +1 -1
- package/dist/cjs/components/OrgSelect.js +51 -7
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts +5 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.js +331 -152
- package/dist/cjs/components/QuillPopover.js +2 -2
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +2 -2
- package/dist/cjs/components/QuillSelectWithCombo.d.ts +4 -3
- package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelectWithCombo.js +36 -8
- package/dist/cjs/components/QuillToolTipPortal.d.ts.map +1 -1
- package/dist/cjs/components/QuillToolTipPortal.js +2 -2
- package/dist/cjs/components/SqlTextEditor.d.ts.map +1 -1
- package/dist/cjs/components/SqlTextEditor.js +15 -2
- package/dist/cjs/components/Tenants/EditTenant.d.ts +1 -1
- package/dist/cjs/components/Tenants/EditTenant.d.ts.map +1 -1
- package/dist/cjs/components/Tenants/EditTenant.js +52 -9
- package/dist/cjs/components/UiComponents.d.ts +1 -1
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +9 -8
- package/dist/cjs/components/VirtualTableTile.d.ts +1 -1
- package/dist/cjs/components/VirtualTableTile.d.ts.map +1 -1
- package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts +1 -1
- package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
- package/dist/cjs/forms/client_onboard/ConnectDatabase.js +51 -3
- package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts +1 -1
- package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
- package/dist/cjs/forms/client_onboard/ConnectSchema.js +34 -2
- package/dist/cjs/forms/client_onboard/CreateVirtualTables.d.ts +1 -8
- package/dist/cjs/forms/client_onboard/CreateVirtualTables.d.ts.map +1 -1
- package/dist/cjs/forms/client_onboard/CreateVirtualTables.js +24 -39
- package/dist/cjs/forms/client_onboard/__tests__/ConnectDatabase.test.js +2 -2
- package/dist/cjs/forms/client_onboard/__tests__/ConnectSchema.test.js +5 -5
- package/dist/cjs/forms/client_onboard/__tests__/CreateVirtualTables.test.js +5 -5
- package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.d.ts +1 -1
- package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.d.ts.map +1 -1
- package/dist/cjs/forms/virtual_tables/CreateEditVirtualTable.js +98 -16
- package/dist/cjs/hooks/useAdmin.d.ts +16 -0
- package/dist/cjs/hooks/useAdmin.d.ts.map +1 -0
- package/dist/cjs/hooks/useAdmin.js +13 -0
- package/dist/cjs/hooks/useDashboardManager.js +2 -2
- package/dist/cjs/hooks/useDatabaseSchema.d.ts.map +1 -1
- package/dist/cjs/hooks/useDatabaseSchema.js +13 -2
- package/dist/cjs/hooks/useLongLoading.d.ts +13 -0
- package/dist/cjs/hooks/useLongLoading.d.ts.map +1 -0
- package/dist/cjs/hooks/useLongLoading.js +67 -0
- package/dist/cjs/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/cjs/hooks/useTenants.d.ts +1 -1
- package/dist/cjs/hooks/useTenants.d.ts.map +1 -1
- package/dist/cjs/hooks/useTenants.js +2 -2
- package/dist/cjs/hooks/useThrottle.d.ts.map +1 -1
- package/dist/cjs/icons/ArrowDownHeadIcon.d.ts.map +1 -1
- package/dist/cjs/icons/CheckCircleIcon.d.ts.map +1 -1
- package/dist/cjs/icons/ExclamationFilledIcon.d.ts.map +1 -1
- package/dist/cjs/icons/ExteriorLinkIcon.d.ts.map +1 -1
- package/dist/cjs/icons/QuestionMarkCircleIcon.d.ts.map +1 -1
- package/dist/cjs/modals/CodePreview.d.ts.map +1 -1
- package/dist/cjs/modals/CodePreview.js +8 -3
- package/dist/cjs/modals/CreateEnvironmentModal.d.ts +5 -0
- package/dist/cjs/modals/CreateEnvironmentModal.d.ts.map +1 -0
- package/dist/cjs/modals/CreateEnvironmentModal.js +21 -0
- package/dist/cjs/modals/EditEnvironmentModal.d.ts.map +1 -1
- package/dist/cjs/modals/EditEnvironmentModal.js +68 -16
- package/dist/cjs/modals/EditFiltersModal.d.ts.map +1 -1
- package/dist/cjs/modals/EditFiltersModal.js +14 -10
- package/dist/cjs/modals/NewDashboardModal.d.ts.map +1 -1
- package/dist/cjs/modals/NewDashboardModal.js +56 -30
- package/dist/cjs/modals/PromoteDashboardModal.js +2 -2
- package/dist/cjs/modals/PromoteReportModal.d.ts.map +1 -1
- package/dist/cjs/modals/PromoteReportModal.js +16 -5
- package/dist/cjs/modals/PromoteViewModal.d.ts.map +1 -1
- package/dist/cjs/modals/PromoteViewModal.js +14 -3
- package/dist/cjs/modals/ReorderDashboardModal.js +2 -2
- package/dist/cjs/modals/SavedQueriesModal.js +3 -3
- package/dist/cjs/modals/TenantFieldModal.d.ts +9 -0
- package/dist/cjs/modals/TenantFieldModal.d.ts.map +1 -0
- package/dist/cjs/modals/TenantFieldModal.js +54 -0
- package/dist/cjs/models/AdminContext.d.ts +158 -0
- package/dist/cjs/models/AdminContext.d.ts.map +1 -0
- package/dist/cjs/models/AdminContext.js +5 -0
- package/dist/cjs/models/Provider.d.ts +45 -0
- package/dist/cjs/models/Provider.d.ts.map +1 -0
- package/dist/cjs/models/Provider.js +21 -0
- package/dist/cjs/models/Tenant.d.ts +39 -0
- package/dist/cjs/models/Tenant.d.ts.map +1 -0
- package/dist/cjs/models/Tenant.js +2 -0
- package/dist/cjs/primitives/ButtonPrimitive.d.ts +1 -1
- package/dist/cjs/primitives/ButtonPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/ButtonPrimitive.js +2 -2
- package/dist/cjs/primitives/CheckboxPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/CheckboxPrimitive.js +2 -0
- package/dist/cjs/primitives/HeaderPrimitive.d.ts +1 -1
- package/dist/cjs/primitives/HeaderPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/HeaderPrimitive.js +2 -2
- package/dist/cjs/primitives/MiniButtonPrimitive.js +2 -2
- package/dist/cjs/primitives/PopoverPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/PopoverPrimitive.js +18 -7
- package/dist/cjs/primitives/SecondaryButtonPrimitive.d.ts +1 -1
- package/dist/cjs/primitives/SecondaryButtonPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/SecondaryButtonPrimitive.js +2 -2
- package/dist/cjs/primitives/TextInputPrimitive.d.ts +1 -1
- package/dist/cjs/primitives/TextInputPrimitive.d.ts.map +1 -1
- package/dist/cjs/primitives/TextInputPrimitive.js +2 -2
- package/dist/cjs/primitives/TogglePrimitive.d.ts.map +1 -1
- package/dist/cjs/public_components/ChartQueryBuilder.d.ts.map +1 -1
- package/dist/cjs/public_components/ChartQueryBuilder.js +11 -10
- package/dist/cjs/public_components/CreateEnvironment.d.ts.map +1 -1
- package/dist/cjs/public_components/CreateEnvironment.js +50 -17
- package/dist/cjs/public_components/DashboardManager.d.ts.map +1 -1
- package/dist/cjs/public_components/DashboardManager.js +70 -10
- package/dist/cjs/public_components/EnvSelectPopover.d.ts.map +1 -1
- package/dist/cjs/public_components/EnvSelectPopover.js +32 -4
- package/dist/cjs/public_components/VirtualTableManager.d.ts +0 -1
- package/dist/cjs/public_components/VirtualTableManager.d.ts.map +1 -1
- package/dist/cjs/public_components/VirtualTableManager.js +99 -25
- package/dist/cjs/public_components/__tests__/CreateEnvironment.test.js +43 -4
- package/dist/cjs/utils/astProcessing.d.ts +1 -1
- package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/columnProcessing.d.ts +1 -0
- package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/columnProcessing.js +23 -1
- package/dist/cjs/utils/dataEditor.d.ts +1 -1
- package/dist/cjs/utils/dataEditor.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.d.ts +1 -1
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/databases.d.ts +6 -1
- package/dist/cjs/utils/databases.d.ts.map +1 -1
- package/dist/cjs/utils/databases.js +18 -0
- package/dist/cjs/utils/delay.d.ts.map +1 -1
- package/dist/cjs/utils/filter.d.ts +17 -21
- package/dist/cjs/utils/filter.d.ts.map +1 -1
- package/dist/cjs/utils/filter.js +6 -6
- package/dist/cjs/utils/report.d.ts +5 -5
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/schema.d.ts +8 -5
- package/dist/cjs/utils/schema.d.ts.map +1 -1
- package/dist/cjs/utils/schema.js +42 -3
- package/dist/cjs/utils/table.d.ts.map +1 -1
- package/dist/cjs/utils/tenants.d.ts +2 -39
- package/dist/cjs/utils/tenants.d.ts.map +1 -1
- package/dist/cjs/utils/ui.d.ts.map +1 -1
- package/dist/esm/Admin.d.ts +3 -44
- package/dist/esm/Admin.d.ts.map +1 -1
- package/dist/esm/Admin.js +116 -29
- package/dist/esm/AdminProvider.d.ts +9 -145
- package/dist/esm/AdminProvider.d.ts.map +1 -1
- package/dist/esm/AdminProvider.js +177 -96
- package/dist/esm/api/ConnectionClient.d.ts +7 -4
- package/dist/esm/api/ConnectionClient.d.ts.map +1 -1
- package/dist/esm/api/ConnectionClient.js +66 -6
- package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
- package/dist/esm/assets/XIcon.d.ts.map +1 -1
- package/dist/esm/components/Banner/index.js +1 -1
- package/dist/esm/components/CardSection.js +1 -1
- package/dist/esm/components/ClipboardButton.d.ts.map +1 -1
- package/dist/esm/components/DashboardSelectPopover.d.ts.map +1 -1
- package/dist/esm/components/DashboardSelectPopover.js +29 -1
- package/dist/esm/components/DatabaseSelector.d.ts +1 -1
- package/dist/esm/components/DatabaseSelector.d.ts.map +1 -1
- package/dist/esm/components/DateRangePicker/SingleDatePicker.js +1 -1
- package/dist/esm/components/DateRangePicker/YearlessDateRangePicker.js +1 -1
- package/dist/esm/components/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/esm/components/DropDownMenuWithLabel.js +1 -1
- package/dist/esm/components/DynamicBanner.d.ts +1 -1
- package/dist/esm/components/DynamicBanner.d.ts.map +1 -1
- package/dist/esm/components/EmptyDashboardComponent/index.js +1 -1
- package/dist/esm/components/EmptyVirtualTablesComponent.js +1 -1
- package/dist/esm/components/FormTooltip.js +1 -1
- package/dist/esm/components/InputLabel.js +1 -1
- package/dist/esm/components/InternalDashboard/DashboardFilter.d.ts +1 -1
- package/dist/esm/components/InternalDashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/esm/components/InternalDashboard/DashboardFilter.js +2 -2
- package/dist/esm/components/InternalDashboard/DashboardLoadingComponent.d.ts.map +1 -1
- package/dist/esm/components/InternalDashboard/DateRangePicker/QuillDateRangePicker.js +1 -1
- package/dist/esm/components/InternalDashboard/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
- package/dist/esm/components/InternalDashboard/InternalDashboard.d.ts.map +1 -1
- package/dist/esm/components/InternalDashboard/InternalDashboard.js +116 -36
- package/dist/esm/components/OrgSelect.d.ts.map +1 -1
- package/dist/esm/components/OrgSelect.js +49 -5
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +5 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.js +329 -150
- package/dist/esm/components/QuillPopover.js +1 -1
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +1 -1
- package/dist/esm/components/QuillSelectWithCombo.d.ts +4 -3
- package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillSelectWithCombo.js +35 -7
- package/dist/esm/components/QuillToolTipPortal.d.ts.map +1 -1
- package/dist/esm/components/QuillToolTipPortal.js +1 -1
- package/dist/esm/components/SqlTextEditor.d.ts.map +1 -1
- package/dist/esm/components/SqlTextEditor.js +15 -2
- package/dist/esm/components/Tenants/EditTenant.d.ts +1 -1
- package/dist/esm/components/Tenants/EditTenant.d.ts.map +1 -1
- package/dist/esm/components/Tenants/EditTenant.js +52 -9
- package/dist/esm/components/UiComponents.d.ts +1 -1
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +2 -1
- package/dist/esm/components/VirtualTableTile.d.ts +1 -1
- package/dist/esm/components/VirtualTableTile.d.ts.map +1 -1
- package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts +1 -1
- package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
- package/dist/esm/forms/client_onboard/ConnectDatabase.js +51 -3
- package/dist/esm/forms/client_onboard/ConnectSchema.d.ts +1 -1
- package/dist/esm/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
- package/dist/esm/forms/client_onboard/ConnectSchema.js +34 -2
- package/dist/esm/forms/client_onboard/CreateVirtualTables.d.ts +1 -8
- package/dist/esm/forms/client_onboard/CreateVirtualTables.d.ts.map +1 -1
- package/dist/esm/forms/client_onboard/CreateVirtualTables.js +23 -37
- package/dist/esm/forms/client_onboard/__tests__/ConnectDatabase.test.js +1 -1
- package/dist/esm/forms/client_onboard/__tests__/ConnectSchema.test.js +3 -3
- package/dist/esm/forms/client_onboard/__tests__/CreateVirtualTables.test.js +3 -3
- package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.d.ts +1 -1
- package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.d.ts.map +1 -1
- package/dist/esm/forms/virtual_tables/CreateEditVirtualTable.js +96 -14
- package/dist/esm/hooks/useAdmin.d.ts +16 -0
- package/dist/esm/hooks/useAdmin.d.ts.map +1 -0
- package/dist/esm/hooks/useAdmin.js +9 -0
- package/dist/esm/hooks/useDashboardManager.js +1 -1
- package/dist/esm/hooks/useDatabaseSchema.d.ts.map +1 -1
- package/dist/esm/hooks/useDatabaseSchema.js +13 -2
- package/dist/esm/hooks/useLongLoading.d.ts +13 -0
- package/dist/esm/hooks/useLongLoading.d.ts.map +1 -0
- package/dist/esm/hooks/useLongLoading.js +64 -0
- package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/esm/hooks/useTenants.d.ts +1 -1
- package/dist/esm/hooks/useTenants.d.ts.map +1 -1
- package/dist/esm/hooks/useTenants.js +1 -1
- package/dist/esm/hooks/useThrottle.d.ts.map +1 -1
- package/dist/esm/icons/ArrowDownHeadIcon.d.ts.map +1 -1
- package/dist/esm/icons/CheckCircleIcon.d.ts.map +1 -1
- package/dist/esm/icons/ExclamationFilledIcon.d.ts.map +1 -1
- package/dist/esm/icons/ExteriorLinkIcon.d.ts.map +1 -1
- package/dist/esm/icons/QuestionMarkCircleIcon.d.ts.map +1 -1
- package/dist/esm/modals/CodePreview.d.ts.map +1 -1
- package/dist/esm/modals/CodePreview.js +8 -3
- package/dist/esm/modals/CreateEnvironmentModal.d.ts +5 -0
- package/dist/esm/modals/CreateEnvironmentModal.d.ts.map +1 -0
- package/dist/esm/modals/CreateEnvironmentModal.js +15 -0
- package/dist/esm/modals/EditEnvironmentModal.d.ts.map +1 -1
- package/dist/esm/modals/EditEnvironmentModal.js +68 -16
- package/dist/esm/modals/EditFiltersModal.d.ts.map +1 -1
- package/dist/esm/modals/EditFiltersModal.js +14 -10
- package/dist/esm/modals/NewDashboardModal.d.ts.map +1 -1
- package/dist/esm/modals/NewDashboardModal.js +56 -30
- package/dist/esm/modals/PromoteDashboardModal.js +1 -1
- package/dist/esm/modals/PromoteReportModal.d.ts.map +1 -1
- package/dist/esm/modals/PromoteReportModal.js +16 -5
- package/dist/esm/modals/PromoteViewModal.d.ts.map +1 -1
- package/dist/esm/modals/PromoteViewModal.js +14 -3
- package/dist/esm/modals/ReorderDashboardModal.js +1 -1
- package/dist/esm/modals/SavedQueriesModal.js +1 -1
- package/dist/esm/modals/TenantFieldModal.d.ts +9 -0
- package/dist/esm/modals/TenantFieldModal.d.ts.map +1 -0
- package/dist/esm/modals/TenantFieldModal.js +51 -0
- package/dist/esm/models/AdminContext.d.ts +158 -0
- package/dist/esm/models/AdminContext.d.ts.map +1 -0
- package/dist/esm/models/AdminContext.js +2 -0
- package/dist/esm/models/Provider.d.ts +45 -0
- package/dist/esm/models/Provider.d.ts.map +1 -0
- package/dist/esm/models/Provider.js +18 -0
- package/dist/esm/models/Tenant.d.ts +39 -0
- package/dist/esm/models/Tenant.d.ts.map +1 -0
- package/dist/esm/models/Tenant.js +1 -0
- package/dist/esm/primitives/ButtonPrimitive.d.ts +1 -1
- package/dist/esm/primitives/ButtonPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/ButtonPrimitive.js +1 -1
- package/dist/esm/primitives/CheckboxPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/CheckboxPrimitive.js +2 -0
- package/dist/esm/primitives/HeaderPrimitive.d.ts +1 -1
- package/dist/esm/primitives/HeaderPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/HeaderPrimitive.js +1 -1
- package/dist/esm/primitives/MiniButtonPrimitive.js +1 -1
- package/dist/esm/primitives/PopoverPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/PopoverPrimitive.js +17 -6
- package/dist/esm/primitives/SecondaryButtonPrimitive.d.ts +1 -1
- package/dist/esm/primitives/SecondaryButtonPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/SecondaryButtonPrimitive.js +1 -1
- package/dist/esm/primitives/TextInputPrimitive.d.ts +1 -1
- package/dist/esm/primitives/TextInputPrimitive.d.ts.map +1 -1
- package/dist/esm/primitives/TextInputPrimitive.js +1 -1
- package/dist/esm/primitives/TogglePrimitive.d.ts.map +1 -1
- package/dist/esm/public_components/ChartQueryBuilder.d.ts.map +1 -1
- package/dist/esm/public_components/ChartQueryBuilder.js +11 -10
- package/dist/esm/public_components/CreateEnvironment.d.ts.map +1 -1
- package/dist/esm/public_components/CreateEnvironment.js +50 -17
- package/dist/esm/public_components/DashboardManager.d.ts.map +1 -1
- package/dist/esm/public_components/DashboardManager.js +68 -8
- package/dist/esm/public_components/EnvSelectPopover.d.ts.map +1 -1
- package/dist/esm/public_components/EnvSelectPopover.js +32 -4
- package/dist/esm/public_components/VirtualTableManager.d.ts +0 -1
- package/dist/esm/public_components/VirtualTableManager.d.ts.map +1 -1
- package/dist/esm/public_components/VirtualTableManager.js +97 -21
- package/dist/esm/public_components/__tests__/CreateEnvironment.test.js +42 -3
- package/dist/esm/utils/astProcessing.d.ts +1 -1
- package/dist/esm/utils/astProcessing.d.ts.map +1 -1
- package/dist/esm/utils/columnProcessing.d.ts +1 -0
- package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
- package/dist/esm/utils/columnProcessing.js +21 -1
- package/dist/esm/utils/dataEditor.d.ts +1 -1
- package/dist/esm/utils/dataEditor.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.d.ts +1 -1
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/databases.d.ts +6 -1
- package/dist/esm/utils/databases.d.ts.map +1 -1
- package/dist/esm/utils/databases.js +18 -0
- package/dist/esm/utils/delay.d.ts.map +1 -1
- package/dist/esm/utils/filter.d.ts +17 -21
- package/dist/esm/utils/filter.d.ts.map +1 -1
- package/dist/esm/utils/filter.js +5 -5
- package/dist/esm/utils/report.d.ts +5 -5
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/schema.d.ts +8 -5
- package/dist/esm/utils/schema.d.ts.map +1 -1
- package/dist/esm/utils/schema.js +42 -3
- package/dist/esm/utils/table.d.ts.map +1 -1
- package/dist/esm/utils/tenants.d.ts +2 -39
- package/dist/esm/utils/tenants.d.ts.map +1 -1
- package/dist/esm/utils/ui.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export interface SelectComponentProps {
|
|
3
|
-
value: string | null | undefined;
|
|
3
|
+
value: string | number | null | undefined;
|
|
4
4
|
label?: string;
|
|
5
5
|
width: number;
|
|
6
6
|
options: {
|
|
7
|
-
value: string;
|
|
7
|
+
value: string | number;
|
|
8
8
|
label: string;
|
|
9
9
|
}[];
|
|
10
10
|
onChange: (event: React.ChangeEvent<HTMLSelectElement>) => void;
|
|
@@ -14,9 +14,10 @@ export interface SelectComponentProps {
|
|
|
14
14
|
badge?: string;
|
|
15
15
|
mimicReactSelect?: boolean;
|
|
16
16
|
testLabel?: string;
|
|
17
|
+
displayValue?: boolean;
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
19
20
|
* A robust select component that implements the new minimal Select interface.
|
|
20
21
|
*/
|
|
21
|
-
export declare function QuillSelectComponentWithCombo({ options, value, width, onChange, label, isLoading, hideEmptyOption, disabled, badge, mimicReactSelect, testLabel, }: SelectComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function QuillSelectComponentWithCombo({ options, value, width, onChange, label, isLoading, hideEmptyOption, disabled, badge, mimicReactSelect, testLabel, displayValue, }: SelectComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
22
23
|
//# sourceMappingURL=QuillSelectWithCombo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuillSelectWithCombo.d.ts","sourceRoot":"","sources":["../../../src/components/QuillSelectWithCombo.tsx"],"names":[],"mappings":"AAIA,OAAO,KAMN,MAAM,OAAO,CAAC;AAMf,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"QuillSelectWithCombo.d.ts","sourceRoot":"","sources":["../../../src/components/QuillSelectWithCombo.tsx"],"names":[],"mappings":"AAIA,OAAO,KAMN,MAAM,OAAO,CAAC;AAMf,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,EAC5C,OAAO,EACP,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,SAAS,EACT,eAAe,EACf,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,SAAS,EACT,YAAY,GACb,EAAE,oBAAoB,2CA6ctB"}
|
|
@@ -3,13 +3,13 @@ import useOnClickOutside, { getEffectiveZIndex, } from '../hooks/useOnClickOutsi
|
|
|
3
3
|
import { LoadingSpinner } from './UiComponents';
|
|
4
4
|
import React, { useEffect, useMemo, useRef, useState, } from 'react';
|
|
5
5
|
import { ListboxTextInput } from './QuillMultiSelectWithCombo';
|
|
6
|
-
import { useAdmin } from '../
|
|
6
|
+
import { useAdmin } from '../hooks/useAdmin';
|
|
7
7
|
import { createPortal } from 'react-dom';
|
|
8
8
|
import { getScrollableParent } from '../utils/ui';
|
|
9
9
|
/**
|
|
10
10
|
* A robust select component that implements the new minimal Select interface.
|
|
11
11
|
*/
|
|
12
|
-
export function QuillSelectComponentWithCombo({ options, value, width, onChange, label, isLoading, hideEmptyOption, disabled, badge, mimicReactSelect, testLabel, }) {
|
|
12
|
+
export function QuillSelectComponentWithCombo({ options, value, width, onChange, label, isLoading, hideEmptyOption, disabled, badge, mimicReactSelect, testLabel, displayValue, }) {
|
|
13
13
|
const theme = useAdmin().state.theme;
|
|
14
14
|
const [showModal, setShowModal] = useState(false);
|
|
15
15
|
const modalRef = useRef(null);
|
|
@@ -170,7 +170,7 @@ export function QuillSelectComponentWithCombo({ options, value, width, onChange,
|
|
|
170
170
|
textOverflow: 'ellipsis',
|
|
171
171
|
whiteSpace: 'nowrap',
|
|
172
172
|
overflow: 'hidden',
|
|
173
|
-
fontWeight:
|
|
173
|
+
fontWeight: isLoading ? undefined : 300,
|
|
174
174
|
}, children: isLoading ? 'Loading...' : selectedLabel }), badge && (_jsx("span", { style: {
|
|
175
175
|
color: 'white',
|
|
176
176
|
backgroundColor: 'black',
|
|
@@ -273,11 +273,39 @@ export function QuillSelectComponentWithCombo({ options, value, width, onChange,
|
|
|
273
273
|
background: ${theme?.hoverBackgroundColor};
|
|
274
274
|
color: ${theme?.hoverTextColor};
|
|
275
275
|
}
|
|
276
|
-
` }),
|
|
277
|
-
|
|
278
|
-
|
|
276
|
+
` }), _jsxs("div", { style: {
|
|
277
|
+
display: 'flex',
|
|
278
|
+
flexDirection: 'row',
|
|
279
|
+
flex: 1,
|
|
280
|
+
minWidth: 0,
|
|
279
281
|
overflow: 'hidden',
|
|
280
|
-
|
|
282
|
+
gap: 8,
|
|
283
|
+
alignItems: 'center',
|
|
284
|
+
}, children: [_jsx("span", { style: {
|
|
285
|
+
textOverflow: 'ellipsis',
|
|
286
|
+
whiteSpace: 'nowrap',
|
|
287
|
+
overflow: 'hidden',
|
|
288
|
+
fontWeight: 400,
|
|
289
|
+
flex: 1,
|
|
290
|
+
minWidth: 0,
|
|
291
|
+
textAlign: 'left',
|
|
292
|
+
}, title: option.value !== null && option.value !== '-'
|
|
293
|
+
? option.value.toString()
|
|
294
|
+
: undefined, children: option.label ?? nullLabel }), option.value !== null &&
|
|
295
|
+
option.value !== '-' &&
|
|
296
|
+
displayValue && (_jsx("span", { style: {
|
|
297
|
+
fontSize: 11,
|
|
298
|
+
color: theme?.secondaryTextColor,
|
|
299
|
+
textOverflow: 'ellipsis',
|
|
300
|
+
whiteSpace: 'nowrap',
|
|
301
|
+
overflow: 'hidden',
|
|
302
|
+
fontWeight: 400,
|
|
303
|
+
flexShrink: 1,
|
|
304
|
+
maxWidth: '30%',
|
|
305
|
+
minWidth: 0,
|
|
306
|
+
}, title: option.value.toString(), children: option.value.toString().length > 15
|
|
307
|
+
? `${option.value.toString().substring(0, 15)}...`
|
|
308
|
+
: option.value.toString() }))] })] }, option.value)))) : (_jsx("div", { style: {
|
|
281
309
|
width: '100%',
|
|
282
310
|
alignItems: 'center',
|
|
283
311
|
justifyContent: 'center',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuillToolTipPortal.d.ts","sourceRoot":"","sources":["../../../src/components/QuillToolTipPortal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAK3D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"QuillToolTipPortal.d.ts","sourceRoot":"","sources":["../../../src/components/QuillToolTipPortal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAK3D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,kBAAkB,GAAI,iEAOhC,uBAAuB,4CA2IzB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { createPortal } from 'react-dom';
|
|
4
|
-
import { useAdmin } from '../
|
|
4
|
+
import { useAdmin } from '../hooks/useAdmin';
|
|
5
5
|
export const QuillToolTipPortal = ({ children, text, enabled = true, containerStyle = {}, textStyle = {}, mirror = false, }) => {
|
|
6
6
|
const { state: { theme }, } = useAdmin();
|
|
7
7
|
const [isOpen, setIsOpen] = useState(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlTextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/SqlTextEditor.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,aAAa,EAA+B,MAAM,OAAO,CAAC;AAI1E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"SqlTextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/SqlTextEditor.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,aAAa,EAA+B,MAAM,OAAO,CAAC;AAI1E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAqFhD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,cAAc,EACd,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,YAA2B,EAC3B,SAAgB,GACjB,EAAE;IACD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,2CAsEA"}
|
|
@@ -5,6 +5,7 @@ import MonacoEditor from '@monaco-editor/react';
|
|
|
5
5
|
import { Resizable } from 're-resizable';
|
|
6
6
|
import { generateSuggestionsByDatasource, generateSuggestionsBySchema, QUILL_LANGUAGE, } from '../utils/monacoAutocomplete';
|
|
7
7
|
import { LoadingSpinner } from './UiComponents';
|
|
8
|
+
import { useAdmin } from '../hooks/useAdmin';
|
|
8
9
|
function defineEditorTheme(monaco) {
|
|
9
10
|
monaco.editor.defineTheme('onedark', {
|
|
10
11
|
base: 'vs',
|
|
@@ -22,7 +23,7 @@ function defineEditorTheme(monaco) {
|
|
|
22
23
|
},
|
|
23
24
|
});
|
|
24
25
|
}
|
|
25
|
-
function setEditorTheme(_editor, monaco, schema, databaseType) {
|
|
26
|
+
function setEditorTheme(_editor, monaco, schema, databaseType, eventTracking) {
|
|
26
27
|
try {
|
|
27
28
|
monaco.editor.setTheme('onedark');
|
|
28
29
|
monaco.languages.register({ id: 'quill' });
|
|
@@ -40,6 +41,17 @@ function setEditorTheme(_editor, monaco, schema, databaseType) {
|
|
|
40
41
|
return provider;
|
|
41
42
|
}
|
|
42
43
|
catch (e) {
|
|
44
|
+
eventTracking?.logError?.({
|
|
45
|
+
type: 'bug',
|
|
46
|
+
severity: 'medium',
|
|
47
|
+
message: 'Error setting up editor',
|
|
48
|
+
errorMessage: e.message,
|
|
49
|
+
errorStack: e.stack,
|
|
50
|
+
errorData: {
|
|
51
|
+
caller: 'SqlTextEditor',
|
|
52
|
+
function: 'setEditorTheme',
|
|
53
|
+
},
|
|
54
|
+
});
|
|
43
55
|
console.log('ERROR: ', e);
|
|
44
56
|
return null;
|
|
45
57
|
}
|
|
@@ -47,6 +59,7 @@ function setEditorTheme(_editor, monaco, schema, databaseType) {
|
|
|
47
59
|
export default function SqlTextEditor({ containerStyle, value, setValue, setEditorMounted, schema, databaseType = 'postgresql', resizable = true, }) {
|
|
48
60
|
const [editorKey, setEditorKey] = useState(0);
|
|
49
61
|
const currentProvider = useRef(null);
|
|
62
|
+
const { eventTracking } = useAdmin();
|
|
50
63
|
useEffect(() => {
|
|
51
64
|
if (currentProvider.current) {
|
|
52
65
|
currentProvider.current.dispose();
|
|
@@ -81,7 +94,7 @@ export default function SqlTextEditor({ containerStyle, value, setValue, setEdit
|
|
|
81
94
|
}, onChange: (query) => {
|
|
82
95
|
setValue(query);
|
|
83
96
|
}, beforeMount: (monaco) => defineEditorTheme(monaco), onMount: (_editor, monaco) => {
|
|
84
|
-
currentProvider.current = setEditorTheme(_editor, monaco, schema, databaseType);
|
|
97
|
+
currentProvider.current = setEditorTheme(_editor, monaco, schema, databaseType, eventTracking);
|
|
85
98
|
setEditorMounted(true);
|
|
86
99
|
} }, editorKey) }) }));
|
|
87
100
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ForwardRefExoticComponent, RefAttributes } from 'react';
|
|
2
|
-
import { QuillTenant } from '../../
|
|
2
|
+
import { QuillTenant } from '../../models/Tenant';
|
|
3
3
|
import { TextInputPrimitiveProps } from '../../primitives/TextInputPrimitive';
|
|
4
4
|
import { ButtonPrimitiveProps } from '../../primitives/ButtonPrimitive';
|
|
5
5
|
import { ButtonComponentProps } from '@quillsql/react';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditTenant.d.ts","sourceRoot":"","sources":["../../../../src/components/Tenants/EditTenant.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,aAAa,EAKd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAA2B,EACzB,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE,OAAO,EACL,oBAAoB,EAIrB,MAAM,iBAAiB,CAAC;AAgDzB,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,qBAAqB,EACrB,MAAM,EACN,aAAa,EACb,kBAAkB,EAClB,YAAY,GACb,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,SAAS,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,kBAAkB,EAAE,CAClB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAA;KAAE,EAC3D,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,KAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,oBAAoB,EAAE,CACpB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAC5B,YAAY,EAAE,OAAO,KAClB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,cAAc,EAAE,GAAG,CAAC;IACpB,kBAAkB,EACd,yBAAyB,CACvB,uBAAuB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAC1D,GACD,CAAC,CAAC,KAAK,EAAE,uBAAuB,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;IACtD,eAAe,EAAE,KAAK,CAAC,EAAE,CACvB,oBAAoB,GAAG;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CACF,CAAC;IACF,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAChC,oBAAoB,GAAG;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CACF,CAAC;IACF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,WAAW,EAAE,CAAC;QAC9B,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,YAAY,CAAC,EAAE,WAAW,CAAC;KAC5B,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;CACvB,
|
|
1
|
+
{"version":3,"file":"EditTenant.d.ts","sourceRoot":"","sources":["../../../../src/components/Tenants/EditTenant.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,aAAa,EAKd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAA2B,EACzB,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE,OAAO,EACL,oBAAoB,EAIrB,MAAM,iBAAiB,CAAC;AAgDzB,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,qBAAqB,EACrB,MAAM,EACN,aAAa,EACb,kBAAkB,EAClB,YAAY,GACb,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,SAAS,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,kBAAkB,EAAE,CAClB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAA;KAAE,EAC3D,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,KAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,oBAAoB,EAAE,CACpB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAC5B,YAAY,EAAE,OAAO,KAClB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,cAAc,EAAE,GAAG,CAAC;IACpB,kBAAkB,EACd,yBAAyB,CACvB,uBAAuB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAC1D,GACD,CAAC,CAAC,KAAK,EAAE,uBAAuB,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;IACtD,eAAe,EAAE,KAAK,CAAC,EAAE,CACvB,oBAAoB,GAAG;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CACF,CAAC;IACF,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAChC,oBAAoB,GAAG;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CACF,CAAC;IACF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,WAAW,EAAE,CAAC;QAC9B,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,YAAY,CAAC,EAAE,WAAW,CAAC;KAC5B,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;CACvB,2CAwyBA"}
|
|
@@ -10,7 +10,7 @@ import InputLabel from '../InputLabel';
|
|
|
10
10
|
import QuillTab from '../QuillTab';
|
|
11
11
|
import { QuillSelectComponentWithCombo } from '../QuillSelectWithCombo';
|
|
12
12
|
import CardSection from '../CardSection';
|
|
13
|
-
import { useAdmin } from '../../
|
|
13
|
+
import { useAdmin } from '../../hooks/useAdmin';
|
|
14
14
|
import { isNumberType, isStringType, processColumnReference, } from '../../utils/columnProcessing';
|
|
15
15
|
import SqlTextEditor from '../SqlTextEditor';
|
|
16
16
|
import { Highlight, themes } from 'prism-react-renderer';
|
|
@@ -61,7 +61,7 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
61
61
|
const [isEditingTenantQuery, setIsEditingTenantQuery] = useState(false);
|
|
62
62
|
const [returnedTenantIds, setReturnedTenantIds] = useState([]);
|
|
63
63
|
const [showFlagWarning, setShowFlagWarning] = useState(false);
|
|
64
|
-
const { getToken, quillFetchWithToken } = useAdmin();
|
|
64
|
+
const { getToken, quillFetchWithToken, eventTracking } = useAdmin();
|
|
65
65
|
const formIssue = useMemo(() => {
|
|
66
66
|
if (!tenantName) {
|
|
67
67
|
return 'Must have a unique name';
|
|
@@ -139,7 +139,7 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
139
139
|
setCurrentTableObj(databaseTables?.find((table) => table.tableName === tenantTable));
|
|
140
140
|
}
|
|
141
141
|
else {
|
|
142
|
-
const resp = await getVirtualTableData(client._id, tenantQuery, client.databaseType, queryEndpoint, getToken, client.queryHeaders);
|
|
142
|
+
const resp = await getVirtualTableData(client._id, tenantQuery, client.databaseType, queryEndpoint, getToken, eventTracking, client.queryHeaders);
|
|
143
143
|
if (resp.status === 'error') {
|
|
144
144
|
throw new Error(resp.error);
|
|
145
145
|
}
|
|
@@ -159,7 +159,7 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
159
159
|
fetchTables();
|
|
160
160
|
}, [isSchemaLoading]);
|
|
161
161
|
const setCustomSQLQuery = useCallback(async (query) => {
|
|
162
|
-
const resp = await getVirtualTableData(client._id, query, client.databaseType, queryEndpoint, getToken, client.queryHeaders);
|
|
162
|
+
const resp = await getVirtualTableData(client._id, query, client.databaseType, queryEndpoint, getToken, eventTracking, client.queryHeaders);
|
|
163
163
|
if (resp.status === 'error') {
|
|
164
164
|
throw new Error(resp.error);
|
|
165
165
|
}
|
|
@@ -220,7 +220,17 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
220
220
|
return resp.queries.queryResults[0];
|
|
221
221
|
}
|
|
222
222
|
catch (e) {
|
|
223
|
-
|
|
223
|
+
eventTracking?.logError?.({
|
|
224
|
+
type: 'bug', // TODO: determine type
|
|
225
|
+
severity: 'high',
|
|
226
|
+
message: 'Error validating tenant mapping',
|
|
227
|
+
errorMessage: e.message,
|
|
228
|
+
errorStack: e.stack,
|
|
229
|
+
errorData: {
|
|
230
|
+
caller: 'EditTenant',
|
|
231
|
+
function: 'handleSubmitMappingEdit',
|
|
232
|
+
},
|
|
233
|
+
});
|
|
224
234
|
throw e;
|
|
225
235
|
}
|
|
226
236
|
}
|
|
@@ -303,6 +313,17 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
303
313
|
}
|
|
304
314
|
catch (e) {
|
|
305
315
|
console.log('error', e);
|
|
316
|
+
eventTracking?.logError?.({
|
|
317
|
+
type: 'bug',
|
|
318
|
+
severity: 'high',
|
|
319
|
+
message: 'Error editing tenant',
|
|
320
|
+
errorMessage: e.message,
|
|
321
|
+
errorStack: e.stack,
|
|
322
|
+
errorData: {
|
|
323
|
+
caller: 'EditTenant',
|
|
324
|
+
function: 'handleEditTenant',
|
|
325
|
+
},
|
|
326
|
+
});
|
|
306
327
|
setErrorMessage(e.message);
|
|
307
328
|
}
|
|
308
329
|
};
|
|
@@ -438,7 +459,7 @@ export function EditTenant({ tenant, setTenant, setCreateNewTenant, onSubmitEdit
|
|
|
438
459
|
}, disabled: !tenantDefaultId })] })] }) })] }));
|
|
439
460
|
}
|
|
440
461
|
function CustomSQLQueryModal({ customSQLQuery, setCustomSQLQuery, databaseTables, databaseType, ButtonComponent, SecondaryButtonComponent, onClose, }) {
|
|
441
|
-
const { state } = useAdmin();
|
|
462
|
+
const { state, eventTracking } = useAdmin();
|
|
442
463
|
const [localQuery, setLocalQuery] = useState(customSQLQuery);
|
|
443
464
|
const [tableSearchQuery, setTableSearchQuery] = useState('');
|
|
444
465
|
const [displayedTableData, setDisplayedTableData] = useState(databaseTables);
|
|
@@ -450,6 +471,17 @@ function CustomSQLQueryModal({ customSQLQuery, setCustomSQLQuery, databaseTables
|
|
|
450
471
|
await setCustomSQLQuery(localQuery);
|
|
451
472
|
}
|
|
452
473
|
catch (e) {
|
|
474
|
+
eventTracking?.logError?.({
|
|
475
|
+
type: 'bug',
|
|
476
|
+
severity: 'high',
|
|
477
|
+
message: 'Error saving custom SQL query',
|
|
478
|
+
errorMessage: e.message,
|
|
479
|
+
errorStack: e.stack,
|
|
480
|
+
errorData: {
|
|
481
|
+
caller: 'CustomSQLQueryModal',
|
|
482
|
+
function: 'onSave',
|
|
483
|
+
},
|
|
484
|
+
});
|
|
453
485
|
setErrorMessage(e.message);
|
|
454
486
|
}
|
|
455
487
|
setLoading(false);
|
|
@@ -459,7 +491,7 @@ function CustomSQLQueryModal({ customSQLQuery, setCustomSQLQuery, databaseTables
|
|
|
459
491
|
if (!name) {
|
|
460
492
|
return;
|
|
461
493
|
}
|
|
462
|
-
const newQuery = `SELECT * FROM ${processColumnReference(name,
|
|
494
|
+
const newQuery = `SELECT * FROM ${processColumnReference(name, databaseType.toLowerCase())};`;
|
|
463
495
|
if (!localQuery || localQuery.length === 0) {
|
|
464
496
|
setLocalQuery(newQuery);
|
|
465
497
|
}
|
|
@@ -562,7 +594,7 @@ function MappingCard({ mappingField, SecondaryButtonComponent, setMappingToEdit,
|
|
|
562
594
|
}, children: [_jsx(InputLabel, { children: mappingField }), _jsxs("div", { style: { display: 'flex', flexDirection: 'row', gap: 12 }, children: [_jsx(SecondaryButtonComponent, { label: "Edit", onClick: () => setMappingToEdit(mappingField) }), _jsx(SecondaryButtonComponent, { label: "Delete", onClick: () => onDelete(mappingField) })] })] }) }));
|
|
563
595
|
}
|
|
564
596
|
function MappingForm({ currentMapping, client, toTenant, fromTenant, mappingQuery, handleSubmitMappingEdit, databaseTables, databaseType, ButtonComponent, SecondaryButtonComponent, onClose, }) {
|
|
565
|
-
const { state } = useAdmin();
|
|
597
|
+
const { state, eventTracking } = useAdmin();
|
|
566
598
|
const [loading, setLoading] = useState(false);
|
|
567
599
|
const [mappingTo, setMappingTo] = useState(toTenant);
|
|
568
600
|
useEffect(() => {
|
|
@@ -584,6 +616,17 @@ function MappingForm({ currentMapping, client, toTenant, fromTenant, mappingQuer
|
|
|
584
616
|
}
|
|
585
617
|
}
|
|
586
618
|
catch (e) {
|
|
619
|
+
eventTracking?.logError?.({
|
|
620
|
+
type: 'bug', // TODO: determine type
|
|
621
|
+
severity: 'high',
|
|
622
|
+
message: 'Error saving tenant mapping',
|
|
623
|
+
errorMessage: e.message,
|
|
624
|
+
errorStack: e.stack,
|
|
625
|
+
errorData: {
|
|
626
|
+
caller: 'MappingForm',
|
|
627
|
+
function: 'onSave',
|
|
628
|
+
},
|
|
629
|
+
});
|
|
587
630
|
setErrorMessage(e.message);
|
|
588
631
|
}
|
|
589
632
|
finally {
|
|
@@ -606,7 +649,7 @@ function MappingForm({ currentMapping, client, toTenant, fromTenant, mappingQuer
|
|
|
606
649
|
if (!name) {
|
|
607
650
|
return;
|
|
608
651
|
}
|
|
609
|
-
const newQuery = `SELECT * FROM ${processColumnReference(name,
|
|
652
|
+
const newQuery = `SELECT * FROM ${processColumnReference(name, databaseType.toLowerCase())};`;
|
|
610
653
|
if (!localQuery || localQuery.length === 0) {
|
|
611
654
|
setLocalQuery(newQuery);
|
|
612
655
|
}
|
|
@@ -99,7 +99,7 @@ export declare const QuillToolTip: ({ children, text, enabled, containerStyle, t
|
|
|
99
99
|
containerStyle?: CSSProperties;
|
|
100
100
|
textStyle?: CSSProperties;
|
|
101
101
|
displayBelow?: boolean;
|
|
102
|
-
}) => string | number | boolean | import("react/jsx-runtime").JSX.Element |
|
|
102
|
+
}) => string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
103
103
|
export declare const QuillPortal: ({ children, containerStyle, anchorRef, showModal, setShowModal, }: {
|
|
104
104
|
children: ReactNode;
|
|
105
105
|
containerStyle?: CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,SAAS,EAKT,aAAa,EACb,WAAW,EACZ,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,UAAU,EAAgB,MAAM,iBAAiB,CAAC;AAQ3D,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;CACZ;AAED,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useContext, useEffect, useState, useRef, } from 'react';
|
|
3
|
-
import { useAdmin } from '../
|
|
3
|
+
import { useAdmin } from '../hooks/useAdmin';
|
|
4
4
|
import { XIcon } from '../assets';
|
|
5
5
|
import { ThemeContext } from '@quillsql/react';
|
|
6
6
|
import useOnClickOutside, { getEffectiveZIndex, } from '../hooks/useOnClickOutside';
|
|
@@ -340,6 +340,7 @@ export const OverflowContainer = ({ children }) => {
|
|
|
340
340
|
const containerStyle = {
|
|
341
341
|
position: 'relative',
|
|
342
342
|
overflowY: 'auto',
|
|
343
|
+
overscrollBehavior: 'none',
|
|
343
344
|
};
|
|
344
345
|
const shadowStyle = {
|
|
345
346
|
position: 'sticky',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTableTile.d.ts","sourceRoot":"","sources":["../../../src/components/VirtualTableTile.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"VirtualTableTile.d.ts","sourceRoot":"","sources":["../../../src/components/VirtualTableTile.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,KAAK,EACL,IAAI,EACJ,KAAK,GACN,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB,2CAgFA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
2
|
import { ConnectionType } from '../../utils/databases';
|
|
3
|
-
import { QuillProviderClient } from '../../
|
|
3
|
+
import { QuillProviderClient } from '../../models/Provider';
|
|
4
4
|
import { ColumnsByTable } from '../../utils/table';
|
|
5
5
|
export default function ConnectDatabase({ containerStyle, header1Style, header2Style, environmentDetails, setEnvironmentDetails, fetchSchemasLoading, onConnectDatabase, }: {
|
|
6
6
|
containerStyle?: CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectDatabase.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/ConnectDatabase.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,aAAa,EAKd,MAAM,OAAO,CAAC;AAQf,OAAO,EAGL,cAAc,
|
|
1
|
+
{"version":3,"file":"ConnectDatabase.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/ConnectDatabase.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,aAAa,EAKd,MAAM,OAAO,CAAC;AAQf,OAAO,EAGL,cAAc,EAUf,MAAM,uBAAuB,CAAC;AAU/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,GAClB,EAAE;IACD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,kBAAkB,EAAE;QAClB,UAAU,EAAE,cAAc,CAAC;QAC3B,MAAM,EAAE,OAAO,CAAC,mBAAmB,GAAG;YAAE,WAAW,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;QACjE,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;KAC3B,CAAC;IACF,qBAAqB,EAAE,CACrB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,cAAc,EAAE,EACxB,mBAAmB,EAAE,MAAM,EAAE,EAC7B,QAAQ,EAAE,MAAM,KACb,IAAI,CAAC;IACV,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD,2CA4uBA"}
|
|
@@ -10,12 +10,17 @@ import QuillTab from '../../components/QuillTab';
|
|
|
10
10
|
import { QuillMultiSelectComponentWithCombo } from '../../components/QuillMultiSelectWithCombo';
|
|
11
11
|
import CardSection from '../../components/CardSection';
|
|
12
12
|
// import InputLabel from '../../components/InputLabel';
|
|
13
|
-
import { useAdmin } from '../../
|
|
13
|
+
import { useAdmin } from '../../hooks/useAdmin';
|
|
14
14
|
import { quillFetch } from '../../utils/dataFetcher';
|
|
15
|
+
import { useLongLoading } from '../../hooks/useLongLoading';
|
|
15
16
|
export default function ConnectDatabase({ containerStyle, header1Style, header2Style, environmentDetails, setEnvironmentDetails, fetchSchemasLoading, onConnectDatabase, }) {
|
|
16
|
-
const { state, getToken } = useAdmin();
|
|
17
|
+
const { state, getToken, eventTracking } = useAdmin();
|
|
17
18
|
const [error, setError] = useState(undefined);
|
|
18
19
|
const [isConnecting, setIsConnecting] = useState(false);
|
|
20
|
+
useLongLoading(isConnecting, {
|
|
21
|
+
origin: 'ConnectDatabase',
|
|
22
|
+
loadDescription: 'Connecting to database',
|
|
23
|
+
});
|
|
19
24
|
const [clientId, setClientId] = useState(environmentDetails.client.clientId);
|
|
20
25
|
const [fileLabel, setFileLabel] = useState('No file chosen');
|
|
21
26
|
const [allSchemas, setAllSchemas] = useState([]);
|
|
@@ -49,7 +54,12 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
49
54
|
// Redact sensitive information
|
|
50
55
|
const savedConnectionDetails = { ...databaseConnectionDetails };
|
|
51
56
|
savedConnectionDetails.connectionString = '';
|
|
52
|
-
|
|
57
|
+
if (databaseConnectionDetails.type === 'Databricks') {
|
|
58
|
+
savedConnectionDetails.token = '';
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
savedConnectionDetails.password = '';
|
|
62
|
+
}
|
|
53
63
|
sessionStorage.setItem('connectionDetails', JSON.stringify(savedConnectionDetails));
|
|
54
64
|
}, [databaseConnectionDetails]);
|
|
55
65
|
const handleFileChange = (e) => {
|
|
@@ -71,6 +81,17 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
71
81
|
}
|
|
72
82
|
catch (err) {
|
|
73
83
|
console.log('Error parsing JSON file', err);
|
|
84
|
+
eventTracking?.logError?.({
|
|
85
|
+
type: 'bug', // TODO: determine type
|
|
86
|
+
severity: 'high',
|
|
87
|
+
message: 'Error parsing JSON file',
|
|
88
|
+
errorMessage: err.message,
|
|
89
|
+
errorStack: err.stack,
|
|
90
|
+
errorData: {
|
|
91
|
+
caller: 'ConnectDatabase',
|
|
92
|
+
function: 'handleFileChange',
|
|
93
|
+
},
|
|
94
|
+
});
|
|
74
95
|
setFileLabel('Error parsing JSON file');
|
|
75
96
|
}
|
|
76
97
|
};
|
|
@@ -81,6 +102,7 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
81
102
|
return false;
|
|
82
103
|
}
|
|
83
104
|
const typedDetails = databaseConnectionDetails;
|
|
105
|
+
const databricksDetails = databaseConnectionDetails;
|
|
84
106
|
switch (databaseConnectionDetails.type) {
|
|
85
107
|
case 'PostgreSQL':
|
|
86
108
|
case 'MySQL':
|
|
@@ -95,6 +117,10 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
95
117
|
!(typedDetails.port ||
|
|
96
118
|
(typedDetails.warehouse &&
|
|
97
119
|
typedDetails.type === 'Snowflake')));
|
|
120
|
+
case 'Databricks':
|
|
121
|
+
return (!databricksDetails.host ||
|
|
122
|
+
!databricksDetails.path ||
|
|
123
|
+
!databricksDetails.token);
|
|
98
124
|
case 'BigQuery':
|
|
99
125
|
return !databaseConnectionDetails.jsonString;
|
|
100
126
|
default:
|
|
@@ -126,6 +152,17 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
126
152
|
setEnvironmentDetails(databaseConnectionDetails, databaseSchema, selectedSchemas, clientId);
|
|
127
153
|
}
|
|
128
154
|
catch (e) {
|
|
155
|
+
eventTracking?.logError?.({
|
|
156
|
+
type: 'bug', // TODO: determine type
|
|
157
|
+
severity: 'high',
|
|
158
|
+
message: 'Error setting up database',
|
|
159
|
+
errorMessage: e.message,
|
|
160
|
+
errorStack: e.stack,
|
|
161
|
+
errorData: {
|
|
162
|
+
caller: 'ConnectDatabase',
|
|
163
|
+
function: 'nextStep',
|
|
164
|
+
},
|
|
165
|
+
});
|
|
129
166
|
setError(e.message);
|
|
130
167
|
}
|
|
131
168
|
finally {
|
|
@@ -183,6 +220,17 @@ export default function ConnectDatabase({ containerStyle, header1Style, header2S
|
|
|
183
220
|
onConnectDatabase?.(result.clientId);
|
|
184
221
|
}
|
|
185
222
|
catch (e) {
|
|
223
|
+
eventTracking?.logError?.({
|
|
224
|
+
type: 'bug', // TODO: determine type
|
|
225
|
+
severity: 'high',
|
|
226
|
+
message: 'Error connecting to database',
|
|
227
|
+
errorMessage: e.message,
|
|
228
|
+
errorStack: e.stack,
|
|
229
|
+
errorData: {
|
|
230
|
+
caller: 'ConnectDatabase',
|
|
231
|
+
function: 'testConnectionAndFormClient',
|
|
232
|
+
},
|
|
233
|
+
});
|
|
186
234
|
setError("Couldn't connect to database");
|
|
187
235
|
}
|
|
188
236
|
finally {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
2
|
import { ConnectionType } from '../../utils/databases';
|
|
3
3
|
import { ColumnsByTable } from '../../utils/table';
|
|
4
|
-
import { State } from '../../
|
|
4
|
+
import { State } from '../../models/AdminContext';
|
|
5
5
|
import { TenantInit } from '../../utils/schema';
|
|
6
6
|
export default function ConnectSchema({ containerStyle, header1Style, databaseSchema, connection, tenantInit, onTenantCreation, clientId, selectedSchemas, state, label, returnToConnectDatabase, }: {
|
|
7
7
|
containerStyle?: CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectSchema.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/ConnectSchema.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,OAAO,CAAC;AAOpE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConnectSchema.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/ConnectSchema.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,OAAO,CAAC;AAOpE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAOhD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,cAAc,EACd,YAAY,EAEZ,cAAc,EACd,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,KAAK,EACL,KAAK,EACL,uBAAuB,GACxB,EAAE;IACD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAChC,gBAAgB,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,uBAAuB,EAAE,MAAM,IAAI,CAAC;CACrC,2CA6UA"}
|
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useMemo, useState } from 'react';
|
|
3
3
|
import { ButtonPrimitive, ModalPrimitive, SecondaryButtonPrimitive, TextInputPrimitive, } from '../../primitives';
|
|
4
|
-
import { useAdmin } from '../../
|
|
4
|
+
import { useAdmin } from '../../hooks/useAdmin';
|
|
5
5
|
import { EditTenant } from '../../components/Tenants/EditTenant';
|
|
6
6
|
import CardSection from '../../components/CardSection';
|
|
7
7
|
import { useDatabaseSchema } from '../../hooks/useDatabaseSchema';
|
|
8
8
|
import { MemoizedButton } from '../../components/UiComponents';
|
|
9
|
+
import { useLongLoading } from '../../hooks/useLongLoading';
|
|
9
10
|
export default function ConnectSchema({ containerStyle, header1Style,
|
|
10
11
|
// header2Style,
|
|
11
12
|
databaseSchema, connection, tenantInit, onTenantCreation, clientId, selectedSchemas, state, label, returnToConnectDatabase, }) {
|
|
12
13
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
13
14
|
const [formError, setFormError] = useState(undefined);
|
|
14
15
|
const [isSubmitTenantLoading, setSubmitTenantLoading] = useState(false);
|
|
16
|
+
useLongLoading(isSubmitTenantLoading, {
|
|
17
|
+
origin: 'ConnectSchema',
|
|
18
|
+
loadDescription: 'Submitting tenant',
|
|
19
|
+
});
|
|
15
20
|
const [tenantToEdit, setTenantToEdit] = useState(tenantInit?.ownerTenant);
|
|
16
21
|
const { schema, isLoading } = useDatabaseSchema();
|
|
17
|
-
const { quillFetchWithToken } = useAdmin();
|
|
22
|
+
const { quillFetchWithToken, eventTracking } = useAdmin();
|
|
18
23
|
const tenantRequest = async (tenant, mode, isOnboarding) => {
|
|
19
24
|
return await quillFetchWithToken({
|
|
20
25
|
client: {
|
|
@@ -70,6 +75,17 @@ databaseSchema, connection, tenantInit, onTenantCreation, clientId, selectedSche
|
|
|
70
75
|
}
|
|
71
76
|
catch (e) {
|
|
72
77
|
console.log('error', e);
|
|
78
|
+
eventTracking?.logError?.({
|
|
79
|
+
type: 'bug', // TODO: determine type
|
|
80
|
+
severity: 'high',
|
|
81
|
+
message: 'Error updating tenant',
|
|
82
|
+
errorMessage: e.message,
|
|
83
|
+
errorStack: e.stack,
|
|
84
|
+
errorData: {
|
|
85
|
+
caller: 'ConnectSchema',
|
|
86
|
+
function: 'onSubmitEditTenant',
|
|
87
|
+
},
|
|
88
|
+
});
|
|
73
89
|
setFormError('Error updating tenant');
|
|
74
90
|
}
|
|
75
91
|
finally {
|
|
@@ -99,11 +115,27 @@ databaseSchema, connection, tenantInit, onTenantCreation, clientId, selectedSche
|
|
|
99
115
|
if (!results?.length) {
|
|
100
116
|
setFormError(`No rows were returned from this ${tenant.tenantTableQuery ? 'query' : 'table'}`);
|
|
101
117
|
}
|
|
118
|
+
const uniqueIds = new Set(results?.map((r) => r.id));
|
|
119
|
+
if (uniqueIds.size < results?.length) {
|
|
120
|
+
setFormError('Duplicate tenant IDs found in results. Each tenant must have a unique ID.');
|
|
121
|
+
return [];
|
|
122
|
+
}
|
|
102
123
|
return results;
|
|
103
124
|
}
|
|
104
125
|
}
|
|
105
126
|
catch (e) {
|
|
106
127
|
console.log('error', e);
|
|
128
|
+
eventTracking?.logError?.({
|
|
129
|
+
type: 'bug', // TODO: determine type
|
|
130
|
+
severity: 'high',
|
|
131
|
+
message: 'Error validating tenant',
|
|
132
|
+
errorMessage: e.message,
|
|
133
|
+
errorStack: e.stack,
|
|
134
|
+
errorData: {
|
|
135
|
+
caller: 'ConnectSchema',
|
|
136
|
+
function: 'onValidateEditTenant',
|
|
137
|
+
},
|
|
138
|
+
});
|
|
107
139
|
setFormError('Error validating tenant');
|
|
108
140
|
return [];
|
|
109
141
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
2
|
import { ColumnsByTable } from '../../utils/table';
|
|
3
3
|
import { ConnectionType } from '../../utils/databases';
|
|
4
|
-
import { State } from '../../
|
|
5
|
-
import { QuillTenant } from '../../utils/tenants';
|
|
4
|
+
import { State } from '../../models/AdminContext';
|
|
6
5
|
import { QuillProviderClient } from '@quillsql/react/dist/cjs/models/Client';
|
|
7
6
|
import { TenantInit } from '../../utils/schema';
|
|
8
7
|
export default function CreateVirtualTables({ containerStyle, header1Style, header2Style, environmentDetails, databaseSchema, completeOnboarding, client, state, tenantInit, isLoading, sqlTables, setSqlTables, }: {
|
|
@@ -38,10 +37,4 @@ export declare function VirtualTableModal({ isOpen, setIsOpen, queryInfo, setQue
|
|
|
38
37
|
}) => void;
|
|
39
38
|
addVirtualTable: (e: boolean) => Promise<void>;
|
|
40
39
|
}): import("react/jsx-runtime").JSX.Element;
|
|
41
|
-
export declare function TenantFieldModal({ isOpen, setClosed, tenant, onOverride, }: {
|
|
42
|
-
isOpen: boolean;
|
|
43
|
-
setClosed: () => void;
|
|
44
|
-
tenant?: QuillTenant;
|
|
45
|
-
onOverride?: () => void;
|
|
46
|
-
}): import("react/jsx-runtime").JSX.Element;
|
|
47
40
|
//# sourceMappingURL=CreateVirtualTables.d.ts.map
|