@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
@@ -0,0 +1,11 @@
1
+ import { CSSProperties } from 'react';
2
+ interface DynamicBannerProps {
3
+ header: string;
4
+ message: string;
5
+ onExit: () => void;
6
+ style: CSSProperties;
7
+ fontColor?: string;
8
+ }
9
+ export default function DynamicBanner({ header, message, onExit, style, fontColor, }: DynamicBannerProps): JSX.Element | null;
10
+ export {};
11
+ //# sourceMappingURL=DynamicBanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DynamicBanner.d.ts","sourceRoot":"","sources":["../../../src/components/DynamicBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,UAAU,kBAAkB;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,MAAM,EACN,OAAO,EACP,MAAM,EACN,KAAK,EACL,SAAS,GACV,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAiCzC"}
@@ -0,0 +1,22 @@
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 XMarkIcon_1 = __importDefault(require("../icons/XMarkIcon"));
8
+ function DynamicBanner({ header, message, onExit, style, fontColor, }) {
9
+ return ((0, jsx_runtime_1.jsxs)("div", { id: "quill-edit-banner", style: {
10
+ width: '100vw',
11
+ height: 70,
12
+ minHeight: 70,
13
+ display: 'flex',
14
+ flexDirection: 'row',
15
+ alignItems: 'center',
16
+ justifyContent: 'space-between',
17
+ paddingLeft: 20,
18
+ paddingRight: 20,
19
+ borderBottom: '1px solid #e7e7e7',
20
+ }, children: [(0, jsx_runtime_1.jsx)("h1", { style: { fontSize: 21, fontWeight: 600, color: '#212121' }, children: header }), (0, jsx_runtime_1.jsx)("button", { type: "button", onClick: onExit, style: { padding: '6px', margin: '-6px' }, children: (0, jsx_runtime_1.jsx)(XMarkIcon_1.default, { style: { width: '20px', height: '20px' }, fill: fontColor, "aria-hidden": "true" }) })] }));
21
+ }
22
+ exports.default = DynamicBanner;
@@ -1 +1 @@
1
- {"version":3,"file":"EnvSelectPopover.d.ts","sourceRoot":"","sources":["../../../src/components/EnvSelectPopover.tsx"],"names":[],"mappings":"AAIA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,SAAS,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,OAAO,EACP,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,GACZ,EAAE,qBAAqB,2CAsTvB"}
1
+ {"version":3,"file":"EnvSelectPopover.d.ts","sourceRoot":"","sources":["../../../src/components/EnvSelectPopover.tsx"],"names":[],"mappings":"AAIA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,SAAS,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,OAAO,EACP,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,GACZ,EAAE,qBAAqB,2CAqTvB"}
@@ -208,7 +208,6 @@ function EnvSelectPopover({ clients, setClient, client, theme, environment, setE
208
208
  ? () => handleItemClick(item)
209
209
  : undefined, style: {
210
210
  ...clientStyles,
211
- visibility: showPromote ? 'visible' : 'hidden',
212
211
  }, children: item.name }), client && client._id === item._id && ((0, jsx_runtime_1.jsxs)("div", { onClick: (e) => handlePromoteClick(e, item), style: {
213
212
  ...promoteStyles,
214
213
  visibility: showPromote ? 'visible' : 'hidden',
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  interface OrgSelectProps {
2
3
  parentRef: any;
3
4
  environment: string;
@@ -7,6 +8,28 @@ interface OrgSelectProps {
7
8
  organizationId: string;
8
9
  setOrganizationId: (organizationId: string | null) => void;
9
10
  }
11
+ interface PopoverComponentProps {
12
+ children: any;
13
+ onClose?: () => void;
14
+ parentRef?: any;
15
+ style?: any;
16
+ onClick?: (e: React.MouseEvent) => void;
17
+ label?: string;
18
+ showTrigger?: boolean;
19
+ isOpen: boolean;
20
+ setIsOpen: (isOpen: boolean) => void;
21
+ }
22
+ export declare function Popover({ onClose, parentRef, children, style, onClick, label, showTrigger, isOpen, setIsOpen, }: PopoverComponentProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare const ListboxTextInput: ({ value, onChange, placeholder, id, }: {
24
+ value: string;
25
+ onChange: (e: string) => void;
26
+ placeholder: string;
27
+ id: string;
28
+ }) => import("react/jsx-runtime").JSX.Element;
10
29
  export default function OrgSelect({ environment, setEnvironment, organizations, theme, organizationId, setOrganizationId, parentRef, }: OrgSelectProps): import("react/jsx-runtime").JSX.Element;
30
+ export declare function ListboxRow({ item, setSelected, }: {
31
+ item: any;
32
+ setSelected?: (item: any) => void;
33
+ }): import("react/jsx-runtime").JSX.Element;
11
34
  export {};
12
35
  //# sourceMappingURL=OrgSelect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrgSelect.d.ts","sourceRoot":"","sources":["../../../src/components/OrgSelect.tsx"],"names":[],"mappings":"AAWA,UAAU,cAAc;IACtB,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,KAAK,EAAE,GAAG,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5D;AA0ND,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,WAAW,EACX,cAAc,EACd,aAAa,EACb,KAAK,EACL,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,EAAE,cAAc,2CAiGhB"}
1
+ {"version":3,"file":"OrgSelect.d.ts","sourceRoot":"","sources":["../../../src/components/OrgSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAKf,UAAU,cAAc;IACtB,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,KAAK,EAAE,GAAG,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5D;AAED,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,GAAG,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACtC;AAsBD,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,KAAU,EACV,OAAO,EACP,KAAK,EACL,WAAkB,EAClB,MAAM,EACN,SAAS,GACV,EAAE,qBAAqB,2CAqGvB;AAED,eAAO,MAAM,gBAAgB;WAMpB,MAAM;kBACC,MAAM,KAAK,IAAI;iBAChB,MAAM;QACf,MAAM;6CA0DX,CAAC;AAwCF,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,WAAW,EACX,cAAc,EACd,aAAa,EACb,KAAK,EACL,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,EAAE,cAAc,2CAoGhB;AAED,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,WAAW,GACZ,EAAE;IACD,IAAI,EAAE,GAAG,CAAC;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACnC,2CA0CA"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ListboxRow = exports.ListboxTextInput = exports.Popover = void 0;
3
4
  const jsx_runtime_1 = require("react/jsx-runtime");
4
5
  const react_1 = require("react");
5
6
  const icons_1 = require("../icons");
@@ -20,7 +21,7 @@ const useOnClickOutside = (ref, handler) => {
20
21
  };
21
22
  }, [ref, handler]);
22
23
  };
23
- function MemoizedPopover({ onClose, parentRef, children, style = {}, onClick, label, showTrigger = true, isOpen, setIsOpen, }) {
24
+ function Popover({ onClose, parentRef, children, style = {}, onClick, label, showTrigger = true, isOpen, setIsOpen, }) {
24
25
  const modalRef = (0, react_1.useRef)(null);
25
26
  useOnClickOutside(modalRef, (e) => {
26
27
  // Exclude click on trigger button (e.g. Dropdown Button) from outside click handler
@@ -64,8 +65,6 @@ function MemoizedPopover({ onClose, parentRef, children, style = {}, onClick, la
64
65
  height: 38,
65
66
  background: 'white',
66
67
  color: '#384151',
67
- // boxShadow: "0 1px 2px 0 rgba(0,0,0,.05)",
68
- // fontFamily: theme.fontFamily,
69
68
  fontWeight: 500,
70
69
  fontSize: 14,
71
70
  position: 'relative',
@@ -94,7 +93,8 @@ function MemoizedPopover({ onClose, parentRef, children, style = {}, onClick, la
94
93
  ...style,
95
94
  }, children: children }) }))] }));
96
95
  }
97
- const MemoizedTextInput = ({ value, onChange, placeholder, id, }) => {
96
+ exports.Popover = Popover;
97
+ const ListboxTextInput = ({ value, onChange, placeholder, id, }) => {
98
98
  return ((0, jsx_runtime_1.jsxs)("div", { style: {
99
99
  position: 'relative',
100
100
  display: 'flex',
@@ -120,6 +120,43 @@ const MemoizedTextInput = ({ value, onChange, placeholder, id, }) => {
120
120
  outline: none;
121
121
  }` }), (0, jsx_runtime_1.jsx)("div", { style: { width: 6 } }), (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "rgba(56, 65, 81, 0.7)", height: "16", width: "16", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", d: "M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z", clipRule: "evenodd" }) }), (0, jsx_runtime_1.jsx)("input", { id: id, className: "quill-text-input", type: "text", value: value, onChange: (event) => onChange(event.target.value), placeholder: placeholder })] }));
122
122
  };
123
+ exports.ListboxTextInput = ListboxTextInput;
124
+ function castNumberToString(value) {
125
+ if (typeof value === 'number') {
126
+ return value.toString();
127
+ }
128
+ return value;
129
+ }
130
+ function createOrganizationList(organizations) {
131
+ // if capital fields
132
+ if (!organizations || !organizations.length) {
133
+ return [];
134
+ }
135
+ if (organizations[0]['NAME'] && organizations[0]['ID']) {
136
+ return [
137
+ ...organizations.map((org) => {
138
+ const name = org['NAME'];
139
+ const id = org['ID'];
140
+ return {
141
+ name,
142
+ id: castNumberToString(id),
143
+ };
144
+ }),
145
+ { name: 'All Organizations', id: '' },
146
+ ];
147
+ }
148
+ return [
149
+ ...organizations.map((org) => {
150
+ const name = org['name'];
151
+ const id = org['id'];
152
+ return {
153
+ name,
154
+ id: castNumberToString(id),
155
+ };
156
+ }),
157
+ { name: 'All Organizations', id: '' },
158
+ ];
159
+ }
123
160
  function OrgSelect({ environment, setEnvironment, organizations, theme, organizationId, setOrganizationId, parentRef, }) {
124
161
  (0, react_1.useEffect)(() => {
125
162
  setEnvironment(environment);
@@ -127,10 +164,7 @@ function OrgSelect({ environment, setEnvironment, organizations, theme, organiza
127
164
  const { state, dispatch } = (0, AdminProvider_1.useAdmin)();
128
165
  const [isOpen, setIsOpen] = (0, react_1.useState)(false);
129
166
  const [searchQuery, setSearchQuery] = (0, react_1.useState)('');
130
- const dropDownItems = organizations.map((org) => ({
131
- name: org.name,
132
- id: org.id,
133
- }));
167
+ const dropDownItems = (0, react_1.useMemo)(() => createOrganizationList(organizations), [organizations]);
134
168
  const handleSelectOrganization = (selectedItem) => {
135
169
  if (state.activeQuery) {
136
170
  const message = 'Are you sure? Changing organization will exit edit mode and your changes will not be saved.';
@@ -145,10 +179,15 @@ function OrgSelect({ environment, setEnvironment, organizations, theme, organiza
145
179
  const selectedOrganization = dropDownItems.find((item) => item.id === organizationId);
146
180
  const filteredOrganizations = searchQuery === ''
147
181
  ? dropDownItems
148
- : dropDownItems.filter((org) => org.name
149
- .toLowerCase()
150
- .replace(/\s+/g, '')
151
- .includes(searchQuery.toLowerCase().replace(/\s+/g, '')));
182
+ : dropDownItems.filter((org) => {
183
+ if (!org.name) {
184
+ return false;
185
+ }
186
+ return org.name
187
+ .toLowerCase()
188
+ .replace(/\s+/g, '')
189
+ .includes(searchQuery.toLowerCase().replace(/\s+/g, ''));
190
+ });
152
191
  return ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column' }, children: [(0, jsx_runtime_1.jsx)("h1", { style: {
153
192
  fontSize: '14px',
154
193
  paddingTop: '0px',
@@ -156,14 +195,14 @@ function OrgSelect({ environment, setEnvironment, organizations, theme, organiza
156
195
  marginBottom: '4px',
157
196
  fontWeight: '600',
158
197
  color: theme.secondaryTextColor,
159
- }, children: "Organization" }), (0, jsx_runtime_1.jsxs)(MemoizedPopover, { parentRef: parentRef, label: selectedOrganization && selectedOrganization.name, isOpen: isOpen, onClose: () => setIsOpen(false), style: {
198
+ }, children: "Organization" }), (0, jsx_runtime_1.jsxs)(Popover, { parentRef: parentRef, label: selectedOrganization && selectedOrganization.name, isOpen: isOpen, onClose: () => setIsOpen(false), style: {
160
199
  boxSizing: 'border-box',
161
200
  fontSize: 14,
162
201
  // padding: 11,
163
- }, setIsOpen: setIsOpen, onClick: () => console.log(), children: [(0, jsx_runtime_1.jsx)(MemoizedTextInput, { id: "quill-search-bar", placeholder: "Search", value: searchQuery, onChange: setSearchQuery }), (0, jsx_runtime_1.jsx)("div", { style: { height: 9, width: 230, borderTop: '1px solid #e7e7e7' } }), (0, jsx_runtime_1.jsxs)("div", { style: { gap: 2, maxHeight: '50vh' }, children: [filteredOrganizations.map((item, index) => ((0, jsx_runtime_1.jsx)(OrgSelectRow, { setSelected: handleSelectOrganization, item: item }, index))), filteredOrganizations.length === 0 && ((0, jsx_runtime_1.jsx)(OrgSelectRow, { item: { name: 'No organizations found' } }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 8, width: 230 } })] })] }));
202
+ }, setIsOpen: setIsOpen, onClick: () => console.log(), children: [(0, jsx_runtime_1.jsx)(exports.ListboxTextInput, { id: "quill-search-bar", placeholder: "Search", value: searchQuery, onChange: setSearchQuery }), (0, jsx_runtime_1.jsx)("div", { style: { height: 9, width: 230, borderTop: '1px solid #e7e7e7' } }), (0, jsx_runtime_1.jsxs)("div", { style: { gap: 2, maxHeight: '50vh' }, children: [filteredOrganizations.map((item, index) => ((0, jsx_runtime_1.jsx)(ListboxRow, { setSelected: handleSelectOrganization, item: item }, index))), filteredOrganizations.length === 0 && ((0, jsx_runtime_1.jsx)(ListboxRow, { item: { name: 'No organizations found' } }))] }), (0, jsx_runtime_1.jsx)("div", { style: { height: 8, width: 230 } })] })] }));
164
203
  }
165
204
  exports.default = OrgSelect;
166
- function OrgSelectRow({ item, setSelected, }) {
205
+ function ListboxRow({ item, setSelected, }) {
167
206
  return ((0, jsx_runtime_1.jsxs)("div", { onClick: setSelected ? () => setSelected(item) : undefined, className: "quill-org-select", children: [(0, jsx_runtime_1.jsx)("style", { children: `
168
207
  .quill-org-select {
169
208
  background-color: white;
@@ -194,3 +233,4 @@ function OrgSelectRow({ item, setSelected, }) {
194
233
  display: 'block',
195
234
  }, children: item.name })] }));
196
235
  }
236
+ exports.ListboxRow = ListboxRow;
@@ -0,0 +1,7 @@
1
+ import { CSSProperties } from 'react';
2
+ export default function SqlTextEditor({ containerStyle, value, setValue, }: {
3
+ containerStyle?: CSSProperties;
4
+ value: string;
5
+ setValue: (e: string) => void;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=SqlTextEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqlTextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/SqlTextEditor.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AA+B7C,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,cAAc,EACd,KAAK,EACL,QAAQ,GACT,EAAE;IACD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/B,2CAwBA"}
@@ -0,0 +1,44 @@
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 = __importDefault(require("@monaco-editor/react"));
8
+ function defineEditorTheme(monaco) {
9
+ monaco.editor.defineTheme('onedark', {
10
+ base: 'vs',
11
+ inherit: true,
12
+ rules: [
13
+ {
14
+ token: 'comment',
15
+ foreground: '#5d7988',
16
+ fontStyle: 'italic',
17
+ },
18
+ { token: 'constant', foreground: '#e06c75' },
19
+ ],
20
+ colors: {
21
+ 'editor.background': '#F9F9F9',
22
+ },
23
+ });
24
+ }
25
+ function setEditorTheme(_editor, monaco) {
26
+ try {
27
+ monaco.editor.setTheme('onedark');
28
+ }
29
+ catch (e) {
30
+ console.log('ERROR: ', e);
31
+ }
32
+ }
33
+ function SqlTextEditor({ containerStyle, value, setValue, }) {
34
+ return ((0, jsx_runtime_1.jsx)("div", { style: { ...containerStyle }, children: (0, jsx_runtime_1.jsx)(react_1.default, { height: "224px", defaultLanguage: "pgsql", defaultValue: "", value: value, loading: (0, jsx_runtime_1.jsx)("div", {}), options: {
35
+ wordWrap: 'on',
36
+ minimap: {
37
+ enabled: false,
38
+ },
39
+ padding: { top: 16 },
40
+ }, onChange: (query) => {
41
+ setValue(query);
42
+ }, beforeMount: (monaco) => defineEditorTheme(monaco), onMount: setEditorTheme }) }));
43
+ }
44
+ exports.default = SqlTextEditor;
@@ -0,0 +1,119 @@
1
+ export interface Option {
2
+ value: string;
3
+ label: string;
4
+ }
5
+ export interface SelectComponentProps {
6
+ onChange: (value: string) => void;
7
+ value: string;
8
+ options: Option[];
9
+ disabled?: boolean;
10
+ label?: string;
11
+ }
12
+ export interface TextInputComponentProps {
13
+ onChange: (e: any) => void;
14
+ value: string;
15
+ id: string;
16
+ placeholder: string;
17
+ }
18
+ export interface ButtonComponentProps {
19
+ onClick: () => void;
20
+ label: string;
21
+ primary?: boolean;
22
+ }
23
+ export interface TableComponentProps {
24
+ rows: any[];
25
+ columns: any[];
26
+ height: string;
27
+ }
28
+ export interface TextInputComponentProps {
29
+ onChange: (e: any) => void;
30
+ value: string;
31
+ id: string;
32
+ width?: string;
33
+ }
34
+ export interface ModalComponentProps {
35
+ children: any;
36
+ isOpen: boolean;
37
+ onClose?: () => void;
38
+ title?: string;
39
+ setIsOpen: (isOpen: boolean) => void;
40
+ theme?: any;
41
+ }
42
+ export interface HeaderProps {
43
+ children: any;
44
+ }
45
+ export interface LabelProps {
46
+ children: any;
47
+ }
48
+ export interface TextProps {
49
+ children: any;
50
+ }
51
+ export interface DeleteButtonProps {
52
+ onClick: () => void;
53
+ style: any;
54
+ }
55
+ export declare const MemoizedTextInput: ({ value, onChange, placeholder, id, width, }: TextInputComponentProps) => import("react/jsx-runtime").JSX.Element;
56
+ export declare const MemoizedButton: ({ label, onClick, primary, style, width, }: {
57
+ label: any;
58
+ onClick: any;
59
+ primary?: boolean | undefined;
60
+ style?: {} | undefined;
61
+ width?: string | undefined;
62
+ }) => import("react/jsx-runtime").JSX.Element;
63
+ export declare const MemoizedSecondaryButton: ({ label, onClick }: {
64
+ label: any;
65
+ onClick: any;
66
+ }) => import("react/jsx-runtime").JSX.Element;
67
+ export declare const MemoizedSelect: ({ value, onChange, options, disabled, label, }: {
68
+ value: any;
69
+ onChange: any;
70
+ options: any;
71
+ disabled?: boolean | undefined;
72
+ label: any;
73
+ }) => import("react/jsx-runtime").JSX.Element;
74
+ export declare const MemoizedHeader: ({ children }: {
75
+ children: any;
76
+ }) => import("react/jsx-runtime").JSX.Element;
77
+ export declare const MemoizedLabel: ({ children }: {
78
+ children: any;
79
+ }) => import("react/jsx-runtime").JSX.Element;
80
+ export declare const MemoizedText: ({ children }: {
81
+ children: any;
82
+ }) => import("react/jsx-runtime").JSX.Element;
83
+ export interface PopoverComponentProps {
84
+ children: any;
85
+ onClose?: () => void;
86
+ parentRef?: any;
87
+ style?: any;
88
+ onClick?: () => void;
89
+ showTrigger?: boolean;
90
+ isOpen: boolean;
91
+ setIsOpen: (isOpen: boolean) => void;
92
+ }
93
+ export declare function MemoizedPopover({ onClose, parentRef, children, style, onClick, label, showTrigger, isOpen, setIsOpen, }: {
94
+ onClose: any;
95
+ parentRef: any;
96
+ children: any;
97
+ style?: {} | undefined;
98
+ onClick: any;
99
+ label: any;
100
+ showTrigger?: boolean | undefined;
101
+ isOpen: any;
102
+ setIsOpen: any;
103
+ }): import("react/jsx-runtime").JSX.Element;
104
+ export declare function MemoizedModal({ isOpen, onClose, setIsOpen, title, children, theme, }: {
105
+ isOpen: any;
106
+ onClose: any;
107
+ setIsOpen: any;
108
+ title: any;
109
+ children: any;
110
+ theme: any;
111
+ }): import("react/jsx-runtime").JSX.Element | null;
112
+ export declare const MemoizedDeleteButton: ({ onClick, style }: {
113
+ onClick: any;
114
+ style: any;
115
+ }) => import("react/jsx-runtime").JSX.Element;
116
+ export declare const LoadingSpinner: ({ ...props }: {
117
+ [x: string]: any;
118
+ }) => import("react/jsx-runtime").JSX.Element;
119
+ //# sourceMappingURL=UiComponents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}