powr-sdk-web 3.1.1 → 3.2.2

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.
@@ -0,0 +1,331 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _admin = _interopRequireDefault(require("../users/admin"));
11
+ var _admin2 = _interopRequireDefault(require("../functions/admin"));
12
+ var _admin3 = _interopRequireDefault(require("../notifications/admin"));
13
+ var _admin4 = _interopRequireDefault(require("../invoices/admin"));
14
+ var _admin5 = _interopRequireDefault(require("../slides/admin"));
15
+ var _admin6 = _interopRequireDefault(require("../forms/admin"));
16
+ var _admin7 = _interopRequireDefault(require("../waitlists/admin"));
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
22
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
23
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
24
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
25
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
26
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
28
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
29
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // Import all admin components
31
+ var AdminDashboard = function AdminDashboard(_ref) {
32
+ var projectId = _ref.projectId,
33
+ _ref$adminCards = _ref.adminCards,
34
+ adminCards = _ref$adminCards === void 0 ? [] : _ref$adminCards,
35
+ _ref$theme = _ref.theme,
36
+ theme = _ref$theme === void 0 ? "default" : _ref$theme;
37
+ var _useState = (0, _react.useState)(null),
38
+ _useState2 = _slicedToArray(_useState, 2),
39
+ currentSection = _useState2[0],
40
+ setCurrentSection = _useState2[1];
41
+ var getThemeStyles = function getThemeStyles() {
42
+ var baseStyles = {
43
+ container: {
44
+ fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
45
+ padding: '24px',
46
+ maxWidth: '1200px',
47
+ margin: '0 auto'
48
+ },
49
+ header: {
50
+ marginBottom: '32px'
51
+ },
52
+ title: {
53
+ fontSize: '32px',
54
+ fontWeight: '800',
55
+ color: '#1f2937',
56
+ margin: '0 0 8px 0',
57
+ lineHeight: '1.2'
58
+ },
59
+ subtitle: {
60
+ fontSize: '16px',
61
+ color: '#6b7280',
62
+ margin: '0'
63
+ },
64
+ backButton: {
65
+ background: 'none',
66
+ border: 'none',
67
+ color: '#3b82f6',
68
+ fontSize: '16px',
69
+ cursor: 'pointer',
70
+ padding: '8px 0',
71
+ marginBottom: '16px',
72
+ display: 'flex',
73
+ alignItems: 'center',
74
+ gap: '8px'
75
+ },
76
+ grid: {
77
+ display: 'grid',
78
+ gridTemplateColumns: 'repeat(auto-fit, minmax(300px, 1fr))',
79
+ gap: '24px',
80
+ marginBottom: '32px'
81
+ },
82
+ card: {
83
+ background: '#ffffff',
84
+ border: '1px solid #e5e7eb',
85
+ borderRadius: '12px',
86
+ padding: '24px',
87
+ transition: 'all 0.2s ease',
88
+ cursor: 'pointer',
89
+ boxShadow: '0 1px 3px rgba(0, 0, 0, 0.1)'
90
+ },
91
+ cardHover: {
92
+ boxShadow: '0 4px 12px rgba(0, 0, 0, 0.15)',
93
+ transform: 'translateY(-2px)'
94
+ },
95
+ cardHeader: {
96
+ display: 'flex',
97
+ alignItems: 'center',
98
+ marginBottom: '16px'
99
+ },
100
+ cardIcon: {
101
+ width: '24px',
102
+ height: '24px',
103
+ marginRight: '12px'
104
+ },
105
+ cardTitle: {
106
+ fontSize: '18px',
107
+ fontWeight: '600',
108
+ color: '#1f2937',
109
+ margin: '0'
110
+ },
111
+ cardDescription: {
112
+ fontSize: '14px',
113
+ color: '#6b7280',
114
+ margin: '0 0 16px 0',
115
+ lineHeight: '1.5'
116
+ },
117
+ cardButton: {
118
+ width: '100%',
119
+ padding: '12px 16px',
120
+ background: '#3b82f6',
121
+ color: '#ffffff',
122
+ border: 'none',
123
+ borderRadius: '8px',
124
+ fontSize: '14px',
125
+ fontWeight: '500',
126
+ cursor: 'pointer',
127
+ transition: 'background-color 0.2s ease'
128
+ },
129
+ cardButtonHover: {
130
+ background: '#2563eb'
131
+ },
132
+ statsCard: {
133
+ background: '#ffffff',
134
+ border: '1px solid #e5e7eb',
135
+ borderRadius: '12px',
136
+ padding: '24px',
137
+ marginTop: '32px'
138
+ },
139
+ statsGrid: {
140
+ display: 'grid',
141
+ gridTemplateColumns: 'repeat(auto-fit, minmax(150px, 1fr))',
142
+ gap: '16px'
143
+ },
144
+ statItem: {
145
+ textAlign: 'center'
146
+ },
147
+ statValue: {
148
+ fontSize: '24px',
149
+ fontWeight: '700',
150
+ color: '#3b82f6',
151
+ margin: '0 0 4px 0'
152
+ },
153
+ statLabel: {
154
+ fontSize: '14px',
155
+ color: '#6b7280',
156
+ margin: '0'
157
+ },
158
+ sectionContainer: {
159
+ background: '#ffffff',
160
+ border: '1px solid #e5e7eb',
161
+ borderRadius: '12px',
162
+ padding: '24px',
163
+ marginTop: '16px'
164
+ }
165
+ };
166
+
167
+ // Theme variations
168
+ if (theme === 'dark') {
169
+ baseStyles.container.backgroundColor = '#1f2937';
170
+ baseStyles.title.color = '#f9fafb';
171
+ baseStyles.subtitle.color = '#9ca3af';
172
+ baseStyles.card.backgroundColor = '#374151';
173
+ baseStyles.card.borderColor = '#4b5563';
174
+ baseStyles.cardTitle.color = '#f9fafb';
175
+ baseStyles.cardDescription.color = '#9ca3af';
176
+ baseStyles.statsCard.backgroundColor = '#374151';
177
+ baseStyles.statsCard.borderColor = '#4b5563';
178
+ baseStyles.statLabel.color = '#9ca3af';
179
+ baseStyles.sectionContainer.backgroundColor = '#374151';
180
+ baseStyles.sectionContainer.borderColor = '#4b5563';
181
+ }
182
+ return baseStyles;
183
+ };
184
+ var styles = getThemeStyles();
185
+ var handleCardClick = function handleCardClick(card) {
186
+ setCurrentSection(card.title.toLowerCase());
187
+ };
188
+ var handleBackToDashboard = function handleBackToDashboard() {
189
+ setCurrentSection(null);
190
+ };
191
+ var renderAdminSection = function renderAdminSection() {
192
+ var sectionProps = {
193
+ projectId: projectId,
194
+ theme: theme === 'dark' ? 'dark' : 'blue'
195
+ };
196
+ switch (currentSection) {
197
+ case 'users':
198
+ return /*#__PURE__*/_react["default"].createElement(_admin["default"], _extends({}, sectionProps, {
199
+ showActions: true
200
+ }));
201
+ case 'functions':
202
+ return /*#__PURE__*/_react["default"].createElement(_admin2["default"], sectionProps);
203
+ case 'notifications':
204
+ return /*#__PURE__*/_react["default"].createElement(_admin3["default"], sectionProps);
205
+ case 'invoices':
206
+ return /*#__PURE__*/_react["default"].createElement(_admin4["default"], sectionProps);
207
+ case 'slides':
208
+ return /*#__PURE__*/_react["default"].createElement(_admin5["default"], sectionProps);
209
+ case 'forms':
210
+ return /*#__PURE__*/_react["default"].createElement(_admin6["default"], sectionProps);
211
+ case 'waitlist':
212
+ return /*#__PURE__*/_react["default"].createElement(_admin7["default"], sectionProps);
213
+ default:
214
+ return null;
215
+ }
216
+ };
217
+ if (!projectId) {
218
+ return /*#__PURE__*/_react["default"].createElement("div", {
219
+ style: _objectSpread(_objectSpread({}, styles.container), {}, {
220
+ textAlign: 'center',
221
+ padding: '40px'
222
+ })
223
+ }, /*#__PURE__*/_react["default"].createElement("p", {
224
+ style: {
225
+ color: '#6b7280',
226
+ fontSize: '16px'
227
+ }
228
+ }, "Project ID is required for admin functionality"));
229
+ }
230
+
231
+ // If a section is selected, show that section
232
+ if (currentSection) {
233
+ return /*#__PURE__*/_react["default"].createElement("div", {
234
+ style: styles.container
235
+ }, /*#__PURE__*/_react["default"].createElement("button", {
236
+ style: styles.backButton,
237
+ onClick: handleBackToDashboard
238
+ }, "\u2190 Back to Dashboard"), /*#__PURE__*/_react["default"].createElement("div", {
239
+ style: styles.header
240
+ }, /*#__PURE__*/_react["default"].createElement("h1", {
241
+ style: styles.title
242
+ }, currentSection.charAt(0).toUpperCase() + currentSection.slice(1), " Management"), /*#__PURE__*/_react["default"].createElement("p", {
243
+ style: styles.subtitle
244
+ }, "Manage your ", currentSection, " settings")), /*#__PURE__*/_react["default"].createElement("div", {
245
+ style: styles.sectionContainer
246
+ }, renderAdminSection()));
247
+ }
248
+
249
+ // Show the main dashboard
250
+ return /*#__PURE__*/_react["default"].createElement("div", {
251
+ style: styles.container
252
+ }, /*#__PURE__*/_react["default"].createElement("div", {
253
+ style: styles.header
254
+ }, /*#__PURE__*/_react["default"].createElement("h1", {
255
+ style: styles.title
256
+ }, "Admin Dashboard"), /*#__PURE__*/_react["default"].createElement("p", {
257
+ style: styles.subtitle
258
+ }, "Manage your project settings and users")), /*#__PURE__*/_react["default"].createElement("div", {
259
+ style: styles.grid
260
+ }, adminCards.map(function (card, index) {
261
+ return /*#__PURE__*/_react["default"].createElement("div", {
262
+ key: card.href || index,
263
+ style: styles.card,
264
+ onMouseEnter: function onMouseEnter(e) {
265
+ e.currentTarget.style.transform = styles.cardHover.transform;
266
+ e.currentTarget.style.boxShadow = styles.cardHover.boxShadow;
267
+ },
268
+ onMouseLeave: function onMouseLeave(e) {
269
+ e.currentTarget.style.transform = 'none';
270
+ e.currentTarget.style.boxShadow = styles.card.boxShadow;
271
+ },
272
+ onClick: function onClick() {
273
+ return handleCardClick(card);
274
+ }
275
+ }, /*#__PURE__*/_react["default"].createElement("div", {
276
+ style: styles.cardHeader
277
+ }, card.icon && /*#__PURE__*/_react["default"].createElement("div", {
278
+ style: _objectSpread(_objectSpread({}, styles.cardIcon), {}, {
279
+ color: '#3b82f6'
280
+ })
281
+ }, /*#__PURE__*/_react["default"].createElement(card.icon)), /*#__PURE__*/_react["default"].createElement("h3", {
282
+ style: styles.cardTitle
283
+ }, card.title)), /*#__PURE__*/_react["default"].createElement("p", {
284
+ style: styles.cardDescription
285
+ }, card.description), /*#__PURE__*/_react["default"].createElement("button", {
286
+ style: styles.cardButton,
287
+ onMouseEnter: function onMouseEnter(e) {
288
+ e.target.style.background = styles.cardButtonHover.background;
289
+ },
290
+ onMouseLeave: function onMouseLeave(e) {
291
+ e.target.style.background = styles.cardButton.background;
292
+ }
293
+ }, "Manage ", card.title));
294
+ })), /*#__PURE__*/_react["default"].createElement("div", {
295
+ style: styles.statsCard
296
+ }, /*#__PURE__*/_react["default"].createElement("div", {
297
+ style: styles.cardHeader
298
+ }, /*#__PURE__*/_react["default"].createElement("h3", {
299
+ style: styles.cardTitle
300
+ }, "Quick Stats")), /*#__PURE__*/_react["default"].createElement("div", {
301
+ style: styles.statsGrid
302
+ }, /*#__PURE__*/_react["default"].createElement("div", {
303
+ style: styles.statItem
304
+ }, /*#__PURE__*/_react["default"].createElement("div", {
305
+ style: styles.statValue
306
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
307
+ style: styles.statLabel
308
+ }, "Total Users")), /*#__PURE__*/_react["default"].createElement("div", {
309
+ style: styles.statItem
310
+ }, /*#__PURE__*/_react["default"].createElement("div", {
311
+ style: styles.statValue
312
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
313
+ style: styles.statLabel
314
+ }, "Active Projects")), /*#__PURE__*/_react["default"].createElement("div", {
315
+ style: styles.statItem
316
+ }, /*#__PURE__*/_react["default"].createElement("div", {
317
+ style: styles.statValue
318
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
319
+ style: styles.statLabel
320
+ }, "Pending Tasks")))));
321
+ };
322
+ AdminDashboard.propTypes = {
323
+ projectId: _propTypes["default"].string.isRequired,
324
+ adminCards: _propTypes["default"].arrayOf(_propTypes["default"].shape({
325
+ title: _propTypes["default"].string.isRequired,
326
+ description: _propTypes["default"].string.isRequired,
327
+ icon: _propTypes["default"].elementType
328
+ })),
329
+ theme: _propTypes["default"].oneOf(['default', 'dark'])
330
+ };
331
+ var _default = exports["default"] = AdminDashboard;
@@ -0,0 +1,323 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _admin = _interopRequireDefault(require("../users/admin"));
11
+ var _admin2 = _interopRequireDefault(require("../functions/admin"));
12
+ var _admin3 = _interopRequireDefault(require("../notifications/admin"));
13
+ var _admin4 = _interopRequireDefault(require("../invoices/admin"));
14
+ var _admin5 = _interopRequireDefault(require("../slides/admin"));
15
+ var _admin6 = _interopRequireDefault(require("../forms/admin"));
16
+ var _admin7 = _interopRequireDefault(require("../waitlists/admin"));
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
22
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
23
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
24
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
25
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
26
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
28
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
29
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // Import all admin components
31
+ var AdminDashboard = function AdminDashboard(_ref) {
32
+ var projectId = _ref.projectId,
33
+ _ref$sections = _ref.sections,
34
+ sections = _ref$sections === void 0 ? [] : _ref$sections,
35
+ _ref$theme = _ref.theme,
36
+ theme = _ref$theme === void 0 ? "default" : _ref$theme;
37
+ var _useState = (0, _react.useState)(null),
38
+ _useState2 = _slicedToArray(_useState, 2),
39
+ currentSection = _useState2[0],
40
+ setCurrentSection = _useState2[1];
41
+ var getThemeStyles = function getThemeStyles() {
42
+ var baseStyles = {
43
+ container: {
44
+ fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
45
+ padding: '24px',
46
+ maxWidth: '1200px',
47
+ margin: '0 auto'
48
+ },
49
+ header: {
50
+ marginBottom: '32px'
51
+ },
52
+ title: {
53
+ fontSize: '32px',
54
+ fontWeight: '800',
55
+ color: '#1f2937',
56
+ margin: '0 0 8px 0',
57
+ lineHeight: '1.2'
58
+ },
59
+ subtitle: {
60
+ fontSize: '16px',
61
+ color: '#6b7280',
62
+ margin: '0'
63
+ },
64
+ backButton: {
65
+ background: 'none',
66
+ border: 'none',
67
+ color: '#3b82f6',
68
+ fontSize: '16px',
69
+ cursor: 'pointer',
70
+ padding: '8px 0',
71
+ marginBottom: '16px',
72
+ display: 'flex',
73
+ alignItems: 'center',
74
+ gap: '8px'
75
+ },
76
+ grid: {
77
+ display: 'grid',
78
+ gridTemplateColumns: 'repeat(auto-fit, minmax(300px, 1fr))',
79
+ gap: '24px',
80
+ marginBottom: '32px'
81
+ },
82
+ card: {
83
+ background: '#ffffff',
84
+ border: '1px solid #e5e7eb',
85
+ borderRadius: '12px',
86
+ padding: '24px',
87
+ transition: 'all 0.2s ease',
88
+ cursor: 'pointer',
89
+ boxShadow: '0 1px 3px rgba(0, 0, 0, 0.1)'
90
+ },
91
+ cardHover: {
92
+ boxShadow: '0 4px 12px rgba(0, 0, 0, 0.15)',
93
+ transform: 'translateY(-2px)'
94
+ },
95
+ cardHeader: {
96
+ display: 'flex',
97
+ alignItems: 'center',
98
+ marginBottom: '16px'
99
+ },
100
+ cardIcon: {
101
+ width: '24px',
102
+ height: '24px',
103
+ marginRight: '12px'
104
+ },
105
+ cardTitle: {
106
+ fontSize: '18px',
107
+ fontWeight: '600',
108
+ color: '#1f2937',
109
+ margin: '0'
110
+ },
111
+ cardDescription: {
112
+ fontSize: '14px',
113
+ color: '#6b7280',
114
+ margin: '0 0 16px 0',
115
+ lineHeight: '1.5'
116
+ },
117
+ cardButton: {
118
+ width: '100%',
119
+ padding: '12px 16px',
120
+ background: '#3b82f6',
121
+ color: '#ffffff',
122
+ border: 'none',
123
+ borderRadius: '8px',
124
+ fontSize: '14px',
125
+ fontWeight: '500',
126
+ cursor: 'pointer',
127
+ transition: 'background-color 0.2s ease'
128
+ },
129
+ cardButtonHover: {
130
+ background: '#2563eb'
131
+ },
132
+ statsCard: {
133
+ background: '#ffffff',
134
+ border: '1px solid #e5e7eb',
135
+ borderRadius: '12px',
136
+ padding: '24px',
137
+ marginTop: '32px'
138
+ },
139
+ statsGrid: {
140
+ display: 'grid',
141
+ gridTemplateColumns: 'repeat(auto-fit, minmax(150px, 1fr))',
142
+ gap: '16px'
143
+ },
144
+ statItem: {
145
+ textAlign: 'center'
146
+ },
147
+ statValue: {
148
+ fontSize: '24px',
149
+ fontWeight: '700',
150
+ color: '#3b82f6',
151
+ margin: '0 0 4px 0'
152
+ },
153
+ statLabel: {
154
+ fontSize: '14px',
155
+ color: '#6b7280',
156
+ margin: '0'
157
+ },
158
+ sectionContainer: {
159
+ background: '#ffffff',
160
+ border: '1px solid #e5e7eb',
161
+ borderRadius: '12px',
162
+ padding: '24px',
163
+ marginTop: '16px'
164
+ }
165
+ };
166
+
167
+ // Theme variations
168
+ if (theme === 'dark') {
169
+ baseStyles.container.backgroundColor = '#1f2937';
170
+ baseStyles.title.color = '#f9fafb';
171
+ baseStyles.subtitle.color = '#9ca3af';
172
+ baseStyles.card.backgroundColor = '#374151';
173
+ baseStyles.card.borderColor = '#4b5563';
174
+ baseStyles.cardTitle.color = '#f9fafb';
175
+ baseStyles.cardDescription.color = '#9ca3af';
176
+ baseStyles.statsCard.backgroundColor = '#374151';
177
+ baseStyles.statsCard.borderColor = '#4b5563';
178
+ baseStyles.statLabel.color = '#9ca3af';
179
+ baseStyles.sectionContainer.backgroundColor = '#374151';
180
+ baseStyles.sectionContainer.borderColor = '#4b5563';
181
+ }
182
+ return baseStyles;
183
+ };
184
+ var styles = getThemeStyles();
185
+ var handleCardClick = function handleCardClick(section) {
186
+ setCurrentSection(section.toLowerCase());
187
+ };
188
+ var handleBackToDashboard = function handleBackToDashboard() {
189
+ setCurrentSection(null);
190
+ };
191
+ var renderAdminSection = function renderAdminSection() {
192
+ var sectionProps = {
193
+ projectId: projectId,
194
+ theme: theme === 'dark' ? 'dark' : 'blue'
195
+ };
196
+ switch (currentSection) {
197
+ case 'users':
198
+ return /*#__PURE__*/_react["default"].createElement(_admin["default"], _extends({}, sectionProps, {
199
+ showActions: true
200
+ }));
201
+ case 'functions':
202
+ return /*#__PURE__*/_react["default"].createElement(_admin2["default"], sectionProps);
203
+ case 'notifications':
204
+ return /*#__PURE__*/_react["default"].createElement(_admin3["default"], sectionProps);
205
+ case 'invoices':
206
+ return /*#__PURE__*/_react["default"].createElement(_admin4["default"], sectionProps);
207
+ case 'slides':
208
+ return /*#__PURE__*/_react["default"].createElement(_admin5["default"], sectionProps);
209
+ case 'forms':
210
+ return /*#__PURE__*/_react["default"].createElement(_admin6["default"], sectionProps);
211
+ case 'waitlist':
212
+ return /*#__PURE__*/_react["default"].createElement(_admin7["default"], sectionProps);
213
+ default:
214
+ return null;
215
+ }
216
+ };
217
+ if (!projectId) {
218
+ return /*#__PURE__*/_react["default"].createElement("div", {
219
+ style: _objectSpread(_objectSpread({}, styles.container), {}, {
220
+ textAlign: 'center',
221
+ padding: '40px'
222
+ })
223
+ }, /*#__PURE__*/_react["default"].createElement("p", {
224
+ style: {
225
+ color: '#6b7280',
226
+ fontSize: '16px'
227
+ }
228
+ }, "Project ID is required for admin functionality"));
229
+ }
230
+
231
+ // If a section is selected, show that section
232
+ if (currentSection) {
233
+ return /*#__PURE__*/_react["default"].createElement("div", {
234
+ style: styles.container
235
+ }, /*#__PURE__*/_react["default"].createElement("button", {
236
+ style: styles.backButton,
237
+ onClick: handleBackToDashboard
238
+ }, "\u2190 Back to Dashboard"), /*#__PURE__*/_react["default"].createElement("div", {
239
+ style: styles.header
240
+ }, /*#__PURE__*/_react["default"].createElement("h1", {
241
+ style: styles.title
242
+ }, currentSection.charAt(0).toUpperCase() + currentSection.slice(1), " Management"), /*#__PURE__*/_react["default"].createElement("p", {
243
+ style: styles.subtitle
244
+ }, "Manage your ", currentSection, " settings")), /*#__PURE__*/_react["default"].createElement("div", {
245
+ style: styles.sectionContainer
246
+ }, renderAdminSection()));
247
+ }
248
+
249
+ // Show the main dashboard
250
+ return /*#__PURE__*/_react["default"].createElement("div", {
251
+ style: styles.container
252
+ }, /*#__PURE__*/_react["default"].createElement("div", {
253
+ style: styles.header
254
+ }, /*#__PURE__*/_react["default"].createElement("h1", {
255
+ style: styles.title
256
+ }, "Admin Dashboard"), /*#__PURE__*/_react["default"].createElement("p", {
257
+ style: styles.subtitle
258
+ }, "Manage your project settings and users")), /*#__PURE__*/_react["default"].createElement("div", {
259
+ style: styles.grid
260
+ }, sections.map(function (section, index) {
261
+ return /*#__PURE__*/_react["default"].createElement("div", {
262
+ key: section,
263
+ style: styles.card,
264
+ onMouseEnter: function onMouseEnter(e) {
265
+ e.currentTarget.style.transform = styles.cardHover.transform;
266
+ e.currentTarget.style.boxShadow = styles.cardHover.boxShadow;
267
+ },
268
+ onMouseLeave: function onMouseLeave(e) {
269
+ e.currentTarget.style.transform = 'none';
270
+ e.currentTarget.style.boxShadow = styles.card.boxShadow;
271
+ },
272
+ onClick: function onClick() {
273
+ return handleCardClick(section);
274
+ }
275
+ }, /*#__PURE__*/_react["default"].createElement("div", {
276
+ style: styles.cardHeader
277
+ }, /*#__PURE__*/_react["default"].createElement("h3", {
278
+ style: styles.cardTitle
279
+ }, section)), /*#__PURE__*/_react["default"].createElement("p", {
280
+ style: styles.cardDescription
281
+ }, "Manage your ", section.toLowerCase(), " settings"), /*#__PURE__*/_react["default"].createElement("button", {
282
+ style: styles.cardButton,
283
+ onMouseEnter: function onMouseEnter(e) {
284
+ e.target.style.background = styles.cardButtonHover.background;
285
+ },
286
+ onMouseLeave: function onMouseLeave(e) {
287
+ e.target.style.background = styles.cardButton.background;
288
+ }
289
+ }, "Manage ", section));
290
+ })), /*#__PURE__*/_react["default"].createElement("div", {
291
+ style: styles.statsCard
292
+ }, /*#__PURE__*/_react["default"].createElement("div", {
293
+ style: styles.cardHeader
294
+ }, /*#__PURE__*/_react["default"].createElement("h3", {
295
+ style: styles.cardTitle
296
+ }, "Quick Stats")), /*#__PURE__*/_react["default"].createElement("div", {
297
+ style: styles.statsGrid
298
+ }, /*#__PURE__*/_react["default"].createElement("div", {
299
+ style: styles.statItem
300
+ }, /*#__PURE__*/_react["default"].createElement("div", {
301
+ style: styles.statValue
302
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
303
+ style: styles.statLabel
304
+ }, "Total Users")), /*#__PURE__*/_react["default"].createElement("div", {
305
+ style: styles.statItem
306
+ }, /*#__PURE__*/_react["default"].createElement("div", {
307
+ style: styles.statValue
308
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
309
+ style: styles.statLabel
310
+ }, "Active Projects")), /*#__PURE__*/_react["default"].createElement("div", {
311
+ style: styles.statItem
312
+ }, /*#__PURE__*/_react["default"].createElement("div", {
313
+ style: styles.statValue
314
+ }, "0"), /*#__PURE__*/_react["default"].createElement("div", {
315
+ style: styles.statLabel
316
+ }, "Pending Tasks")))));
317
+ };
318
+ AdminDashboard.propTypes = {
319
+ projectId: _propTypes["default"].string.isRequired,
320
+ sections: _propTypes["default"].arrayOf(_propTypes["default"].string),
321
+ theme: _propTypes["default"].oneOf(['default', 'dark'])
322
+ };
323
+ var _default = exports["default"] = AdminDashboard;
package/dist/index.js CHANGED
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "PowrBaseActivities", {
9
9
  return _activities["default"];
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "PowrBaseAdmin", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _admin["default"];
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "PowrBaseBlogs", {
13
19
  enumerable: true,
14
20
  get: function get() {
@@ -33,30 +39,12 @@ Object.defineProperty(exports, "PowrBaseForm", {
33
39
  return _forms["default"];
34
40
  }
35
41
  });
36
- Object.defineProperty(exports, "PowrBaseFormsAdmin", {
37
- enumerable: true,
38
- get: function get() {
39
- return _admin2["default"];
40
- }
41
- });
42
- Object.defineProperty(exports, "PowrBaseFunctionsAdmin", {
43
- enumerable: true,
44
- get: function get() {
45
- return _admin7["default"];
46
- }
47
- });
48
42
  Object.defineProperty(exports, "PowrBaseInvoice", {
49
43
  enumerable: true,
50
44
  get: function get() {
51
45
  return _invoices["default"];
52
46
  }
53
47
  });
54
- Object.defineProperty(exports, "PowrBaseInvoicesAdmin", {
55
- enumerable: true,
56
- get: function get() {
57
- return _admin4["default"];
58
- }
59
- });
60
48
  Object.defineProperty(exports, "PowrBaseLike", {
61
49
  enumerable: true,
62
50
  get: function get() {
@@ -69,24 +57,12 @@ Object.defineProperty(exports, "PowrBaseLogin", {
69
57
  return _auth["default"];
70
58
  }
71
59
  });
72
- Object.defineProperty(exports, "PowrBaseNotificationsAdmin", {
73
- enumerable: true,
74
- get: function get() {
75
- return _admin5["default"];
76
- }
77
- });
78
60
  Object.defineProperty(exports, "PowrBaseReviews", {
79
61
  enumerable: true,
80
62
  get: function get() {
81
63
  return _reviews["default"];
82
64
  }
83
65
  });
84
- Object.defineProperty(exports, "PowrBaseSlidesAdmin", {
85
- enumerable: true,
86
- get: function get() {
87
- return _admin3["default"];
88
- }
89
- });
90
66
  Object.defineProperty(exports, "PowrBaseSwiper", {
91
67
  enumerable: true,
92
68
  get: function get() {
@@ -99,12 +75,6 @@ Object.defineProperty(exports, "PowrBaseUploader", {
99
75
  return _uploader["default"];
100
76
  }
101
77
  });
102
- Object.defineProperty(exports, "PowrBaseUsersAdmin", {
103
- enumerable: true,
104
- get: function get() {
105
- return _admin6["default"];
106
- }
107
- });
108
78
  Object.defineProperty(exports, "PowrBaseWaitlist", {
109
79
  enumerable: true,
110
80
  get: function get() {
@@ -117,12 +87,6 @@ Object.defineProperty(exports, "PowrTable", {
117
87
  return _table["default"];
118
88
  }
119
89
  });
120
- Object.defineProperty(exports, "PowrWaitListAdmin", {
121
- enumerable: true,
122
- get: function get() {
123
- return _admin["default"];
124
- }
125
- });
126
90
  var _table = _interopRequireDefault(require("./table"));
127
91
  var _swiper = _interopRequireDefault(require("./swiper"));
128
92
  var _reviews = _interopRequireDefault(require("./reviews"));
@@ -136,11 +100,5 @@ var _likes = _interopRequireDefault(require("./likes"));
136
100
  var _auth = _interopRequireDefault(require("./auth"));
137
101
  var _forms = _interopRequireDefault(require("./forms"));
138
102
  var _chat = _interopRequireDefault(require("./chat"));
139
- var _admin = _interopRequireDefault(require("./waitlists/admin"));
140
- var _admin2 = _interopRequireDefault(require("./forms/admin"));
141
- var _admin3 = _interopRequireDefault(require("./slides/admin"));
142
- var _admin4 = _interopRequireDefault(require("./invoices/admin"));
143
- var _admin5 = _interopRequireDefault(require("./notifications/admin"));
144
- var _admin6 = _interopRequireDefault(require("./users/admin"));
145
- var _admin7 = _interopRequireDefault(require("./functions/admin"));
103
+ var _admin = _interopRequireDefault(require("./admin"));
146
104
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "powr-sdk-web",
3
- "version": "3.1.1",
3
+ "version": "3.2.2",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "build": "babel src -d dist --copy-files",