@quillsql/admin 1.2.4 → 1.2.6

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 (73) hide show
  1. package/lib/Admin.d.ts +83 -27
  2. package/lib/Admin.js +118 -1247
  3. package/lib/Admin.js.map +1 -1
  4. package/lib/AdminProvider.d.ts +103 -0
  5. package/lib/AdminProvider.js +239 -0
  6. package/lib/AdminProvider.js.map +1 -0
  7. package/lib/components/DropDownMenu.d.ts +9 -0
  8. package/lib/components/DropDownMenu.js +38 -0
  9. package/lib/components/DropDownMenu.js.map +1 -0
  10. package/lib/components/EnvSelectPopover.d.ts +12 -0
  11. package/lib/components/EnvSelectPopover.js +147 -0
  12. package/lib/components/EnvSelectPopover.js.map +1 -0
  13. package/lib/components/OrgSelect.d.ts +10 -0
  14. package/lib/components/OrgSelect.js +29 -0
  15. package/lib/components/OrgSelect.js.map +1 -0
  16. package/lib/components/index.d.ts +4 -0
  17. package/lib/components/index.js +15 -0
  18. package/lib/components/index.js.map +1 -0
  19. package/lib/icons/ArrowDownHeadIcon.d.ts +4 -0
  20. package/lib/icons/ArrowDownHeadIcon.js +6 -0
  21. package/lib/icons/ArrowDownHeadIcon.js.map +1 -0
  22. package/lib/icons/index.d.ts +1 -0
  23. package/lib/icons/index.js +9 -0
  24. package/lib/icons/index.js.map +1 -0
  25. package/lib/index.d.ts +4 -0
  26. package/lib/index.js +9 -1
  27. package/lib/index.js.map +1 -1
  28. package/lib/modals/EditDashboardsModal.d.ts +19 -0
  29. package/lib/modals/EditDashboardsModal.js +94 -0
  30. package/lib/modals/EditDashboardsModal.js.map +1 -0
  31. package/lib/modals/PromoteDashModal.d.ts +16 -0
  32. package/lib/modals/PromoteDashModal.js +103 -0
  33. package/lib/modals/PromoteDashModal.js.map +1 -0
  34. package/lib/modals/PromoteViewModal.d.ts +12 -0
  35. package/lib/modals/PromoteViewModal.js +101 -0
  36. package/lib/modals/PromoteViewModal.js.map +1 -0
  37. package/lib/modals/ReorderDashboardModal.d.ts +8 -0
  38. package/lib/modals/ReorderDashboardModal.js +125 -0
  39. package/lib/modals/ReorderDashboardModal.js.map +1 -0
  40. package/lib/modals/index.d.ts +4 -0
  41. package/lib/modals/index.js +15 -0
  42. package/lib/modals/index.js.map +1 -0
  43. package/lib/primitives/ButtonPrimitive.d.ts +9 -0
  44. package/lib/primitives/ButtonPrimitive.js +25 -0
  45. package/lib/primitives/ButtonPrimitive.js.map +1 -0
  46. package/lib/primitives/HeaderPrimitive.d.ts +8 -0
  47. package/lib/primitives/HeaderPrimitive.js +12 -0
  48. package/lib/primitives/HeaderPrimitive.js.map +1 -0
  49. package/lib/primitives/ModalPrimitive.d.ts +10 -0
  50. package/lib/primitives/ModalPrimitive.js +49 -0
  51. package/lib/primitives/ModalPrimitive.js.map +1 -0
  52. package/lib/primitives/SecondaryButtonPrimitive.d.ts +9 -0
  53. package/lib/primitives/SecondaryButtonPrimitive.js +25 -0
  54. package/lib/primitives/SecondaryButtonPrimitive.js.map +1 -0
  55. package/lib/primitives/SelectPrimitive.d.ts +14 -0
  56. package/lib/primitives/SelectPrimitive.js +39 -0
  57. package/lib/primitives/SelectPrimitive.js.map +1 -0
  58. package/lib/primitives/TextInputPrimitive.d.ts +10 -0
  59. package/lib/primitives/TextInputPrimitive.js +26 -0
  60. package/lib/primitives/TextInputPrimitive.js.map +1 -0
  61. package/lib/primitives/index.d.ts +6 -0
  62. package/lib/primitives/index.js +19 -0
  63. package/lib/primitives/index.js.map +1 -0
  64. package/lib/public_components/DashboardBuilder.d.ts +5 -0
  65. package/lib/public_components/DashboardBuilder.js +164 -0
  66. package/lib/public_components/DashboardBuilder.js.map +1 -0
  67. package/lib/public_components/DashboardManager.d.ts +5 -0
  68. package/lib/public_components/DashboardManager.js +241 -0
  69. package/lib/public_components/DashboardManager.js.map +1 -0
  70. package/lib/public_components/SQLViewManager.d.ts +4 -0
  71. package/lib/public_components/SQLViewManager.js +391 -0
  72. package/lib/public_components/SQLViewManager.js.map +1 -0
  73. package/package.json +3 -2
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useAdmin = exports.AdminProvider = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const Admin_1 = require("./Admin");
7
+ const react_2 = require("@quillsql/react");
8
+ const AdminContext = (0, react_1.createContext)(undefined);
9
+ function reducer(state, action) {
10
+ switch (action.type) {
11
+ case "SET_LOADING":
12
+ return { ...state, loading: action.payload };
13
+ case "SET_QUERY_ENDPOINT":
14
+ return { ...state, queryEndpoint: action.payload };
15
+ case "SET_QUERY_HEADERS":
16
+ return { ...state, queryHeaders: action.payload };
17
+ case "SET_WITH_CREDENTIALS":
18
+ return { ...state, withCredentials: action.payload };
19
+ case "SET_CLIENT":
20
+ return { ...state, client: action.payload };
21
+ case "SET_CLIENTS":
22
+ return { ...state, clients: action.payload };
23
+ case "SET_ENVIRONMENT":
24
+ return { ...state, environment: action.payload };
25
+ case "SET_ORGANIZATION":
26
+ return { ...state, organization: action.payload };
27
+ case "SET_ORGANIZATIONS":
28
+ return { ...state, organizations: action.payload };
29
+ case "SET_ORGANIZATION_ID":
30
+ return { ...state, organizationId: action.payload };
31
+ case "SET_ACTIVE_QUERY":
32
+ return { ...state, activeQuery: action.payload };
33
+ case "SET_TABLES":
34
+ return { ...state, tables: action.payload };
35
+ case "SET_SCHEMA":
36
+ return { ...state, schema: action.payload };
37
+ case "SET_ACTIVE_COMPONENT":
38
+ return { ...state, activeComponent: action.payload };
39
+ case "SET_REPORT_ID":
40
+ return { ...state, reportId: action.payload };
41
+ case "SET_THEME":
42
+ return { ...state, theme: action.payload };
43
+ case "SET_DASHBOARDS":
44
+ return { ...state, dashboards: action.payload };
45
+ case "SET_SELECTED_DASHBOARD":
46
+ return { ...state, selectedDashboard: action.payload };
47
+ case "SET_NAVIGATE_TO_DASHBOARD_MANAGER":
48
+ return { ...state, navigateToDashboardManager: action.payload };
49
+ case "SET_NAVIGATE_TO_DASHBOARD_BUILDER":
50
+ return { ...state, navigateToDashboardBuilder: action.payload };
51
+ case "SET_ORGANIZATION_ID_SET":
52
+ return { ...state, organizationIdSet: action.payload };
53
+ default:
54
+ return state;
55
+ }
56
+ }
57
+ const useAdmin = () => {
58
+ const context = (0, react_1.useContext)(AdminContext);
59
+ if (context === undefined) {
60
+ throw new Error("useAdmin must be used within an AdminProvider");
61
+ }
62
+ return context;
63
+ };
64
+ exports.useAdmin = useAdmin;
65
+ function AdminProvider({ children, publicKey, queryEndpoint, queryHeaders, withCredentials, customTheme, }) {
66
+ const loadState = () => {
67
+ try {
68
+ const serializedState = localStorage.getItem("adminState");
69
+ if (serializedState === null) {
70
+ return undefined; // No state in local storage
71
+ }
72
+ return JSON.parse(serializedState);
73
+ }
74
+ catch (err) {
75
+ return undefined; // Handle JSON parsing error
76
+ }
77
+ };
78
+ const initialState = loadState() || {
79
+ loading: true,
80
+ queryEndpoint,
81
+ queryHeaders,
82
+ withCredentials,
83
+ client: null,
84
+ clients: [],
85
+ environment: "PRODUCTION",
86
+ organization: null,
87
+ organizations: [],
88
+ organizationId: null,
89
+ activeQuery: "",
90
+ tables: [],
91
+ schema: [],
92
+ activeComponent: "Dashboards",
93
+ dashboards: [],
94
+ selectedDashboard: null,
95
+ reportId: null,
96
+ theme: customTheme || Admin_1.theme,
97
+ organizationIdSet: false,
98
+ };
99
+ const [state, dispatch] = (0, react_1.useReducer)(reducer, initialState);
100
+ (0, react_1.useEffect)(() => {
101
+ try {
102
+ const serializedState = JSON.stringify(state);
103
+ localStorage.setItem("adminState", serializedState);
104
+ }
105
+ catch {
106
+ // Ignore write errors
107
+ console.warn("Error writing state to local storage");
108
+ }
109
+ }, [state]);
110
+ (0, react_1.useEffect)(() => {
111
+ if (publicKey === "" || publicKey === undefined || publicKey === null) {
112
+ throw new Error("publicKey is required");
113
+ }
114
+ let isSubscribed = true;
115
+ async function getClient() {
116
+ try {
117
+ const response1 = await fetch(`https://quill-344421.uc.r.appspot.com/client/${publicKey}/`, {
118
+ method: "GET",
119
+ headers: {
120
+ Authorization: `Bearer `,
121
+ },
122
+ });
123
+ const data1 = await response1.json();
124
+ dispatch({ type: "SET_CLIENT", payload: data1.client });
125
+ const response = await fetch(`https://quill-344421.uc.r.appspot.com/schema2/${publicKey}/`, {
126
+ method: "GET",
127
+ headers: {
128
+ Authorization: `Bearer `,
129
+ },
130
+ });
131
+ if (!response.ok) {
132
+ throw new Error("Failed to fetch tables data");
133
+ }
134
+ const data = await response.json();
135
+ dispatch({ type: "SET_TABLES", payload: data.tables });
136
+ dispatch({ type: "SET_SCHEMA", payload: data.tables });
137
+ }
138
+ catch (error) {
139
+ console.error("ERROR:", error);
140
+ }
141
+ }
142
+ if (isSubscribed && !state.client) {
143
+ getClient();
144
+ }
145
+ return () => {
146
+ isSubscribed = false;
147
+ };
148
+ }, [publicKey]);
149
+ (0, react_1.useEffect)(() => {
150
+ if (publicKey === "" || publicKey === undefined || publicKey === null) {
151
+ throw new Error("publicKey is required");
152
+ }
153
+ const getClients = async () => {
154
+ try {
155
+ // const url = `https://quill-344421.uc.r.appspot.com/clients/${publicKey}/`
156
+ const url = `http://localhost:8080/clients/${publicKey}/`;
157
+ const response = await fetch(url, {
158
+ method: "GET",
159
+ headers: {
160
+ Authorization: `Bearer `,
161
+ },
162
+ });
163
+ if (!response.ok) {
164
+ throw new Error(`HTTP error! status: ${response.status}`);
165
+ }
166
+ const data = await response.json();
167
+ dispatch({ type: "SET_CLIENTS", payload: data });
168
+ }
169
+ catch (error) {
170
+ console.error("Error fetching clients:", error);
171
+ }
172
+ };
173
+ getClients();
174
+ }, []);
175
+ (0, react_1.useEffect)(() => {
176
+ let isSubscribed = true;
177
+ async function getCustomers() {
178
+ const requestOptions = {
179
+ method: "GET",
180
+ headers: {
181
+ Authorization: `Bearer `,
182
+ ...(state.environment && { environment: state.environment }),
183
+ },
184
+ };
185
+ try {
186
+ const response = await fetch(`https://quill-344421.uc.r.appspot.com/orgs/${state.client._id}/`, requestOptions);
187
+ if (!response.ok) {
188
+ throw new Error(`HTTP error! status: ${response.status}`);
189
+ }
190
+ const data = await response.json();
191
+ dispatch({
192
+ type: "SET_ORGANIZATIONS",
193
+ payload: [...data.orgs, { id: "", name: "All Organizations" }],
194
+ });
195
+ if (!state.organizationIdSet) {
196
+ if (state.environment === "STAGING") {
197
+ dispatch({
198
+ type: "SET_ORGANIZATION_ID",
199
+ payload: state.client.stagingAdminCustomerId,
200
+ });
201
+ }
202
+ else {
203
+ dispatch({
204
+ type: "SET_ORGANIZATION_ID",
205
+ payload: state.client.adminCustomerId,
206
+ });
207
+ }
208
+ dispatch({ type: "SET_ORGANIZATION_ID_SET", payload: true });
209
+ }
210
+ }
211
+ catch (error) {
212
+ console.error("Error fetching data:", error);
213
+ }
214
+ }
215
+ if (isSubscribed && state.client) {
216
+ getCustomers();
217
+ }
218
+ return () => {
219
+ isSubscribed = false;
220
+ };
221
+ }, [state.environment, state.client, state.organizationId]);
222
+ (0, react_1.useEffect)(() => {
223
+ if (state.client &&
224
+ state.clients &&
225
+ state.organizations &&
226
+ state.organizationIdSet &&
227
+ state.selectedDashboard) {
228
+ dispatch({ type: "SET_LOADING", payload: false });
229
+ }
230
+ else {
231
+ dispatch({ type: "SET_LOADING", payload: true });
232
+ }
233
+ }, [state.client, state.clients, state.organizations, state.organizationId]);
234
+ return ((0, jsx_runtime_1.jsx)(AdminContext.Provider, { value: { state, dispatch }, children: !state.loading && (
235
+ // @ts-ignore
236
+ (0, jsx_runtime_1.jsx)(react_2.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 })) }));
237
+ }
238
+ exports.AdminProvider = AdminProvider;
239
+ //# sourceMappingURL=AdminProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminProvider.js","sourceRoot":"","sources":["../src/AdminProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ interface DropdownMenuProps {
2
+ items: any[];
3
+ setSelected: (selected: any) => void;
4
+ selected: any;
5
+ theme?: any;
6
+ disabled?: boolean;
7
+ }
8
+ export default function DropdownMenu({ items, setSelected, selected, theme, disabled }: DropdownMenuProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ function DropdownMenu({ items, setSelected, selected, theme, disabled = false }) {
5
+ return ((0, jsx_runtime_1.jsx)("div", { style: { display: "flex", flexDirection: "column" }, children: (0, jsx_runtime_1.jsxs)("div", { style: { position: "relative" }, children: [(0, jsx_runtime_1.jsx)("select", { style: {
6
+ width: "100%",
7
+ minWidth: 230,
8
+ maxWidth: 230,
9
+ outline: "none",
10
+ textAlign: "left",
11
+ whiteSpace: "nowrap",
12
+ overflow: "hidden",
13
+ textOverflow: "ellipsis",
14
+ borderRadius: 6,
15
+ WebkitAppearance: "none",
16
+ paddingLeft: 12,
17
+ paddingRight: 12,
18
+ height: 38,
19
+ borderWidth: theme?.borderWidth,
20
+ borderColor: theme?.borderColor,
21
+ background: theme?.backgroundColor,
22
+ color: theme?.primaryTextColor,
23
+ boxShadow: "0 1px 2px 0 rgba(0,0,0,.05)",
24
+ fontFamily: theme?.fontFamily,
25
+ }, disabled: disabled, onChange: (e) => {
26
+ setSelected(items.find((item) => item.name === e.target.value));
27
+ }, value: selected ? selected.name : "", children: items.slice(0, 50).map((item) => ((0, jsx_runtime_1.jsx)("option", { value: item.name, children: item.name }, item.name))) }), (0, jsx_runtime_1.jsxs)("svg", { style: {
28
+ height: "20px",
29
+ width: "20px",
30
+ flex: "none",
31
+ position: "absolute",
32
+ right: 8,
33
+ top: 9,
34
+ color: theme?.secondaryTextColor,
35
+ }, "aria-hidden": "true", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "24", height: "24", visibility: disabled ? "hidden" : "visible", children: [(0, jsx_runtime_1.jsx)("path", { fill: "none", d: "M0 0h24v24H0z" }), (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M12 13.172l4.95-4.95 1.414 1.414L12 16 5.636 9.636 7.05 8.222z" })] })] }) }));
36
+ }
37
+ exports.default = DropdownMenu;
38
+ //# sourceMappingURL=DropDownMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropDownMenu.js","sourceRoot":"","sources":["../../src/components/DropDownMenu.tsx"],"names":[],"mappings":";;;AAUA,SAAwB,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,KAAK,EAAqB;IAC7G,OAAO,CACH,gCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,YACpD,iCAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,aAChC,mCACI,KAAK,EAAE;wBACH,KAAK,EAAE,MAAM;wBACb,QAAQ,EAAE,GAAG;wBACb,QAAQ,EAAE,GAAG;wBACb,OAAO,EAAE,MAAM;wBACf,SAAS,EAAE,MAAM;wBACjB,UAAU,EAAE,QAAQ;wBACpB,QAAQ,EAAE,QAAQ;wBAClB,YAAY,EAAE,UAAU;wBACxB,YAAY,EAAE,CAAC;wBACf,gBAAgB,EAAE,MAAM;wBACxB,WAAW,EAAE,EAAE;wBACf,YAAY,EAAE,EAAE;wBAChB,MAAM,EAAE,EAAE;wBACV,WAAW,EAAE,KAAK,EAAE,WAAW;wBAC/B,WAAW,EAAE,KAAK,EAAE,WAAW;wBAC/B,UAAU,EAAE,KAAK,EAAE,eAAe;wBAClC,KAAK,EAAE,KAAK,EAAE,gBAAgB;wBAC9B,SAAS,EAAE,6BAA6B;wBACxC,UAAU,EAAE,KAAK,EAAE,UAAU;qBAChC,EACD,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACZ,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACpE,CAAC,EACD,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,YAEnC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC9B,mCAAwB,KAAK,EAAE,IAAI,CAAC,IAAI,YACnC,IAAI,CAAC,IAAI,IADD,IAAI,CAAC,IAAI,CAEb,CACZ,CAAC,GACG,EAET,iCACI,KAAK,EAAE;wBACH,MAAM,EAAE,MAAM;wBACd,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,CAAC;wBACR,GAAG,EAAE,CAAC;wBACN,KAAK,EAAE,KAAK,EAAE,kBAAkB;qBACnC,iBACW,MAAM,EAClB,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,aAE3C,iCAAM,IAAI,EAAC,MAAM,EAAC,CAAC,EAAC,eAAe,GAAG,EACtC,iCACI,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,gEAAgE,GACpE,IACA,IACJ,GACJ,CACT,CAAC;AACN,CAAC;AAjED,+BAiEC"}
@@ -0,0 +1,12 @@
1
+ interface EnvSelectPopoverProps {
2
+ clients: any[];
3
+ setClient: (client: any) => void;
4
+ client: any;
5
+ theme: any;
6
+ environment: string;
7
+ setEnvironment: (environment: string) => void;
8
+ handlePromote?: (client: any) => void;
9
+ showPromote?: boolean;
10
+ }
11
+ export default function EnvSelectPopover({ clients, setClient, client, theme, environment, setEnvironment, handlePromote, showPromote }: EnvSelectPopoverProps): import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("react");
5
+ function EnvSelectPopover({ clients, setClient, client, theme, environment, setEnvironment, handlePromote, showPromote }) {
6
+ const [isOpen, setIsOpen] = (0, react_1.useState)(false);
7
+ const [hoveredItemId, setHoveredItemId] = (0, react_1.useState)(null);
8
+ const [isPromoteHovered, setIsPromoteHovered] = (0, react_1.useState)(false);
9
+ const handleItemClick = (selectedClient) => {
10
+ setClient(selectedClient);
11
+ setIsOpen(false);
12
+ };
13
+ const handlePromoteClick = (e, client) => {
14
+ e.preventDefault();
15
+ if (handlePromote) {
16
+ handlePromote(client);
17
+ }
18
+ };
19
+ const popoverRef = (0, react_1.useRef)(null);
20
+ const handleOutsideClick = (event) => {
21
+ if (popoverRef.current && !popoverRef.current.contains(event.target)) {
22
+ setIsOpen(false);
23
+ }
24
+ };
25
+ (0, react_1.useEffect)(() => {
26
+ if (isOpen) {
27
+ document.addEventListener('mousedown', handleOutsideClick);
28
+ }
29
+ else {
30
+ document.removeEventListener('mousedown', handleOutsideClick);
31
+ }
32
+ return () => {
33
+ document.removeEventListener('mousedown', handleOutsideClick); // Cleanup
34
+ };
35
+ }, [isOpen]);
36
+ const dropdownStyles = {
37
+ position: 'relative',
38
+ display: 'inline-block',
39
+ fontFamily: theme.fontFamily,
40
+ };
41
+ const separatorStyle = {
42
+ borderBottom: '1px solid #e7e7e7',
43
+ };
44
+ const triggerButtonStyles = {
45
+ width: "100%",
46
+ minWidth: 230,
47
+ maxWidth: 230,
48
+ outline: "none",
49
+ textAlign: "left",
50
+ whiteSpace: "nowrap",
51
+ overflow: "hidden",
52
+ textOverflow: "ellipsis",
53
+ borderRadius: 6,
54
+ WebkitAppearance: "none",
55
+ paddingLeft: 12,
56
+ paddingRight: 12,
57
+ height: 38,
58
+ borderWidth: theme.borderWidth,
59
+ borderColor: theme.borderColor,
60
+ background: theme.backgroundColor,
61
+ color: theme.primaryTextColor,
62
+ boxShadow: "0 1px 2px 0 rgba(0,0,0,.05)",
63
+ fontFamily: theme.fontFamily,
64
+ fontWeight: 500,
65
+ };
66
+ const dropdownContentStyles = {
67
+ display: isOpen ? 'block' : 'none',
68
+ background: "#F5F5F6",
69
+ position: "absolute",
70
+ boxShadow: "0px 1px 12px 0px rgba(56, 65, 81, 0.1)",
71
+ border: "1px solid #e7e7e7",
72
+ boxSizing: "content-box",
73
+ zIndex: 1,
74
+ borderRadius: 6,
75
+ padding: 20,
76
+ maxHeight: 420
77
+ };
78
+ const itemStyles = {
79
+ padding: '10px',
80
+ cursor: 'pointer',
81
+ fontWeight: 'normal',
82
+ fontSize: '16px',
83
+ color: theme.primaryTextColor,
84
+ };
85
+ const itemHoverStyles = {
86
+ backgroundColor: 'rgba(56, 65, 81, 0.09)',
87
+ borderRadius: 6,
88
+ };
89
+ const selectedItemStyles = {
90
+ backgroundColor: 'white',
91
+ borderRadius: 6,
92
+ boxShadow: "0 1px 2px 0 rgba(0,0,0,.05)"
93
+ };
94
+ const promoteStyles = {
95
+ marginLeft: '10px',
96
+ color: '#007bff',
97
+ cursor: 'pointer',
98
+ fontSize: '14px',
99
+ textDecoration: isPromoteHovered ? 'underline' : 'none',
100
+ };
101
+ const itemTextStyles = {
102
+ marginRight: '30px',
103
+ };
104
+ if (client && client._id === "642ee580e45ecb91213b44aa") {
105
+ return ((0, jsx_runtime_1.jsxs)("div", { style: {
106
+ background: "#f7f7f7",
107
+ borderRadius: 6,
108
+ height: 38,
109
+ display: "flex",
110
+ flexDirection: "row",
111
+ alignItems: "center",
112
+ paddingLeft: 4,
113
+ paddingRight: 4,
114
+ }, children: [(0, jsx_runtime_1.jsx)("button", { style: {
115
+ background: environment === "PRODUCTION" ? "white" : undefined,
116
+ color: environment === "PRODUCTION" ? "#384151" : "#677389",
117
+ fontWeight: environment === "PRODUCTION" ? "600" : "500",
118
+ borderRadius: 4,
119
+ paddingLeft: 6,
120
+ paddingRight: 6,
121
+ paddingTop: 3,
122
+ paddingBottom: 3,
123
+ fontSize: 16,
124
+ }, onClick: () => setEnvironment("PRODUCTION"), children: "Production" }), (0, jsx_runtime_1.jsx)("button", { style: {
125
+ background: environment === "STAGING" ? "white" : undefined,
126
+ color: environment === "STAGING" ? "#384151" : "#677389",
127
+ fontWeight: environment === "STAGING" ? "600" : "500",
128
+ borderRadius: 4,
129
+ paddingLeft: 6,
130
+ paddingRight: 6,
131
+ paddingTop: 3,
132
+ paddingBottom: 3,
133
+ fontSize: 16,
134
+ }, onClick: () => setEnvironment("STAGING"), children: "Staging" })] }));
135
+ }
136
+ return ((0, jsx_runtime_1.jsxs)("div", { style: dropdownStyles, ref: popoverRef, children: [(0, jsx_runtime_1.jsx)("button", { onClick: () => setIsOpen(!isOpen), style: triggerButtonStyles, children: client ? client.name : "Select a Client" }), (0, jsx_runtime_1.jsx)("div", { style: dropdownContentStyles, children: clients.map((item, index) => ((0, jsx_runtime_1.jsxs)("div", { style: {
137
+ ...itemStyles,
138
+ ...(index !== clients.length - 1 ? separatorStyle : {}),
139
+ ...(hoveredItemId === item._id ? itemHoverStyles : {}),
140
+ ...(client && client._id === item._id ? selectedItemStyles : {})
141
+ }, onMouseEnter: () => setHoveredItemId(item._id), onMouseLeave: () => setHoveredItemId(null), children: [(0, jsx_runtime_1.jsx)("span", { style: itemTextStyles, onClick: () => handleItemClick(item), children: item.name }), client && client._id === item._id && ((0, jsx_runtime_1.jsx)("a", { href: "#", onClick: (e) => handlePromoteClick(e, item), style: {
142
+ ...promoteStyles,
143
+ visibility: showPromote ? 'visible' : 'hidden',
144
+ }, onMouseEnter: () => setIsPromoteHovered(true), onMouseLeave: () => setIsPromoteHovered(false), children: "Promote" }))] }, item._id))) })] }));
145
+ }
146
+ exports.default = EnvSelectPopover;
147
+ //# sourceMappingURL=EnvSelectPopover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvSelectPopover.js","sourceRoot":"","sources":["../../src/components/EnvSelectPopover.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ interface OrgSelectProps {
2
+ environment: string;
3
+ setEnvironment: (environment: string) => void;
4
+ organizations: any[];
5
+ theme: any;
6
+ organizationId: string;
7
+ setOrganizationId: (organizationId: string | null) => void;
8
+ }
9
+ export default function OrgSelect({ environment, setEnvironment, organizations, theme, organizationId, setOrganizationId, }: OrgSelectProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,29 @@
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("react");
8
+ const DropDownMenu_1 = __importDefault(require("./DropDownMenu"));
9
+ function OrgSelect({ environment, setEnvironment, organizations, theme, organizationId, setOrganizationId, }) {
10
+ (0, react_1.useEffect)(() => {
11
+ setEnvironment(environment);
12
+ }, [environment]);
13
+ const dropDownItems = organizations.map(org => ({ name: org.name, id: org.id }));
14
+ const handleSelectOrganization = (selectedItem) => {
15
+ setOrganizationId(selectedItem ? selectedItem.id : '');
16
+ console.log('selectedItem', selectedItem);
17
+ };
18
+ const selectedOrganization = dropDownItems.find(item => item.id === organizationId);
19
+ return ((0, jsx_runtime_1.jsxs)("div", { style: { display: "flex", flexDirection: "column" }, children: [(0, jsx_runtime_1.jsx)("h1", { style: {
20
+ fontSize: "14px",
21
+ paddingTop: "0px",
22
+ marginTop: "0px",
23
+ marginBottom: "4px",
24
+ fontWeight: "600",
25
+ color: theme.secondaryTextColor,
26
+ }, children: "Organization" }), (0, jsx_runtime_1.jsx)(DropDownMenu_1.default, { items: dropDownItems, setSelected: handleSelectOrganization, selected: selectedOrganization, theme: theme })] }));
27
+ }
28
+ exports.default = OrgSelect;
29
+ //# sourceMappingURL=OrgSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrgSelect.js","sourceRoot":"","sources":["../../src/components/OrgSelect.tsx"],"names":[],"mappings":";;;;;;AAAA,iCAAyC;AACzC,kEAA0C;AAW1C,SAAwB,SAAS,CAAC,EAC9B,WAAW,EACX,cAAc,EACd,aAAa,EACb,KAAK,EACL,cAAc,EACd,iBAAiB,GACJ;IACb,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,cAAc,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAEjF,MAAM,wBAAwB,GAAG,CAAC,YAAiB,EAAE,EAAE;QACnD,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC7C,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC;IAEpF,OAAO,CACH,iCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,aACpD,+BAAI,KAAK,EAAE;oBACP,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,KAAK;oBACjB,SAAS,EAAE,KAAK;oBAChB,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,KAAK;oBACjB,KAAK,EAAE,KAAK,CAAC,kBAAkB;iBAClC,6BAEI,EACL,uBAAC,sBAAY,IACT,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,wBAAwB,EACrC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,KAAK,GACd,IACA,CACT,CAAC;AACN,CAAC;AAzCD,4BAyCC"}
@@ -0,0 +1,4 @@
1
+ export { default as EnvSelectPopover } from './EnvSelectPopover';
2
+ export { default as OrgSelect } from './OrgSelect';
3
+ export { default as DropDownMenu } from './DropDownMenu';
4
+ export { default as DashboardManager } from '../public_components/DashboardManager';
@@ -0,0 +1,15 @@
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
+ exports.DashboardManager = exports.DropDownMenu = exports.OrgSelect = exports.EnvSelectPopover = void 0;
7
+ var EnvSelectPopover_1 = require("./EnvSelectPopover");
8
+ Object.defineProperty(exports, "EnvSelectPopover", { enumerable: true, get: function () { return __importDefault(EnvSelectPopover_1).default; } });
9
+ var OrgSelect_1 = require("./OrgSelect");
10
+ Object.defineProperty(exports, "OrgSelect", { enumerable: true, get: function () { return __importDefault(OrgSelect_1).default; } });
11
+ var DropDownMenu_1 = require("./DropDownMenu");
12
+ Object.defineProperty(exports, "DropDownMenu", { enumerable: true, get: function () { return __importDefault(DropDownMenu_1).default; } });
13
+ var DashboardManager_1 = require("../public_components/DashboardManager");
14
+ Object.defineProperty(exports, "DashboardManager", { enumerable: true, get: function () { return __importDefault(DashboardManager_1).default; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.tsx"],"names":[],"mappings":";;;;;;AAAA,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,0EAAoF;AAA3E,qIAAA,OAAO,OAAoB"}
@@ -0,0 +1,4 @@
1
+ declare const ArrowDownHeadIcon: ({ ...props }: {
2
+ [x: string]: any;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
+ export default ArrowDownHeadIcon;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const ArrowDownHeadIcon = ({ ...props }) => ((0, jsx_runtime_1.jsxs)("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "24", height: "24", children: [(0, jsx_runtime_1.jsx)("path", { fill: "none", d: "M0 0h24v24H0z" }), (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M12 13.172l4.95-4.95 1.414 1.414L12 16 5.636 9.636 7.05 8.222z" })] }));
5
+ exports.default = ArrowDownHeadIcon;
6
+ //# sourceMappingURL=ArrowDownHeadIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrowDownHeadIcon.js","sourceRoot":"","sources":["../../src/icons/ArrowDownHeadIcon.tsx"],"names":[],"mappings":";;;AAAA,MAAM,iBAAiB,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CACxC,oCACQ,KAAK,EACT,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,aAEX,iCAAM,IAAI,EAAC,MAAM,EAAC,CAAC,EAAC,eAAe,GAAG,EACtC,iCACI,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,gEAAgE,GACpE,IACA,CACT,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -0,0 +1 @@
1
+ export { default as ArrowDownHeadIcon } from './ArrowDownHeadIcon';
@@ -0,0 +1,9 @@
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
+ exports.ArrowDownHeadIcon = void 0;
7
+ var ArrowDownHeadIcon_1 = require("./ArrowDownHeadIcon");
8
+ Object.defineProperty(exports, "ArrowDownHeadIcon", { enumerable: true, get: function () { return __importDefault(ArrowDownHeadIcon_1).default; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/icons/index.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB"}
package/lib/index.d.ts CHANGED
@@ -1 +1,5 @@
1
1
  export { default as Admin } from './Admin';
2
+ export { AdminProvider } from './AdminProvider';
3
+ export { default as DashboardManager } from './public_components/DashboardManager';
4
+ export { default as DashboardBuilder } from './public_components/DashboardBuilder';
5
+ export { default as SQLViewManager } from './public_components/SQLViewManager';
package/lib/index.js CHANGED
@@ -3,7 +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.Admin = void 0;
6
+ exports.SQLViewManager = exports.DashboardBuilder = exports.DashboardManager = exports.AdminProvider = exports.Admin = void 0;
7
7
  var Admin_1 = require("./Admin");
8
8
  Object.defineProperty(exports, "Admin", { enumerable: true, get: function () { return __importDefault(Admin_1).default; } });
9
+ var AdminProvider_1 = require("./AdminProvider");
10
+ Object.defineProperty(exports, "AdminProvider", { enumerable: true, get: function () { return AdminProvider_1.AdminProvider; } });
11
+ var DashboardManager_1 = require("./public_components/DashboardManager");
12
+ Object.defineProperty(exports, "DashboardManager", { enumerable: true, get: function () { return __importDefault(DashboardManager_1).default; } });
13
+ var DashboardBuilder_1 = require("./public_components/DashboardBuilder");
14
+ Object.defineProperty(exports, "DashboardBuilder", { enumerable: true, get: function () { return __importDefault(DashboardBuilder_1).default; } });
15
+ var SQLViewManager_1 = require("./public_components/SQLViewManager");
16
+ Object.defineProperty(exports, "SQLViewManager", { enumerable: true, get: function () { return __importDefault(SQLViewManager_1).default; } });
9
17
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,iCAA2C;AAAlC,+GAAA,OAAO,OAAS"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,yEAAkF;AAAzE,qIAAA,OAAO,OAAoB;AACpC,yEAAkF;AAAzE,qIAAA,OAAO,OAAoB;AACpC,qEAA8E;AAArE,iIAAA,OAAO,OAAkB"}