@quillsql/admin 1.3.7 → 1.3.9

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 (153) hide show
  1. package/dist/cjs/Admin.d.ts +0 -5
  2. package/dist/cjs/Admin.d.ts.map +1 -1
  3. package/dist/cjs/Admin.js +56 -108
  4. package/dist/cjs/AdminProvider.d.ts +9 -5
  5. package/dist/cjs/AdminProvider.d.ts.map +1 -1
  6. package/dist/cjs/AdminProvider.js +73 -84
  7. package/dist/cjs/api/ConnectionClient.d.ts +12 -10
  8. package/dist/cjs/api/ConnectionClient.d.ts.map +1 -1
  9. package/dist/cjs/api/ConnectionClient.js +102 -30
  10. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts +5 -0
  11. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -0
  12. package/dist/cjs/assets/ArrowDownHeadIcon.js +5 -0
  13. package/dist/cjs/assets/XIcon.d.ts +5 -0
  14. package/dist/cjs/assets/XIcon.d.ts.map +1 -0
  15. package/dist/cjs/assets/XIcon.js +5 -0
  16. package/dist/cjs/assets/index.d.ts +3 -0
  17. package/dist/cjs/assets/index.d.ts.map +1 -0
  18. package/dist/cjs/assets/index.js +10 -0
  19. package/dist/cjs/components/DatabaseMismatchCard.d.ts +6 -0
  20. package/dist/cjs/components/DatabaseMismatchCard.d.ts.map +1 -0
  21. package/dist/cjs/components/DatabaseMismatchCard.js +18 -0
  22. package/dist/cjs/components/DatabaseSelector.d.ts +2 -1
  23. package/dist/cjs/components/DatabaseSelector.d.ts.map +1 -1
  24. package/dist/cjs/components/DatabaseSelector.js +2 -2
  25. package/dist/cjs/components/DropDownMenuWithLabel.d.ts +2 -1
  26. package/dist/cjs/components/DropDownMenuWithLabel.d.ts.map +1 -1
  27. package/dist/cjs/components/DropDownMenuWithLabel.js +160 -39
  28. package/dist/cjs/components/DynamicBanner.d.ts +11 -0
  29. package/dist/cjs/components/DynamicBanner.d.ts.map +1 -0
  30. package/dist/cjs/components/DynamicBanner.js +22 -0
  31. package/dist/cjs/components/EnvSelectPopover.d.ts.map +1 -1
  32. package/dist/cjs/components/EnvSelectPopover.js +0 -1
  33. package/dist/cjs/components/OrgSelect.d.ts +23 -0
  34. package/dist/cjs/components/OrgSelect.d.ts.map +1 -1
  35. package/dist/cjs/components/OrgSelect.js +55 -15
  36. package/dist/cjs/components/SqlTextEditor.d.ts +7 -0
  37. package/dist/cjs/components/SqlTextEditor.d.ts.map +1 -0
  38. package/dist/cjs/components/SqlTextEditor.js +44 -0
  39. package/dist/cjs/components/UiComponents.d.ts +119 -0
  40. package/dist/cjs/components/UiComponents.d.ts.map +1 -0
  41. package/dist/cjs/components/UiComponents.js +268 -0
  42. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts +3 -2
  43. package/dist/cjs/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  44. package/dist/cjs/forms/client_onboard/ConnectDatabase.js +101 -43
  45. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts +3 -1
  46. package/dist/cjs/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  47. package/dist/cjs/forms/client_onboard/ConnectSchema.js +13 -14
  48. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts +10 -1
  49. package/dist/cjs/forms/client_onboard/CreateSqlViews.d.ts.map +1 -1
  50. package/dist/cjs/forms/client_onboard/CreateSqlViews.js +13 -13
  51. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts +23 -0
  52. package/dist/cjs/forms/sql_views/CreateEditSqlView.d.ts.map +1 -0
  53. package/dist/cjs/forms/sql_views/CreateEditSqlView.js +161 -0
  54. package/dist/cjs/modals/NewDashboardModal.js +1 -1
  55. package/dist/cjs/primitives/TextInputPrimitive.d.ts +1 -0
  56. package/dist/cjs/primitives/TextInputPrimitive.d.ts.map +1 -1
  57. package/dist/cjs/primitives/TextInputPrimitive.js +2 -2
  58. package/dist/cjs/public_components/CreateEnvironment.d.ts.map +1 -1
  59. package/dist/cjs/public_components/CreateEnvironment.js +34 -8
  60. package/dist/cjs/public_components/DashboardBuilder.d.ts.map +1 -1
  61. package/dist/cjs/public_components/DashboardBuilder.js +30 -16
  62. package/dist/cjs/public_components/DashboardManager.d.ts.map +1 -1
  63. package/dist/cjs/public_components/DashboardManager.js +114 -104
  64. package/dist/cjs/public_components/SQLViewManager.d.ts.map +1 -1
  65. package/dist/cjs/public_components/SQLViewManager.js +252 -333
  66. package/dist/cjs/utils/dataEditor.d.ts +4 -0
  67. package/dist/cjs/utils/dataEditor.d.ts.map +1 -0
  68. package/dist/cjs/utils/dataEditor.js +144 -0
  69. package/dist/cjs/utils/dataFetcher.d.ts +3 -0
  70. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -0
  71. package/dist/cjs/utils/dataFetcher.js +68 -0
  72. package/dist/cjs/utils/databases.d.ts +13 -2
  73. package/dist/cjs/utils/databases.d.ts.map +1 -1
  74. package/dist/cjs/utils/databases.js +52 -9
  75. package/dist/cjs/utils/table.d.ts +2 -0
  76. package/dist/cjs/utils/table.d.ts.map +1 -1
  77. package/dist/esm/Admin.d.ts +0 -5
  78. package/dist/esm/Admin.d.ts.map +1 -1
  79. package/dist/esm/Admin.js +56 -107
  80. package/dist/esm/AdminProvider.d.ts +9 -5
  81. package/dist/esm/AdminProvider.d.ts.map +1 -1
  82. package/dist/esm/AdminProvider.js +71 -85
  83. package/dist/esm/api/ConnectionClient.d.ts +12 -10
  84. package/dist/esm/api/ConnectionClient.d.ts.map +1 -1
  85. package/dist/esm/api/ConnectionClient.js +99 -29
  86. package/dist/esm/assets/ArrowDownHeadIcon.d.ts +5 -0
  87. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -0
  88. package/dist/esm/assets/ArrowDownHeadIcon.js +3 -0
  89. package/dist/esm/assets/XIcon.d.ts +5 -0
  90. package/dist/esm/assets/XIcon.d.ts.map +1 -0
  91. package/dist/esm/assets/XIcon.js +3 -0
  92. package/dist/esm/assets/index.d.ts +3 -0
  93. package/dist/esm/assets/index.d.ts.map +1 -0
  94. package/dist/esm/assets/index.js +2 -0
  95. package/dist/esm/components/DatabaseMismatchCard.d.ts +6 -0
  96. package/dist/esm/components/DatabaseMismatchCard.d.ts.map +1 -0
  97. package/dist/esm/components/DatabaseMismatchCard.js +15 -0
  98. package/dist/esm/components/DatabaseSelector.d.ts +2 -1
  99. package/dist/esm/components/DatabaseSelector.d.ts.map +1 -1
  100. package/dist/esm/components/DatabaseSelector.js +2 -2
  101. package/dist/esm/components/DropDownMenuWithLabel.d.ts +2 -1
  102. package/dist/esm/components/DropDownMenuWithLabel.d.ts.map +1 -1
  103. package/dist/esm/components/DropDownMenuWithLabel.js +137 -39
  104. package/dist/esm/components/DynamicBanner.d.ts +11 -0
  105. package/dist/esm/components/DynamicBanner.d.ts.map +1 -0
  106. package/dist/esm/components/DynamicBanner.js +16 -0
  107. package/dist/esm/components/EnvSelectPopover.d.ts.map +1 -1
  108. package/dist/esm/components/EnvSelectPopover.js +0 -1
  109. package/dist/esm/components/OrgSelect.d.ts +23 -0
  110. package/dist/esm/components/OrgSelect.d.ts.map +1 -1
  111. package/dist/esm/components/OrgSelect.js +52 -16
  112. package/dist/esm/components/SqlTextEditor.d.ts +7 -0
  113. package/dist/esm/components/SqlTextEditor.d.ts.map +1 -0
  114. package/dist/esm/components/SqlTextEditor.js +38 -0
  115. package/dist/esm/components/UiComponents.d.ts +119 -0
  116. package/dist/esm/components/UiComponents.d.ts.map +1 -0
  117. package/dist/esm/components/UiComponents.js +254 -0
  118. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts +3 -2
  119. package/dist/esm/forms/client_onboard/ConnectDatabase.d.ts.map +1 -1
  120. package/dist/esm/forms/client_onboard/ConnectDatabase.js +102 -44
  121. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts +3 -1
  122. package/dist/esm/forms/client_onboard/ConnectSchema.d.ts.map +1 -1
  123. package/dist/esm/forms/client_onboard/ConnectSchema.js +13 -14
  124. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts +10 -1
  125. package/dist/esm/forms/client_onboard/CreateSqlViews.d.ts.map +1 -1
  126. package/dist/esm/forms/client_onboard/CreateSqlViews.js +12 -14
  127. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts +23 -0
  128. package/dist/esm/forms/sql_views/CreateEditSqlView.d.ts.map +1 -0
  129. package/dist/esm/forms/sql_views/CreateEditSqlView.js +155 -0
  130. package/dist/esm/modals/NewDashboardModal.js +1 -1
  131. package/dist/esm/primitives/TextInputPrimitive.d.ts +1 -0
  132. package/dist/esm/primitives/TextInputPrimitive.d.ts.map +1 -1
  133. package/dist/esm/primitives/TextInputPrimitive.js +2 -2
  134. package/dist/esm/public_components/CreateEnvironment.d.ts.map +1 -1
  135. package/dist/esm/public_components/CreateEnvironment.js +12 -9
  136. package/dist/esm/public_components/DashboardBuilder.d.ts.map +1 -1
  137. package/dist/esm/public_components/DashboardBuilder.js +30 -16
  138. package/dist/esm/public_components/DashboardManager.d.ts.map +1 -1
  139. package/dist/esm/public_components/DashboardManager.js +115 -105
  140. package/dist/esm/public_components/SQLViewManager.d.ts.map +1 -1
  141. package/dist/esm/public_components/SQLViewManager.js +254 -335
  142. package/dist/esm/utils/dataEditor.d.ts +4 -0
  143. package/dist/esm/utils/dataEditor.d.ts.map +1 -0
  144. package/dist/esm/utils/dataEditor.js +138 -0
  145. package/dist/esm/utils/dataFetcher.d.ts +3 -0
  146. package/dist/esm/utils/dataFetcher.d.ts.map +1 -0
  147. package/dist/esm/utils/dataFetcher.js +63 -0
  148. package/dist/esm/utils/databases.d.ts +13 -2
  149. package/dist/esm/utils/databases.d.ts.map +1 -1
  150. package/dist/esm/utils/databases.js +52 -9
  151. package/dist/esm/utils/table.d.ts +2 -0
  152. package/dist/esm/utils/table.d.ts.map +1 -1
  153. package/package.json +2 -2
@@ -8,8 +8,7 @@ const react_1 = require("react");
8
8
  const primitives_1 = require("../../primitives");
9
9
  const DropDownMenuWithLabel_1 = __importDefault(require("../../components/DropDownMenuWithLabel"));
10
10
  const ConnectionClient_1 = require("../../api/ConnectionClient");
11
- const databases_1 = require("../../utils/databases");
12
- function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaInfo, environmentDetails, propogateSchemaDetails, initialError, }) {
11
+ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaInfo, environmentDetails, propogateSchemaDetails, initialError, clientId, parentRef, }) {
13
12
  const [schemaDetails, setSchemaDetails] = (0, react_1.useState)(allSchemaInfo);
14
13
  const [schemaError, setSchemaError] = (0, react_1.useState)(initialError);
15
14
  const [formError, setFormError] = (0, react_1.useState)({ show: false, message: '' });
@@ -21,8 +20,8 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
21
20
  gap: '16px',
22
21
  alignItems: 'flex-end',
23
22
  paddingBottom: '16px',
24
- }, children: [(0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.schemas || schemaError?.schemas || [], setSelected: async (e) => {
25
- const tables = await (0, ConnectionClient_1.getTablesBySchema)((0, databases_1.formConnectionString)(environmentDetails), e);
23
+ }, children: [(0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.schemas || schemaError?.schemas || [], setSelected: async (e) => {
24
+ const tables = await (0, ConnectionClient_1.getTablesBySchema)(clientId, e);
26
25
  if (tables) {
27
26
  setFormError({ show: false, message: '' });
28
27
  setSchemaError(undefined);
@@ -58,7 +57,7 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
58
57
  });
59
58
  }
60
59
  }, selected: schemaDetails?.selectedFields?.schema || schemaError?.schemaName, label: 'Schema' }), schemaError?.schemas.length === 0 && ((0, jsx_runtime_1.jsx)(primitives_1.ButtonPrimitive, { label: "Re-fetch", onClick: async () => {
61
- const suspectedSchema = await (0, ConnectionClient_1.getSchemaTableInfo)((0, databases_1.formConnectionString)(environmentDetails), 'public');
60
+ const suspectedSchema = await (0, ConnectionClient_1.getSchemaTableInfo)(clientId, 'public', environmentDetails.type);
62
61
  if ('selectedFields' in suspectedSchema) {
63
62
  setSchemaError(undefined);
64
63
  setSchemaDetails(suspectedSchema);
@@ -79,8 +78,8 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
79
78
  gap: '20px',
80
79
  justifyContent: 'space-between',
81
80
  marginTop: '8px',
82
- }, children: [(0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.tables || [], setSelected: async (e) => {
83
- const columns = await (0, ConnectionClient_1.getTableInfo)((0, databases_1.formConnectionString)(environmentDetails), schemaDetails?.selectedFields?.schema, e);
81
+ }, children: [(0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.tables || [], setSelected: async (e) => {
82
+ const columns = await (0, ConnectionClient_1.getTableInfo)(clientId, schemaDetails?.selectedFields?.schema, e);
84
83
  setSchemaDetails({
85
84
  ...schemaDetails,
86
85
  columns: columns.columns,
@@ -91,10 +90,10 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
91
90
  table: e,
92
91
  },
93
92
  });
94
- }, selected: schemaDetails?.selectedFields?.table, label: 'Organization table' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.columns || [], setSelected: async (e) => {
95
- const fkStrings = await (0, ConnectionClient_1.getFKInfo)((0, databases_1.formConnectionString)(environmentDetails), schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, e);
93
+ }, selected: schemaDetails?.selectedFields?.table, label: 'Organization table' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.columns || [], setSelected: async (e) => {
94
+ const fkStrings = await (0, ConnectionClient_1.getFKInfo)(clientId, schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, e);
96
95
  if (schemaDetails?.selectedFields.customerNameField) {
97
- const organizations = await (0, ConnectionClient_1.getOrgInfo)((0, databases_1.formConnectionString)(environmentDetails), schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, e, schemaDetails?.selectedFields.customerNameField);
96
+ const organizations = await (0, ConnectionClient_1.getOrgInfo)(clientId, schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, e, schemaDetails?.selectedFields.customerNameField);
98
97
  setSchemaDetails({
99
98
  ...schemaDetails,
100
99
  organizations: organizations,
@@ -112,9 +111,9 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
112
111
  organizationIdField: e,
113
112
  },
114
113
  });
115
- }, selected: schemaDetails?.selectedFields?.organizationIdField, label: 'Organization ID field' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.columns || [], setSelected: async (e) => {
114
+ }, selected: schemaDetails?.selectedFields?.organizationIdField, label: 'Organization ID field' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.columns || [], setSelected: async (e) => {
116
115
  if (schemaDetails?.selectedFields.organizationIdField) {
117
- const organizations = await (0, ConnectionClient_1.getOrgInfo)((0, databases_1.formConnectionString)(environmentDetails), schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, schemaDetails?.selectedFields.organizationIdField, e);
116
+ const organizations = await (0, ConnectionClient_1.getOrgInfo)(clientId, schemaDetails?.selectedFields?.schema, schemaDetails?.selectedFields?.table, schemaDetails?.selectedFields.organizationIdField, e);
118
117
  setSchemaDetails({
119
118
  ...schemaDetails,
120
119
  organizations: organizations,
@@ -133,7 +132,7 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
133
132
  },
134
133
  });
135
134
  }
136
- }, selected: schemaDetails?.selectedFields?.customerNameField, label: 'Organization name field' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.organizations?.map((orgObj) => orgObj.name) ||
135
+ }, selected: schemaDetails?.selectedFields?.customerNameField, label: 'Organization name field' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.organizations?.map((orgObj) => orgObj.name) ||
137
136
  [], setSelected: async (e) => {
138
137
  const orgObj = schemaDetails?.organizations?.find((orgObj) => orgObj.name === e);
139
138
  setSchemaDetails({
@@ -143,7 +142,7 @@ function ConnectSchema({ containerStyle, header1Style, header2Style, allSchemaIn
143
142
  defaultOrg: orgObj,
144
143
  },
145
144
  });
146
- }, selected: schemaDetails?.selectedFields?.defaultOrg?.name, label: 'Default organization' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { items: schemaDetails?.foreignKeys || [], setSelected: async (e) => {
145
+ }, selected: schemaDetails?.selectedFields?.defaultOrg?.name, label: 'Default organization' }), (0, jsx_runtime_1.jsx)(DropDownMenuWithLabel_1.default, { parentRef: parentRef, items: schemaDetails?.foreignKeys || [], setSelected: async (e) => {
147
146
  setSchemaDetails({
148
147
  ...schemaDetails,
149
148
  selectedFields: {
@@ -2,7 +2,7 @@ import { CSSProperties } from 'react';
2
2
  import { ColumnsByTable } from '../../utils/table';
3
3
  import { SchemaDetails } from '../../utils/schema';
4
4
  import { ConnectionType } from '../../utils/databases';
5
- export default function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByTable, environmentDetails, allSchemaInfo, domainName, completeOnboarding, }: {
5
+ export default function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByTable, environmentDetails, allSchemaInfo, domainName, completeOnboarding, clientId, state, }: {
6
6
  containerStyle?: CSSProperties;
7
7
  header1Style?: CSSProperties;
8
8
  header2Style?: CSSProperties;
@@ -11,5 +11,14 @@ export default function CreateSQLViews({ containerStyle, header1Style, header2St
11
11
  allSchemaInfo?: SchemaDetails;
12
12
  domainName: string | undefined;
13
13
  completeOnboarding: (client: any) => void;
14
+ clientId: string;
15
+ state: any;
16
+ }): import("react/jsx-runtime").JSX.Element;
17
+ export declare function ForeignKeyModal({ isOpen, setIsOpen, override, foreignKey, tableName, }: {
18
+ isOpen: boolean;
19
+ setIsOpen: (e: boolean) => void;
20
+ override: (e: boolean) => Promise<void>;
21
+ foreignKey: string | undefined;
22
+ tableName: string | undefined;
14
23
  }): import("react/jsx-runtime").JSX.Element;
15
24
  //# sourceMappingURL=CreateSqlViews.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateSqlViews.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/CreateSqlViews.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAa3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAG7E,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,kBAAkB,GACnB,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,kBAAkB,CAAC,EAAE,cAAc,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kBAAkB,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;CAC3C,2CA8VA"}
1
+ {"version":3,"file":"CreateSqlViews.d.ts","sourceRoot":"","sources":["../../../../src/forms/client_onboard/CreateSqlViews.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAa3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAK7E,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,KAAK,GACN,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,kBAAkB,CAAC,EAAE,cAAc,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kBAAkB,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,GAAG,CAAC;CACZ,2CAiWA;AAED,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,SAAS,EACT,QAAQ,EACR,UAAU,EACV,SAAS,GACV,EAAE;IACD,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAChC,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,2CAiDA"}
@@ -3,14 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ForeignKeyModal = void 0;
6
7
  const jsx_runtime_1 = require("react/jsx-runtime");
7
8
  const react_1 = require("react");
8
9
  const primitives_1 = require("../../primitives");
9
- const react_2 = require("@quillsql/react");
10
10
  const ConnectionClient_1 = require("../../api/ConnectionClient");
11
- const databases_1 = require("../../utils/databases");
12
11
  const SqlViewTile_1 = __importDefault(require("../../components/SqlViewTile"));
13
- function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByTable, environmentDetails, allSchemaInfo, domainName, completeOnboarding, }) {
12
+ const SqlTextEditor_1 = __importDefault(require("../../components/SqlTextEditor"));
13
+ const react_2 = require("@quillsql/react");
14
+ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByTable, environmentDetails, allSchemaInfo, domainName, completeOnboarding, clientId, state, }) {
14
15
  const [selectedTable, setSelectedTable] = (0, react_1.useState)(undefined);
15
16
  const [queryInfo, setQueryInfo] = (0, react_1.useState)({
16
17
  name: '',
@@ -28,7 +29,7 @@ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByT
28
29
  const addSqlView = async (override) => {
29
30
  const results = await (0, ConnectionClient_1.createSQLView)(environmentDetails, allSchemaInfo, columnsByTable, queryInfo, client, domainName, tableData, sqlTables.map((e) => {
30
31
  return e.name;
31
- }), override);
32
+ }), override, clientId);
32
33
  if (results.throwModal) {
33
34
  setShowFKModal(true);
34
35
  return;
@@ -52,7 +53,6 @@ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByT
52
53
  ...containerStyle,
53
54
  display: 'flex',
54
55
  flexDirection: 'column',
55
- overflow: 'hidden',
56
56
  }, id: "create-sql-view", children: [(0, jsx_runtime_1.jsxs)("div", { style: {
57
57
  padding: 20,
58
58
  paddingBottom: 12,
@@ -81,10 +81,12 @@ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByT
81
81
  setAIPrompt(e.target.value);
82
82
  }, placeholder: 'Describe a query...', value: aiPrompt }), (0, jsx_runtime_1.jsx)(primitives_1.ButtonPrimitive, { label: askAIButton, onClick: async () => {
83
83
  setAskAIButton('Loading...');
84
- const results = await (0, ConnectionClient_1.getQueryFromAI)(aiPrompt, columnsByTable);
84
+ const results = await (0, ConnectionClient_1.getQueryFromAiWithConnection)(aiPrompt, clientId, allSchemaInfo?.selectedFields.schema
85
+ ? [allSchemaInfo?.selectedFields.schema]
86
+ : undefined);
85
87
  setQueryInfo({ name: queryInfo.name, query: results });
86
88
  setAskAIButton('Ask AI');
87
- }, style: { width: '90px' } })] }), (0, jsx_runtime_1.jsx)(react_2.SqlTextEditor, { value: queryInfo.query, setValue: (e) => {
89
+ }, style: { width: '90px' } })] }), (0, jsx_runtime_1.jsx)(SqlTextEditor_1.default, { value: queryInfo.query, setValue: (e) => {
88
90
  setQueryInfo({ name: queryInfo.name, query: e });
89
91
  }, containerStyle: { paddingLeft: 16, paddingRight: 16 } }), (0, jsx_runtime_1.jsxs)("div", { style: {
90
92
  display: 'flex',
@@ -96,8 +98,7 @@ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByT
96
98
  height: 70,
97
99
  }, children: [(0, jsx_runtime_1.jsx)(primitives_1.ButtonPrimitive, { label: runQueryButtonLabel, onClick: async () => {
98
100
  setRunQueryButtonLabel('Querying...');
99
- const connectionString = (0, databases_1.formConnectionString)(environmentDetails);
100
- const getSqlResults = await (0, ConnectionClient_1.getSqlViewData)(connectionString, queryInfo.query);
101
+ const getSqlResults = await (0, ConnectionClient_1.getSqlViewData)(clientId, queryInfo.query, environmentDetails.type, state.queryEndpoint);
101
102
  if (!getSqlResults.success) {
102
103
  setErrorInfo({ status: true, msg: getSqlResults.error });
103
104
  }
@@ -115,12 +116,10 @@ function CreateSQLViews({ containerStyle, header1Style, header2Style, columnsByT
115
116
  paddingLeft: 16,
116
117
  paddingRight: 16,
117
118
  height: 'calc(100vh - 515px)',
118
- }, children: [(0, jsx_runtime_1.jsx)(react_2.Table, { rows: tableData.rows, columns: tableData.columns,
119
- // height="400px"
120
- containerStyle: {
119
+ }, children: [(0, jsx_runtime_1.jsx)(react_2.QuillTable, { rows: tableData.rows, columns: tableData.fields, containerStyle: {
121
120
  height: 'calc(100vh - 589px)',
122
121
  width: '100%',
123
- }, showDownloadCsvButton: false }), (0, jsx_runtime_1.jsxs)("div", { style: {
122
+ }, showDownloadCSVButton: true }), (0, jsx_runtime_1.jsxs)("div", { style: {
124
123
  width: '100%',
125
124
  display: 'flex',
126
125
  justifyContent: 'space-between',
@@ -206,3 +205,4 @@ function ForeignKeyModal({ isOpen, setIsOpen, override, foreignKey, tableName, }
206
205
  setIsOpen(false);
207
206
  } })] })] }) }));
208
207
  }
208
+ exports.ForeignKeyModal = ForeignKeyModal;
@@ -0,0 +1,23 @@
1
+ /// <reference types="react" />
2
+ import { ButtonComponentProps, TextInputComponentProps, HeaderProps } from '@quillsql/react';
3
+ import { ColumnsByTable } from '../../utils/table';
4
+ interface CreateEditSqlViewProps {
5
+ containerStyle: React.CSSProperties;
6
+ initialSqlView?: {
7
+ id: string;
8
+ name: string;
9
+ query: string;
10
+ };
11
+ Button?: (props: ButtonComponentProps) => JSX.Element;
12
+ SecondaryButtonComponent?: (props: ButtonComponentProps) => JSX.Element;
13
+ TextInput?: (props: TextInputComponentProps) => JSX.Element;
14
+ LoadingComponent?: () => JSX.Element;
15
+ Header?: (props: HeaderProps) => JSX.Element;
16
+ closeEditView: () => void;
17
+ addEditView: (request: string, query: string, name?: string, id?: string) => void;
18
+ allTableData: ColumnsByTable[];
19
+ schemaIsLoading: boolean;
20
+ }
21
+ export default function CreateEditSqlView({ containerStyle, initialSqlView, closeEditView, addEditView, SecondaryButtonComponent, LoadingComponent, Button, TextInput, Header, allTableData, schemaIsLoading, }: CreateEditSqlViewProps): JSX.Element;
22
+ export {};
23
+ //# sourceMappingURL=CreateEditSqlView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateEditSqlView.d.ts","sourceRoot":"","sources":["../../../../src/forms/sql_views/CreateEditSqlView.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,oBAAoB,EAEpB,uBAAuB,EACvB,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AAwBzB,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAK3D,UAAU,sBAAsB;IAC9B,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,cAAc,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;IACtD,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;IAExE,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,GAAG,CAAC,OAAO,CAAC;IAC5D,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IACrC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,GAAG,CAAC,OAAO,CAAC;IAC7C,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,WAAW,EAAE,CACX,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,EAAE,CAAC,EAAE,MAAM,KACR,IAAI,CAAC;IACV,YAAY,EAAE,cAAc,EAAE,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,wBAAwB,EACxB,gBAA2C,EAC3C,MAAuB,EACvB,SAA6B,EAC7B,MAAuB,EACvB,YAAY,EACZ,eAAe,GAChB,EAAE,sBAAsB,GAAG,GAAG,CAAC,OAAO,CAuStC"}
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_1 = require("@quillsql/react");
8
+ const react_2 = require("react");
9
+ const AdminProvider_1 = require("../../AdminProvider");
10
+ const ConnectionClient_1 = require("../../api/ConnectionClient");
11
+ const SqlTextEditor_1 = __importDefault(require("../../components/SqlTextEditor"));
12
+ const UiComponents_1 = require("../../components/UiComponents");
13
+ const react_3 = require("@quillsql/react");
14
+ const CreateSqlViews_1 = require("../client_onboard/CreateSqlViews");
15
+ const DynamicBanner_1 = __importDefault(require("../../components/DynamicBanner"));
16
+ function CreateEditSqlView({ containerStyle, initialSqlView, closeEditView, addEditView, SecondaryButtonComponent, LoadingComponent = () => (0, jsx_runtime_1.jsx)(UiComponents_1.LoadingSpinner, {}), Button = UiComponents_1.MemoizedButton, TextInput = UiComponents_1.MemoizedTextInput, Header = UiComponents_1.MemoizedHeader, allTableData, schemaIsLoading, }) {
17
+ const [name, setName] = (0, react_2.useState)(initialSqlView?.name || '');
18
+ const [editViewQuery, setEditViewQuery] = (0, react_2.useState)(initialSqlView?.query || '');
19
+ const [ranViewQuery, setRanViewQuery] = (0, react_2.useState)(initialSqlView?.query || '');
20
+ const [askAIButton, setAskAIButton] = (0, react_2.useState)('Ask AI');
21
+ const [aiPrompt, setAIPrompt] = (0, react_2.useState)('');
22
+ const [runQueryButtonLabel, setRunQueryButtonLabel] = (0, react_2.useState)('Run query');
23
+ const [viewAddable, setViewAddable] = (0, react_2.useState)(false);
24
+ const [showFKModal, setShowFKModal] = (0, react_2.useState)(false);
25
+ const [overrideFKCheck, setOverrideFKCheck] = (0, react_2.useState)(false);
26
+ const [isLoading, setIsLoading] = (0, react_2.useState)(false);
27
+ const [tableSearchQuery, setTableSearchQuery] = (0, react_2.useState)('');
28
+ const [displayedTableData, setDisplayedTableData] = (0, react_2.useState)(allTableData);
29
+ const [errorInfo, setErrorInfo] = (0, react_2.useState)({ show: false, message: '' });
30
+ const [tableData, setTableData] = (0, react_2.useState)(undefined);
31
+ const { state, dispatch } = (0, AdminProvider_1.useAdmin)();
32
+ const addEditSqlView = async (override = false) => {
33
+ if (!override &&
34
+ tableData &&
35
+ !tableData.fields.find((col) => col.name === state.client.customerFieldName.replaceAll('"', ''))) {
36
+ setShowFKModal(true);
37
+ return;
38
+ }
39
+ addEditView(initialSqlView ? 'edit' : 'add', ranViewQuery, name, initialSqlView ? initialSqlView.id : undefined);
40
+ };
41
+ (0, react_2.useEffect)(() => {
42
+ setDisplayedTableData(allTableData);
43
+ }, [allTableData]);
44
+ const handleRunSqlPrompt = async () => {
45
+ setErrorInfo({ show: false, message: '' });
46
+ setViewAddable(false);
47
+ setAskAIButton('Loading...');
48
+ const results = await (0, ConnectionClient_1.getQueryFromAiWithConnection)(aiPrompt, state.client._id, state.client.schemaNames);
49
+ setOverrideFKCheck(false);
50
+ setEditViewQuery(results);
51
+ setAskAIButton('Ask AI');
52
+ };
53
+ const handleRunQuery = async () => {
54
+ const query = editViewQuery;
55
+ // If this query has a limit at the end alert the user
56
+ if (query.toLowerCase().includes(' limit ')) {
57
+ setErrorInfo({
58
+ show: true,
59
+ message: 'Error: Please remove the limit on you query.',
60
+ });
61
+ return;
62
+ }
63
+ setViewAddable(false);
64
+ setErrorInfo({ show: false, message: '' });
65
+ setTableData(undefined);
66
+ setIsLoading(true);
67
+ setRunQueryButtonLabel('Querying...');
68
+ setOverrideFKCheck(false);
69
+ if (editViewQuery.length === 0) {
70
+ setErrorInfo({ show: true, message: 'Error: Please enter a query.' });
71
+ setRunQueryButtonLabel('Run query');
72
+ return;
73
+ }
74
+ const resp = await (0, ConnectionClient_1.getSqlViewData)(state.client._id, query, state.client.databaseType, state.queryEndpoint);
75
+ if (!resp.success) {
76
+ setErrorInfo({ show: true, message: resp.error });
77
+ setTableData(undefined);
78
+ setViewAddable(false);
79
+ setRunQueryButtonLabel('Run query');
80
+ setIsLoading(false);
81
+ return;
82
+ }
83
+ setRunQueryButtonLabel('Run query');
84
+ setErrorInfo({ show: false, message: '' });
85
+ setTableData(resp);
86
+ setViewAddable(true);
87
+ setRanViewQuery(query);
88
+ setIsLoading(false);
89
+ };
90
+ return ((0, jsx_runtime_1.jsx)("div", { style: {
91
+ ...containerStyle,
92
+ gap: 6,
93
+ height: 'calc(100vh - 188px)',
94
+ }, children: (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', height: '100%', flexDirection: 'column' }, children: [(0, jsx_runtime_1.jsx)(DynamicBanner_1.default, { header: initialSqlView
95
+ ? `Edit "${initialSqlView.name}" view`
96
+ : 'Create SQL View', message: initialSqlView
97
+ ? `You are currently editing the '${initialSqlView.name}' sql view.`
98
+ : '', onExit: closeEditView, style: {
99
+ display: 'flex',
100
+ paddingTop: '0.625rem',
101
+ paddingBottom: '0.625rem',
102
+ paddingLeft: '24px',
103
+ paddingRight: '24px',
104
+ alignItems: 'center',
105
+ backgroundColor: initialSqlView ? '#111827' : '#ffffff',
106
+ } }), (0, jsx_runtime_1.jsxs)("div", { style: {
107
+ width: '100%',
108
+ display: 'flex',
109
+ height: '100%',
110
+ flexDirection: 'row',
111
+ paddingTop: '20px',
112
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { style: {
113
+ display: 'flex',
114
+ flexDirection: 'column',
115
+ gap: 20,
116
+ }, children: [(0, jsx_runtime_1.jsx)("div", { style: {
117
+ paddingLeft: '20px',
118
+ paddingRight: '30px',
119
+ }, children: (0, jsx_runtime_1.jsx)(TextInput, { placeholder: "Search...", onChange: (e) => {
120
+ setTableSearchQuery(e);
121
+ setDisplayedTableData(allTableData.filter((table) => table.tableName
122
+ .toLowerCase()
123
+ .includes(e.toLowerCase().trim())));
124
+ }, value: tableSearchQuery, id: 'edit-name', width: "100%" }) }), (0, jsx_runtime_1.jsx)(react_3.SchemaListComponent, { schema: displayedTableData, theme: state.theme, LoadingComponent: LoadingComponent, loading: schemaIsLoading, width: '400px' })] }), (0, jsx_runtime_1.jsxs)("div", { style: {
125
+ display: 'flex',
126
+ gap: 20,
127
+ flexDirection: 'column',
128
+ width: 'calc(100% - 250px)',
129
+ height: '100%',
130
+ overflowX: 'hidden',
131
+ paddingRight: '24px',
132
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { style: {
133
+ display: 'flex',
134
+ flexDirection: 'row',
135
+ alignItems: 'flex-start',
136
+ justifyContent: 'space-between',
137
+ gap: 20,
138
+ width: '100%',
139
+ }, children: [(0, jsx_runtime_1.jsx)(TextInput, { onChange: (e) => {
140
+ setAIPrompt(e);
141
+ }, placeholder: 'Describe a query...', value: aiPrompt, id: 'ai-prompt', width: '95%' }), (0, jsx_runtime_1.jsx)(Button, { label: askAIButton, onClick: handleRunSqlPrompt, width: "100px" })] }), (0, jsx_runtime_1.jsx)(SqlTextEditor_1.default, { value: editViewQuery, setValue: (e) => {
142
+ setErrorInfo({ show: false, message: '' });
143
+ setEditViewQuery(e);
144
+ } }), (0, jsx_runtime_1.jsx)("div", { style: { width: '200px' }, children: (0, jsx_runtime_1.jsx)(Button, { label: runQueryButtonLabel, onClick: handleRunQuery }) }), errorInfo.show ? ((0, jsx_runtime_1.jsx)("div", { style: {
145
+ fontSize: 15,
146
+ fontWeight: '400',
147
+ }, children: (0, jsx_runtime_1.jsx)("div", { style: {
148
+ padding: 30,
149
+ background: 'rgba(0,0,0,0.02)',
150
+ display: 'inline-block',
151
+ flex: 0,
152
+ borderRadius: 6,
153
+ }, children: errorInfo.message }) })) : null, isLoading && ((0, jsx_runtime_1.jsx)("div", { style: {
154
+ height: 'calc(100vh - 589px)',
155
+ width: '100%',
156
+ display: 'flex',
157
+ justifyContent: 'center',
158
+ alignItems: 'center',
159
+ }, children: (0, jsx_runtime_1.jsx)(LoadingComponent, {}) })), tableData && ((0, jsx_runtime_1.jsx)(react_1.QuillTable, { rows: tableData.rows, columns: tableData.fields, containerStyle: { height: '360px' } })), viewAddable && ((0, jsx_runtime_1.jsx)("div", { style: { width: '200px' }, children: (0, jsx_runtime_1.jsx)(Button, { label: `${initialSqlView ? 'Save changes' : 'Create view'}`, onClick: () => addEditSqlView(false) }) }))] })] }), (0, jsx_runtime_1.jsx)(CreateSqlViews_1.ForeignKeyModal, { isOpen: showFKModal, setIsOpen: setShowFKModal, override: addEditSqlView, foreignKey: state.client.customerFieldName, tableName: state.client.customerTableName })] }) }));
160
+ }
161
+ exports.default = CreateEditSqlView;
@@ -26,7 +26,7 @@ function NewDashboardModal({ isOpen, client, setIsOpen, onSave, ModalComponent,
26
26
  const [selectedTable, setSelectedTable] = (0, react_1.useState)(null);
27
27
  const [field, setField] = (0, react_1.useState)('');
28
28
  (0, react_1.useEffect)(() => {
29
- if (state.tables.length) {
29
+ if (state.tables?.length) {
30
30
  setSelectedTable(state.tables[0]);
31
31
  setField(state.tables[0].columns.map((elem) => elem.name)[0]);
32
32
  }
@@ -6,6 +6,7 @@ interface TextInputPrimitiveProps {
6
6
  placeholder?: string;
7
7
  theme?: QuillTheme;
8
8
  disabled?: boolean;
9
+ width?: string;
9
10
  }
10
11
  declare const TextInputPrimitive: React.FC<TextInputPrimitiveProps>;
11
12
  export default TextInputPrimitive;
@@ -1 +1 @@
1
- {"version":3,"file":"TextInputPrimitive.d.ts","sourceRoot":"","sources":["../../../src/primitives/TextInputPrimitive.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAyB,MAAM,UAAU,CAAC;AAE7D,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAkCzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"TextInputPrimitive.d.ts","sourceRoot":"","sources":["../../../src/primitives/TextInputPrimitive.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAyB,MAAM,UAAU,CAAC;AAE7D,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAmCzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
4
  const Admin_1 = require("../Admin");
5
- const TextInputPrimitive = ({ onChange, value, placeholder, theme = Admin_1.theme, disabled = false, }) => {
5
+ const TextInputPrimitive = ({ onChange, value, placeholder, theme = Admin_1.theme, disabled = false, width = '250px', }) => {
6
6
  return ((0, jsx_runtime_1.jsx)("input", { style: {
7
7
  display: 'flex',
8
8
  flexDirection: 'row',
@@ -11,7 +11,7 @@ const TextInputPrimitive = ({ onChange, value, placeholder, theme = Admin_1.them
11
11
  paddingRight: '12px',
12
12
  fontWeight: 'medium',
13
13
  height: 38,
14
- minWidth: 250,
14
+ minWidth: width,
15
15
  boxShadow: '0 1px 2px 0 rgba(0,0,0,.05)',
16
16
  width: '100%',
17
17
  backgroundColor: theme?.backgroundColor || 'white',
@@ -1 +1 @@
1
- {"version":3,"file":"CreateEnvironment.d.ts","sourceRoot":"","sources":["../../../src/public_components/CreateEnvironment.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAuClE,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,0BAA0B,EAC1B,cAAc,GACf,EAAE;IACD,0BAA0B,CAAC,EAAE,MAAM,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,aAAa,CAAC;CAChC,2CA0LA"}
1
+ {"version":3,"file":"CreateEnvironment.d.ts","sourceRoot":"","sources":["../../../src/public_components/CreateEnvironment.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAuClE,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,0BAA0B,EAC1B,cAAc,GACf,EAAE;IACD,0BAA0B,CAAC,EAAE,MAAM,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,aAAa,CAAC;CAChC,2CAqMA"}
@@ -1,10 +1,33 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
29
  const jsx_runtime_1 = require("react/jsx-runtime");
7
- const react_1 = require("react");
30
+ const react_1 = __importStar(require("react"));
8
31
  const ConnectDatabase_1 = __importDefault(require("../forms/client_onboard/ConnectDatabase"));
9
32
  const StepDisplay_1 = __importDefault(require("../components/StepDisplay"));
10
33
  const ConnectSchema_1 = __importDefault(require("../forms/client_onboard/ConnectSchema"));
@@ -25,6 +48,7 @@ const header2Style = {
25
48
  marginBottom: '6px',
26
49
  };
27
50
  function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
51
+ const parentRef = react_1.default.useRef(null);
28
52
  const { state, dispatch } = (0, AdminProvider_1.useAdmin)();
29
53
  const domainName = state.domainName;
30
54
  const [createEnvSteps, setCreateEnvSteps] = (0, react_1.useState)({
@@ -44,6 +68,7 @@ function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
44
68
  open: false,
45
69
  },
46
70
  });
71
+ const [clientId, setClientId] = (0, react_1.useState)('');
47
72
  const [environmentDetails, setEnvironmentDetails] = (0, react_1.useState)((0, databases_1.getDatabaseConnectionFormat)('PostgreSQL'));
48
73
  const [allSchemaInfo, setAllSchemaInfo] = (0, react_1.useState)(undefined);
49
74
  const [initialError, setInitialError] = (0, react_1.useState)();
@@ -75,7 +100,7 @@ function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
75
100
  console.warn('navigateToDashboardManager is undefined');
76
101
  }
77
102
  }, [navigateToDashboardManager]);
78
- return ((0, jsx_runtime_1.jsxs)("div", { style: {
103
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: parentRef, style: {
79
104
  ...containerStyle,
80
105
  display: 'flex',
81
106
  flexDirection: 'column',
@@ -89,22 +114,23 @@ function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
89
114
  borderRadius: 6,
90
115
  border: '1px solid #e7e7e7',
91
116
  boxShadow: '0px 1px 12px rgba(0, 0, 0, 0.07)',
92
- }, header1Style: header1Style, header2Style: header2Style, environmentDetails: environmentDetails, setEnvironmentDetails: (connectionInfo, initialSchemaRequest, initialSchemaRequestError) => {
117
+ }, header1Style: header1Style, header2Style: header2Style, environmentDetails: environmentDetails, setEnvironmentDetails: (connectionInfo, initialSchemaRequest, initialSchemaRequestError, clientId) => {
93
118
  setEnvironmentDetails(connectionInfo);
94
119
  if (initialSchemaRequestError) {
95
120
  setInitialError(initialSchemaRequestError);
96
121
  }
97
122
  if (initialSchemaRequest) {
123
+ setClientId(clientId);
98
124
  setAllSchemaInfo(initialSchemaRequest);
99
125
  }
100
126
  const updatedSteps = { ...createEnvSteps };
101
127
  updatedSteps.connectDB.completed = true;
102
128
  setCreateEnvSteps(updatedSteps);
103
129
  openStep('connectSchema');
104
- } })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Connect Database", completed: createEnvSteps.connectDB.completed, header1Style: header1Style, onClick: () => {
130
+ }, envClientId: clientId })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Connect Database", completed: createEnvSteps.connectDB.completed, header1Style: header1Style, onClick: () => {
105
131
  openStep('connectDB');
106
132
  setInitialError(undefined);
107
- } })), createEnvSteps.connectSchema.open ? ((0, jsx_runtime_1.jsx)(ConnectSchema_1.default, { containerStyle: {
133
+ } })), createEnvSteps.connectSchema.open ? ((0, jsx_runtime_1.jsx)(ConnectSchema_1.default, { parentRef: parentRef, containerStyle: {
108
134
  padding: '24px',
109
135
  // width: '50%',
110
136
  borderRadius: 6,
@@ -114,12 +140,12 @@ function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
114
140
  }, header1Style: header1Style, header2Style: header2Style, propogateSchemaDetails: async (schemaDetails) => {
115
141
  const updatedSteps = { ...createEnvSteps };
116
142
  updatedSteps.connectSchema.completed = true;
117
- const tableSchemas = await (0, ConnectionClient_1.getTableSchema)((0, databases_1.formConnectionString)(environmentDetails), schemaDetails?.tables);
143
+ const tableSchemas = await (0, ConnectionClient_1.getTableSchema)(clientId, schemaDetails?.tables, schemaDetails?.selectedFields?.schema);
118
144
  setColumnsByTable(tableSchemas);
119
145
  setCreateEnvSteps(updatedSteps);
120
146
  setAllSchemaInfo(schemaDetails);
121
147
  openStep('createSQLViews');
122
- }, allSchemaInfo: allSchemaInfo, environmentDetails: environmentDetails, initialError: initialError })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Connect Schema", completed: createEnvSteps.connectSchema.completed, header1Style: header1Style, onClick: () => {
148
+ }, allSchemaInfo: allSchemaInfo, environmentDetails: environmentDetails, initialError: initialError, clientId: clientId })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Connect Schema", completed: createEnvSteps.connectSchema.completed, header1Style: header1Style, onClick: () => {
123
149
  openStep('connectSchema');
124
150
  setInitialError(undefined);
125
151
  } })), createEnvSteps.createSQLViews.open ? ((0, jsx_runtime_1.jsx)(CreateSqlViews_1.default, { containerStyle: {
@@ -136,6 +162,6 @@ function CreateEnvironment({ navigateToDashboardManager, containerStyle, }) {
136
162
  if (navigateToDashboardManager) {
137
163
  navigateToDashboardManager();
138
164
  }
139
- }, domainName: domainName })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Create SQL Views", completed: false, header1Style: header1Style }))] }));
165
+ }, domainName: domainName, clientId: clientId, state: state })) : ((0, jsx_runtime_1.jsx)(StepDisplay_1.default, { label: "Create SQL Views", completed: false, header1Style: header1Style }))] }));
140
166
  }
141
167
  exports.default = CreateEnvironment;
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardBuilder.d.ts","sourceRoot":"","sources":["../../../src/public_components/DashboardBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,MAAM,OAAO,CAAC;AAQ5E,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,0BAA0B,EAC1B,cAAc,EACd,SAAgB,GACjB,EAAE;IACD,0BAA0B,CAAC,EAAE,MAAM,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,2CAmSA"}
1
+ {"version":3,"file":"DashboardBuilder.d.ts","sourceRoot":"","sources":["../../../src/public_components/DashboardBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,MAAM,OAAO,CAAC;AAS5E,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,0BAA0B,EAC1B,cAAc,EACd,SAAgB,GACjB,EAAE;IACD,0BAA0B,CAAC,EAAE,MAAM,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,2CA0TA"}