@quillsql/admin 1.3.6 → 1.3.8

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 (151) hide show
  1. package/dist/cjs/Admin.d.ts.map +1 -1
  2. package/dist/cjs/Admin.js +25 -15
  3. package/dist/cjs/AdminProvider.d.ts +10 -0
  4. package/dist/cjs/AdminProvider.d.ts.map +1 -1
  5. package/dist/cjs/AdminProvider.js +63 -43
  6. package/dist/cjs/api/ConnectionClient.d.ts +12 -10
  7. package/dist/cjs/api/ConnectionClient.d.ts.map +1 -1
  8. package/dist/cjs/api/ConnectionClient.js +100 -29
  9. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts +5 -0
  10. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -0
  11. package/dist/cjs/assets/ArrowDownHeadIcon.js +5 -0
  12. package/dist/cjs/assets/XIcon.d.ts +5 -0
  13. package/dist/cjs/assets/XIcon.d.ts.map +1 -0
  14. package/dist/cjs/assets/XIcon.js +5 -0
  15. package/dist/cjs/assets/index.d.ts +3 -0
  16. package/dist/cjs/assets/index.d.ts.map +1 -0
  17. package/dist/cjs/assets/index.js +10 -0
  18. package/dist/cjs/components/DatabaseMismatchCard.d.ts +6 -0
  19. package/dist/cjs/components/DatabaseMismatchCard.d.ts.map +1 -0
  20. package/dist/cjs/components/DatabaseMismatchCard.js +18 -0
  21. package/dist/cjs/components/DatabaseSelector.d.ts +2 -1
  22. package/dist/cjs/components/DatabaseSelector.d.ts.map +1 -1
  23. package/dist/cjs/components/DatabaseSelector.js +2 -2
  24. package/dist/cjs/components/DropDownMenuWithLabel.d.ts +2 -1
  25. package/dist/cjs/components/DropDownMenuWithLabel.d.ts.map +1 -1
  26. package/dist/cjs/components/DropDownMenuWithLabel.js +160 -39
  27. package/dist/cjs/components/DynamicBanner.d.ts +11 -0
  28. package/dist/cjs/components/DynamicBanner.d.ts.map +1 -0
  29. package/dist/cjs/components/DynamicBanner.js +22 -0
  30. package/dist/cjs/components/EnvSelectPopover.d.ts.map +1 -1
  31. package/dist/cjs/components/EnvSelectPopover.js +0 -1
  32. package/dist/cjs/components/OrgSelect.d.ts +23 -0
  33. package/dist/cjs/components/OrgSelect.d.ts.map +1 -1
  34. package/dist/cjs/components/OrgSelect.js +55 -15
  35. package/dist/cjs/components/SqlTextEditor.d.ts +7 -0
  36. package/dist/cjs/components/SqlTextEditor.d.ts.map +1 -0
  37. package/dist/cjs/components/SqlTextEditor.js +44 -0
  38. package/dist/cjs/components/UiComponents.d.ts +119 -0
  39. package/dist/cjs/components/UiComponents.d.ts.map +1 -0
  40. package/dist/cjs/components/UiComponents.js +268 -0
  41. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts +3 -2
  42. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  43. package/dist/cjs/forms/client_onboard/ConnectDatabase.js +101 -43
  44. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts +3 -1
  45. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  46. package/dist/cjs/forms/client_onboard/ConnectSchema.js +13 -14
  47. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts +10 -1
  48. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts.map +1 -1
  49. package/dist/cjs/forms/client_onboard/CreateSqlViews.js +12 -10
  50. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts +24 -0
  51. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts.map +1 -0
  52. package/dist/cjs/forms/sql_views/CreateEditSqlView.js +161 -0
  53. package/dist/cjs/modals/NewDashboardModal.js +1 -1
  54. package/dist/cjs/public_components/CreateEnvironment.d.ts.map +1 -1
  55. package/dist/cjs/public_components/CreateEnvironment.js +34 -8
  56. package/dist/cjs/public_components/DashboardBuilder.d.ts.map +1 -1
  57. package/dist/cjs/public_components/DashboardBuilder.js +30 -16
  58. package/dist/cjs/public_components/DashboardManager.d.ts.map +1 -1
  59. package/dist/cjs/public_components/DashboardManager.js +110 -93
  60. package/dist/cjs/public_components/SQLViewManager.d.ts.map +1 -1
  61. package/dist/cjs/public_components/SQLViewManager.js +252 -333
  62. package/dist/cjs/utils/constants.d.ts +1 -1
  63. package/dist/cjs/utils/constants.d.ts.map +1 -1
  64. package/dist/cjs/utils/constants.js +1 -2
  65. package/dist/cjs/utils/dataEditor.d.ts +4 -0
  66. package/dist/cjs/utils/dataEditor.d.ts.map +1 -0
  67. package/dist/cjs/utils/dataEditor.js +144 -0
  68. package/dist/cjs/utils/dataFetcher.d.ts +3 -0
  69. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -0
  70. package/dist/cjs/utils/dataFetcher.js +68 -0
  71. package/dist/cjs/utils/databases.d.ts +13 -2
  72. package/dist/cjs/utils/databases.d.ts.map +1 -1
  73. package/dist/cjs/utils/databases.js +52 -9
  74. package/dist/cjs/utils/table.d.ts +2 -0
  75. package/dist/cjs/utils/table.d.ts.map +1 -1
  76. package/dist/esm/Admin.d.ts.map +1 -1
  77. package/dist/esm/Admin.js +25 -15
  78. package/dist/esm/AdminProvider.d.ts +10 -0
  79. package/dist/esm/AdminProvider.d.ts.map +1 -1
  80. package/dist/esm/AdminProvider.js +61 -44
  81. package/dist/esm/api/ConnectionClient.d.ts +12 -10
  82. package/dist/esm/api/ConnectionClient.d.ts.map +1 -1
  83. package/dist/esm/api/ConnectionClient.js +97 -28
  84. package/dist/esm/assets/ArrowDownHeadIcon.d.ts +5 -0
  85. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -0
  86. package/dist/esm/assets/ArrowDownHeadIcon.js +3 -0
  87. package/dist/esm/assets/XIcon.d.ts +5 -0
  88. package/dist/esm/assets/XIcon.d.ts.map +1 -0
  89. package/dist/esm/assets/XIcon.js +3 -0
  90. package/dist/esm/assets/index.d.ts +3 -0
  91. package/dist/esm/assets/index.d.ts.map +1 -0
  92. package/dist/esm/assets/index.js +2 -0
  93. package/dist/esm/components/DatabaseMismatchCard.d.ts +6 -0
  94. package/dist/esm/components/DatabaseMismatchCard.d.ts.map +1 -0
  95. package/dist/esm/components/DatabaseMismatchCard.js +15 -0
  96. package/dist/esm/components/DatabaseSelector.d.ts +2 -1
  97. package/dist/esm/components/DatabaseSelector.d.ts.map +1 -1
  98. package/dist/esm/components/DatabaseSelector.js +2 -2
  99. package/dist/esm/components/DropDownMenuWithLabel.d.ts +2 -1
  100. package/dist/esm/components/DropDownMenuWithLabel.d.ts.map +1 -1
  101. package/dist/esm/components/DropDownMenuWithLabel.js +137 -39
  102. package/dist/esm/components/DynamicBanner.d.ts +11 -0
  103. package/dist/esm/components/DynamicBanner.d.ts.map +1 -0
  104. package/dist/esm/components/DynamicBanner.js +16 -0
  105. package/dist/esm/components/EnvSelectPopover.d.ts.map +1 -1
  106. package/dist/esm/components/EnvSelectPopover.js +0 -1
  107. package/dist/esm/components/OrgSelect.d.ts +23 -0
  108. package/dist/esm/components/OrgSelect.d.ts.map +1 -1
  109. package/dist/esm/components/OrgSelect.js +52 -16
  110. package/dist/esm/components/SqlTextEditor.d.ts +7 -0
  111. package/dist/esm/components/SqlTextEditor.d.ts.map +1 -0
  112. package/dist/esm/components/SqlTextEditor.js +38 -0
  113. package/dist/esm/components/UiComponents.d.ts +119 -0
  114. package/dist/esm/components/UiComponents.d.ts.map +1 -0
  115. package/dist/esm/components/UiComponents.js +254 -0
  116. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts +3 -2
  117. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  118. package/dist/esm/forms/client_onboard/ConnectDatabase.js +102 -44
  119. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts +3 -1
  120. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  121. package/dist/esm/forms/client_onboard/ConnectSchema.js +13 -14
  122. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts +10 -1
  123. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts.map +1 -1
  124. package/dist/esm/forms/client_onboard/CreateSqlViews.js +11 -11
  125. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts +24 -0
  126. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts.map +1 -0
  127. package/dist/esm/forms/sql_views/CreateEditSqlView.js +155 -0
  128. package/dist/esm/modals/NewDashboardModal.js +1 -1
  129. package/dist/esm/public_components/CreateEnvironment.d.ts.map +1 -1
  130. package/dist/esm/public_components/CreateEnvironment.js +12 -9
  131. package/dist/esm/public_components/DashboardBuilder.d.ts.map +1 -1
  132. package/dist/esm/public_components/DashboardBuilder.js +30 -16
  133. package/dist/esm/public_components/DashboardManager.d.ts.map +1 -1
  134. package/dist/esm/public_components/DashboardManager.js +111 -94
  135. package/dist/esm/public_components/SQLViewManager.d.ts.map +1 -1
  136. package/dist/esm/public_components/SQLViewManager.js +254 -335
  137. package/dist/esm/utils/constants.d.ts +1 -1
  138. package/dist/esm/utils/constants.d.ts.map +1 -1
  139. package/dist/esm/utils/constants.js +1 -2
  140. package/dist/esm/utils/dataEditor.d.ts +4 -0
  141. package/dist/esm/utils/dataEditor.d.ts.map +1 -0
  142. package/dist/esm/utils/dataEditor.js +138 -0
  143. package/dist/esm/utils/dataFetcher.d.ts +3 -0
  144. package/dist/esm/utils/dataFetcher.d.ts.map +1 -0
  145. package/dist/esm/utils/dataFetcher.js +63 -0
  146. package/dist/esm/utils/databases.d.ts +13 -2
  147. package/dist/esm/utils/databases.d.ts.map +1 -1
  148. package/dist/esm/utils/databases.js +52 -9
  149. package/dist/esm/utils/table.d.ts +2 -0
  150. package/dist/esm/utils/table.d.ts.map +1 -1
  151. package/package.json +2 -2
@@ -1,8 +1,9 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useReducer, createContext, useEffect, useContext, } from 'react';
3
3
  import { theme } from './Admin';
4
4
  import { QuillProvider } from '@quillsql/react';
5
5
  import { QUILL_SERVER } from './utils/constants';
6
+ import CreateEnvironment from './public_components/CreateEnvironment';
6
7
  const AdminContext = createContext(undefined);
7
8
  function reducer(state, action) {
8
9
  switch (action.type) {
@@ -58,6 +59,8 @@ function reducer(state, action) {
58
59
  return { ...state, navigateToDashboardBuilder: action.payload };
59
60
  case 'SET_ORGANIZATION_ID_SET':
60
61
  return { ...state, organizationIdSet: action.payload };
62
+ case 'SET_DATABASE_TYPE_MISMATCH':
63
+ return { ...state, databaseTypeMismatch: action.payload };
61
64
  default:
62
65
  return state;
63
66
  }
@@ -121,6 +124,7 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
121
124
  organizationIdSet: false,
122
125
  dateFilter: {},
123
126
  domainName: domainName || '',
127
+ databaseTypeMismatch: { show: false, backendDatabaseType: '' },
124
128
  ...loadState(),
125
129
  };
126
130
  const [state, dispatch] = useReducer(reducer, initialState);
@@ -160,14 +164,23 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
160
164
  return;
161
165
  }
162
166
  try {
163
- const response = await fetch(`${QUILL_SERVER}/client/${publicKey}/`, {
164
- method: 'GET',
165
- headers: { Authorization: `Bearer ` },
167
+ const response = await fetch(`${queryEndpoint}`, {
168
+ method: 'POST',
169
+ headers: {
170
+ ...queryHeaders,
171
+ 'Content-Type': 'application/json',
172
+ },
173
+ body: JSON.stringify({
174
+ metadata: {
175
+ clientId: publicKey,
176
+ publicKey,
177
+ task: 'client',
178
+ },
179
+ }),
166
180
  });
167
181
  const data = await response.json();
168
- if (!state.client) {
169
- dispatch({ type: 'SET_CLIENT', payload: data.client });
170
- }
182
+ dispatch({ type: 'SET_CLIENT', payload: data.data.client });
183
+ dispatch({ type: 'SET_CLIENTS', payload: data.data.clients });
171
184
  }
172
185
  catch (error) {
173
186
  console.error('ERROR:', error);
@@ -181,16 +194,27 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
181
194
  return;
182
195
  }
183
196
  try {
184
- const response = await fetch(`${QUILL_SERVER}/schema2/${clientId}/`, {
185
- method: 'GET',
186
- headers: { Authorization: `Bearer ` },
197
+ const response = await fetch(`${queryEndpoint}`, {
198
+ method: 'POST',
199
+ headers: {
200
+ ...queryHeaders,
201
+ 'Content-Type': 'application/json',
202
+ },
203
+ body: JSON.stringify({
204
+ metadata: {
205
+ clientId: publicKey,
206
+ publicKey,
207
+ task: 'schema',
208
+ databaseType: state.client.databaseType,
209
+ },
210
+ }),
187
211
  });
188
212
  if (!response.ok) {
189
213
  throw new Error('Failed to fetch tables data');
190
214
  }
191
215
  const data = await response.json();
192
- dispatch({ type: 'SET_TABLES', payload: data.tables });
193
- dispatch({ type: 'SET_SCHEMA', payload: data.tables });
216
+ dispatch({ type: 'SET_TABLES', payload: data.data.tables });
217
+ dispatch({ type: 'SET_SCHEMA', payload: data.data.tables });
194
218
  }
195
219
  catch (error) {
196
220
  console.error('ERROR:', error);
@@ -200,31 +224,6 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
200
224
  fetchSchemaAndTables(state.client._id);
201
225
  }
202
226
  }, [state?.client, publicKey]);
203
- useEffect(() => {
204
- if (publicKey === '' || publicKey === undefined || publicKey === null) {
205
- throw new Error('publicKey is required');
206
- }
207
- const getClients = async () => {
208
- try {
209
- const url = `${QUILL_SERVER}/clients/${publicKey}/`;
210
- const response = await fetch(url, {
211
- method: 'GET',
212
- headers: {
213
- Authorization: `Bearer `,
214
- },
215
- });
216
- if (!response.ok) {
217
- throw new Error(`HTTP error! status: ${response.status}`);
218
- }
219
- const data = await response.json();
220
- dispatch({ type: 'SET_CLIENTS', payload: data });
221
- }
222
- catch (error) {
223
- console.error('Error fetching clients:', error);
224
- }
225
- };
226
- getClients();
227
- }, [publicKey]);
228
227
  useEffect(() => {
229
228
  let isSubscribed = true;
230
229
  async function getCustomers() {
@@ -238,6 +237,7 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
238
237
  try {
239
238
  let response;
240
239
  if (state.queryEndpoint) {
240
+ dispatch({ type: 'SET_LOADING', payload: true });
241
241
  response = await fetch(state.queryEndpoint, {
242
242
  method: 'POST',
243
243
  headers: {
@@ -245,7 +245,11 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
245
245
  'Content-Type': 'application/json',
246
246
  },
247
247
  body: JSON.stringify({
248
- metadata: { clientId: state.client._id, task: 'orgs' },
248
+ metadata: {
249
+ clientId: state.client._id,
250
+ task: 'orgs',
251
+ databaseType: state.client.databaseType,
252
+ },
249
253
  }),
250
254
  credentials: state.withCredentials ? 'include' : 'omit', // If withCredentials is true, set to 'include'. Otherwise, set to 'omit'.
251
255
  });
@@ -257,21 +261,37 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
257
261
  }
258
262
  }
259
263
  const data = await response.json();
264
+ dispatch({ type: 'SET_LOADING', payload: false });
260
265
  if (data.status === 'error') {
261
266
  throw new Error(data.error);
262
267
  }
268
+ if (data.queries.dbMismatched) {
269
+ dispatch({ type: 'SET_ORGANIZATION_ID_SET', payload: true });
270
+ dispatch({
271
+ type: 'SET_DATABASE_TYPE_MISMATCH',
272
+ payload: {
273
+ show: true,
274
+ backendDatabaseType: data.queries.backendDatbaseType, // TYPO NEED TO FIX IN NODE and Python SDK
275
+ },
276
+ });
277
+ return;
278
+ }
263
279
  if (state.queryEndpoint) {
264
280
  dispatch({
265
281
  type: 'SET_ORGANIZATIONS',
266
- payload: [...data.data.rows, { id: '', name: 'All Organizations' }],
282
+ payload: [...data.data.rows],
267
283
  });
268
284
  }
269
285
  else {
270
286
  dispatch({
271
287
  type: 'SET_ORGANIZATIONS',
272
- payload: [...data.orgs, { id: '', name: 'All Organizations' }],
288
+ payload: [...data.orgs],
273
289
  });
274
290
  }
291
+ dispatch({
292
+ type: 'SET_DATABASE_TYPE_MISMATCH',
293
+ payload: { show: false, backendDatabaseType: '' },
294
+ });
275
295
  if (!state.organizationIdSet) {
276
296
  if (state.environment === 'STAGING') {
277
297
  dispatch({
@@ -306,10 +326,7 @@ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withC
306
326
  state.organizationIdSet) {
307
327
  dispatch({ type: 'SET_LOADING', payload: false });
308
328
  }
309
- else {
310
- dispatch({ type: 'SET_LOADING', payload: true });
311
- }
312
329
  }, [state.client, state.clients, state.organizations, state.organizationId]);
313
- return (_jsx(AdminContext.Provider, { value: { state, dispatch }, children: !state.loading && (_jsx(QuillProvider, { organizationId: state.organizationId, queryEndpoint: state.queryEndpoint ?? '', withCredentials: state.withCredentials, queryHeaders: state.queryHeaders ?? {}, publicKey: state.client._id, environment: state.environment, theme: state.theme, children: children })) }));
330
+ return (_jsxs(AdminContext.Provider, { value: { state, dispatch }, children: [!state.client && !state.loading && _jsx(CreateEnvironment, {}), !state.loading && (_jsx(QuillProvider, { organizationId: state.organizationId, queryEndpoint: state.queryEndpoint ?? '', withCredentials: state.withCredentials, queryHeaders: state.queryHeaders ?? {}, publicKey: state.client._id, environment: state.environment, theme: state.theme, children: children }))] }));
314
331
  }
315
332
  export { AdminProvider, useAdmin };
@@ -1,24 +1,26 @@
1
1
  import { ConnectionError, ConnectionType } from '../utils/databases';
2
2
  import { SchemaDetails } from '../utils/schema';
3
3
  import { Column, ColumnsByTable } from '../utils/table';
4
- export declare function testConnectionString(connectionString: string): Promise<any>;
5
- export declare function getSchemaTableInfo(connectionString: string, schema: string): Promise<SchemaDetails | ConnectionError>;
6
- export declare function getTablesBySchema(connectionString: string, schema: string): Promise<string[] | undefined>;
7
- export declare function getTableInfo(connectionString: string, schema: string, table: string): Promise<SchemaDetails>;
8
- export declare function getOrgInfo(connectionString: string, schema: string, table: string, orgIdColumn: string, orgColumn: string): Promise<{
4
+ export declare function testConnectionString(connectionString: string, databaseType: string, clientId?: string): Promise<any>;
5
+ export declare function getSchemaTableInfo(clientId: string, schema: string, databaseType: string): Promise<SchemaDetails | ConnectionError>;
6
+ export declare function getTablesBySchema(clientId: string, schema: string): Promise<string[] | undefined>;
7
+ export declare function getTableInfo(clientId: string, schema: string, table: string): Promise<SchemaDetails>;
8
+ export declare function getOrgInfo(clientId: string, schema: string, table: string, orgIdColumn: string, orgColumn: string): Promise<{
9
9
  name: string;
10
10
  id: any;
11
11
  }[]>;
12
- export declare function getFKInfo(connectionString: string, schema: string, table: string, primaryKey: string): Promise<string[]>;
13
- export declare function getTableSchema(connectionString: string, tables: string[]): Promise<ColumnsByTable[]>;
12
+ export declare function getFKInfo(clientId: string, schema: string, table: string, primaryKey: string): Promise<string[]>;
13
+ export declare function getTableSchema(clientId: string, tables: string[], schemaName: string): Promise<ColumnsByTable[]>;
14
+ export declare function getTableColumnsBySchema(clientId: string, schemaNames: string[], databaseType: string, queryEndpoint?: string): Promise<ColumnsByTable[]>;
14
15
  export declare function getSQLViews(tableSchemas: any, customerNameField: string): Promise<any>;
15
- export declare function getSqlViewData(connectionString: string, query: string): Promise<any>;
16
+ export declare function getSqlViewData(clientId: string, query: string, databaseType: string, queryEndpoint?: string): Promise<any>;
16
17
  export declare function getQueryFromAI(aiPrompt: string, columnsByTable: ColumnsByTable[]): Promise<string>;
18
+ export declare function getQueryFromAiWithConnection(aiPrompt: string, clientId: string, schemaNames?: string[]): Promise<string>;
17
19
  export declare function createSQLView(connectionType: ConnectionType, allSchemaInfo: SchemaDetails, columnsByTable: ColumnsByTable[], viewInfo: {
18
20
  name: string;
19
21
  query: string;
20
22
  }, client: any, domainName: string | undefined, tableData: {
21
23
  rows: object[];
22
- columns: Column[];
23
- } | undefined, currentTableNames: string[], override?: boolean): Promise<any>;
24
+ fields: Column[];
25
+ } | undefined, currentTableNames: string[], override: boolean | undefined, clientId: string): Promise<any>;
24
26
  //# sourceMappingURL=ConnectionClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionClient.d.ts","sourceRoot":"","sources":["../../../src/api/ConnectionClient.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAExD,wBAAsB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,gBAclE;AAED,wBAAsB,kBAAkB,CACtC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,GAAG,eAAe,CAAC,CAe1C;AACD,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAe/B;AAED,wBAAsB,YAAY,CAChC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,CAAC,CAgBxB;AAED,wBAAsB,UAAU,CAC9B,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,GAAG,CAAA;CAAE,EAAE,CAAC,CAkBtC;AAED,wBAAsB,SAAS,CAC7B,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB;AAED,wBAAsB,cAAc,CAClC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,cAAc,EAAE,CAAC,CAe3B;AAED,wBAAsB,WAAW,CAC/B,YAAY,EAAE,GAAG,EACjB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,GAAG,CAAC,CAqBd;AAED,wBAAsB,cAAc,CAClC,gBAAgB,EAAE,MAAM,EACxB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,GAAG,CAAC,CAed;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,cAAc,EAAE,GAC/B,OAAO,CAAC,MAAM,CAAC,CAejB;AAED,wBAAsB,aAAa,CACjC,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAAE,EAChC,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACzC,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,SAAS,EACL;IACE,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,GACD,SAAS,EACb,iBAAiB,EAAE,MAAM,EAAE,EAC3B,QAAQ,UAAQ,GACf,OAAO,CAAC,GAAG,CAAC,CAuEd"}
1
+ {"version":3,"file":"ConnectionClient.d.ts","sourceRoot":"","sources":["../../../src/api/ConnectionClient.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAExD,wBAAsB,oBAAoB,CACxC,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,gBAiBlB;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,GAAG,eAAe,CAAC,CAgB1C;AACD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAe/B;AAED,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,CAAC,CAgBxB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,GAAG,CAAA;CAAE,EAAE,CAAC,CAkBtC;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EAAE,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,cAAc,EAAE,CAAC,CAgB3B;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,cAAc,EAAE,CAAC,CA4B3B;AAED,wBAAsB,WAAW,CAC/B,YAAY,EAAE,GAAG,EACjB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,GAAG,CAAC,CAqBd;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,GAAG,CAAC,CAmCd;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,cAAc,EAAE,GAC/B,OAAO,CAAC,MAAM,CAAC,CAejB;AAED,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAsB,aAAa,CACjC,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAAE,EAChC,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACzC,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,SAAS,EACL;IACE,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,GACD,SAAS,EACb,iBAAiB,EAAE,MAAM,EAAE,EAC3B,QAAQ,qBAAQ,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,GAAG,CAAC,CAwEd"}
@@ -1,6 +1,5 @@
1
1
  import { QUILL_SERVER } from '../utils/constants';
2
- import { formConnectionString, } from '../utils/databases';
3
- export async function testConnectionString(connectionString) {
2
+ export async function testConnectionString(connectionString, databaseType, clientId) {
4
3
  const localURL = `${QUILL_SERVER}/sdk/test-connection`;
5
4
  const response = await fetch(localURL, {
6
5
  method: 'POST',
@@ -9,13 +8,15 @@ export async function testConnectionString(connectionString) {
9
8
  },
10
9
  body: JSON.stringify({
11
10
  connectionString,
11
+ clientId,
12
+ databaseType,
12
13
  task: 'test-connection',
13
14
  }),
14
15
  });
15
16
  const results = await response.json();
16
- return results.success;
17
+ return results;
17
18
  }
18
- export async function getSchemaTableInfo(connectionString, schema) {
19
+ export async function getSchemaTableInfo(clientId, schema, databaseType) {
19
20
  const localURL = `${QUILL_SERVER}/sdk/schema-info`;
20
21
  const response = await fetch(localURL, {
21
22
  method: 'POST',
@@ -23,15 +24,16 @@ export async function getSchemaTableInfo(connectionString, schema) {
23
24
  'Content-Type': 'application/json',
24
25
  },
25
26
  body: JSON.stringify({
26
- connectionString,
27
+ clientId,
27
28
  schema,
29
+ databaseType,
28
30
  task: 'schema-info',
29
31
  }),
30
32
  });
31
33
  const results = await response.json();
32
34
  return results;
33
35
  }
34
- export async function getTablesBySchema(connectionString, schema) {
36
+ export async function getTablesBySchema(clientId, schema) {
35
37
  const localURL = `${QUILL_SERVER}/sdk/tables-by-schema`;
36
38
  const response = await fetch(localURL, {
37
39
  method: 'POST',
@@ -39,15 +41,15 @@ export async function getTablesBySchema(connectionString, schema) {
39
41
  'Content-Type': 'application/json',
40
42
  },
41
43
  body: JSON.stringify({
42
- connectionString,
43
- schema,
44
+ clientId,
45
+ schemaNames: [schema],
44
46
  task: 'tables-by-schema',
45
47
  }),
46
48
  });
47
49
  const results = await response.json();
48
50
  return results.tables;
49
51
  }
50
- export async function getTableInfo(connectionString, schema, table) {
52
+ export async function getTableInfo(clientId, schema, table) {
51
53
  const localURL = `${QUILL_SERVER}/sdk/table-info`;
52
54
  const response = await fetch(localURL, {
53
55
  method: 'POST',
@@ -55,7 +57,7 @@ export async function getTableInfo(connectionString, schema, table) {
55
57
  'Content-Type': 'application/json',
56
58
  },
57
59
  body: JSON.stringify({
58
- connectionString,
60
+ clientId,
59
61
  schema,
60
62
  table,
61
63
  task: 'table-info',
@@ -64,7 +66,7 @@ export async function getTableInfo(connectionString, schema, table) {
64
66
  const results = await response.json();
65
67
  return results;
66
68
  }
67
- export async function getOrgInfo(connectionString, schema, table, orgIdColumn, orgColumn) {
69
+ export async function getOrgInfo(clientId, schema, table, orgIdColumn, orgColumn) {
68
70
  const localURL = `${QUILL_SERVER}/sdk/org-info`;
69
71
  const response = await fetch(localURL, {
70
72
  method: 'POST',
@@ -72,7 +74,7 @@ export async function getOrgInfo(connectionString, schema, table, orgIdColumn, o
72
74
  'Content-Type': 'application/json',
73
75
  },
74
76
  body: JSON.stringify({
75
- connectionString,
77
+ clientId,
76
78
  schema,
77
79
  table,
78
80
  orgColumn,
@@ -83,7 +85,7 @@ export async function getOrgInfo(connectionString, schema, table, orgIdColumn, o
83
85
  const results = await response.json();
84
86
  return results.orgStrings;
85
87
  }
86
- export async function getFKInfo(connectionString, schema, table, primaryKey) {
88
+ export async function getFKInfo(clientId, schema, table, primaryKey) {
87
89
  const localURL = `${QUILL_SERVER}/sdk/fk-info`;
88
90
  const response = await fetch(localURL, {
89
91
  method: 'POST',
@@ -91,7 +93,7 @@ export async function getFKInfo(connectionString, schema, table, primaryKey) {
91
93
  'Content-Type': 'application/json',
92
94
  },
93
95
  body: JSON.stringify({
94
- connectionString,
96
+ clientId,
95
97
  schema,
96
98
  table,
97
99
  primaryKey,
@@ -110,7 +112,7 @@ export async function getFKInfo(connectionString, schema, table, primaryKey) {
110
112
  }
111
113
  return results.foreignKeysString;
112
114
  }
113
- export async function getTableSchema(connectionString, tables) {
115
+ export async function getTableSchema(clientId, tables, schemaName) {
114
116
  const localURL = `${QUILL_SERVER}/sdk/table-schemas`;
115
117
  const response = await fetch(localURL, {
116
118
  method: 'POST',
@@ -118,14 +120,44 @@ export async function getTableSchema(connectionString, tables) {
118
120
  'Content-Type': 'application/json',
119
121
  },
120
122
  body: JSON.stringify({
121
- connectionString,
123
+ clientId,
122
124
  tables,
125
+ schemaName,
123
126
  task: 'table-schemas',
124
127
  }),
125
128
  });
126
129
  const results = await response.json();
127
130
  return results;
128
131
  }
132
+ export async function getTableColumnsBySchema(clientId, schemaNames, databaseType, queryEndpoint) {
133
+ const localURL = queryEndpoint ?? `${QUILL_SERVER}/table-info-by-schema`;
134
+ const response = await fetch(localURL, {
135
+ method: 'POST',
136
+ headers: {
137
+ 'Content-Type': 'application/json',
138
+ },
139
+ body: JSON.stringify({
140
+ clientId,
141
+ schemaNames,
142
+ task: 'table-schemas',
143
+ metadata: {
144
+ task: 'table-schemas',
145
+ preQueries: ['temp'],
146
+ clientId,
147
+ runQueryConfig: {
148
+ overridePost: true,
149
+ convertDatatypes: true,
150
+ getTables: true,
151
+ schema: schemaNames[0],
152
+ schemaNames: schemaNames,
153
+ },
154
+ databaseType: databaseType,
155
+ },
156
+ }),
157
+ });
158
+ const results = await response.json();
159
+ return queryEndpoint ? results.data.queryResults : results;
160
+ }
129
161
  export async function getSQLViews(tableSchemas, customerNameField) {
130
162
  const localURL = `${QUILL_SERVER}/sqlviewai`;
131
163
  const response = await fetch(localURL, {
@@ -148,21 +180,40 @@ export async function getSQLViews(tableSchemas, customerNameField) {
148
180
  }
149
181
  return results.notSureWhatThisIs.sqlQueries;
150
182
  }
151
- export async function getSqlViewData(connectionString, query) {
152
- const localURL = `${QUILL_SERVER}/sdk/query-view`;
153
- const response = await fetch(localURL, {
183
+ export async function getSqlViewData(clientId, query, databaseType, queryEndpoint) {
184
+ const url = queryEndpoint ?? `${QUILL_SERVER}/sdk/query-view`;
185
+ const response = await fetch(url, {
154
186
  method: 'POST',
155
187
  headers: {
156
188
  'Content-Type': 'application/json',
157
189
  },
158
190
  body: JSON.stringify({
159
- connectionString,
191
+ clientId,
160
192
  query,
193
+ metadata: {
194
+ task: 'query-view',
195
+ preQueries: [query],
196
+ clientId,
197
+ runQueryConfig: {
198
+ overridePost: true,
199
+ convertDatatypes: true,
200
+ limitThousand: true,
201
+ },
202
+ databaseType: databaseType,
203
+ },
161
204
  task: 'query-view',
162
205
  }),
163
206
  });
164
207
  const results = await response.json();
165
- return results;
208
+ if (results.status === 'error') {
209
+ return { ...results, success: false };
210
+ }
211
+ return queryEndpoint
212
+ ? {
213
+ ...results.data.queryResults[0],
214
+ success: results.status === 'success' ? true : false,
215
+ }
216
+ : results;
166
217
  }
167
218
  export async function getQueryFromAI(aiPrompt, columnsByTable) {
168
219
  const localURL = `${QUILL_SERVER}/sdk/sql-generator`;
@@ -180,7 +231,24 @@ export async function getQueryFromAI(aiPrompt, columnsByTable) {
180
231
  const results = await response.json();
181
232
  return results.message;
182
233
  }
183
- export async function createSQLView(connectionType, allSchemaInfo, columnsByTable, viewInfo, client, domainName, tableData, currentTableNames, override = false) {
234
+ export async function getQueryFromAiWithConnection(aiPrompt, clientId, schemaNames) {
235
+ const localURL = `${QUILL_SERVER}/ai-from-client-schema`;
236
+ const response = await fetch(localURL, {
237
+ method: 'POST',
238
+ headers: {
239
+ 'Content-Type': 'application/json',
240
+ },
241
+ body: JSON.stringify({
242
+ prompt: aiPrompt,
243
+ clientId,
244
+ schemaNames,
245
+ task: 'sql-generator',
246
+ }),
247
+ });
248
+ const results = await response.json();
249
+ return results.message;
250
+ }
251
+ export async function createSQLView(connectionType, allSchemaInfo, columnsByTable, viewInfo, client, domainName, tableData, currentTableNames, override = false, clientId) {
184
252
  let queryName = viewInfo.name;
185
253
  let validQuery = false;
186
254
  let localURL = `${QUILL_SERVER}/astify`;
@@ -191,7 +259,7 @@ export async function createSQLView(connectionType, allSchemaInfo, columnsByTabl
191
259
  },
192
260
  body: JSON.stringify({ query: viewInfo.query }),
193
261
  });
194
- tableData?.columns.forEach((column) => {
262
+ tableData?.fields.forEach((column) => {
195
263
  if (column.name === allSchemaInfo.selectedFields.foreignKey) {
196
264
  validQuery = true;
197
265
  }
@@ -210,27 +278,28 @@ export async function createSQLView(connectionType, allSchemaInfo, columnsByTabl
210
278
  if (currentTableNames.includes(queryName)) {
211
279
  return { success: false, message: 'Query name already exists' };
212
280
  }
213
- const columns = columnsByTable.find((table) => table.tableName === allSchemaInfo.selectedFields.table).columns;
281
+ const columns = columnsByTable.find((table) => table.tableName === `${allSchemaInfo.selectedFields.schema}.${allSchemaInfo.selectedFields.table}`).columns;
214
282
  const customerFieldType = columns.find((column) => column.columnName === allSchemaInfo.selectedFields.organizationIdField).fieldType;
215
283
  const fuzzyType = customerFieldType === 'string' || customerFieldType === 'uuid'
216
284
  ? 'text'
217
285
  : 'number';
218
286
  localURL = `${QUILL_SERVER}/sdk/create-environment`;
219
287
  const payload = {
220
- databaseConnectionString: formConnectionString(connectionType),
221
- databaseType: connectionType.type,
222
288
  customerFieldName: allSchemaInfo.selectedFields.foreignKey,
223
- customerTableName: allSchemaInfo.selectedFields.table,
289
+ customerTableName: `${allSchemaInfo.selectedFields.schema}.${allSchemaInfo.selectedFields.table}`,
224
290
  customerTableFieldName: allSchemaInfo.selectedFields.organizationIdField,
225
291
  adminCustomerId: allSchemaInfo.selectedFields.defaultOrg?.id,
226
292
  customerTableTitleFieldName: allSchemaInfo.selectedFields.customerNameField,
227
- columns: tableData?.columns,
293
+ columns: tableData?.fields,
228
294
  task: 'create-environment',
229
295
  viewQuery: viewInfo.query,
230
296
  customerFieldType: fuzzyType,
231
297
  name: queryName,
232
298
  client,
233
299
  domainName,
300
+ schemaName: allSchemaInfo.selectedFields.schema,
301
+ schemaNames: [allSchemaInfo.selectedFields.schema],
302
+ clientId,
234
303
  };
235
304
  const response = await fetch(localURL, {
236
305
  method: 'POST',
@@ -0,0 +1,5 @@
1
+ declare const ArrowDownHeadIcon: ({ ...props }: {
2
+ [x: string]: any;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
+ export default ArrowDownHeadIcon;
5
+ //# sourceMappingURL=ArrowDownHeadIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrowDownHeadIcon.d.ts","sourceRoot":"","sources":["../../../src/assets/ArrowDownHeadIcon.tsx"],"names":[],"mappings":"AAGA,QAAA,MAAM,iBAAiB;;6CAKtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ const ArrowDownHeadIcon = ({ ...props }) => (_jsx("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "24", height: "24", children: _jsx("path", { fill: "currentColor", d: "M12 13.172l4.95-4.95 1.414 1.414L12 16 5.636 9.636 7.05 8.222z" }) }));
3
+ export default ArrowDownHeadIcon;
@@ -0,0 +1,5 @@
1
+ declare const XIcon: ({ ...props }: {
2
+ [x: string]: any;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
+ export default XIcon;
5
+ //# sourceMappingURL=XIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XIcon.d.ts","sourceRoot":"","sources":["../../../src/assets/XIcon.tsx"],"names":[],"mappings":"AAGA,QAAA,MAAM,KAAK;;6CAcV,CAAC;AACF,eAAe,KAAK,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ const XIcon = ({ ...props }) => (_jsx("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", height: "20", width: "20", children: _jsx("path", { fillRule: "evenodd", d: "M5.47 5.47a.75.75 0 011.06 0L12 10.94l5.47-5.47a.75.75 0 111.06 1.06L13.06 12l5.47 5.47a.75.75 0 11-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 01-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 010-1.06z", clipRule: "evenodd" }) }));
3
+ export default XIcon;
@@ -0,0 +1,3 @@
1
+ export { default as ArrowDownHeadIcon } from './ArrowDownHeadIcon';
2
+ export { default as XIcon } from './XIcon';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default as ArrowDownHeadIcon } from './ArrowDownHeadIcon';
2
+ export { default as XIcon } from './XIcon';
@@ -0,0 +1,6 @@
1
+ export default function DatabaseMismatchCard({ environemntName, environemntDatabaseType, backendDatabaseType, }: {
2
+ environemntName: string;
3
+ environemntDatabaseType: string;
4
+ backendDatabaseType: string;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=DatabaseMismatchCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseMismatchCard.d.ts","sourceRoot":"","sources":["../../../src/components/DatabaseMismatchCard.tsx"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAC3C,eAAe,EACf,uBAAuB,EACvB,mBAAmB,GACpB,EAAE;IACD,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,CAAC;CAC7B,2CAmDA"}
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export default function DatabaseMismatchCard({ environemntName, environemntDatabaseType, backendDatabaseType, }) {
3
+ return (_jsx("div", { style: {
4
+ display: 'flex',
5
+ flexDirection: 'column',
6
+ alignItems: 'center',
7
+ width: '100%',
8
+ marginTop: 80,
9
+ }, children: _jsxs("div", { style: {
10
+ borderRadius: 10,
11
+ width: 500,
12
+ border: '1px solid #e7e7e7',
13
+ padding: 20,
14
+ }, children: [_jsx("h1", { style: { fontSize: 20, fontWeight: 'bolder' }, children: "Invalid Database Type Connected to Quill Server SDK" }), _jsx("br", {}), _jsxs("p", { children: ["The selected environment ", _jsx("strong", { children: environemntName }), " is running on ", _jsx("strong", { children: environemntDatabaseType }), ", but the", ' ', _jsx("strong", { children: "queryEndpoint " }), "prop passed into ", _jsx("strong", { children: '<AdminProvider />' }), " is connecting to", _jsxs("strong", { children: [" ", backendDatabaseType, "."] }), _jsx("br", {}), _jsx("br", {}), "If you intend to use a different environment that uses", ' ', _jsx("strong", { children: backendDatabaseType }), ", switch to that environment in the ", _jsx("strong", { children: "Environment" }), " dropdown.", _jsx("br", {}), _jsx("br", {}), "If you intend to connect to a different endpoint with a different datasource, you can do so by passing the", ' ', _jsx("strong", { children: "queryEndpoint" }), " prop into", ' ', _jsx("strong", { children: '<AdminProvider />' }), " with the correct endpoint.", _jsx("br", {}), _jsx("br", {}), "If you intend to connect to a different datasource and continue to use the same endpoint, you can do so by passing the credentials of the datasource into the ", _jsx("strong", { children: "databaseCredentials" }), " object in the instantiation of the ", _jsx("strong", { children: "Quill Server SDK" }), "."] })] }) }));
15
+ }
@@ -5,7 +5,8 @@ interface DatabaseSelectorProps {
5
5
  value: string;
6
6
  onDatabaseSelect: (database: string) => void;
7
7
  containerStyle?: CSSProperties;
8
+ databaseType: string;
8
9
  }
9
- export default function DatabaseSelector({ label, imageUrl, value, onDatabaseSelect, containerStyle, }: DatabaseSelectorProps): import("react/jsx-runtime").JSX.Element;
10
+ export default function DatabaseSelector({ label, imageUrl, value, onDatabaseSelect, containerStyle, databaseType, }: DatabaseSelectorProps): import("react/jsx-runtime").JSX.Element;
10
11
  export {};
11
12
  //# sourceMappingURL=DatabaseSelector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseSelector.d.ts","sourceRoot":"","sources":["../../../src/components/DatabaseSelector.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAY,MAAM,OAAO,CAAC;AAGvD,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,cAAc,CAAC,EAAE,aAAa,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,KAAK,EACL,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,cAAc,GACf,EAAE,qBAAqB,2CAqCvB"}
1
+ {"version":3,"file":"DatabaseSelector.d.ts","sourceRoot":"","sources":["../../../src/components/DatabaseSelector.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAY,MAAM,OAAO,CAAC;AAGvD,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,KAAK,EACL,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,cAAc,EACd,YAAiB,GAClB,EAAE,qBAAqB,2CAqCvB"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export default function DatabaseSelector({ label, imageUrl, value, onDatabaseSelect, containerStyle, }) {
2
+ export default function DatabaseSelector({ label, imageUrl, value, onDatabaseSelect, containerStyle, databaseType = '', }) {
3
3
  return (_jsxs("div", { style: {
4
4
  ...containerStyle,
5
5
  height: 128,
@@ -8,7 +8,7 @@ export default function DatabaseSelector({ label, imageUrl, value, onDatabaseSel
8
8
  flexDirection: 'column',
9
9
  justifyContent: 'center',
10
10
  alignItems: 'center',
11
- border: '1px solid #e0e0e0',
11
+ border: `${databaseType === value ? '2px' : '1px'} solid ${databaseType === value ? '#000000' : '#e0e0e0'}`,
12
12
  borderRadius: 6,
13
13
  padding: 12,
14
14
  }, id: "connect-database-form", onClick: () => {
@@ -6,7 +6,8 @@ interface DropdownMenuWithLabelProps {
6
6
  theme?: any;
7
7
  secondaryTextColor?: string;
8
8
  disabled?: boolean;
9
+ parentRef: any;
9
10
  }
10
- export default function DropdownMenuWithLabel({ items, setSelected, selected, theme, label, disabled, secondaryTextColor, }: DropdownMenuWithLabelProps): import("react/jsx-runtime").JSX.Element;
11
+ export default function DropdownMenuWithLabel({ items, setSelected, selected, theme, label, disabled, secondaryTextColor, parentRef, }: DropdownMenuWithLabelProps): import("react/jsx-runtime").JSX.Element;
11
12
  export {};
12
13
  //# sourceMappingURL=DropDownMenuWithLabel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropDownMenuWithLabel.d.ts","sourceRoot":"","sources":["../../../src/components/DropDownMenuWithLabel.tsx"],"names":[],"mappings":"AAEA,UAAU,0BAA0B;IAClC,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,WAAW,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,QAAQ,EAAE,GAAG,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAC5C,KAAK,EACL,WAAW,EACX,QAAQ,EACR,KAAK,EACL,KAAK,EACL,QAAgB,EAChB,kBAA8B,GAC/B,EAAE,0BAA0B,2CA0F5B"}
1
+ {"version":3,"file":"DropDownMenuWithLabel.d.ts","sourceRoot":"","sources":["../../../src/components/DropDownMenuWithLabel.tsx"],"names":[],"mappings":"AAIA,UAAU,0BAA0B;IAClC,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,WAAW,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,QAAQ,EAAE,GAAG,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,GAAG,CAAC;CAChB;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAC5C,KAAK,EACL,WAAW,EACX,QAAQ,EACR,KAAK,EACL,KAAK,EACL,QAAgB,EAChB,kBAA8B,EAC9B,SAAS,GACV,EAAE,0BAA0B,2CAqH5B"}