@ringg/react-native 0.0.1-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +250 -0
  3. package/app.plugin.js +51 -0
  4. package/lib/module/adapters/index.js +4 -0
  5. package/lib/module/adapters/index.js.map +1 -0
  6. package/lib/module/adapters/livekit-rn-adapter.js +216 -0
  7. package/lib/module/adapters/livekit-rn-adapter.js.map +1 -0
  8. package/lib/module/components/RinggWidget.js +554 -0
  9. package/lib/module/components/RinggWidget.js.map +1 -0
  10. package/lib/module/components/steps/ButtonsStep.js +146 -0
  11. package/lib/module/components/steps/ButtonsStep.js.map +1 -0
  12. package/lib/module/components/steps/CalendarStep.js +190 -0
  13. package/lib/module/components/steps/CalendarStep.js.map +1 -0
  14. package/lib/module/components/steps/ConfirmationStep.js +175 -0
  15. package/lib/module/components/steps/ConfirmationStep.js.map +1 -0
  16. package/lib/module/components/steps/FormStep.js +346 -0
  17. package/lib/module/components/steps/FormStep.js.map +1 -0
  18. package/lib/module/components/steps/InteractiveFlow.js +249 -0
  19. package/lib/module/components/steps/InteractiveFlow.js.map +1 -0
  20. package/lib/module/components/ui/ActionButton.js +92 -0
  21. package/lib/module/components/ui/ActionButton.js.map +1 -0
  22. package/lib/module/components/ui/CallControls.js +168 -0
  23. package/lib/module/components/ui/CallControls.js.map +1 -0
  24. package/lib/module/components/ui/FeedbackScreen.js +180 -0
  25. package/lib/module/components/ui/FeedbackScreen.js.map +1 -0
  26. package/lib/module/components/ui/Icons.js +294 -0
  27. package/lib/module/components/ui/Icons.js.map +1 -0
  28. package/lib/module/components/ui/MessageBubble.js +80 -0
  29. package/lib/module/components/ui/MessageBubble.js.map +1 -0
  30. package/lib/module/components/ui/TabSelector.js +80 -0
  31. package/lib/module/components/ui/TabSelector.js.map +1 -0
  32. package/lib/module/components/ui/WidgetHeader.js +168 -0
  33. package/lib/module/components/ui/WidgetHeader.js.map +1 -0
  34. package/lib/module/context/RinggProvider.js +134 -0
  35. package/lib/module/context/RinggProvider.js.map +1 -0
  36. package/lib/module/context/index.js +4 -0
  37. package/lib/module/context/index.js.map +1 -0
  38. package/lib/module/globals.d.js +2 -0
  39. package/lib/module/globals.d.js.map +1 -0
  40. package/lib/module/hooks/index.js +10 -0
  41. package/lib/module/hooks/index.js.map +1 -0
  42. package/lib/module/hooks/useRinggCall.js +259 -0
  43. package/lib/module/hooks/useRinggCall.js.map +1 -0
  44. package/lib/module/hooks/useRinggChat.js +141 -0
  45. package/lib/module/hooks/useRinggChat.js.map +1 -0
  46. package/lib/module/hooks/useRinggComponents.js +236 -0
  47. package/lib/module/hooks/useRinggComponents.js.map +1 -0
  48. package/lib/module/hooks/useRinggFeedback.js +66 -0
  49. package/lib/module/hooks/useRinggFeedback.js.map +1 -0
  50. package/lib/module/hooks/useRinggTheme.js +39 -0
  51. package/lib/module/hooks/useRinggTheme.js.map +1 -0
  52. package/lib/module/hooks/useRinggTranscripts.js +70 -0
  53. package/lib/module/hooks/useRinggTranscripts.js.map +1 -0
  54. package/lib/module/hooks/useRinggWidgetState.js +51 -0
  55. package/lib/module/hooks/useRinggWidgetState.js.map +1 -0
  56. package/lib/module/index.js +56 -0
  57. package/lib/module/index.js.map +1 -0
  58. package/lib/module/package.json +1 -0
  59. package/lib/typescript/adapters/index.d.ts +2 -0
  60. package/lib/typescript/adapters/index.d.ts.map +1 -0
  61. package/lib/typescript/adapters/livekit-rn-adapter.d.ts +38 -0
  62. package/lib/typescript/adapters/livekit-rn-adapter.d.ts.map +1 -0
  63. package/lib/typescript/components/RinggWidget.d.ts +44 -0
  64. package/lib/typescript/components/RinggWidget.d.ts.map +1 -0
  65. package/lib/typescript/components/steps/ButtonsStep.d.ts +17 -0
  66. package/lib/typescript/components/steps/ButtonsStep.d.ts.map +1 -0
  67. package/lib/typescript/components/steps/CalendarStep.d.ts +16 -0
  68. package/lib/typescript/components/steps/CalendarStep.d.ts.map +1 -0
  69. package/lib/typescript/components/steps/ConfirmationStep.d.ts +16 -0
  70. package/lib/typescript/components/steps/ConfirmationStep.d.ts.map +1 -0
  71. package/lib/typescript/components/steps/FormStep.d.ts +17 -0
  72. package/lib/typescript/components/steps/FormStep.d.ts.map +1 -0
  73. package/lib/typescript/components/steps/InteractiveFlow.d.ts +23 -0
  74. package/lib/typescript/components/steps/InteractiveFlow.d.ts.map +1 -0
  75. package/lib/typescript/components/ui/ActionButton.d.ts +22 -0
  76. package/lib/typescript/components/ui/ActionButton.d.ts.map +1 -0
  77. package/lib/typescript/components/ui/CallControls.d.ts +22 -0
  78. package/lib/typescript/components/ui/CallControls.d.ts.map +1 -0
  79. package/lib/typescript/components/ui/FeedbackScreen.d.ts +24 -0
  80. package/lib/typescript/components/ui/FeedbackScreen.d.ts.map +1 -0
  81. package/lib/typescript/components/ui/Icons.d.ts +28 -0
  82. package/lib/typescript/components/ui/Icons.d.ts.map +1 -0
  83. package/lib/typescript/components/ui/MessageBubble.d.ts +17 -0
  84. package/lib/typescript/components/ui/MessageBubble.d.ts.map +1 -0
  85. package/lib/typescript/components/ui/TabSelector.d.ts +21 -0
  86. package/lib/typescript/components/ui/TabSelector.d.ts.map +1 -0
  87. package/lib/typescript/components/ui/WidgetHeader.d.ts +20 -0
  88. package/lib/typescript/components/ui/WidgetHeader.d.ts.map +1 -0
  89. package/lib/typescript/context/RinggProvider.d.ts +53 -0
  90. package/lib/typescript/context/RinggProvider.d.ts.map +1 -0
  91. package/lib/typescript/context/index.d.ts +3 -0
  92. package/lib/typescript/context/index.d.ts.map +1 -0
  93. package/lib/typescript/hooks/index.d.ts +15 -0
  94. package/lib/typescript/hooks/index.d.ts.map +1 -0
  95. package/lib/typescript/hooks/useRinggCall.d.ts +41 -0
  96. package/lib/typescript/hooks/useRinggCall.d.ts.map +1 -0
  97. package/lib/typescript/hooks/useRinggChat.d.ts +29 -0
  98. package/lib/typescript/hooks/useRinggChat.d.ts.map +1 -0
  99. package/lib/typescript/hooks/useRinggComponents.d.ts +52 -0
  100. package/lib/typescript/hooks/useRinggComponents.d.ts.map +1 -0
  101. package/lib/typescript/hooks/useRinggFeedback.d.ts +23 -0
  102. package/lib/typescript/hooks/useRinggFeedback.d.ts.map +1 -0
  103. package/lib/typescript/hooks/useRinggTheme.d.ts +40 -0
  104. package/lib/typescript/hooks/useRinggTheme.d.ts.map +1 -0
  105. package/lib/typescript/hooks/useRinggTranscripts.d.ts +30 -0
  106. package/lib/typescript/hooks/useRinggTranscripts.d.ts.map +1 -0
  107. package/lib/typescript/hooks/useRinggWidgetState.d.ts +38 -0
  108. package/lib/typescript/hooks/useRinggWidgetState.d.ts.map +1 -0
  109. package/lib/typescript/index.d.ts +44 -0
  110. package/lib/typescript/index.d.ts.map +1 -0
  111. package/lib/typescript/package.json +1 -0
  112. package/package.json +80 -0
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * ButtonsStep — renders a group of action buttons.
5
+ *
6
+ * 4 button styles: primary, secondary, outline, destructive.
7
+ * Supports navigate (external link) and api_call actions.
8
+ * Matches CDN buttons-step.tsx behavior.
9
+ */
10
+
11
+ import React, { useState } from "react";
12
+ import { View, Text, TouchableOpacity, ActivityIndicator, Linking, StyleSheet } from "react-native";
13
+ import { colorToSolid, getButtonRadius } from "@ringg/core";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ export function ButtonsStep({
16
+ payload,
17
+ theme,
18
+ isProcessing,
19
+ onButtonClick
20
+ }) {
21
+ const {
22
+ data
23
+ } = payload;
24
+ const buttonRadius = parseInt(getButtonRadius(theme.buttonStyle), 10) || 8;
25
+ const primarySolid = colorToSolid(theme.primaryColor);
26
+ const [loadingButtonId, setLoadingButtonId] = useState(null);
27
+ const handleClick = async button => {
28
+ if (button.action.type === "navigate" && button.action.url) {
29
+ Linking.openURL(button.action.url).catch(() => {});
30
+ onButtonClick(button.id, button.action);
31
+ return;
32
+ }
33
+ setLoadingButtonId(button.id);
34
+ try {
35
+ onButtonClick(button.id, button.action);
36
+ } finally {
37
+ setLoadingButtonId(null);
38
+ }
39
+ };
40
+ const getButtonStyles = style => {
41
+ switch (style) {
42
+ case "secondary":
43
+ return {
44
+ backgroundColor: theme.surfaceColor,
45
+ borderColor: theme.borderColor,
46
+ borderWidth: 1
47
+ };
48
+ case "outline":
49
+ return {
50
+ backgroundColor: "transparent",
51
+ borderColor: primarySolid,
52
+ borderWidth: 2
53
+ };
54
+ case "destructive":
55
+ return {
56
+ backgroundColor: theme.errorColor
57
+ };
58
+ case "primary":
59
+ default:
60
+ return {
61
+ backgroundColor: primarySolid
62
+ };
63
+ }
64
+ };
65
+ const getTextColor = style => {
66
+ switch (style) {
67
+ case "secondary":
68
+ return theme.textColor;
69
+ case "outline":
70
+ return primarySolid;
71
+ case "destructive":
72
+ case "primary":
73
+ default:
74
+ return theme.primaryTextColor;
75
+ }
76
+ };
77
+ return /*#__PURE__*/_jsxs(View, {
78
+ children: [data.title ? /*#__PURE__*/_jsx(Text, {
79
+ style: [styles.title, {
80
+ color: theme.textColor
81
+ }],
82
+ children: data.title
83
+ }) : null, /*#__PURE__*/_jsx(View, {
84
+ style: styles.buttonsColumn,
85
+ children: data.buttons.map(button => {
86
+ const isLoading = loadingButtonId === button.id;
87
+ const isDisabled = isLoading || !!isProcessing;
88
+ const btnStyles = getButtonStyles(button.style);
89
+ const textColor = getTextColor(button.style);
90
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
91
+ onPress: () => handleClick(button),
92
+ disabled: isDisabled,
93
+ style: [styles.button, {
94
+ borderRadius: buttonRadius,
95
+ ...btnStyles,
96
+ opacity: isDisabled ? 0.5 : 1
97
+ }],
98
+ activeOpacity: 0.9,
99
+ children: isLoading ? /*#__PURE__*/_jsxs(View, {
100
+ style: styles.loadingRow,
101
+ children: [/*#__PURE__*/_jsx(ActivityIndicator, {
102
+ color: textColor,
103
+ size: "small"
104
+ }), /*#__PURE__*/_jsx(Text, {
105
+ style: [styles.buttonText, {
106
+ color: textColor
107
+ }],
108
+ children: "Loading..."
109
+ })]
110
+ }) : /*#__PURE__*/_jsx(Text, {
111
+ style: [styles.buttonText, {
112
+ color: textColor
113
+ }],
114
+ children: button.label
115
+ })
116
+ }, button.id);
117
+ })
118
+ })]
119
+ });
120
+ }
121
+ const styles = StyleSheet.create({
122
+ title: {
123
+ fontSize: 14,
124
+ fontWeight: "500",
125
+ marginBottom: 10
126
+ },
127
+ buttonsColumn: {
128
+ gap: 8
129
+ },
130
+ button: {
131
+ height: 36,
132
+ alignItems: "center",
133
+ justifyContent: "center",
134
+ flexDirection: "row"
135
+ },
136
+ loadingRow: {
137
+ flexDirection: "row",
138
+ alignItems: "center",
139
+ gap: 8
140
+ },
141
+ buttonText: {
142
+ fontSize: 13,
143
+ fontWeight: "600"
144
+ }
145
+ });
146
+ //# sourceMappingURL=ButtonsStep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useState","View","Text","TouchableOpacity","ActivityIndicator","Linking","StyleSheet","colorToSolid","getButtonRadius","jsx","_jsx","jsxs","_jsxs","ButtonsStep","payload","theme","isProcessing","onButtonClick","data","buttonRadius","parseInt","buttonStyle","primarySolid","primaryColor","loadingButtonId","setLoadingButtonId","handleClick","button","action","type","url","openURL","catch","id","getButtonStyles","style","backgroundColor","surfaceColor","borderColor","borderWidth","errorColor","getTextColor","textColor","primaryTextColor","children","title","styles","color","buttonsColumn","buttons","map","isLoading","isDisabled","btnStyles","onPress","disabled","borderRadius","opacity","activeOpacity","loadingRow","size","buttonText","label","create","fontSize","fontWeight","marginBottom","gap","height","alignItems","justifyContent","flexDirection"],"sourceRoot":"../../../../src","sources":["components/steps/ButtonsStep.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * CalendarStep — date & time slot picker for calendar_booking components.
5
+ *
6
+ * Displays available dates as horizontal pills, time slots in a 3-column grid,
7
+ * and a confirm button. Matches CDN calendar-step.tsx behavior.
8
+ */
9
+
10
+ import React, { useState, useMemo } from "react";
11
+ import { View, Text, TouchableOpacity, ScrollView, ActivityIndicator, StyleSheet } from "react-native";
12
+ import { groupSlotsByDate, formatSlotTime, colorToSolid, getButtonRadius } from "@ringg/core";
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ export function CalendarStep({
15
+ payload,
16
+ theme,
17
+ isProcessing,
18
+ onComplete
19
+ }) {
20
+ const {
21
+ data
22
+ } = payload;
23
+ const groupedSlots = useMemo(() => groupSlotsByDate(data.available_slots), [data.available_slots]);
24
+ const [selectedDate, setSelectedDate] = useState(groupedSlots[0]?.date || "");
25
+ const [selectedSlot, setSelectedSlot] = useState(null);
26
+ const selectedDateGroup = groupedSlots.find(g => g.date === selectedDate);
27
+ const buttonRadius = parseInt(getButtonRadius(theme.buttonStyle), 10) || 8;
28
+ const primarySolid = colorToSolid(theme.primaryColor);
29
+ const handleConfirm = () => {
30
+ if (selectedSlot) {
31
+ onComplete(selectedSlot.id, selectedSlot.datetime);
32
+ }
33
+ };
34
+ return /*#__PURE__*/_jsxs(View, {
35
+ children: [/*#__PURE__*/_jsx(Text, {
36
+ style: [styles.title, {
37
+ color: theme.textColor
38
+ }],
39
+ children: data.title
40
+ }), /*#__PURE__*/_jsxs(Text, {
41
+ style: [styles.timezone, {
42
+ color: theme.mutedTextColor
43
+ }],
44
+ children: ["Timezone: ", data.timezone]
45
+ }), /*#__PURE__*/_jsx(Text, {
46
+ style: [styles.sectionLabel, {
47
+ color: theme.mutedTextColor
48
+ }],
49
+ children: "SELECT DATE"
50
+ }), /*#__PURE__*/_jsx(ScrollView, {
51
+ horizontal: true,
52
+ showsHorizontalScrollIndicator: false,
53
+ style: styles.datePillsRow,
54
+ children: groupedSlots.map(group => {
55
+ const isActive = selectedDate === group.date;
56
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
57
+ onPress: () => {
58
+ setSelectedDate(group.date);
59
+ setSelectedSlot(null);
60
+ },
61
+ style: [styles.datePill, {
62
+ borderRadius: buttonRadius,
63
+ backgroundColor: isActive ? primarySolid : "#ffffff",
64
+ borderColor: isActive ? primarySolid : theme.borderColor,
65
+ borderWidth: 1
66
+ }],
67
+ activeOpacity: 0.8,
68
+ children: /*#__PURE__*/_jsx(Text, {
69
+ style: [styles.datePillText, {
70
+ color: isActive ? theme.primaryTextColor : theme.textColor
71
+ }],
72
+ children: group.dateLabel
73
+ })
74
+ }, group.date);
75
+ })
76
+ }), selectedDateGroup && /*#__PURE__*/_jsxs(View, {
77
+ children: [/*#__PURE__*/_jsx(Text, {
78
+ style: [styles.sectionLabel, {
79
+ color: theme.mutedTextColor
80
+ }],
81
+ children: "SELECT TIME"
82
+ }), /*#__PURE__*/_jsx(View, {
83
+ style: styles.slotsGrid,
84
+ children: selectedDateGroup.slots.map(slot => {
85
+ const isActive = selectedSlot?.id === slot.id;
86
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
87
+ onPress: () => setSelectedSlot(slot),
88
+ style: [styles.slotButton, {
89
+ borderRadius: buttonRadius,
90
+ backgroundColor: isActive ? primarySolid : "#ffffff",
91
+ borderColor: isActive ? primarySolid : theme.borderColor,
92
+ borderWidth: 1
93
+ }],
94
+ activeOpacity: 0.8,
95
+ children: /*#__PURE__*/_jsx(Text, {
96
+ style: [styles.slotText, {
97
+ color: isActive ? theme.primaryTextColor : theme.textColor
98
+ }],
99
+ children: formatSlotTime(slot.datetime, data.timezone)
100
+ })
101
+ }, slot.id);
102
+ })
103
+ })]
104
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
105
+ onPress: handleConfirm,
106
+ disabled: !selectedSlot || isProcessing,
107
+ style: [styles.confirmButton, {
108
+ borderRadius: buttonRadius,
109
+ backgroundColor: !selectedSlot || isProcessing ? theme.borderColor : primarySolid
110
+ }],
111
+ activeOpacity: 0.9,
112
+ children: isProcessing ? /*#__PURE__*/_jsxs(View, {
113
+ style: styles.loadingRow,
114
+ children: [/*#__PURE__*/_jsx(ActivityIndicator, {
115
+ color: theme.primaryTextColor,
116
+ size: "small"
117
+ }), /*#__PURE__*/_jsx(Text, {
118
+ style: [styles.confirmText, {
119
+ color: theme.primaryTextColor
120
+ }],
121
+ children: "Processing..."
122
+ })]
123
+ }) : /*#__PURE__*/_jsx(Text, {
124
+ style: [styles.confirmText, {
125
+ color: !selectedSlot ? theme.mutedTextColor : theme.primaryTextColor
126
+ }],
127
+ children: "Next"
128
+ })
129
+ })]
130
+ });
131
+ }
132
+ const styles = StyleSheet.create({
133
+ title: {
134
+ fontSize: 14,
135
+ fontWeight: "500",
136
+ marginBottom: 4
137
+ },
138
+ timezone: {
139
+ fontSize: 11,
140
+ marginBottom: 10
141
+ },
142
+ sectionLabel: {
143
+ fontSize: 10,
144
+ fontWeight: "600",
145
+ letterSpacing: 0.8,
146
+ marginBottom: 6
147
+ },
148
+ datePillsRow: {
149
+ marginBottom: 12
150
+ },
151
+ datePill: {
152
+ paddingHorizontal: 12,
153
+ paddingVertical: 8,
154
+ marginRight: 8
155
+ },
156
+ datePillText: {
157
+ fontSize: 12,
158
+ fontWeight: "600"
159
+ },
160
+ slotsGrid: {
161
+ flexDirection: "row",
162
+ flexWrap: "wrap",
163
+ gap: 6,
164
+ marginBottom: 12
165
+ },
166
+ slotButton: {
167
+ width: "31%",
168
+ paddingVertical: 8,
169
+ alignItems: "center"
170
+ },
171
+ slotText: {
172
+ fontSize: 12,
173
+ fontWeight: "500"
174
+ },
175
+ confirmButton: {
176
+ height: 36,
177
+ alignItems: "center",
178
+ justifyContent: "center"
179
+ },
180
+ loadingRow: {
181
+ flexDirection: "row",
182
+ alignItems: "center",
183
+ gap: 8
184
+ },
185
+ confirmText: {
186
+ fontSize: 13,
187
+ fontWeight: "600"
188
+ }
189
+ });
190
+ //# sourceMappingURL=CalendarStep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useState","useMemo","View","Text","TouchableOpacity","ScrollView","ActivityIndicator","StyleSheet","groupSlotsByDate","formatSlotTime","colorToSolid","getButtonRadius","jsx","_jsx","jsxs","_jsxs","CalendarStep","payload","theme","isProcessing","onComplete","data","groupedSlots","available_slots","selectedDate","setSelectedDate","date","selectedSlot","setSelectedSlot","selectedDateGroup","find","g","buttonRadius","parseInt","buttonStyle","primarySolid","primaryColor","handleConfirm","id","datetime","children","style","styles","title","color","textColor","timezone","mutedTextColor","sectionLabel","horizontal","showsHorizontalScrollIndicator","datePillsRow","map","group","isActive","onPress","datePill","borderRadius","backgroundColor","borderColor","borderWidth","activeOpacity","datePillText","primaryTextColor","dateLabel","slotsGrid","slots","slot","slotButton","slotText","disabled","confirmButton","loadingRow","size","confirmText","create","fontSize","fontWeight","marginBottom","letterSpacing","paddingHorizontal","paddingVertical","marginRight","flexDirection","flexWrap","gap","width","alignItems","height","justifyContent"],"sourceRoot":"../../../../src","sources":["components/steps/CalendarStep.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * ConfirmationStep — displays a success/info/warning/error confirmation.
5
+ *
6
+ * Shows an icon badge, title, message, and optional detail rows.
7
+ * Matches CDN confirmation-step.tsx behavior.
8
+ */
9
+
10
+ import React from "react";
11
+ import { View, Text, StyleSheet } from "react-native";
12
+ import { colorToSolid } from "@ringg/core";
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ export function ConfirmationStep({
15
+ data,
16
+ theme,
17
+ collectedData
18
+ }) {
19
+ const iconType = data.icon || "success";
20
+ const getIconConfig = () => {
21
+ switch (iconType) {
22
+ case "success":
23
+ return {
24
+ emoji: "✓",
25
+ bgColor: theme.successColor
26
+ };
27
+ case "info":
28
+ return {
29
+ emoji: "i",
30
+ bgColor: colorToSolid(theme.primaryColor)
31
+ };
32
+ case "warning":
33
+ return {
34
+ emoji: "!",
35
+ bgColor: "#f59e0b"
36
+ };
37
+ case "error":
38
+ return {
39
+ emoji: "✕",
40
+ bgColor: theme.errorColor
41
+ };
42
+ default:
43
+ return {
44
+ emoji: "✓",
45
+ bgColor: theme.successColor
46
+ };
47
+ }
48
+ };
49
+ const {
50
+ emoji,
51
+ bgColor
52
+ } = getIconConfig();
53
+
54
+ // Build details to show
55
+ const priorityKeys = ["slot_date", "slot_time", "name", "email", "phone"];
56
+ const formatValue = value => {
57
+ if (Array.isArray(value)) return value.join(", ");
58
+ if (typeof value === "boolean") return value ? "Yes" : "No";
59
+ return String(value);
60
+ };
61
+ const formattedCollectedData = collectedData ? Object.entries(collectedData).filter(([key]) => priorityKeys.includes(key)).sort((a, b) => priorityKeys.indexOf(a[0]) - priorityKeys.indexOf(b[0])).map(([key, value]) => ({
62
+ label: key.replace(/slot_/g, "").replace(/_/g, " ").replace(/\b\w/g, l => l.toUpperCase()),
63
+ value: formatValue(value)
64
+ })) : [];
65
+ const detailsToShow = data.details && data.details.length > 0 ? data.details : formattedCollectedData;
66
+ return /*#__PURE__*/_jsxs(View, {
67
+ style: styles.container,
68
+ children: [/*#__PURE__*/_jsxs(View, {
69
+ style: styles.headerRow,
70
+ children: [/*#__PURE__*/_jsx(View, {
71
+ style: [styles.iconBadge, {
72
+ backgroundColor: bgColor
73
+ }],
74
+ children: /*#__PURE__*/_jsx(Text, {
75
+ style: styles.iconText,
76
+ children: emoji
77
+ })
78
+ }), /*#__PURE__*/_jsxs(View, {
79
+ style: styles.headerText,
80
+ children: [/*#__PURE__*/_jsx(Text, {
81
+ style: [styles.title, {
82
+ color: theme.textColor
83
+ }],
84
+ children: data.title
85
+ }), data.message ? /*#__PURE__*/_jsx(Text, {
86
+ style: [styles.message, {
87
+ color: theme.mutedTextColor
88
+ }],
89
+ children: data.message
90
+ }) : null]
91
+ })]
92
+ }), detailsToShow.length > 0 ? /*#__PURE__*/_jsx(View, {
93
+ style: [styles.detailsCard, {
94
+ backgroundColor: theme.surfaceColor,
95
+ borderColor: theme.borderColor
96
+ }],
97
+ children: detailsToShow.slice(0, 4).map((detail, index) => /*#__PURE__*/_jsxs(View, {
98
+ style: [styles.detailRow, index > 0 && {
99
+ borderTopWidth: StyleSheet.hairlineWidth,
100
+ borderTopColor: theme.borderColor
101
+ }],
102
+ children: [/*#__PURE__*/_jsx(Text, {
103
+ style: [styles.detailLabel, {
104
+ color: theme.mutedTextColor
105
+ }],
106
+ children: detail.label
107
+ }), /*#__PURE__*/_jsx(Text, {
108
+ style: [styles.detailValue, {
109
+ color: theme.textColor
110
+ }],
111
+ numberOfLines: 1,
112
+ children: detail.value
113
+ })]
114
+ }, index))
115
+ }) : null]
116
+ });
117
+ }
118
+ const styles = StyleSheet.create({
119
+ container: {
120
+ paddingVertical: 4
121
+ },
122
+ headerRow: {
123
+ flexDirection: "row",
124
+ alignItems: "flex-start",
125
+ gap: 10,
126
+ marginBottom: 12
127
+ },
128
+ iconBadge: {
129
+ width: 32,
130
+ height: 32,
131
+ borderRadius: 16,
132
+ alignItems: "center",
133
+ justifyContent: "center"
134
+ },
135
+ iconText: {
136
+ color: "#ffffff",
137
+ fontSize: 16,
138
+ fontWeight: "700"
139
+ },
140
+ headerText: {
141
+ flex: 1,
142
+ paddingTop: 2
143
+ },
144
+ title: {
145
+ fontSize: 14,
146
+ fontWeight: "600"
147
+ },
148
+ message: {
149
+ fontSize: 12,
150
+ marginTop: 2,
151
+ lineHeight: 18
152
+ },
153
+ detailsCard: {
154
+ borderRadius: 8,
155
+ borderWidth: StyleSheet.hairlineWidth,
156
+ overflow: "hidden"
157
+ },
158
+ detailRow: {
159
+ flexDirection: "row",
160
+ alignItems: "center",
161
+ paddingHorizontal: 12,
162
+ paddingVertical: 10,
163
+ gap: 8
164
+ },
165
+ detailLabel: {
166
+ fontSize: 11,
167
+ flexShrink: 0
168
+ },
169
+ detailValue: {
170
+ fontSize: 12,
171
+ fontWeight: "500",
172
+ marginLeft: "auto"
173
+ }
174
+ });
175
+ //# sourceMappingURL=ConfirmationStep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","Text","StyleSheet","colorToSolid","jsx","_jsx","jsxs","_jsxs","ConfirmationStep","data","theme","collectedData","iconType","icon","getIconConfig","emoji","bgColor","successColor","primaryColor","errorColor","priorityKeys","formatValue","value","Array","isArray","join","String","formattedCollectedData","Object","entries","filter","key","includes","sort","a","b","indexOf","map","label","replace","l","toUpperCase","detailsToShow","details","length","style","styles","container","children","headerRow","iconBadge","backgroundColor","iconText","headerText","title","color","textColor","message","mutedTextColor","detailsCard","surfaceColor","borderColor","slice","detail","index","detailRow","borderTopWidth","hairlineWidth","borderTopColor","detailLabel","detailValue","numberOfLines","create","paddingVertical","flexDirection","alignItems","gap","marginBottom","width","height","borderRadius","justifyContent","fontSize","fontWeight","flex","paddingTop","marginTop","lineHeight","borderWidth","overflow","paddingHorizontal","flexShrink","marginLeft"],"sourceRoot":"../../../../src","sources":["components/steps/ConfirmationStep.tsx"],"mappings":"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","ignoreList":[]}