@sparrowengg/integrations-templates-frontend 2.1.0-beta.1 → 2.1.0-beta.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.
- package/dist/cjs/cascader-dropdown/cascader-dropdown-content.js +1 -1
- package/dist/cjs/cascader-dropdown/cascader-dropdown-content.js.map +1 -1
- package/dist/cjs/commons/components/NamingModal.js +34 -62
- package/dist/cjs/commons/components/NamingModal.js.map +1 -1
- package/dist/cjs/commons/components/confirmation-modal.js +12 -24
- package/dist/cjs/commons/components/confirmation-modal.js.map +1 -1
- package/dist/cjs/commons/components/custom-pill.js +12 -30
- package/dist/cjs/commons/components/custom-pill.js.map +1 -1
- package/dist/cjs/commons/components/draftModal.js +31 -45
- package/dist/cjs/commons/components/draftModal.js.map +1 -1
- package/dist/cjs/commons/components/edit-confirmation.js +17 -34
- package/dist/cjs/commons/components/edit-confirmation.js.map +1 -1
- package/dist/cjs/commons/components/import-modal.js +18 -49
- package/dist/cjs/commons/components/import-modal.js.map +1 -1
- package/dist/cjs/commons/components/spinner.js +2 -16
- package/dist/cjs/commons/components/spinner.js.map +1 -1
- package/dist/cjs/commons/components/theme-wrapper.js +12 -9
- package/dist/cjs/commons/components/theme-wrapper.js.map +1 -1
- package/dist/cjs/commons/constants/enhanced.js.map +1 -1
- package/dist/cjs/commons/helpers/index.js +52 -93
- package/dist/cjs/commons/helpers/index.js.map +1 -1
- package/dist/cjs/commons/icons/arrow.js +3 -38
- package/dist/cjs/commons/icons/arrow.js.map +1 -1
- package/dist/cjs/commons/icons/cursor.js +8 -21
- package/dist/cjs/commons/icons/cursor.js.map +1 -1
- package/dist/cjs/commons/icons/email-letter.js +12 -30
- package/dist/cjs/commons/icons/email-letter.js.map +1 -1
- package/dist/cjs/commons/icons/mapping.js +10 -23
- package/dist/cjs/commons/icons/mapping.js.map +1 -1
- package/dist/cjs/commons/icons/nested-add.js +14 -32
- package/dist/cjs/commons/icons/nested-add.js.map +1 -1
- package/dist/cjs/commons/icons/sms.js +18 -36
- package/dist/cjs/commons/icons/sms.js.map +1 -1
- package/dist/cjs/commons/icons/sync.js +3 -110
- package/dist/cjs/commons/icons/sync.js.map +1 -1
- package/dist/cjs/commons/icons/trash.js +15 -33
- package/dist/cjs/commons/icons/trash.js.map +1 -1
- package/dist/cjs/commons/icons/whatsapp.js +31 -49
- package/dist/cjs/commons/icons/whatsapp.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Completed.js +41 -27
- package/dist/cjs/contact-import/components/ManageImport/Completed.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Dashboard.js +43 -23
- package/dist/cjs/contact-import/components/ManageImport/Dashboard.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/NoDataState.js +6 -7
- package/dist/cjs/contact-import/components/ManageImport/NoDataState.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Scheduled.js +46 -30
- package/dist/cjs/contact-import/components/ManageImport/Scheduled.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/icon.js +85 -0
- package/dist/cjs/contact-import/components/ManageImport/icon.js.map +1 -0
- package/dist/cjs/contact-import/components/Scheduling.js +27 -39
- package/dist/cjs/contact-import/components/Scheduling.js.map +1 -1
- package/dist/cjs/contact-import/components/TimePicker.js +102 -129
- package/dist/cjs/contact-import/components/TimePicker.js.map +1 -1
- package/dist/cjs/contact-import/components/conact-import-schedule.js +64 -0
- package/dist/cjs/contact-import/components/conact-import-schedule.js.map +1 -0
- package/dist/cjs/contact-import/components/contact-import-configure.js +75 -0
- package/dist/cjs/contact-import/components/contact-import-configure.js.map +1 -0
- package/dist/cjs/contact-import/components/contact-import-mapping.js +224 -0
- package/dist/cjs/contact-import/components/contact-import-mapping.js.map +1 -0
- package/dist/cjs/contact-import/constants.js +21 -0
- package/dist/cjs/contact-import/constants.js.map +1 -0
- package/dist/cjs/contact-import/index.js +242 -32
- package/dist/cjs/contact-import/index.js.map +1 -1
- package/dist/cjs/dynamic-mapping/components/Mapping.js +321 -203
- package/dist/cjs/dynamic-mapping/components/Mapping.js.map +1 -1
- package/dist/cjs/dynamic-mapping/index.js +972 -34
- package/dist/cjs/dynamic-mapping/index.js.map +1 -1
- package/dist/cjs/filter/filter-pill-value-selector.js +1 -1
- package/dist/cjs/filter/filter-pill-value-selector.js.map +1 -1
- package/dist/cjs/index.js +12 -159
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard.js +137 -130
- package/dist/cjs/integration-template/components/dashboard.js.map +1 -1
- package/dist/cjs/integration-template/index.js +343 -0
- package/dist/cjs/integration-template/index.js.map +1 -0
- package/dist/cjs/mapping/components/custom-menu.js +3 -4
- package/dist/cjs/mapping/components/custom-menu.js.map +1 -1
- package/dist/cjs/mapping/components/field.js +103 -121
- package/dist/cjs/mapping/components/field.js.map +1 -1
- package/dist/cjs/mapping/components/mapping.js +195 -106
- package/dist/cjs/mapping/components/mapping.js.map +1 -1
- package/dist/cjs/mapping/constants/index.js +2 -259
- package/dist/cjs/mapping/constants/index.js.map +1 -1
- package/dist/cjs/mapping/index.js +618 -38
- package/dist/cjs/mapping/index.js.map +1 -1
- package/dist/cjs/mapping/services/index.js +58 -96
- package/dist/cjs/mapping/services/index.js.map +1 -1
- package/dist/cjs/node_modules/@sparrowengg/twigs-react/dist/es/node_modules/@radix-ui/react-menu/dist/index.js +7 -7
- package/dist/cjs/single-mapping/components/mapping.js +490 -0
- package/dist/cjs/single-mapping/components/mapping.js.map +1 -0
- package/dist/cjs/single-mapping/index.js +987 -59
- package/dist/cjs/single-mapping/index.js.map +1 -1
- package/dist/cjs/triggers/components/subcomponents.js +1140 -0
- package/dist/cjs/triggers/components/subcomponents.js.map +1 -0
- package/dist/cjs/triggers/components/trigger.js +491 -0
- package/dist/cjs/triggers/components/trigger.js.map +1 -0
- package/dist/cjs/triggers/constants/index.js +0 -253
- package/dist/cjs/triggers/constants/index.js.map +1 -1
- package/dist/cjs/triggers/index.js +333 -0
- package/dist/cjs/triggers/index.js.map +1 -0
- package/dist/cjs/triggers/services/index.js +30 -0
- package/dist/cjs/triggers/services/index.js.map +1 -0
- package/dist/es/cascader-dropdown/cascader-dropdown-content.js +1 -1
- package/dist/es/cascader-dropdown/cascader-dropdown-content.js.map +1 -1
- package/dist/es/commons/components/NamingModal.js +35 -63
- package/dist/es/commons/components/NamingModal.js.map +1 -1
- package/dist/es/commons/components/confirmation-modal.js +13 -25
- package/dist/es/commons/components/confirmation-modal.js.map +1 -1
- package/dist/es/commons/components/custom-pill.js +13 -31
- package/dist/es/commons/components/custom-pill.js.map +1 -1
- package/dist/es/commons/components/draftModal.js +32 -46
- package/dist/es/commons/components/draftModal.js.map +1 -1
- package/dist/es/commons/components/edit-confirmation.js +18 -35
- package/dist/es/commons/components/edit-confirmation.js.map +1 -1
- package/dist/es/commons/components/import-modal.js +19 -50
- package/dist/es/commons/components/import-modal.js.map +1 -1
- package/dist/es/commons/components/spinner.js +2 -16
- package/dist/es/commons/components/spinner.js.map +1 -1
- package/dist/es/commons/components/theme-wrapper.js +12 -9
- package/dist/es/commons/components/theme-wrapper.js.map +1 -1
- package/dist/es/commons/constants/enhanced.js.map +1 -1
- package/dist/es/commons/helpers/index.js +52 -93
- package/dist/es/commons/helpers/index.js.map +1 -1
- package/dist/es/commons/icons/arrow.js +3 -38
- package/dist/es/commons/icons/arrow.js.map +1 -1
- package/dist/es/commons/icons/cursor.js +8 -21
- package/dist/es/commons/icons/cursor.js.map +1 -1
- package/dist/es/commons/icons/email-letter.js +12 -30
- package/dist/es/commons/icons/email-letter.js.map +1 -1
- package/dist/es/commons/icons/mapping.js +10 -23
- package/dist/es/commons/icons/mapping.js.map +1 -1
- package/dist/es/commons/icons/nested-add.js +14 -32
- package/dist/es/commons/icons/nested-add.js.map +1 -1
- package/dist/es/commons/icons/sms.js +18 -36
- package/dist/es/commons/icons/sms.js.map +1 -1
- package/dist/es/commons/icons/sync.js +3 -110
- package/dist/es/commons/icons/sync.js.map +1 -1
- package/dist/es/commons/icons/trash.js +15 -33
- package/dist/es/commons/icons/trash.js.map +1 -1
- package/dist/es/commons/icons/whatsapp.js +31 -49
- package/dist/es/commons/icons/whatsapp.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Completed.js +41 -27
- package/dist/es/contact-import/components/ManageImport/Completed.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Dashboard.js +45 -25
- package/dist/es/contact-import/components/ManageImport/Dashboard.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/NoDataState.js +4 -5
- package/dist/es/contact-import/components/ManageImport/NoDataState.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Scheduled.js +46 -30
- package/dist/es/contact-import/components/ManageImport/Scheduled.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/icon.js +82 -0
- package/dist/es/contact-import/components/ManageImport/icon.js.map +1 -0
- package/dist/es/contact-import/components/Scheduling.js +27 -39
- package/dist/es/contact-import/components/Scheduling.js.map +1 -1
- package/dist/es/contact-import/components/TimePicker.js +103 -130
- package/dist/es/contact-import/components/TimePicker.js.map +1 -1
- package/dist/es/contact-import/components/conact-import-schedule.js +60 -0
- package/dist/es/contact-import/components/conact-import-schedule.js.map +1 -0
- package/dist/es/contact-import/components/contact-import-configure.js +71 -0
- package/dist/es/contact-import/components/contact-import-configure.js.map +1 -0
- package/dist/es/contact-import/components/contact-import-mapping.js +220 -0
- package/dist/es/contact-import/components/contact-import-mapping.js.map +1 -0
- package/dist/es/contact-import/constants.js +18 -0
- package/dist/es/contact-import/constants.js.map +1 -0
- package/dist/es/contact-import/index.js +240 -27
- package/dist/es/contact-import/index.js.map +1 -1
- package/dist/es/dynamic-mapping/components/Mapping.js +321 -203
- package/dist/es/dynamic-mapping/components/Mapping.js.map +1 -1
- package/dist/es/dynamic-mapping/index.js +972 -34
- package/dist/es/dynamic-mapping/index.js.map +1 -1
- package/dist/es/filter/filter-pill-value-selector.js +1 -1
- package/dist/es/filter/filter-pill-value-selector.js.map +1 -1
- package/dist/es/index.js +2 -23
- package/dist/es/index.js.map +1 -1
- package/dist/es/integration-template/components/dashboard.js +139 -132
- package/dist/es/integration-template/components/dashboard.js.map +1 -1
- package/dist/es/integration-template/index.js +341 -0
- package/dist/es/integration-template/index.js.map +1 -0
- package/dist/es/mapping/components/custom-menu.js +3 -4
- package/dist/es/mapping/components/custom-menu.js.map +1 -1
- package/dist/es/mapping/components/field.js +100 -118
- package/dist/es/mapping/components/field.js.map +1 -1
- package/dist/es/mapping/components/mapping.js +194 -105
- package/dist/es/mapping/components/mapping.js.map +1 -1
- package/dist/es/mapping/constants/index.js +3 -239
- package/dist/es/mapping/constants/index.js.map +1 -1
- package/dist/es/mapping/index.js +617 -12
- package/dist/es/mapping/index.js.map +1 -1
- package/dist/es/mapping/services/index.js +59 -96
- package/dist/es/mapping/services/index.js.map +1 -1
- package/dist/es/node_modules/@internationalized/date/dist/CalendarDate.js +3 -3
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/dialog/dialog.js +1 -1
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/dropdown/dropdown.js +2 -2
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +1 -1
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/node_modules/@react-aria/calendar/dist/import.js +2 -2
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/node_modules/@react-aria/utils/dist/import.js +1 -1
- package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/node_modules/@react-stately/calendar/dist/import.js +1 -1
- package/dist/es/single-mapping/components/mapping.js +486 -0
- package/dist/es/single-mapping/components/mapping.js.map +1 -0
- package/dist/es/single-mapping/index.js +988 -60
- package/dist/es/single-mapping/index.js.map +1 -1
- package/dist/es/triggers/components/subcomponents.js +1134 -0
- package/dist/es/triggers/components/subcomponents.js.map +1 -0
- package/dist/es/triggers/components/trigger.js +487 -0
- package/dist/es/triggers/components/trigger.js.map +1 -0
- package/dist/es/triggers/constants/index.js +1 -228
- package/dist/es/triggers/constants/index.js.map +1 -1
- package/dist/es/triggers/index.js +331 -0
- package/dist/es/triggers/index.js.map +1 -0
- package/dist/es/triggers/services/index.js +28 -0
- package/dist/es/triggers/services/index.js.map +1 -0
- package/dist/index.d.ts +448 -2161
- package/package.json +1 -1
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import React__default, { useRef, useState, useEffect
|
|
2
|
-
import { LABELS, TIME_HOURS, TIME_MINUTES, TIME_NOON } from '../constants/index.js';
|
|
3
|
-
import useClickOutside from '../hooks/use-click-outside.js';
|
|
1
|
+
import React__default, { useRef, useState, useEffect } from 'react';
|
|
4
2
|
import { Box } from '../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
|
|
5
3
|
import { Flex } from '../../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js';
|
|
6
|
-
import { Button } from '../../node_modules/@sparrowengg/twigs-react/dist/es/button/button.js';
|
|
7
4
|
import { Text } from '../../node_modules/@sparrowengg/twigs-react/dist/es/text/text.js';
|
|
5
|
+
import { Button } from '../../node_modules/@sparrowengg/twigs-react/dist/es/button/button.js';
|
|
8
6
|
|
|
9
7
|
var __defProp = Object.defineProperty;
|
|
10
8
|
var __defProps = Object.defineProperties;
|
|
@@ -25,120 +23,40 @@ var __spreadValues = (a, b) => {
|
|
|
25
23
|
return a;
|
|
26
24
|
};
|
|
27
25
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
26
|
+
const hours = [...Array(12).keys()].map((item) => ({ id: item + 1, value: item + 1 }));
|
|
27
|
+
const minutes = [...Array(60).keys()].map((item) => ({
|
|
28
|
+
id: item,
|
|
29
|
+
value: (item < 10 ? "0" : "") + item
|
|
30
|
+
}));
|
|
31
|
+
const noon = [
|
|
32
|
+
{ id: 1, value: "am" },
|
|
33
|
+
{ id: 2, value: "pm" }
|
|
34
|
+
];
|
|
28
35
|
const TimePicker = ({
|
|
29
36
|
setOpenTimePicker,
|
|
30
37
|
scheduleTime,
|
|
31
38
|
setScheduleTime
|
|
32
39
|
}) => {
|
|
33
40
|
const timePickerRef = useRef(null);
|
|
34
|
-
const [timeValue, setTimeValue] = useState({
|
|
35
|
-
|
|
36
|
-
mins: "00",
|
|
37
|
-
noon: "am"
|
|
38
|
-
});
|
|
39
|
-
useEffect(() => {
|
|
40
|
-
setTimeValue(scheduleTime.time);
|
|
41
|
-
}, [scheduleTime.time]);
|
|
42
|
-
useClickOutside(timePickerRef, () => setOpenTimePicker(false));
|
|
43
|
-
const handleApply = useCallback(() => {
|
|
41
|
+
const [timeValue, setTimeValue] = useState({ hours: 12, mins: "00", noon: "am" });
|
|
42
|
+
const handleApply = () => {
|
|
44
43
|
setScheduleTime((prev) => __spreadProps(__spreadValues({}, prev), {
|
|
45
|
-
time: timeValue
|
|
44
|
+
time: __spreadValues(__spreadValues({}, prev.time), timeValue)
|
|
46
45
|
}));
|
|
47
46
|
setOpenTimePicker(false);
|
|
48
|
-
}
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}, []);
|
|
61
|
-
const renderHoursList = () => /* @__PURE__ */ React__default.createElement(
|
|
62
|
-
Box,
|
|
63
|
-
{
|
|
64
|
-
css: {
|
|
65
|
-
overflow: "scroll",
|
|
66
|
-
padding: "$2 $3",
|
|
67
|
-
borderRight: "$borderWidths$xs solid $neutral100",
|
|
68
|
-
cursor: "pointer",
|
|
69
|
-
"&::-webkit-scrollbar": { display: "none" }
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
TIME_HOURS.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
73
|
-
Text,
|
|
74
|
-
{
|
|
75
|
-
size: "md",
|
|
76
|
-
key: item.id,
|
|
77
|
-
css: {
|
|
78
|
-
padding: "$4 $6",
|
|
79
|
-
background: timeValue.hours === item.value ? "#4A9CA60F" : "none",
|
|
80
|
-
borderRadius: "$sm",
|
|
81
|
-
textAlign: "center",
|
|
82
|
-
color: "$neutral900",
|
|
83
|
-
"&:hover": {
|
|
84
|
-
background: "#4A9CA60F"
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
onClick: () => updateHours(item.value)
|
|
88
|
-
},
|
|
89
|
-
item.value
|
|
90
|
-
))
|
|
91
|
-
);
|
|
92
|
-
const renderMinutesList = () => /* @__PURE__ */ React__default.createElement(
|
|
93
|
-
Box,
|
|
94
|
-
{
|
|
95
|
-
css: {
|
|
96
|
-
overflow: "scroll",
|
|
97
|
-
padding: "$2 $3",
|
|
98
|
-
borderRight: "$borderWidths$xs solid $neutral100",
|
|
99
|
-
cursor: "pointer",
|
|
100
|
-
"&::-webkit-scrollbar": { display: "none" }
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
|
-
TIME_MINUTES.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
104
|
-
Text,
|
|
105
|
-
{
|
|
106
|
-
size: "md",
|
|
107
|
-
key: item.id,
|
|
108
|
-
css: {
|
|
109
|
-
padding: "$4 $6",
|
|
110
|
-
background: timeValue.mins === item.value ? "#4A9CA60F" : "none",
|
|
111
|
-
borderRadius: "$sm",
|
|
112
|
-
textAlign: "center",
|
|
113
|
-
color: "$neutral900",
|
|
114
|
-
"&:hover": {
|
|
115
|
-
background: "#4A9CA60F"
|
|
116
|
-
}
|
|
117
|
-
},
|
|
118
|
-
onClick: () => updateMinutes(item.value)
|
|
119
|
-
},
|
|
120
|
-
item.value
|
|
121
|
-
))
|
|
122
|
-
);
|
|
123
|
-
const renderNoonSelector = () => /* @__PURE__ */ React__default.createElement(Box, { css: { padding: "$2 $3", cursor: "pointer" } }, TIME_NOON.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
124
|
-
Text,
|
|
125
|
-
{
|
|
126
|
-
size: "md",
|
|
127
|
-
key: item.id,
|
|
128
|
-
css: {
|
|
129
|
-
padding: "$4 $6",
|
|
130
|
-
background: timeValue.noon === item.value ? "#4A9CA60F" : "none",
|
|
131
|
-
borderRadius: "$sm",
|
|
132
|
-
textAlign: "center",
|
|
133
|
-
color: "$neutral900",
|
|
134
|
-
"&:hover": {
|
|
135
|
-
background: "#4A9CA60F"
|
|
136
|
-
}
|
|
137
|
-
},
|
|
138
|
-
onClick: () => updateNoon(item.value)
|
|
139
|
-
},
|
|
140
|
-
item.value
|
|
141
|
-
)));
|
|
47
|
+
};
|
|
48
|
+
const handleClickOutside = (event) => {
|
|
49
|
+
if (timePickerRef.current && !timePickerRef.current.contains(event.target)) {
|
|
50
|
+
setOpenTimePicker(false);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
setTimeValue(scheduleTime.time);
|
|
55
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
56
|
+
return () => {
|
|
57
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
58
|
+
};
|
|
59
|
+
}, [scheduleTime]);
|
|
142
60
|
return /* @__PURE__ */ React__default.createElement(
|
|
143
61
|
Box,
|
|
144
62
|
{
|
|
@@ -150,8 +68,7 @@ const TimePicker = ({
|
|
|
150
68
|
background: "$white900",
|
|
151
69
|
zIndex: "9",
|
|
152
70
|
padding: "$4 0",
|
|
153
|
-
position: "absolute"
|
|
154
|
-
boxShadow: "0 2px 8px rgba(0, 0, 0, 0.1)"
|
|
71
|
+
position: "absolute"
|
|
155
72
|
},
|
|
156
73
|
ref: timePickerRef
|
|
157
74
|
},
|
|
@@ -165,32 +82,88 @@ const TimePicker = ({
|
|
|
165
82
|
borderBottom: "$borderWidths$xs solid $neutral100"
|
|
166
83
|
}
|
|
167
84
|
},
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
85
|
+
/* @__PURE__ */ React__default.createElement(
|
|
86
|
+
Box,
|
|
87
|
+
{
|
|
88
|
+
css: {
|
|
89
|
+
overflow: "scroll",
|
|
90
|
+
padding: "$2 $3",
|
|
91
|
+
borderRight: "$borderWidths$xs solid $neutral100",
|
|
92
|
+
cursor: "pointer",
|
|
93
|
+
"&::-webkit-scrollbar": { display: "none" }
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
hours.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
97
|
+
Text,
|
|
98
|
+
{
|
|
99
|
+
size: "md",
|
|
100
|
+
key: item.id,
|
|
101
|
+
css: {
|
|
102
|
+
padding: "$4 $6",
|
|
103
|
+
background: timeValue.hours === item.value ? "#4A9CA60F" : "none",
|
|
104
|
+
borderRadius: "$sm",
|
|
105
|
+
textAlign: "center",
|
|
106
|
+
color: "$neutral900"
|
|
107
|
+
},
|
|
108
|
+
onClick: () => setTimeValue((prev) => __spreadProps(__spreadValues({}, prev), { hours: item.value }))
|
|
109
|
+
},
|
|
110
|
+
item.value
|
|
111
|
+
))
|
|
112
|
+
),
|
|
113
|
+
/* @__PURE__ */ React__default.createElement(
|
|
114
|
+
Box,
|
|
115
|
+
{
|
|
116
|
+
css: {
|
|
117
|
+
overflow: "scroll",
|
|
118
|
+
padding: "$2 $3",
|
|
119
|
+
borderRight: "$borderWidths$xs solid $neutral100",
|
|
120
|
+
cursor: "pointer",
|
|
121
|
+
"&::-webkit-scrollbar": { display: "none" }
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
minutes.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
125
|
+
Text,
|
|
126
|
+
{
|
|
127
|
+
size: "md",
|
|
128
|
+
key: item.id,
|
|
129
|
+
css: {
|
|
130
|
+
padding: "$4 $6",
|
|
131
|
+
background: timeValue.mins === item.value ? "#4A9CA60F" : "none",
|
|
132
|
+
borderRadius: "$sm",
|
|
133
|
+
textAlign: "center",
|
|
134
|
+
color: "$neutral900"
|
|
135
|
+
},
|
|
136
|
+
onClick: () => setTimeValue((prev) => __spreadProps(__spreadValues({}, prev), { mins: item.value }))
|
|
137
|
+
},
|
|
138
|
+
item.value
|
|
139
|
+
))
|
|
140
|
+
),
|
|
141
|
+
/* @__PURE__ */ React__default.createElement(Box, { css: { padding: "$2 $3", cursor: "pointer" } }, noon.map((item) => /* @__PURE__ */ React__default.createElement(
|
|
142
|
+
Text,
|
|
143
|
+
{
|
|
144
|
+
size: "md",
|
|
145
|
+
key: item.id,
|
|
146
|
+
css: {
|
|
147
|
+
padding: "$4 $6",
|
|
148
|
+
background: timeValue.noon === item.value ? "#4A9CA60F" : "none",
|
|
149
|
+
borderRadius: "$sm",
|
|
150
|
+
textAlign: "center",
|
|
151
|
+
color: "$neutral900"
|
|
152
|
+
},
|
|
153
|
+
onClick: () => setTimeValue((prev) => __spreadProps(__spreadValues({}, prev), { noon: item.value }))
|
|
154
|
+
},
|
|
155
|
+
item.value
|
|
156
|
+
)))
|
|
171
157
|
),
|
|
172
158
|
/* @__PURE__ */ React__default.createElement(
|
|
173
159
|
Flex,
|
|
174
160
|
{
|
|
175
161
|
alignItems: "center",
|
|
176
162
|
justifyContent: "space-between",
|
|
177
|
-
css: {
|
|
178
|
-
width: "100%",
|
|
179
|
-
height: "calc(100% - 172px)",
|
|
180
|
-
padding: "$2 $6 $2 $6"
|
|
181
|
-
}
|
|
163
|
+
css: { width: "100%", height: "calc(100% - 172px)", padding: "$2 $6 $2 $6" }
|
|
182
164
|
},
|
|
183
|
-
/* @__PURE__ */ React__default.createElement(
|
|
184
|
-
|
|
185
|
-
{
|
|
186
|
-
size: "md",
|
|
187
|
-
variant: "ghost",
|
|
188
|
-
color: "secondary",
|
|
189
|
-
onClick: handleCancel
|
|
190
|
-
},
|
|
191
|
-
LABELS.CANCEL
|
|
192
|
-
),
|
|
193
|
-
/* @__PURE__ */ React__default.createElement(Button, { size: "md", variant: "ghost", onClick: handleApply }, LABELS.APPLY)
|
|
165
|
+
/* @__PURE__ */ React__default.createElement(Button, { size: "md", variant: "ghost", color: "secondary", onClick: () => setOpenTimePicker(false) }, "Cancel"),
|
|
166
|
+
/* @__PURE__ */ React__default.createElement(Button, { size: "md", variant: "ghost", onClick: handleApply }, "Apply")
|
|
194
167
|
)
|
|
195
168
|
);
|
|
196
169
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimePicker.js","sources":["../../../../src/contact-import/components/TimePicker.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useCallback } from 'react';\nimport { Box, Button, Flex, Text } from '@sparrowengg/twigs-react';\nimport { TimePickerProps, TimeValue } from '../types';\nimport { TIME_HOURS, TIME_MINUTES, TIME_NOON, LABELS } from '../constants';\nimport { useClickOutside } from '../hooks';\n\n/**\n * Time picker component for selecting hours, minutes, and AM/PM\n * Supports click outside detection to close the picker\n */\nconst TimePicker: React.FC<TimePickerProps> = ({\n setOpenTimePicker,\n scheduleTime,\n setScheduleTime,\n}) => {\n const timePickerRef = useRef<HTMLDivElement>(null);\n const [timeValue, setTimeValue] = useState<TimeValue>({\n hours: 12,\n mins: '00',\n noon: 'am',\n });\n\n // Initialize time value from schedule time\n useEffect(() => {\n setTimeValue(scheduleTime.time);\n }, [scheduleTime.time]);\n\n // Close picker on outside click\n useClickOutside(timePickerRef, () => setOpenTimePicker(false));\n\n const handleApply = useCallback(() => {\n setScheduleTime((prev) => ({\n ...prev,\n time: timeValue,\n }));\n setOpenTimePicker(false);\n }, [timeValue, setScheduleTime, setOpenTimePicker]);\n\n const handleCancel = useCallback(() => {\n setOpenTimePicker(false);\n }, [setOpenTimePicker]);\n\n const updateHours = useCallback((hours: number) => {\n setTimeValue((prev) => ({ ...prev, hours }));\n }, []);\n\n const updateMinutes = useCallback((mins: string) => {\n setTimeValue((prev) => ({ ...prev, mins }));\n }, []);\n\n const updateNoon = useCallback((noon: 'am' | 'pm') => {\n setTimeValue((prev) => ({ ...prev, noon }));\n }, []);\n\n const renderHoursList = () => (\n <Box\n css={{\n overflow: 'scroll',\n padding: '$2 $3',\n borderRight: '$borderWidths$xs solid $neutral100',\n cursor: 'pointer',\n '&::-webkit-scrollbar': { display: 'none' },\n }}\n >\n {TIME_HOURS.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: '$4 $6',\n background: timeValue.hours === item.value ? '#4A9CA60F' : 'none',\n borderRadius: '$sm',\n textAlign: 'center',\n color: '$neutral900',\n '&:hover': {\n background: '#4A9CA60F',\n },\n }}\n onClick={() => updateHours(item.value)}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n );\n\n const renderMinutesList = () => (\n <Box\n css={{\n overflow: 'scroll',\n padding: '$2 $3',\n borderRight: '$borderWidths$xs solid $neutral100',\n cursor: 'pointer',\n '&::-webkit-scrollbar': { display: 'none' },\n }}\n >\n {TIME_MINUTES.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: '$4 $6',\n background: timeValue.mins === item.value ? '#4A9CA60F' : 'none',\n borderRadius: '$sm',\n textAlign: 'center',\n color: '$neutral900',\n '&:hover': {\n background: '#4A9CA60F',\n },\n }}\n onClick={() => updateMinutes(item.value)}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n );\n\n const renderNoonSelector = () => (\n <Box css={{ padding: '$2 $3', cursor: 'pointer' }}>\n {TIME_NOON.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: '$4 $6',\n background: timeValue.noon === item.value ? '#4A9CA60F' : 'none',\n borderRadius: '$sm',\n textAlign: 'center',\n color: '$neutral900',\n '&:hover': {\n background: '#4A9CA60F',\n },\n }}\n onClick={() => updateNoon(item.value)}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n );\n\n return (\n <Box\n css={{\n width: '180px',\n height: '228px',\n border: '$borderWidths$xs solid $neutral200',\n borderRadius: '10px',\n background: '$white900',\n zIndex: '9',\n padding: '$4 0',\n position: 'absolute',\n boxShadow: '0 2px 8px rgba(0, 0, 0, 0.1)',\n }}\n ref={timePickerRef}\n >\n {/* Time Selection Grid */}\n <Flex\n justifyContent=\"space-between\"\n css={{\n width: '100%',\n height: '172px',\n borderBottom: '$borderWidths$xs solid $neutral100',\n }}\n >\n {renderHoursList()}\n {renderMinutesList()}\n {renderNoonSelector()}\n </Flex>\n\n {/* Action Buttons */}\n <Flex\n alignItems=\"center\"\n justifyContent=\"space-between\"\n css={{\n width: '100%',\n height: 'calc(100% - 172px)',\n padding: '$2 $6 $2 $6',\n }}\n >\n <Button\n size=\"md\"\n variant=\"ghost\"\n color=\"secondary\"\n onClick={handleCancel}\n >\n {LABELS.CANCEL}\n </Button>\n <Button size=\"md\" variant=\"ghost\" onClick={handleApply}>\n {LABELS.APPLY}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nexport default TimePicker;\n"],"names":["React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TimePicker.js","sources":["../../../../src/contact-import/components/TimePicker.tsx"],"sourcesContent":["import { Box, Button, Flex, Text } from \"@sparrowengg/twigs-react\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\ntype Time = {\n hours: number;\n mins: string;\n noon: \"am\" | \"pm\";\n};\n\ntype TimePickerProps = {\n setOpenTimePicker: (open: boolean) => void;\n scheduleTime: { time: Time };\n setScheduleTime: (schedule: { time: Time }) => void;\n};\n\nconst hours = [...Array(12).keys()].map((item) => ({ id: item + 1, value: item + 1 }));\n\nconst minutes = [...Array(60).keys()].map((item) => ({\n id: item,\n value: (item < 10 ? \"0\" : \"\") + item,\n}));\n\nconst noon = [\n { id: 1, value: \"am\" as const },\n { id: 2, value: \"pm\" as const },\n];\n\nconst TimePicker: React.FC<TimePickerProps> = ({\n setOpenTimePicker,\n scheduleTime,\n setScheduleTime,\n}) => {\n const timePickerRef = useRef<HTMLDivElement>(null);\n const [timeValue, setTimeValue] = useState<Time>({ hours: 12, mins: \"00\", noon: \"am\" });\n\n const handleApply = () => {\n setScheduleTime((prev) => ({\n ...prev,\n time: { ...prev.time, ...timeValue },\n }));\n setOpenTimePicker(false);\n };\n\n const handleClickOutside = (event: MouseEvent) => {\n if (timePickerRef.current && !timePickerRef.current.contains(event.target as Node)) {\n setOpenTimePicker(false);\n }\n };\n\n useEffect(() => {\n setTimeValue(scheduleTime.time);\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [scheduleTime]);\n\n return (\n <Box\n css={{\n width: \"180px\",\n height: \"228px\",\n border: \"$borderWidths$xs solid $neutral200\",\n borderRadius: \"10px\",\n background: \"$white900\",\n zIndex: \"9\",\n padding: \"$4 0\",\n position: \"absolute\",\n }}\n ref={timePickerRef}\n >\n <Flex\n justifyContent=\"space-between\"\n css={{\n width: \"100%\",\n height: \"172px\",\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n }}\n >\n <Box\n css={{\n overflow: \"scroll\",\n padding: \"$2 $3\",\n borderRight: \"$borderWidths$xs solid $neutral100\",\n cursor: \"pointer\",\n \"&::-webkit-scrollbar\": { display: \"none\" },\n }}\n >\n {hours.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: \"$4 $6\",\n background: timeValue.hours === item.value ? \"#4A9CA60F\" : \"none\",\n borderRadius: \"$sm\",\n textAlign: \"center\",\n color: \"$neutral900\",\n }}\n onClick={() => setTimeValue((prev) => ({ ...prev, hours: item.value }))}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n <Box\n css={{\n overflow: \"scroll\",\n padding: \"$2 $3\",\n borderRight: \"$borderWidths$xs solid $neutral100\",\n cursor: \"pointer\",\n \"&::-webkit-scrollbar\": { display: \"none\" },\n }}\n >\n {minutes.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: \"$4 $6\",\n background: timeValue.mins === item.value ? \"#4A9CA60F\" : \"none\",\n borderRadius: \"$sm\",\n textAlign: \"center\",\n color: \"$neutral900\",\n }}\n onClick={() => setTimeValue((prev) => ({ ...prev, mins: item.value }))}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n <Box css={{ padding: \"$2 $3\", cursor: \"pointer\" }}>\n {noon.map((item) => (\n <Text\n size=\"md\"\n key={item.id}\n css={{\n padding: \"$4 $6\",\n background: timeValue.noon === item.value ? \"#4A9CA60F\" : \"none\",\n borderRadius: \"$sm\",\n textAlign: \"center\",\n color: \"$neutral900\",\n }}\n onClick={() => setTimeValue((prev) => ({ ...prev, noon: item.value }))}\n >\n {item.value}\n </Text>\n ))}\n </Box>\n </Flex>\n <Flex\n alignItems=\"center\"\n justifyContent=\"space-between\"\n css={{ width: \"100%\", height: \"calc(100% - 172px)\", padding: \"$2 $6 $2 $6\" }}\n >\n <Button size=\"md\" variant=\"ghost\" color=\"secondary\" onClick={() => setOpenTimePicker(false)}>\n Cancel\n </Button>\n <Button size=\"md\" variant=\"ghost\" onClick={handleApply}>\n Apply\n </Button>\n </Flex>\n </Box>\n );\n};\n\nexport default TimePicker;\n"],"names":["React"],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import React__default, { useState, useEffect } from 'react';
|
|
2
|
+
import Scheduling from './scheduling.js';
|
|
3
|
+
import { frequent } from '../constants.js';
|
|
4
|
+
import { Flex } from '../../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js';
|
|
5
|
+
import { Box } from '../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
|
|
6
|
+
import { Text } from '../../node_modules/@sparrowengg/twigs-react/dist/es/text/text.js';
|
|
7
|
+
import { RadioGroup, Radio } from '../../node_modules/@sparrowengg/twigs-react/dist/es/radio/radio.js';
|
|
8
|
+
|
|
9
|
+
var __defProp = Object.defineProperty;
|
|
10
|
+
var __defProps = Object.defineProperties;
|
|
11
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
12
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
15
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
16
|
+
var __spreadValues = (a, b) => {
|
|
17
|
+
for (var prop in b || (b = {}))
|
|
18
|
+
if (__hasOwnProp.call(b, prop))
|
|
19
|
+
__defNormalProp(a, prop, b[prop]);
|
|
20
|
+
if (__getOwnPropSymbols)
|
|
21
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
22
|
+
if (__propIsEnum.call(b, prop))
|
|
23
|
+
__defNormalProp(a, prop, b[prop]);
|
|
24
|
+
}
|
|
25
|
+
return a;
|
|
26
|
+
};
|
|
27
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
28
|
+
function ImportSchedules({
|
|
29
|
+
currentList,
|
|
30
|
+
setCurrentList
|
|
31
|
+
}) {
|
|
32
|
+
var _a;
|
|
33
|
+
const [globalStorage, setGlobalStorage] = useState((currentList == null ? void 0 : currentList.frequency) || {
|
|
34
|
+
frequentMode: frequent.ONETIME.value
|
|
35
|
+
});
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
setCurrentList(__spreadProps(__spreadValues({}, currentList), {
|
|
38
|
+
frequency: globalStorage
|
|
39
|
+
}));
|
|
40
|
+
}, [globalStorage]);
|
|
41
|
+
return /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$8" }, /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(Text, { css: { color: "$neutral900", fontSize: "$xl" }, weight: "bold" }, "Import Frequency"), /* @__PURE__ */ React__default.createElement(Text, { size: "md", css: { color: "$neutral600", marginTop: "$4" } }, "How frequently do you want to import contacts from Sugar CRM")), /* @__PURE__ */ React__default.createElement(
|
|
42
|
+
RadioGroup,
|
|
43
|
+
{
|
|
44
|
+
defaultValue: (_a = currentList == null ? void 0 : currentList.frequency) == null ? void 0 : _a.frequentMode,
|
|
45
|
+
onChange: (value) => setGlobalStorage((prevGlobalStorage) => __spreadProps(__spreadValues({}, prevGlobalStorage), {
|
|
46
|
+
frequentMode: value
|
|
47
|
+
}))
|
|
48
|
+
},
|
|
49
|
+
/* @__PURE__ */ React__default.createElement(Flex, { alignItems: "center", gap: "$8" }, /* @__PURE__ */ React__default.createElement(Radio, { value: frequent.ONETIME.value, css: { cursor: "pointer" } }, /* @__PURE__ */ React__default.createElement(Text, { size: "md", css: { color: "$neutral900" } }, frequent.ONETIME.label)), /* @__PURE__ */ React__default.createElement(Radio, { value: frequent.RECURRING.value, css: { cursor: "pointer" } }, /* @__PURE__ */ React__default.createElement(Text, { size: "md", css: { color: "$neutral900" } }, frequent.RECURRING.label)))
|
|
50
|
+
), globalStorage.frequentMode === frequent.RECURRING.value && /* @__PURE__ */ React__default.createElement(
|
|
51
|
+
Scheduling,
|
|
52
|
+
{
|
|
53
|
+
globalStorage,
|
|
54
|
+
setGlobalStorage
|
|
55
|
+
}
|
|
56
|
+
));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export { ImportSchedules as default };
|
|
60
|
+
//# sourceMappingURL=conact-import-schedule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conact-import-schedule.js","sources":["../../../../src/contact-import/components/conact-import-schedule.tsx"],"sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport { Flex, Box, RadioGroup, Radio, Text } from \"@sparrowengg/twigs-react\";\nimport Scheduling from \"./scheduling\";\nimport { frequent } from \"../constants\";\nimport { GlobalStorage } from \"../types\";\n\n\nexport default function ImportSchedules({\n currentList, \n setCurrentList\n}: any) {\n const [globalStorage, setGlobalStorage] = useState<GlobalStorage>(currentList?.frequency || {\n frequentMode: frequent.ONETIME.value\n });\n useEffect(()=>{\n setCurrentList({\n ...currentList,\n frequency: globalStorage\n })\n },[globalStorage])\n return (\n <Flex flexDirection=\"column\" gap=\"$8\">\n <Box>\n <Text css={{ color: \"$neutral900\", fontSize: \"$xl\" }} weight=\"bold\">\n Import Frequency\n </Text>\n <Text size=\"md\" css={{ color: \"$neutral600\", marginTop: \"$4\" }}>\n How frequently do you want to import contacts from Sugar CRM\n </Text>\n </Box>\n <RadioGroup\n defaultValue={currentList?.frequency?.frequentMode}\n onChange={(value) =>\n setGlobalStorage((prevGlobalStorage) => ({\n ...prevGlobalStorage,\n frequentMode: value as GlobalStorage[\"frequentMode\"],\n }))\n }\n >\n <Flex alignItems=\"center\" gap=\"$8\">\n <Radio value={frequent.ONETIME.value} css={{ cursor: \"pointer\" }}>\n <Text size=\"md\" css={{ color: \"$neutral900\" }}>\n {frequent.ONETIME.label}\n </Text>\n </Radio>\n <Radio value={frequent.RECURRING.value} css={{ cursor: \"pointer\" }}>\n <Text size=\"md\" css={{ color: \"$neutral900\" }}>\n {frequent.RECURRING.label}\n </Text>\n </Radio>\n </Flex>\n </RadioGroup>\n {globalStorage.frequentMode === frequent.RECURRING.value && (\n <Scheduling\n globalStorage={globalStorage}\n setGlobalStorage={setGlobalStorage}\n />\n )}\n </Flex>\n );\n}\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,SAAwB,eAAgB,CAAA;AAAA,EACtC,WAAA;AAAA,EACA,cAAA;AACF,CAAQ,EAAA;AAVR,EAAA,IAAA,EAAA,CAAA;AAWE,EAAA,MAAM,CAAC,aAAe,EAAA,gBAAgB,CAAI,GAAA,QAAA,CAAA,CAAwB,2CAAa,SAAa,KAAA;AAAA,IAC1F,YAAA,EAAc,SAAS,OAAQ,CAAA,KAAA;AAAA,GAChC,CAAA,CAAA;AACD,EAAA,SAAA,CAAU,MAAI;AACZ,IAAA,cAAA,CAAe,iCACV,WADU,CAAA,EAAA;AAAA,MAEb,SAAW,EAAA,aAAA;AAAA,KACZ,CAAA,CAAA,CAAA;AAAA,GACH,EAAE,CAAC,aAAa,CAAC,CAAA,CAAA;AACjB,EAAA,uBACGA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,aAAc,EAAA,QAAA,EAAS,KAAI,IAC/B,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,GACC,EAAA,IAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,QAAK,GAAK,EAAA,EAAE,KAAO,EAAA,aAAA,EAAe,UAAU,KAAM,EAAA,EAAG,MAAO,EAAA,MAAA,EAAA,EAAO,kBAEpE,CAAA,kBACCA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,MAAK,IAAK,EAAA,GAAA,EAAK,EAAE,KAAA,EAAO,eAAe,SAAW,EAAA,IAAA,EAAQ,EAAA,EAAA,8DAEhE,CACF,CACA,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAA,CAAc,EAAa,GAAA,WAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAA,SAAA,KAAb,IAAwB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA;AAAA,MACtC,UAAU,CAAC,KAAA,KACT,iBAAiB,CAAC,iBAAA,KAAuB,iCACpC,iBADoC,CAAA,EAAA;AAAA,QAEvC,YAAc,EAAA,KAAA;AAAA,OACd,CAAA,CAAA;AAAA,KAAA;AAAA,oBAGJA,cAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,UAAA,EAAW,QAAS,EAAA,GAAA,EAAI,wBAC3BA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAM,KAAO,EAAA,QAAA,CAAS,OAAQ,CAAA,KAAA,EAAO,KAAK,EAAE,MAAA,EAAQ,SAAU,EAAA,EAAA,kBAC5DA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,IAAK,EAAA,IAAA,EAAK,GAAK,EAAA,EAAE,KAAO,EAAA,aAAA,EAC3B,EAAA,EAAA,QAAA,CAAS,QAAQ,KACpB,CACF,CACA,kBAAAA,cAAA,CAAA,aAAA,CAAC,KAAM,EAAA,EAAA,KAAA,EAAO,QAAS,CAAA,SAAA,CAAU,KAAO,EAAA,GAAA,EAAK,EAAE,MAAA,EAAQ,SAAU,EAAA,EAAA,+CAC9D,IAAK,EAAA,EAAA,IAAA,EAAK,IAAK,EAAA,GAAA,EAAK,EAAE,KAAA,EAAO,aAAc,EAAA,EAAA,EACzC,QAAS,CAAA,SAAA,CAAU,KACtB,CACF,CACF,CAAA;AAAA,GAED,EAAA,aAAA,CAAc,YAAiB,KAAA,QAAA,CAAS,UAAU,KACjD,oBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,aAAA;AAAA,MACA,gBAAA;AAAA,KAAA;AAAA,GAGN,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React__default, { useState } from 'react';
|
|
2
|
+
import ImportSchedules from './conact-import-schedule.js';
|
|
3
|
+
import { Flex } from '../../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js';
|
|
4
|
+
import { Box } from '../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
|
|
5
|
+
import { Heading } from '../../node_modules/@sparrowengg/twigs-react/dist/es/heading/heading.js';
|
|
6
|
+
import { RadioGroup, Radio } from '../../node_modules/@sparrowengg/twigs-react/dist/es/radio/radio.js';
|
|
7
|
+
import { Select } from '../../node_modules/@sparrowengg/twigs-react/dist/es/select/select.js';
|
|
8
|
+
import { Button } from '../../node_modules/@sparrowengg/twigs-react/dist/es/button/button.js';
|
|
9
|
+
import { ChevronRightIcon } from '../../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/chevron-right.js';
|
|
10
|
+
|
|
11
|
+
const ContactImportConfigure = ({
|
|
12
|
+
handleConfigureField,
|
|
13
|
+
listSegmentOptions,
|
|
14
|
+
contactImportField
|
|
15
|
+
}) => {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
const [currentConfig, setCurrentConfig] = useState("LIST");
|
|
18
|
+
const [currentList, setCurrentList] = useState(
|
|
19
|
+
(_b = (_a = contactImportField == null ? void 0 : contactImportField.configure) == null ? void 0 : _a.listSegmentValue) != null ? _b : null
|
|
20
|
+
);
|
|
21
|
+
return /* @__PURE__ */ React__default.createElement(Flex, { justifyContent: "center" }, /* @__PURE__ */ React__default.createElement(Box, { css: { marginTop: "$40", maxWidth: 488, width: "100%" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Import Contacts"), /* @__PURE__ */ React__default.createElement(
|
|
22
|
+
RadioGroup,
|
|
23
|
+
{
|
|
24
|
+
defaultValue: currentConfig,
|
|
25
|
+
onChange: (value) => {
|
|
26
|
+
setCurrentConfig(value);
|
|
27
|
+
setCurrentList(null);
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
/* @__PURE__ */ React__default.createElement(
|
|
31
|
+
Flex,
|
|
32
|
+
{
|
|
33
|
+
css: { marginTop: "$12", "& label": { color: "$neutral800" } },
|
|
34
|
+
alignItems: "center",
|
|
35
|
+
gap: "$12"
|
|
36
|
+
},
|
|
37
|
+
/* @__PURE__ */ React__default.createElement(Radio, { size: "md", value: "LIST", css: { cursor: "pointer" } }, "Import from (List/Segment)"),
|
|
38
|
+
/* @__PURE__ */ React__default.createElement(Radio, { size: "md", value: "ALL", css: { cursor: "pointer" } }, "Import All Contacts")
|
|
39
|
+
)
|
|
40
|
+
), currentConfig === "LIST" ? /* @__PURE__ */ React__default.createElement(
|
|
41
|
+
Select,
|
|
42
|
+
{
|
|
43
|
+
css: { marginTop: "$12" },
|
|
44
|
+
onChange: (value) => setCurrentList(value),
|
|
45
|
+
size: "lg",
|
|
46
|
+
placeholder: "Choose (List/Segment)",
|
|
47
|
+
options: listSegmentOptions,
|
|
48
|
+
value: currentList
|
|
49
|
+
}
|
|
50
|
+
) : null, /* @__PURE__ */ React__default.createElement(Box, { css: {
|
|
51
|
+
marginBlock: "$16"
|
|
52
|
+
} }, /* @__PURE__ */ React__default.createElement(ImportSchedules, { currentList, setCurrentList })), /* @__PURE__ */ React__default.createElement(
|
|
53
|
+
Button,
|
|
54
|
+
{
|
|
55
|
+
css: { marginTop: "$16" },
|
|
56
|
+
disabled: !(currentList == null ? void 0 : currentList.value) && currentConfig !== "ALL",
|
|
57
|
+
size: "lg",
|
|
58
|
+
onClick: () => {
|
|
59
|
+
handleConfigureField({
|
|
60
|
+
type: currentConfig,
|
|
61
|
+
listSegmentValue: currentList
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
rightIcon: /* @__PURE__ */ React__default.createElement(ChevronRightIcon, null)
|
|
65
|
+
},
|
|
66
|
+
"Next, Mapping"
|
|
67
|
+
)));
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export { ContactImportConfigure as default };
|
|
71
|
+
//# sourceMappingURL=contact-import-configure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contact-import-configure.js","sources":["../../../../src/contact-import/components/contact-import-configure.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Flex,\n Heading,\n Radio,\n RadioGroup,\n Select,\n} from \"@sparrowengg/twigs-react\";\nimport { ChevronRightIcon } from \"@sparrowengg/twigs-react-icons\";\nimport React, { useState } from \"react\";\nimport ImportSchedules from \"./conact-import-schedule\";\nimport { ContactImportConfigureProps } from \"../types\";\nimport { SelectOption } from \"../../commons/types/enhanced\";\n\nconst ContactImportConfigure = ({\n handleConfigureField,\n listSegmentOptions,\n contactImportField,\n}: ContactImportConfigureProps) => {\n const [currentConfig, setCurrentConfig] = useState(\"LIST\");\n const [currentList, setCurrentList] = useState(\n contactImportField?.configure?.listSegmentValue ?? null\n );\n\n return (\n <Flex justifyContent=\"center\">\n <Box css={{ marginTop: \"$40\", maxWidth: 488, width: \"100%\" }}>\n <Heading size=\"h5\">Import Contacts</Heading>\n <RadioGroup\n defaultValue={currentConfig}\n onChange={(value) => {\n setCurrentConfig(value);\n setCurrentList(null);\n }}\n >\n <Flex\n css={{ marginTop: \"$12\", \"& label\": { color: \"$neutral800\" } }}\n alignItems=\"center\"\n gap=\"$12\"\n >\n <Radio size=\"md\" value=\"LIST\" css={{ cursor: \"pointer\" }}>\n Import from (List/Segment)\n </Radio>\n <Radio size=\"md\" value=\"ALL\" css={{ cursor: \"pointer\" }}>\n Import All Contacts\n </Radio>\n </Flex>\n </RadioGroup>\n {currentConfig === \"LIST\" ? (\n <Select\n css={{ marginTop: \"$12\" }}\n onChange={(value: any) => setCurrentList(value)}\n size=\"lg\"\n placeholder=\"Choose (List/Segment)\"\n options={listSegmentOptions}\n value={currentList}\n />\n ) : null}\n <Box css={{\n marginBlock: \"$16\"\n }}>\n <ImportSchedules currentList={currentList} setCurrentList={setCurrentList} />\n </Box>\n <Button\n css={{ marginTop: \"$16\" }}\n disabled={!currentList?.value && currentConfig !== \"ALL\"}\n size=\"lg\"\n onClick={() => {\n handleConfigureField({\n type: currentConfig,\n listSegmentValue: currentList,\n });\n }}\n rightIcon={<ChevronRightIcon />}\n >\n Next, Mapping\n </Button>\n </Box>\n </Flex>\n );\n};\n\nexport default ContactImportConfigure;\n"],"names":["React"],"mappings":"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"}
|