@apexcura/ui-components 0.0.12 → 0.0.13-Beta1
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.
- package/dist/index.css +440 -0
- package/dist/index.d.mts +50 -9
- package/dist/index.d.ts +50 -9
- package/dist/index.js +464 -24
- package/dist/index.mjs +463 -28
- package/package.json +12 -3
- package/postcss.config.js +6 -0
- package/tailwind.config.js +10 -0
package/dist/index.js
CHANGED
|
@@ -34,12 +34,17 @@ __export(src_exports, {
|
|
|
34
34
|
ButtonElement: () => ButtonElement,
|
|
35
35
|
CheckboxElement: () => CheckboxElement,
|
|
36
36
|
CkEditor: () => CkEditor,
|
|
37
|
+
DatePickerElement: () => DatePickerElement,
|
|
38
|
+
DateRangePickerElement: () => DateRangePickerElement,
|
|
37
39
|
MultipleSelectElement: () => MultipleSelectElement,
|
|
40
|
+
Navbar: () => Navbar,
|
|
38
41
|
NumberElement: () => NumberElement,
|
|
39
42
|
PasswordElement: () => PasswordElement,
|
|
40
43
|
RadioElement: () => RadioElement,
|
|
41
44
|
SelectElement: () => SelectElement,
|
|
45
|
+
Sidebar: () => Sidebar,
|
|
42
46
|
SingleSelectElement: () => SingleSelectElement,
|
|
47
|
+
TableElement: () => TableElement,
|
|
43
48
|
TextElement: () => TextElement,
|
|
44
49
|
TextareaElement: () => TextareaElement
|
|
45
50
|
});
|
|
@@ -49,7 +54,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
49
54
|
var import_react = __toESM(require("react"));
|
|
50
55
|
var import_antd = require("antd");
|
|
51
56
|
var TextElement = (props) => {
|
|
52
|
-
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("label", { htmlFor: props.name }, props.label), /* @__PURE__ */ import_react.default.createElement(
|
|
57
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, props.label && /* @__PURE__ */ import_react.default.createElement("label", { htmlFor: props.name }, props.label), /* @__PURE__ */ import_react.default.createElement(
|
|
53
58
|
import_antd.Input,
|
|
54
59
|
{
|
|
55
60
|
placeholder: props.placeholder,
|
|
@@ -62,7 +67,7 @@ var TextElement = (props) => {
|
|
|
62
67
|
type: props.type,
|
|
63
68
|
status: props.status,
|
|
64
69
|
style: props.styles,
|
|
65
|
-
className: props.
|
|
70
|
+
className: props.className,
|
|
66
71
|
variant: props.variant,
|
|
67
72
|
name: props.name,
|
|
68
73
|
onChange: (e) => props.onChange(e.target.value)
|
|
@@ -103,7 +108,7 @@ var NumberElement = (props) => {
|
|
|
103
108
|
const newValue = e.target.value.replace(/[^0-9]/g, "");
|
|
104
109
|
props.onChange(newValue);
|
|
105
110
|
};
|
|
106
|
-
return /* @__PURE__ */ import_react3.default.createElement(
|
|
111
|
+
return /* @__PURE__ */ import_react3.default.createElement(
|
|
107
112
|
import_antd3.Input,
|
|
108
113
|
{
|
|
109
114
|
placeholder: props.placeholder,
|
|
@@ -115,13 +120,12 @@ var NumberElement = (props) => {
|
|
|
115
120
|
prefix: props.prefix,
|
|
116
121
|
type: props.type,
|
|
117
122
|
status: props.status,
|
|
118
|
-
|
|
119
|
-
className: props.classNames,
|
|
123
|
+
className: props.className,
|
|
120
124
|
variant: props.variant,
|
|
121
125
|
name: props.name,
|
|
122
126
|
onChange: handleInputChange
|
|
123
127
|
}
|
|
124
|
-
)
|
|
128
|
+
);
|
|
125
129
|
};
|
|
126
130
|
|
|
127
131
|
// src/Components/TextareaElement.tsx
|
|
@@ -129,7 +133,7 @@ var import_react4 = __toESM(require("react"));
|
|
|
129
133
|
var import_antd4 = require("antd");
|
|
130
134
|
var { TextArea } = import_antd4.Input;
|
|
131
135
|
var TextareaElement = (props) => {
|
|
132
|
-
return /* @__PURE__ */ import_react4.default.createElement(import_antd4.Flex,
|
|
136
|
+
return /* @__PURE__ */ import_react4.default.createElement(import_antd4.Flex, null, /* @__PURE__ */ import_react4.default.createElement(
|
|
133
137
|
TextArea,
|
|
134
138
|
{
|
|
135
139
|
placeholder: props.placeholder,
|
|
@@ -138,8 +142,7 @@ var TextareaElement = (props) => {
|
|
|
138
142
|
disabled: props.disabled,
|
|
139
143
|
id: props.name,
|
|
140
144
|
status: props.status,
|
|
141
|
-
|
|
142
|
-
className: props.classNames,
|
|
145
|
+
className: props.className,
|
|
143
146
|
variant: props.variant,
|
|
144
147
|
name: props.name,
|
|
145
148
|
showCount: true,
|
|
@@ -177,7 +180,7 @@ var SelectElement = (props) => {
|
|
|
177
180
|
id: props.name,
|
|
178
181
|
status: props.status,
|
|
179
182
|
style: props.styles,
|
|
180
|
-
className: props.
|
|
183
|
+
className: props.className,
|
|
181
184
|
variant: props.variant,
|
|
182
185
|
onChange: handleChange
|
|
183
186
|
}
|
|
@@ -187,15 +190,45 @@ var SelectElement = (props) => {
|
|
|
187
190
|
// src/Components/RadioElement.tsx
|
|
188
191
|
var import_react6 = __toESM(require("react"));
|
|
189
192
|
var import_antd6 = require("antd");
|
|
193
|
+
var radioDefaultStyle = "bg-[#F2F2F2] border border-[#919191] rounded-[8px] m-[10px] hover:bg-[#F2F2F2] text-center text-black shadow-[0px_0px_1px_1px_#919191]";
|
|
194
|
+
var radioSelectedDefaultStyle = "bg-[#E2D6F8] border border-[#B8A4DE] rounded-[8px] p-[6px] m-[10px] shadow-[0px_0px_1px_1px_#B8A4DE] text-center text-black shadow-[0px_0px_1px_1px_#919191]";
|
|
190
195
|
var RadioElement = (props) => {
|
|
191
|
-
const
|
|
196
|
+
const [isDisabled, setIsDisabled] = (0, import_react6.useState)(props.disabled);
|
|
197
|
+
const [selectedValue, setSelectedValue] = (0, import_react6.useState)(props.value);
|
|
198
|
+
const optionType = props.optionType === "button" ? "button" : void 0;
|
|
199
|
+
const handleChange = (option) => {
|
|
200
|
+
console.log(option);
|
|
201
|
+
setSelectedValue(option);
|
|
202
|
+
setIsDisabled(true);
|
|
192
203
|
if (props.onChange) {
|
|
193
|
-
|
|
194
|
-
const selectedOptions = [{ id: selectedVal, value: selectedVal }];
|
|
195
|
-
props.onChange(selectedOptions);
|
|
204
|
+
props.onChange(option);
|
|
196
205
|
}
|
|
197
206
|
};
|
|
198
|
-
|
|
207
|
+
const getButtonStyle = (option) => {
|
|
208
|
+
return selectedValue === option.value ? `${radioSelectedDefaultStyle} ${props.activeClassName}` : `${radioDefaultStyle} ${props.className}`;
|
|
209
|
+
};
|
|
210
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", { className: props.containerClassName }, props.label && /* @__PURE__ */ import_react6.default.createElement("p", { className: props.labelClassName }, props.label), /* @__PURE__ */ import_react6.default.createElement(
|
|
211
|
+
import_antd6.Radio.Group,
|
|
212
|
+
{
|
|
213
|
+
optionType,
|
|
214
|
+
className: props.radioGroupClassName,
|
|
215
|
+
value: selectedValue
|
|
216
|
+
},
|
|
217
|
+
props.options && props.options.map((option) => /* @__PURE__ */ import_react6.default.createElement(
|
|
218
|
+
import_antd6.Radio,
|
|
219
|
+
{
|
|
220
|
+
onChange: () => {
|
|
221
|
+
handleChange(option);
|
|
222
|
+
},
|
|
223
|
+
key: option.value,
|
|
224
|
+
value: option.value,
|
|
225
|
+
disabled: isDisabled && selectedValue !== option.value,
|
|
226
|
+
className: getButtonStyle(option),
|
|
227
|
+
style: { pointerEvents: isDisabled && selectedValue !== option.value ? "none" : "auto" }
|
|
228
|
+
},
|
|
229
|
+
option.label
|
|
230
|
+
))
|
|
231
|
+
));
|
|
199
232
|
};
|
|
200
233
|
|
|
201
234
|
// src/Components/Checkbox.tsx
|
|
@@ -229,7 +262,7 @@ var CheckboxElement = (props) => {
|
|
|
229
262
|
disabled: props.disabled,
|
|
230
263
|
id: props.name,
|
|
231
264
|
style: props.styles,
|
|
232
|
-
className: props.
|
|
265
|
+
className: props.className,
|
|
233
266
|
onChange: onHandleAllChanges,
|
|
234
267
|
checked: checkAll
|
|
235
268
|
},
|
|
@@ -239,7 +272,7 @@ var CheckboxElement = (props) => {
|
|
|
239
272
|
{
|
|
240
273
|
disabled: props.disabled,
|
|
241
274
|
style: props.styles,
|
|
242
|
-
className: props.
|
|
275
|
+
className: props.className,
|
|
243
276
|
options: plainOptions,
|
|
244
277
|
value: checkedList,
|
|
245
278
|
onChange: handleChange
|
|
@@ -266,8 +299,7 @@ var CkEditor = (props) => {
|
|
|
266
299
|
{
|
|
267
300
|
apiKey: "rwpgt7maa54n0pe5mglhkl686p7h57sg6z636n6gf2mio1b9",
|
|
268
301
|
onInit: (_evt, editor) => {
|
|
269
|
-
if (editor)
|
|
270
|
-
editorRef.current = editor;
|
|
302
|
+
if (editor) editorRef.current = editor;
|
|
271
303
|
},
|
|
272
304
|
initialValue: "<p>This is the initial content of the editor.</p>",
|
|
273
305
|
init: {
|
|
@@ -355,16 +387,419 @@ var MultipleSelectElement = (props) => {
|
|
|
355
387
|
|
|
356
388
|
// src/Components/Button.tsx
|
|
357
389
|
var import_react12 = __toESM(require("react"));
|
|
358
|
-
var
|
|
359
|
-
|
|
390
|
+
var ButtonElement = (props) => {
|
|
391
|
+
const handleClick = typeof props.action === "string" ? () => {
|
|
392
|
+
console.log("Performing action:", props.action);
|
|
393
|
+
} : props.action;
|
|
394
|
+
return /* @__PURE__ */ import_react12.default.createElement(
|
|
395
|
+
"button",
|
|
396
|
+
{
|
|
397
|
+
onClick: handleClick,
|
|
398
|
+
className: `${props.className ? props.className : ""}`
|
|
399
|
+
},
|
|
400
|
+
props.icon && /* @__PURE__ */ import_react12.default.createElement("img", { src: props.icon }),
|
|
401
|
+
props.label
|
|
402
|
+
);
|
|
403
|
+
};
|
|
360
404
|
|
|
361
405
|
// src/Components/AddMoreTable.tsx
|
|
362
406
|
var import_react13 = __toESM(require("react"));
|
|
407
|
+
var import_antd10 = require("antd");
|
|
408
|
+
var import_icons2 = require("@ant-design/icons");
|
|
363
409
|
var AddMoreTable = (props) => {
|
|
364
410
|
const { thead, tbody } = props;
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
411
|
+
const [rows, setRows] = (0, import_react13.useState)(tbody || []);
|
|
412
|
+
const onHandleRows = () => {
|
|
413
|
+
const newId = rows.length > 0 ? rows[rows.length - 1].id + 1 : 1;
|
|
414
|
+
let newRow = {
|
|
415
|
+
id: newId,
|
|
416
|
+
label: "Medicine",
|
|
417
|
+
name: "Medicine",
|
|
418
|
+
type: "text",
|
|
419
|
+
element: "single-select",
|
|
420
|
+
variable_data: [
|
|
421
|
+
{
|
|
422
|
+
id: 1,
|
|
423
|
+
Route: { label: "Route", element: "single-select", type: "text" },
|
|
424
|
+
Dose: { label: "Dose", element: "single-select", type: "text" },
|
|
425
|
+
Frequency: { label: "Frequency", element: "single-select", type: "text" },
|
|
426
|
+
When: { label: "When", element: "textarea", type: "text" },
|
|
427
|
+
Duration: { label: "Duration", element: "textarea", type: "text" },
|
|
428
|
+
Instructions: { label: "Instructions", element: "textarea", type: "text" },
|
|
429
|
+
SubRows: { delete: "delete", add: "plus" }
|
|
430
|
+
}
|
|
431
|
+
]
|
|
432
|
+
};
|
|
433
|
+
setRows((prevData) => [...prevData, newRow]);
|
|
434
|
+
};
|
|
435
|
+
const onHandleDelete = (id) => {
|
|
436
|
+
setRows((prevRows) => prevRows.filter((row) => row.id !== id));
|
|
437
|
+
};
|
|
438
|
+
const onHandleSubRowsAdd = (rowIndex) => {
|
|
439
|
+
setRows((prevRows) => {
|
|
440
|
+
return prevRows.map((row, index) => {
|
|
441
|
+
if (index === rowIndex) {
|
|
442
|
+
const newSubRow = {
|
|
443
|
+
id: row.variable_data.length + 1,
|
|
444
|
+
Route: { label: "Route", element: "single-select", type: "text" },
|
|
445
|
+
Dose: { label: "Dose", element: "single-select", type: "text" },
|
|
446
|
+
Frequency: { label: "Frequency", element: "single-select", type: "text" },
|
|
447
|
+
When: { label: "When", element: "textarea", type: "text" },
|
|
448
|
+
Duration: { label: "Duration", element: "textarea", type: "text" },
|
|
449
|
+
Instructions: { label: "Instructions", element: "textarea", type: "text" },
|
|
450
|
+
SubRows: { delete: "delete", add: "plus" }
|
|
451
|
+
};
|
|
452
|
+
const updatedVariableData = [...row.variable_data, newSubRow];
|
|
453
|
+
return {
|
|
454
|
+
...row,
|
|
455
|
+
variable_data: updatedVariableData
|
|
456
|
+
};
|
|
457
|
+
}
|
|
458
|
+
return row;
|
|
459
|
+
});
|
|
460
|
+
});
|
|
461
|
+
};
|
|
462
|
+
const onHandleSubRowsDelete = (rowIndex, subIndex) => {
|
|
463
|
+
setRows((prevRows) => {
|
|
464
|
+
return prevRows.map((row, index) => {
|
|
465
|
+
if (index === rowIndex) {
|
|
466
|
+
const updatedVariableData = row.variable_data.filter((_, i) => i !== subIndex);
|
|
467
|
+
return {
|
|
468
|
+
...row,
|
|
469
|
+
variable_data: updatedVariableData
|
|
470
|
+
};
|
|
471
|
+
}
|
|
472
|
+
return row;
|
|
473
|
+
});
|
|
474
|
+
});
|
|
475
|
+
};
|
|
476
|
+
(0, import_react13.useEffect)(() => {
|
|
477
|
+
console.log(rows);
|
|
478
|
+
}, [rows]);
|
|
479
|
+
const renderInputElement = (element, value) => {
|
|
480
|
+
if (!element) return null;
|
|
481
|
+
const { element: type, label } = element;
|
|
482
|
+
if (type === "single-select") {
|
|
483
|
+
return /* @__PURE__ */ import_react13.default.createElement(SingleSelectElement, { onChange: (value2) => console.log(label, value2), optionType: "", className: void 0, selectedStyle: false, style: false });
|
|
484
|
+
} else if (type === "textarea") {
|
|
485
|
+
return /* @__PURE__ */ import_react13.default.createElement(TextareaElement, { onChange: (value2) => console.log(label, value2), optionType: "", className: void 0, selectedStyle: false, style: false });
|
|
486
|
+
} else {
|
|
487
|
+
return null;
|
|
488
|
+
}
|
|
489
|
+
};
|
|
490
|
+
const dataSource = rows.map((eachRow, rowIndex) => {
|
|
491
|
+
const rowData = {
|
|
492
|
+
key: eachRow.id,
|
|
493
|
+
"#": rowIndex + 1,
|
|
494
|
+
"Medicine": renderInputElement({
|
|
495
|
+
element: eachRow.element,
|
|
496
|
+
label: eachRow.label
|
|
497
|
+
})
|
|
498
|
+
};
|
|
499
|
+
eachRow.variable_data.forEach((variable, subIndex) => {
|
|
500
|
+
Object.keys(variable).forEach((key) => {
|
|
501
|
+
if (key === "SubRows") {
|
|
502
|
+
rowData[`${key}`] = /* @__PURE__ */ import_react13.default.createElement("div", { key: subIndex }, eachRow.variable_data.length > 1 && /* @__PURE__ */ import_react13.default.createElement(import_antd10.Button, { onClick: () => onHandleSubRowsDelete(rowIndex, subIndex) }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.DeleteOutlined, null)), subIndex === eachRow.variable_data.length - 1 && /* @__PURE__ */ import_react13.default.createElement(import_antd10.Button, { onClick: () => onHandleSubRowsAdd(rowIndex) }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.PlusOutlined, null)));
|
|
503
|
+
} else {
|
|
504
|
+
rowData[`${key}`] = renderInputElement(variable[key]);
|
|
505
|
+
}
|
|
506
|
+
});
|
|
507
|
+
});
|
|
508
|
+
rowData.actions = /* @__PURE__ */ import_react13.default.createElement("div", null, /* @__PURE__ */ import_react13.default.createElement(import_antd10.Button, { onClick: () => onHandleDelete(eachRow.id) }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.DeleteOutlined, null)), rowIndex === rows.length - 1 && /* @__PURE__ */ import_react13.default.createElement(import_antd10.Button, { onClick: onHandleRows }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.PlusOutlined, null)));
|
|
509
|
+
console.log("=====rowdata", rowData);
|
|
510
|
+
return rowData;
|
|
511
|
+
});
|
|
512
|
+
const columns = thead && thead.length > 0 ? thead.map((eachHeadEl) => ({
|
|
513
|
+
title: eachHeadEl.label,
|
|
514
|
+
dataIndex: eachHeadEl.name,
|
|
515
|
+
key: eachHeadEl.id
|
|
516
|
+
})) : [];
|
|
517
|
+
if (!columns.some((col) => col.dataIndex === "actions")) {
|
|
518
|
+
columns.push({
|
|
519
|
+
title: "Actions",
|
|
520
|
+
dataIndex: "actions",
|
|
521
|
+
key: "actions"
|
|
522
|
+
});
|
|
523
|
+
}
|
|
524
|
+
return /* @__PURE__ */ import_react13.default.createElement(
|
|
525
|
+
import_antd10.Table,
|
|
526
|
+
{
|
|
527
|
+
columns,
|
|
528
|
+
dataSource,
|
|
529
|
+
pagination: false,
|
|
530
|
+
bordered: true
|
|
531
|
+
}
|
|
532
|
+
);
|
|
533
|
+
};
|
|
534
|
+
|
|
535
|
+
// src/Components/Sidebar.tsx
|
|
536
|
+
var import_react14 = __toESM(require("react"));
|
|
537
|
+
var Sidebar = (props) => {
|
|
538
|
+
const handleChange = (item) => {
|
|
539
|
+
if (props.onChange) {
|
|
540
|
+
props.onChange(item);
|
|
541
|
+
}
|
|
542
|
+
};
|
|
543
|
+
return /* @__PURE__ */ import_react14.default.createElement("div", { className: props.className, key: props.name }, /* @__PURE__ */ import_react14.default.createElement("div", null, /* @__PURE__ */ import_react14.default.createElement("img", { src: props.img, alt: "logo" })), /* @__PURE__ */ import_react14.default.createElement("ul", { className: props.listClassName }, props.items?.map((item) => {
|
|
544
|
+
return /* @__PURE__ */ import_react14.default.createElement("li", { onClick: () => {
|
|
545
|
+
handleChange(item);
|
|
546
|
+
}, key: item.label, className: `${props.listItemClassName} ${item.active && props.activeClassName}` }, /* @__PURE__ */ import_react14.default.createElement("img", { src: item.icon, className: props.className }), /* @__PURE__ */ import_react14.default.createElement("p", null, item.label));
|
|
547
|
+
})));
|
|
548
|
+
};
|
|
549
|
+
|
|
550
|
+
// src/Components/Navbar.tsx
|
|
551
|
+
var import_react18 = __toESM(require("react"));
|
|
552
|
+
|
|
553
|
+
// src/Components/Notification.tsx
|
|
554
|
+
var import_react15 = __toESM(require("react"));
|
|
555
|
+
var import_antd11 = require("antd");
|
|
556
|
+
var import_io = require("react-icons/io");
|
|
557
|
+
var popoverContentStyle = {
|
|
558
|
+
minWidth: "300px",
|
|
559
|
+
maxWidth: "100%"
|
|
560
|
+
};
|
|
561
|
+
var Notification = (props) => /* @__PURE__ */ import_react15.default.createElement(
|
|
562
|
+
import_antd11.Popover,
|
|
563
|
+
{
|
|
564
|
+
className: props.className,
|
|
565
|
+
content: /* @__PURE__ */ import_react15.default.createElement("div", { style: popoverContentStyle }, " ", /* @__PURE__ */ import_react15.default.createElement(
|
|
566
|
+
import_antd11.List,
|
|
567
|
+
{
|
|
568
|
+
itemLayout: "horizontal",
|
|
569
|
+
dataSource: props.items,
|
|
570
|
+
renderItem: (item, index) => /* @__PURE__ */ import_react15.default.createElement(import_antd11.List.Item, { key: item.text }, /* @__PURE__ */ import_react15.default.createElement(
|
|
571
|
+
import_antd11.List.Item.Meta,
|
|
572
|
+
{
|
|
573
|
+
avatar: /* @__PURE__ */ import_react15.default.createElement(import_antd11.Avatar, { src: `https://api.dicebear.com/7.x/miniavs/svg?seed=${index}` }),
|
|
574
|
+
title: item.text,
|
|
575
|
+
description: item.time
|
|
576
|
+
}
|
|
577
|
+
))
|
|
578
|
+
}
|
|
579
|
+
)),
|
|
580
|
+
trigger: "focus",
|
|
581
|
+
placement: "bottomRight"
|
|
582
|
+
},
|
|
583
|
+
/* @__PURE__ */ import_react15.default.createElement(import_antd11.Button, { className: props.buttonClassName }, /* @__PURE__ */ import_react15.default.createElement(import_antd11.Badge, { size: "small", count: props.count }, /* @__PURE__ */ import_react15.default.createElement("span", { className: props.iconsClassName }, /* @__PURE__ */ import_react15.default.createElement(import_io.IoIosNotifications, null))))
|
|
584
|
+
);
|
|
585
|
+
|
|
586
|
+
// src/Components/SpanElement.tsx
|
|
587
|
+
var import_react16 = __toESM(require("react"));
|
|
588
|
+
var SpanElement = (props) => /* @__PURE__ */ import_react16.default.createElement("span", { className: props.className }, props.label);
|
|
589
|
+
|
|
590
|
+
// src/Components/Profile.tsx
|
|
591
|
+
var import_react17 = __toESM(require("react"));
|
|
592
|
+
var import_antd12 = require("antd");
|
|
593
|
+
var import_icons3 = require("@ant-design/icons");
|
|
594
|
+
var Profile = (props) => /* @__PURE__ */ import_react17.default.createElement("div", { className: props.className }, /* @__PURE__ */ import_react17.default.createElement(import_antd12.Avatar, { style: { backgroundColor: "#87d068", marginRight: "10px" }, icon: /* @__PURE__ */ import_react17.default.createElement(import_icons3.UserOutlined, null) }), /* @__PURE__ */ import_react17.default.createElement("div", { className: props.profileSubClassName }, /* @__PURE__ */ import_react17.default.createElement("p", null, props.primaryText), /* @__PURE__ */ import_react17.default.createElement("p", { className: props.secondTextClassName }, " ", props.secondaryText)));
|
|
595
|
+
|
|
596
|
+
// src/Components/Navbar.tsx
|
|
597
|
+
var Navbar = (props) => {
|
|
598
|
+
return /* @__PURE__ */ import_react18.default.createElement("div", { className: `${props.className}`, key: props.name }, props.items && props.items.map((item) => {
|
|
599
|
+
if (item.element === "span") {
|
|
600
|
+
return /* @__PURE__ */ import_react18.default.createElement(SpanElement, { ...item });
|
|
601
|
+
} else if (item.element === "notifications") {
|
|
602
|
+
return /* @__PURE__ */ import_react18.default.createElement(Notification, { ...item });
|
|
603
|
+
} else if (item.name === "profile") {
|
|
604
|
+
return /* @__PURE__ */ import_react18.default.createElement(Profile, { ...item });
|
|
605
|
+
}
|
|
606
|
+
return null;
|
|
607
|
+
}));
|
|
608
|
+
};
|
|
609
|
+
|
|
610
|
+
// src/Components/TableElement.tsx
|
|
611
|
+
var import_react21 = __toESM(require("react"));
|
|
612
|
+
var import_antd14 = require("antd");
|
|
613
|
+
|
|
614
|
+
// src/Components/Model.tsx
|
|
615
|
+
var import_react20 = __toESM(require("react"));
|
|
616
|
+
var import_antd13 = require("antd");
|
|
617
|
+
|
|
618
|
+
// src/Components/ModelBody.tsx
|
|
619
|
+
var import_react19 = __toESM(require("react"));
|
|
620
|
+
var ModelBody = (props) => {
|
|
621
|
+
return /* @__PURE__ */ import_react19.default.createElement("div", { className: props.modalContent && props.modalContent.className }, props.modalContent && props.modalContent.fields.map((eachField) => {
|
|
622
|
+
if (eachField.element === "div") {
|
|
623
|
+
return /* @__PURE__ */ import_react19.default.createElement("div", { className: eachField.className }, eachField.label);
|
|
624
|
+
} else if (eachField.element === "input-radio") {
|
|
625
|
+
return /* @__PURE__ */ import_react19.default.createElement("div", { className: eachField.className }, /* @__PURE__ */ import_react19.default.createElement(RadioElement, { ...eachField }));
|
|
626
|
+
} else if (eachField.element === "button") {
|
|
627
|
+
return /* @__PURE__ */ import_react19.default.createElement("div", { className: eachField.className }, /* @__PURE__ */ import_react19.default.createElement(ButtonElement, { ...eachField }));
|
|
628
|
+
} else {
|
|
629
|
+
return null;
|
|
630
|
+
}
|
|
631
|
+
}));
|
|
632
|
+
};
|
|
633
|
+
|
|
634
|
+
// src/Components/Model.tsx
|
|
635
|
+
var ModelElement = (props) => {
|
|
636
|
+
const { model, onCancel, selectedRecord, columns } = props;
|
|
637
|
+
return /* @__PURE__ */ import_react20.default.createElement(
|
|
638
|
+
import_antd13.Modal,
|
|
639
|
+
{
|
|
640
|
+
centered: true,
|
|
641
|
+
open: model,
|
|
642
|
+
onCancel,
|
|
643
|
+
footer: null,
|
|
644
|
+
width: 850,
|
|
645
|
+
title: /* @__PURE__ */ import_react20.default.createElement(
|
|
646
|
+
"div",
|
|
647
|
+
{
|
|
648
|
+
style: {
|
|
649
|
+
display: "flex",
|
|
650
|
+
flexWrap: "wrap",
|
|
651
|
+
padding: "20px",
|
|
652
|
+
width: "full",
|
|
653
|
+
margin: "-10px"
|
|
654
|
+
}
|
|
655
|
+
},
|
|
656
|
+
Object.entries(selectedRecord).map(([key, value]) => {
|
|
657
|
+
const record = columns.filter((eachColumn) => eachColumn.key === key);
|
|
658
|
+
return record.length > 0 ? /* @__PURE__ */ import_react20.default.createElement("p", { style: { fontWeight: "500", padding: "10px" }, key }, /* @__PURE__ */ import_react20.default.createElement("span", { style: { fontWeight: "200", color: "gray", paddingRight: "10px" } }, record[0].title), String(value)) : "";
|
|
659
|
+
})
|
|
660
|
+
)
|
|
661
|
+
},
|
|
662
|
+
/* @__PURE__ */ import_react20.default.createElement(ModelBody, { ...props })
|
|
663
|
+
);
|
|
664
|
+
};
|
|
665
|
+
|
|
666
|
+
// src/Components/TableElement.tsx
|
|
667
|
+
var TableElement = (props) => {
|
|
668
|
+
const { thead, tbody } = props;
|
|
669
|
+
const [selectedRecord, setSelectedRecord] = (0, import_react21.useState)({});
|
|
670
|
+
const [model, setModel] = (0, import_react21.useState)(false);
|
|
671
|
+
const handleChange = (record) => {
|
|
672
|
+
if (props.onChange) {
|
|
673
|
+
props.onChange(record);
|
|
674
|
+
}
|
|
675
|
+
};
|
|
676
|
+
let columns = [];
|
|
677
|
+
if (thead) {
|
|
678
|
+
columns = [
|
|
679
|
+
{
|
|
680
|
+
title: "#",
|
|
681
|
+
dataIndex: "#",
|
|
682
|
+
key: "#"
|
|
683
|
+
},
|
|
684
|
+
...thead.map((col, ind) => ({
|
|
685
|
+
title: col.label,
|
|
686
|
+
dataIndex: col.name,
|
|
687
|
+
key: col.key,
|
|
688
|
+
sorter: {
|
|
689
|
+
compare: (a, b) => {
|
|
690
|
+
if (typeof a[col.key] === "number" && typeof a[col.key] === "number") {
|
|
691
|
+
return a[col.key] - b[col.key];
|
|
692
|
+
} else if (typeof a[col.key] === "string" && typeof a[col.key] === "string") {
|
|
693
|
+
return a[col.key].localeCompare(b[col.key]);
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
}))
|
|
698
|
+
];
|
|
699
|
+
}
|
|
700
|
+
const dataSource = tbody && tbody.map((row, index) => ({
|
|
701
|
+
...row,
|
|
702
|
+
[columns[0].key]: index + 1
|
|
703
|
+
}));
|
|
704
|
+
const count = dataSource ? dataSource.length : 0;
|
|
705
|
+
return /* @__PURE__ */ import_react21.default.createElement(import_react21.default.Fragment, null, /* @__PURE__ */ import_react21.default.createElement(
|
|
706
|
+
import_antd14.Table,
|
|
707
|
+
{
|
|
708
|
+
pagination: {
|
|
709
|
+
showTotal: (total) => `Total: ${total} items`,
|
|
710
|
+
total: count,
|
|
711
|
+
showSizeChanger: count > 10
|
|
712
|
+
},
|
|
713
|
+
dataSource,
|
|
714
|
+
columns,
|
|
715
|
+
bordered: true,
|
|
716
|
+
size: props.size && props.size,
|
|
717
|
+
onRow: (record) => {
|
|
718
|
+
return {
|
|
719
|
+
onClick: () => {
|
|
720
|
+
setSelectedRecord(record);
|
|
721
|
+
handleChange(record);
|
|
722
|
+
setModel(true);
|
|
723
|
+
},
|
|
724
|
+
style: { cursor: "pointer" }
|
|
725
|
+
};
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
), model && /* @__PURE__ */ import_react21.default.createElement(ModelElement, { selectedRecord, ...props, columns, model, onCancel: () => setModel(false) }));
|
|
729
|
+
};
|
|
730
|
+
|
|
731
|
+
// src/Components/DatePicker.tsx
|
|
732
|
+
var import_react22 = __toESM(require("react"));
|
|
733
|
+
var import_antd15 = require("antd");
|
|
734
|
+
var import_icons4 = require("@ant-design/icons");
|
|
735
|
+
var import_moment = __toESM(require("moment"));
|
|
736
|
+
var DatePickerElement = (props) => {
|
|
737
|
+
const [date, setDate] = (0, import_react22.useState)(null);
|
|
738
|
+
const handleChange = (date2, dateString) => {
|
|
739
|
+
console.log("date---------", date2);
|
|
740
|
+
console.log("datestring", dateString);
|
|
741
|
+
if (date2) {
|
|
742
|
+
const formattedDate = dateString;
|
|
743
|
+
console.log("formattedDate-----------------", formattedDate);
|
|
744
|
+
setDate(date2);
|
|
745
|
+
console.log("changedDate------------", date2);
|
|
746
|
+
if (props.onChange) {
|
|
747
|
+
props.onChange(formattedDate);
|
|
748
|
+
}
|
|
749
|
+
} else {
|
|
750
|
+
setDate(null);
|
|
751
|
+
if (props.onChange) {
|
|
752
|
+
props.onChange("");
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
};
|
|
756
|
+
const onHandleDecrement = () => {
|
|
757
|
+
const currentDate = date || (0, import_moment.default)();
|
|
758
|
+
const newDate = (0, import_moment.default)(currentDate).subtract(1, "days");
|
|
759
|
+
setDate(newDate);
|
|
760
|
+
if (props.onChange) {
|
|
761
|
+
props.onChange(newDate.format("lll"));
|
|
762
|
+
}
|
|
763
|
+
};
|
|
764
|
+
const onHandleIncrement = () => {
|
|
765
|
+
const currentDate = date || (0, import_moment.default)();
|
|
766
|
+
const newDate = (0, import_moment.default)(currentDate).add(1, "days");
|
|
767
|
+
setDate(newDate);
|
|
768
|
+
if (props.onChange) {
|
|
769
|
+
props.onChange(newDate.format("lll"));
|
|
770
|
+
}
|
|
771
|
+
};
|
|
772
|
+
return /* @__PURE__ */ import_react22.default.createElement("div", null, /* @__PURE__ */ import_react22.default.createElement("button", { onClick: onHandleDecrement }, /* @__PURE__ */ import_react22.default.createElement(import_icons4.LeftOutlined, null)), /* @__PURE__ */ import_react22.default.createElement(
|
|
773
|
+
import_antd15.DatePicker,
|
|
774
|
+
{
|
|
775
|
+
placeholder: props.placeholder,
|
|
776
|
+
value: date,
|
|
777
|
+
variant: "borderless",
|
|
778
|
+
onChange: handleChange
|
|
779
|
+
}
|
|
780
|
+
), /* @__PURE__ */ import_react22.default.createElement("button", { onClick: onHandleIncrement }, /* @__PURE__ */ import_react22.default.createElement(import_icons4.RightOutlined, null)));
|
|
781
|
+
};
|
|
782
|
+
|
|
783
|
+
// src/Components/DateRangePickerElement.tsx
|
|
784
|
+
var import_react23 = __toESM(require("react"));
|
|
785
|
+
var import_antd16 = require("antd");
|
|
786
|
+
var import_dayjs = __toESM(require("dayjs"));
|
|
787
|
+
var DateRangePickerElement = (props) => {
|
|
788
|
+
const { RangePicker } = import_antd16.DatePicker;
|
|
789
|
+
const handleChange = (dates, dateStrings) => {
|
|
790
|
+
if (dates && props.onChange) {
|
|
791
|
+
props.onChange(dateStrings);
|
|
792
|
+
} else {
|
|
793
|
+
console.log("Clear");
|
|
794
|
+
}
|
|
795
|
+
};
|
|
796
|
+
const rangePresets = [
|
|
797
|
+
{ label: "Last 7 Days", value: [(0, import_dayjs.default)().add(-7, "d"), (0, import_dayjs.default)()] },
|
|
798
|
+
{ label: "Last 14 Days", value: [(0, import_dayjs.default)().add(-14, "d"), (0, import_dayjs.default)()] },
|
|
799
|
+
{ label: "Last 30 Days", value: [(0, import_dayjs.default)().add(-30, "d"), (0, import_dayjs.default)()] },
|
|
800
|
+
{ label: "Last 90 Days", value: [(0, import_dayjs.default)().add(-90, "d"), (0, import_dayjs.default)()] }
|
|
801
|
+
];
|
|
802
|
+
return /* @__PURE__ */ import_react23.default.createElement(import_antd16.Space, { direction: "vertical", size: 12 }, /* @__PURE__ */ import_react23.default.createElement(RangePicker, { presets: rangePresets, onChange: handleChange }));
|
|
368
803
|
};
|
|
369
804
|
// Annotate the CommonJS export names for ESM import in node:
|
|
370
805
|
0 && (module.exports = {
|
|
@@ -372,12 +807,17 @@ var AddMoreTable = (props) => {
|
|
|
372
807
|
ButtonElement,
|
|
373
808
|
CheckboxElement,
|
|
374
809
|
CkEditor,
|
|
810
|
+
DatePickerElement,
|
|
811
|
+
DateRangePickerElement,
|
|
375
812
|
MultipleSelectElement,
|
|
813
|
+
Navbar,
|
|
376
814
|
NumberElement,
|
|
377
815
|
PasswordElement,
|
|
378
816
|
RadioElement,
|
|
379
817
|
SelectElement,
|
|
818
|
+
Sidebar,
|
|
380
819
|
SingleSelectElement,
|
|
820
|
+
TableElement,
|
|
381
821
|
TextElement,
|
|
382
822
|
TextareaElement
|
|
383
823
|
});
|