powr-sdk-web 2.0.16 → 2.2.0

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.
@@ -1,351 +0,0 @@
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
- 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 _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
10
- function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
11
- function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
12
- function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
13
- function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
14
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
15
- 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."); }
16
- 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; } }
17
- 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; }
18
- 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; } }
19
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
20
- var FormDisplay = function FormDisplay(_ref) {
21
- var formName = _ref.formName,
22
- projectId = _ref.projectId,
23
- _ref$apiUrl = _ref.apiUrl,
24
- apiUrl = _ref$apiUrl === void 0 ? 'https://api.powrbase.cloud/forms' : _ref$apiUrl,
25
- _ref$className = _ref.className,
26
- className = _ref$className === void 0 ? "" : _ref$className,
27
- _ref$theme = _ref.theme,
28
- theme = _ref$theme === void 0 ? "purple" : _ref$theme;
29
- var _useState = (0, _react.useState)([]),
30
- _useState2 = _slicedToArray(_useState, 2),
31
- responses = _useState2[0],
32
- setResponses = _useState2[1];
33
- var _useState3 = (0, _react.useState)(true),
34
- _useState4 = _slicedToArray(_useState3, 2),
35
- loading = _useState4[0],
36
- setLoading = _useState4[1];
37
- var _useState5 = (0, _react.useState)(''),
38
- _useState6 = _slicedToArray(_useState5, 2),
39
- error = _useState6[0],
40
- setError = _useState6[1];
41
- var _useState7 = (0, _react.useState)(0),
42
- _useState8 = _slicedToArray(_useState7, 2),
43
- responseCount = _useState8[0],
44
- setResponseCount = _useState8[1];
45
- (0, _react.useEffect)(function () {
46
- var fetchFormResponses = /*#__PURE__*/function () {
47
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
48
- var response, data, _t;
49
- return _regenerator().w(function (_context) {
50
- while (1) switch (_context.n) {
51
- case 0:
52
- if (!(!formName || !projectId)) {
53
- _context.n = 1;
54
- break;
55
- }
56
- setError('Form name and project ID are required');
57
- setLoading(false);
58
- return _context.a(2);
59
- case 1:
60
- _context.p = 1;
61
- setLoading(true);
62
- setError('');
63
- _context.n = 2;
64
- return fetch("".concat(apiUrl, "/getCount/").concat(formName, "?projectId=").concat(projectId), {
65
- method: 'GET',
66
- headers: {
67
- 'Content-Type': 'application/json'
68
- }
69
- });
70
- case 2:
71
- response = _context.v;
72
- if (response.ok) {
73
- _context.n = 3;
74
- break;
75
- }
76
- throw new Error('Failed to fetch form responses');
77
- case 3:
78
- _context.n = 4;
79
- return response.json();
80
- case 4:
81
- data = _context.v;
82
- if (!data.success) {
83
- _context.n = 5;
84
- break;
85
- }
86
- setResponses(data.data || []);
87
- setResponseCount(data.count || 0);
88
- _context.n = 6;
89
- break;
90
- case 5:
91
- throw new Error(data.message || 'Failed to load form responses');
92
- case 6:
93
- _context.n = 8;
94
- break;
95
- case 7:
96
- _context.p = 7;
97
- _t = _context.v;
98
- setError(_t.message || 'Something went wrong');
99
- console.error('Error fetching form responses:', _t);
100
- case 8:
101
- _context.p = 8;
102
- setLoading(false);
103
- return _context.f(8);
104
- case 9:
105
- return _context.a(2);
106
- }
107
- }, _callee, null, [[1, 7, 8, 9]]);
108
- }));
109
- return function fetchFormResponses() {
110
- return _ref2.apply(this, arguments);
111
- };
112
- }();
113
- fetchFormResponses();
114
- }, [formName, projectId, apiUrl]);
115
- var renderResponseField = function renderResponseField(key, value, index) {
116
- var skipFields = ['_id', 'formName', 'projectId', 'submittedAt', '__v'];
117
- if (skipFields.includes(key)) return null;
118
- var fieldName = key.replace(/([A-Z])/g, ' $1').trim();
119
- var capitalizedFieldName = fieldName.charAt(0).toUpperCase() + fieldName.slice(1);
120
- return /*#__PURE__*/_react["default"].createElement("div", {
121
- key: key,
122
- className: "group"
123
- }, /*#__PURE__*/_react["default"].createElement("div", {
124
- className: "flex items-start space-x-3"
125
- }, /*#__PURE__*/_react["default"].createElement("div", {
126
- className: "w-1 h-6 bg-".concat(theme, "-200 rounded-full mt-1")
127
- }), /*#__PURE__*/_react["default"].createElement("div", {
128
- className: "flex-1"
129
- }, /*#__PURE__*/_react["default"].createElement("label", {
130
- className: "block text-sm font-medium text-gray-700 mb-2"
131
- }, capitalizedFieldName, (key === 'email' || key === 'universityRollNumber' || key === 'universityName' || key === 'city' || key === 'whatsapp' || key === 'academicYear' || key === 'course' || key === 'paymentProof') && /*#__PURE__*/_react["default"].createElement("span", {
132
- className: "text-red-500 ml-1"
133
- }, "*")), /*#__PURE__*/_react["default"].createElement("div", {
134
- className: "bg-gray-50 rounded-lg p-3 border border-gray-200"
135
- }, key === 'paymentProof' ? /*#__PURE__*/_react["default"].createElement("div", {
136
- className: "flex items-center space-x-2"
137
- }, /*#__PURE__*/_react["default"].createElement("svg", {
138
- className: "h-4 w-4 text-gray-500",
139
- fill: "none",
140
- stroke: "currentColor",
141
- viewBox: "0 0 24 24"
142
- }, /*#__PURE__*/_react["default"].createElement("path", {
143
- strokeLinecap: "round",
144
- strokeLinejoin: "round",
145
- strokeWidth: 2,
146
- d: "M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"
147
- })), /*#__PURE__*/_react["default"].createElement("p", {
148
- className: "text-sm text-gray-900"
149
- }, String(value))) : /*#__PURE__*/_react["default"].createElement("p", {
150
- className: "text-sm text-gray-900"
151
- }, String(value) || 'No response provided')))));
152
- };
153
- if (loading) {
154
- return /*#__PURE__*/_react["default"].createElement("div", {
155
- style: {
156
- display: 'flex',
157
- justifyContent: 'center',
158
- alignItems: 'center',
159
- padding: '40px',
160
- color: '#666'
161
- }
162
- }, "Loading form responses...");
163
- }
164
- if (error) {
165
- return /*#__PURE__*/_react["default"].createElement("div", {
166
- style: {
167
- padding: '20px',
168
- color: '#e74c3c',
169
- textAlign: 'center',
170
- background: '#fdf2f2',
171
- borderRadius: '8px',
172
- border: '1px solid #fecaca'
173
- }
174
- }, error);
175
- }
176
- if (responseCount === 0) {
177
- return /*#__PURE__*/_react["default"].createElement("div", {
178
- style: {
179
- padding: '40px',
180
- textAlign: 'center',
181
- color: '#666',
182
- background: '#f9fafb',
183
- borderRadius: '8px'
184
- }
185
- }, /*#__PURE__*/_react["default"].createElement("div", {
186
- style: {
187
- width: '64px',
188
- height: '64px',
189
- margin: '0 auto 16px',
190
- background: '#f3f4f6',
191
- borderRadius: '50%',
192
- display: 'flex',
193
- alignItems: 'center',
194
- justifyContent: 'center'
195
- }
196
- }, /*#__PURE__*/_react["default"].createElement("svg", {
197
- style: {
198
- width: '32px',
199
- height: '32px',
200
- color: '#9ca3af'
201
- },
202
- fill: "none",
203
- stroke: "currentColor",
204
- viewBox: "0 0 24 24"
205
- }, /*#__PURE__*/_react["default"].createElement("path", {
206
- strokeLinecap: "round",
207
- strokeLinejoin: "round",
208
- strokeWidth: 2,
209
- d: "M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197m13.5-9a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"
210
- }))), /*#__PURE__*/_react["default"].createElement("h3", {
211
- style: {
212
- marginBottom: '12px',
213
- color: '#374151',
214
- fontSize: '20px',
215
- fontWeight: '500'
216
- }
217
- }, "No responses yet"), /*#__PURE__*/_react["default"].createElement("p", null, "When people fill out this form, their responses will appear here."));
218
- }
219
- var bgColor = theme === "purple" ? "bg-[#f3eaff]" : "bg-".concat(theme, "-50");
220
- var borderColor = theme === "purple" ? "border-purple-600" : "border-".concat(theme, "-600");
221
- var buttonColor = theme === "purple" ? "bg-purple-600 hover:bg-purple-700" : "bg-".concat(theme, "-600 hover:bg-").concat(theme, "-700");
222
- return /*#__PURE__*/_react["default"].createElement("div", {
223
- style: {
224
- maxWidth: '800px',
225
- margin: '0 auto',
226
- background: '#fff',
227
- borderRadius: '12px',
228
- boxShadow: '0 2px 12px rgba(0,0,0,0.07)',
229
- overflow: 'hidden'
230
- }
231
- }, /*#__PURE__*/_react["default"].createElement("div", {
232
- style: {
233
- padding: '24px',
234
- borderBottom: '1px solid #e5e7eb',
235
- background: '#f9fafb'
236
- }
237
- }, /*#__PURE__*/_react["default"].createElement("h2", {
238
- style: {
239
- margin: 0,
240
- fontSize: '20px',
241
- fontWeight: '600',
242
- color: '#111827'
243
- }
244
- }, "Form Responses (", responseCount, ")"), /*#__PURE__*/_react["default"].createElement("p", {
245
- style: {
246
- margin: '8px 0 0 0',
247
- color: '#6b7280',
248
- fontSize: '14px'
249
- }
250
- }, "Responses for form: ", formName)), /*#__PURE__*/_react["default"].createElement("div", {
251
- style: {
252
- maxHeight: '600px',
253
- overflowY: 'auto'
254
- }
255
- }, responses.map(function (response, index) {
256
- return /*#__PURE__*/_react["default"].createElement("div", {
257
- key: response._id || index,
258
- style: {
259
- padding: '24px',
260
- borderBottom: '1px solid #f3f4f6',
261
- background: index % 2 === 0 ? '#fff' : '#fafafa'
262
- }
263
- }, /*#__PURE__*/_react["default"].createElement("div", {
264
- style: {
265
- padding: '16px',
266
- borderBottom: '1px solid #f3f4f6',
267
- background: '#f9fafb',
268
- marginBottom: '16px',
269
- borderRadius: '8px'
270
- }
271
- }, /*#__PURE__*/_react["default"].createElement("div", {
272
- style: {
273
- display: 'flex',
274
- justifyContent: 'space-between',
275
- alignItems: 'center'
276
- }
277
- }, /*#__PURE__*/_react["default"].createElement("div", {
278
- style: {
279
- display: 'flex',
280
- alignItems: 'center',
281
- gap: '12px'
282
- }
283
- }, /*#__PURE__*/_react["default"].createElement("div", {
284
- style: {
285
- width: '32px',
286
- height: '32px',
287
- background: '#dbeafe',
288
- borderRadius: '50%',
289
- display: 'flex',
290
- alignItems: 'center',
291
- justifyContent: 'center'
292
- }
293
- }, /*#__PURE__*/_react["default"].createElement("span", {
294
- style: {
295
- fontSize: '14px',
296
- fontWeight: '500',
297
- color: '#2563eb'
298
- }
299
- }, index + 1)), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("h4", {
300
- style: {
301
- fontWeight: '500',
302
- color: '#111827',
303
- margin: '0 0 4px 0'
304
- }
305
- }, response.firstName && response.lastName ? "".concat(response.firstName, " ").concat(response.lastName) : "Response #".concat(index + 1)), /*#__PURE__*/_react["default"].createElement("p", {
306
- style: {
307
- fontSize: '12px',
308
- color: '#6b7280',
309
- margin: 0
310
- }
311
- }, response.email, " \u2022 ", response.submittedAt ? new Date(response.submittedAt).toLocaleString() : 'N/A'))), /*#__PURE__*/_react["default"].createElement("div", {
312
- style: {
313
- padding: '4px 8px',
314
- background: '#dcfce7',
315
- color: '#166534',
316
- borderRadius: '12px',
317
- fontSize: '12px',
318
- fontWeight: '500'
319
- }
320
- }, "Submitted"))), /*#__PURE__*/_react["default"].createElement("div", {
321
- style: {
322
- padding: '0 16px'
323
- }
324
- }, /*#__PURE__*/_react["default"].createElement("div", {
325
- style: {
326
- display: 'flex',
327
- flexDirection: 'column',
328
- gap: '24px'
329
- }
330
- }, Object.entries(response).map(function (_ref3) {
331
- var _ref4 = _slicedToArray(_ref3, 2),
332
- key = _ref4[0],
333
- value = _ref4[1];
334
- return renderResponseField(key, value, index);
335
- }))));
336
- })), responses.length > 0 && /*#__PURE__*/_react["default"].createElement("div", {
337
- style: {
338
- padding: '16px 24px',
339
- background: '#f9fafb',
340
- borderTop: '1px solid #e5e7eb',
341
- textAlign: 'center'
342
- }
343
- }, /*#__PURE__*/_react["default"].createElement("p", {
344
- style: {
345
- margin: 0,
346
- fontSize: '14px',
347
- color: '#6b7280'
348
- }
349
- }, "Showing ", responses.length, " of ", responseCount, " responses")));
350
- };
351
- var _default = exports["default"] = FormDisplay;