@hanzo/booker 0.1.0 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/cjs/Booker.cjs +13 -13
- package/dist/cjs/Booker.native.js +13 -13
- package/dist/cjs/Booker.native.js.map +1 -1
- package/dist/cjs/BookingForm.cjs +20 -20
- package/dist/cjs/BookingForm.native.js +20 -20
- package/dist/cjs/BookingForm.native.js.map +1 -1
- package/dist/cjs/CalendarEmbed.cjs +11 -11
- package/dist/cjs/CalendarEmbed.native.js +11 -11
- package/dist/cjs/CalendarEmbed.native.js.map +1 -1
- package/dist/cjs/Confirmation.cjs +20 -20
- package/dist/cjs/Confirmation.native.js +20 -20
- package/dist/cjs/Confirmation.native.js.map +1 -1
- package/dist/cjs/EventHeader.cjs +11 -11
- package/dist/cjs/EventHeader.native.js +11 -11
- package/dist/cjs/EventHeader.native.js.map +1 -1
- package/dist/cjs/MonthCalendar.cjs +16 -16
- package/dist/cjs/MonthCalendar.native.js +16 -16
- package/dist/cjs/MonthCalendar.native.js.map +1 -1
- package/dist/cjs/TimeSlots.cjs +10 -10
- package/dist/cjs/TimeSlots.native.js +10 -10
- package/dist/cjs/TimeSlots.native.js.map +1 -1
- package/dist/cjs/client.native.js.map +1 -1
- package/dist/cjs/hooks.native.js.map +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/time.native.js.map +1 -1
- package/dist/cjs/useBooker.native.js.map +1 -1
- package/dist/esm/Booker.mjs +1 -1
- package/dist/esm/Booker.native.js +1 -1
- package/dist/esm/BookingForm.mjs +1 -1
- package/dist/esm/BookingForm.native.js +1 -1
- package/dist/esm/CalendarEmbed.mjs +1 -1
- package/dist/esm/CalendarEmbed.native.js +1 -1
- package/dist/esm/Confirmation.mjs +1 -1
- package/dist/esm/Confirmation.native.js +1 -1
- package/dist/esm/EventHeader.mjs +1 -1
- package/dist/esm/EventHeader.native.js +1 -1
- package/dist/esm/MonthCalendar.mjs +1 -1
- package/dist/esm/MonthCalendar.native.js +1 -1
- package/dist/esm/TimeSlots.mjs +1 -1
- package/dist/esm/TimeSlots.native.js +1 -1
- package/package.json +10 -10
- package/src/Booker.tsx +1 -1
- package/src/BookingForm.tsx +1 -1
- package/src/CalendarEmbed.tsx +1 -1
- package/src/Confirmation.tsx +1 -1
- package/src/EventHeader.tsx +1 -1
- package/src/MonthCalendar.tsx +1 -1
- package/src/TimeSlots.tsx +1 -1
- package/types/Booker.d.ts +1 -1
- package/types/Booker.d.ts.map +1 -1
- package/types/BookingForm.d.ts +1 -1
- package/types/BookingForm.d.ts.map +1 -1
- package/types/CalendarEmbed.d.ts +1 -1
- package/types/CalendarEmbed.d.ts.map +1 -1
- package/types/Confirmation.d.ts +1 -1
- package/types/Confirmation.d.ts.map +1 -1
- package/types/EventHeader.d.ts +1 -1
- package/types/EventHeader.d.ts.map +1 -1
- package/types/MonthCalendar.d.ts +1 -1
- package/types/MonthCalendar.d.ts.map +1 -1
- package/types/TimeSlots.d.ts +1 -1
- package/types/TimeSlots.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Universal (web + native) scheduling UI for the [Hanzo Calendar](https://api.hanzo.ai/v1/calendar), built with [hanzogui](https://github.com/hanzoai/gui) primitives.
|
|
4
4
|
|
|
5
|
-
One booking flow — event header → month grid → time slots → details → confirmation — that runs unchanged on the web (DOM) and React Native (iOS / Android). No raw HTML, no ad-hoc CSS: every surface is a hanzogui/
|
|
5
|
+
One booking flow — event header → month grid → time slots → details → confirmation — that runs unchanged on the web (DOM) and React Native (iOS / Android). No raw HTML, no ad-hoc CSS: every surface is a hanzogui/Gui component styled with theme tokens, so it inherits the host app's theme, dark mode, and design system.
|
|
6
6
|
|
|
7
7
|
## Install
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ Render inside a `GuiProvider` (from `hanzogui`) so tokens and themes resolve.
|
|
|
16
16
|
## Usage
|
|
17
17
|
|
|
18
18
|
```tsx
|
|
19
|
-
import { GuiProvider } from '
|
|
19
|
+
import { GuiProvider } from '@hanzo/gui'
|
|
20
20
|
import { Booker } from '@hanzo/calendar'
|
|
21
21
|
import config from './gui.config' // your createGui(...) config
|
|
22
22
|
|
|
@@ -75,4 +75,4 @@ Speaks the Hanzo Calendar API (Cal API-v2 shapes):
|
|
|
75
75
|
|
|
76
76
|
## License
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
MIT © Hanzo AI — see [LICENSE](../../LICENSE). HIP-0137 (`hanzoai/hips`).
|
package/dist/cjs/Booker.cjs
CHANGED
|
@@ -25,7 +25,7 @@ __export(Booker_exports, {
|
|
|
25
25
|
Booker: () => Booker
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(Booker_exports);
|
|
28
|
-
var
|
|
28
|
+
var import_gui = require("@hanzo/gui");
|
|
29
29
|
var import_BookingForm = require("./BookingForm.cjs");
|
|
30
30
|
var import_Confirmation = require("./Confirmation.cjs");
|
|
31
31
|
var import_EventHeader = require("./EventHeader.cjs");
|
|
@@ -35,7 +35,7 @@ var import_useBooker = require("./useBooker.cjs");
|
|
|
35
35
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
36
|
function Booker(props) {
|
|
37
37
|
const m = (0, import_useBooker.useBooker)(props);
|
|
38
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
38
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
39
39
|
backgroundColor: "$background",
|
|
40
40
|
borderColor: "$borderColor",
|
|
41
41
|
borderWidth: 1,
|
|
@@ -46,21 +46,21 @@ function Booker(props) {
|
|
|
46
46
|
maxWidth: 860,
|
|
47
47
|
alignSelf: "center",
|
|
48
48
|
children: m.event.loading ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(StatePanel, {
|
|
49
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
49
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Spinner, {
|
|
50
50
|
size: "large",
|
|
51
51
|
color: "$color9"
|
|
52
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
52
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
53
53
|
size: "$3",
|
|
54
54
|
color: "$color10",
|
|
55
55
|
children: "Loading\u2026"
|
|
56
56
|
})]
|
|
57
57
|
}) : m.event.error || !m.event.data ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(StatePanel, {
|
|
58
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
58
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
59
59
|
size: "$5",
|
|
60
60
|
fontWeight: "600",
|
|
61
61
|
color: "$color12",
|
|
62
62
|
children: "Couldn't load this event"
|
|
63
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
63
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
64
64
|
size: "$3",
|
|
65
65
|
color: "$color10",
|
|
66
66
|
textAlign: "center",
|
|
@@ -70,7 +70,7 @@ function Booker(props) {
|
|
|
70
70
|
booking: m.booking,
|
|
71
71
|
timeZone: m.timeZone,
|
|
72
72
|
onDone: m.reset
|
|
73
|
-
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
73
|
+
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
74
74
|
gap: "$4",
|
|
75
75
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_EventHeader.EventHeader, {
|
|
76
76
|
event: m.event.data,
|
|
@@ -86,11 +86,11 @@ function Booker(props) {
|
|
|
86
86
|
onSubmit: m.submit,
|
|
87
87
|
onBack: m.back
|
|
88
88
|
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
|
|
89
|
-
children: [m.conflict ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(JustTakenBanner, {}) : null, m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
89
|
+
children: [m.conflict ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(JustTakenBanner, {}) : null, m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
90
90
|
size: "$2",
|
|
91
91
|
color: "$red10",
|
|
92
92
|
children: ["Couldn't load availability: ", m.slots.error]
|
|
93
|
-
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
93
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
94
94
|
gap: "$5",
|
|
95
95
|
flexDirection: "column",
|
|
96
96
|
$sm: {
|
|
@@ -115,7 +115,7 @@ function Booker(props) {
|
|
|
115
115
|
selectedIso: m.selectedSlot,
|
|
116
116
|
loading: m.slots.loading && !m.selectedDay
|
|
117
117
|
})]
|
|
118
|
-
}), m.availableKeys.size === 0 && !m.slots.loading && !m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
118
|
+
}), m.availableKeys.size === 0 && !m.slots.loading && !m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
119
119
|
size: "$3",
|
|
120
120
|
color: "$color10",
|
|
121
121
|
textAlign: "center",
|
|
@@ -128,7 +128,7 @@ function Booker(props) {
|
|
|
128
128
|
function StatePanel({
|
|
129
129
|
children
|
|
130
130
|
}) {
|
|
131
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
131
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
132
132
|
alignItems: "center",
|
|
133
133
|
justifyContent: "center",
|
|
134
134
|
gap: "$3",
|
|
@@ -138,13 +138,13 @@ function StatePanel({
|
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
function JustTakenBanner() {
|
|
141
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
141
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
142
142
|
backgroundColor: "$yellow3",
|
|
143
143
|
borderColor: "$yellow6",
|
|
144
144
|
borderWidth: 1,
|
|
145
145
|
borderRadius: "$4",
|
|
146
146
|
padding: "$2.5",
|
|
147
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
147
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
148
148
|
size: "$2",
|
|
149
149
|
color: "$yellow11",
|
|
150
150
|
children: "That time was just taken. We refreshed the calendar \u2014 please pick another."
|
|
@@ -28,7 +28,7 @@ __export(Booker_exports, {
|
|
|
28
28
|
});
|
|
29
29
|
module.exports = __toCommonJS(Booker_exports);
|
|
30
30
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
-
var
|
|
31
|
+
var import_gui = require("@hanzo/gui");
|
|
32
32
|
var import_BookingForm = require("./BookingForm.native.js");
|
|
33
33
|
var import_Confirmation = require("./Confirmation.native.js");
|
|
34
34
|
var import_EventHeader = require("./EventHeader.native.js");
|
|
@@ -38,7 +38,7 @@ var import_useBooker = require("./useBooker.native.js");
|
|
|
38
38
|
function Booker(props) {
|
|
39
39
|
var m = (0, import_useBooker.useBooker)(props);
|
|
40
40
|
var _m_event_error;
|
|
41
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
41
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
42
42
|
backgroundColor: "$background",
|
|
43
43
|
borderColor: "$borderColor",
|
|
44
44
|
borderWidth: 1,
|
|
@@ -49,21 +49,21 @@ function Booker(props) {
|
|
|
49
49
|
maxWidth: 860,
|
|
50
50
|
alignSelf: "center",
|
|
51
51
|
children: m.event.loading ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(StatePanel, {
|
|
52
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
52
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Spinner, {
|
|
53
53
|
size: "large",
|
|
54
54
|
color: "$color9"
|
|
55
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
55
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
56
56
|
size: "$3",
|
|
57
57
|
color: "$color10",
|
|
58
58
|
children: "Loading\u2026"
|
|
59
59
|
})]
|
|
60
60
|
}) : m.event.error || !m.event.data ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(StatePanel, {
|
|
61
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
61
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
62
62
|
size: "$5",
|
|
63
63
|
fontWeight: "600",
|
|
64
64
|
color: "$color12",
|
|
65
65
|
children: "Couldn't load this event"
|
|
66
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
66
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
67
67
|
size: "$3",
|
|
68
68
|
color: "$color10",
|
|
69
69
|
textAlign: "center",
|
|
@@ -73,7 +73,7 @@ function Booker(props) {
|
|
|
73
73
|
booking: m.booking,
|
|
74
74
|
timeZone: m.timeZone,
|
|
75
75
|
onDone: m.reset
|
|
76
|
-
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
76
|
+
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
77
77
|
gap: "$4",
|
|
78
78
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_EventHeader.EventHeader, {
|
|
79
79
|
event: m.event.data,
|
|
@@ -89,11 +89,11 @@ function Booker(props) {
|
|
|
89
89
|
onSubmit: m.submit,
|
|
90
90
|
onBack: m.back
|
|
91
91
|
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
|
|
92
|
-
children: [m.conflict ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(JustTakenBanner, {}) : null, m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
92
|
+
children: [m.conflict ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(JustTakenBanner, {}) : null, m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
93
93
|
size: "$2",
|
|
94
94
|
color: "$red10",
|
|
95
95
|
children: ["Couldn't load availability: ", m.slots.error]
|
|
96
|
-
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
96
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
97
97
|
gap: "$5",
|
|
98
98
|
flexDirection: "column",
|
|
99
99
|
$sm: {
|
|
@@ -118,7 +118,7 @@ function Booker(props) {
|
|
|
118
118
|
selectedIso: m.selectedSlot,
|
|
119
119
|
loading: m.slots.loading && !m.selectedDay
|
|
120
120
|
})]
|
|
121
|
-
}), m.availableKeys.size === 0 && !m.slots.loading && !m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
121
|
+
}), m.availableKeys.size === 0 && !m.slots.loading && !m.slots.error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
122
122
|
size: "$3",
|
|
123
123
|
color: "$color10",
|
|
124
124
|
textAlign: "center",
|
|
@@ -132,7 +132,7 @@ function StatePanel(param) {
|
|
|
132
132
|
var {
|
|
133
133
|
children
|
|
134
134
|
} = param;
|
|
135
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
135
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
136
136
|
alignItems: "center",
|
|
137
137
|
justifyContent: "center",
|
|
138
138
|
gap: "$3",
|
|
@@ -142,13 +142,13 @@ function StatePanel(param) {
|
|
|
142
142
|
});
|
|
143
143
|
}
|
|
144
144
|
function JustTakenBanner() {
|
|
145
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
145
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
146
146
|
backgroundColor: "$yellow3",
|
|
147
147
|
borderColor: "$yellow6",
|
|
148
148
|
borderWidth: 1,
|
|
149
149
|
borderRadius: "$4",
|
|
150
150
|
padding: "$2.5",
|
|
151
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
151
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
152
152
|
size: "$2",
|
|
153
153
|
color: "$yellow11",
|
|
154
154
|
children: "That time was just taken. We refreshed the calendar \u2014 please pick another."
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","Booker_exports","__export","Booker","module","exports","import_jsx_runtime","require","import_hanzogui","import_BookingForm","import_Confirmation","import_EventHeader","import_MonthCalendar","import_TimeSlots","import_useBooker","props","m","useBooker","_m_event_error","jsx","YStack","backgroundColor","borderColor","borderWidth","borderRadius","padding","gap","width","maxWidth","alignSelf","children","event","loading","jsxs","StatePanel","Spinner","size","color","SizableText","error","data","fontWeight","textAlign","phase","booking","Confirmation","timeZone","onDone","reset","EventHeader","host","compact","selectedSlot","BookingForm","slotIso","eventLength","length","submitting","onSubmit","submit","onBack","back","Fragment","conflict","JustTakenBanner","slots","XStack","flexDirection","$sm","alignItems","MonthCalendar","viewDate","availableKeys","selectedDay","onSelectDay","selectDay","onPrev","goPrevMonth","onNext","goNextMonth","atFirstMonth","weekStartsOn","TimeSlots","dayKey","daySlots","onPick","selectSlot","selectedIso","param"],"sources":["../../src/Booker.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","Booker_exports","Booker","module","exports","import_jsx_runtime","require","import_gui","import_BookingForm","import_Confirmation","import_EventHeader","import_MonthCalendar","import_TimeSlots","import_useBooker","props","m","useBooker","_m_event_error","jsx","YStack","backgroundColor","borderColor","borderWidth","borderRadius","padding","gap","width","maxWidth","alignSelf","children","event","loading","jsxs","StatePanel","Spinner","size","color","SizableText","error","data","fontWeight","textAlign","phase","booking","Confirmation","timeZone","onDone","reset","EventHeader","host","compact","selectedSlot","BookingForm","slotIso","eventLength","length","submitting","onSubmit","submit","onBack","back","Fragment","conflict","JustTakenBanner","slots","XStack","flexDirection","$sm","alignItems","MonthCalendar","viewDate","availableKeys","selectedDay","onSelectDay","selectDay","onPrev","goPrevMonth","onNext","goNextMonth","atFirstMonth","weekStartsOn","TimeSlots","dayKey","daySlots","onPick","selectSlot","selectedIso","param","justifyContent","minHeight"],"sources":["Booker.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Booker_exports = {};\n__export(Booker_exports, {\n Booker: () => Booker\n});\nmodule.exports = __toCommonJS(Booker_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_gui = require(\"@hanzo/gui\");\nvar import_BookingForm = require(\"./BookingForm\");\nvar import_Confirmation = require(\"./Confirmation\");\nvar import_EventHeader = require(\"./EventHeader\");\nvar import_MonthCalendar = require(\"./MonthCalendar\");\nvar import_TimeSlots = require(\"./TimeSlots\");\nvar import_useBooker = require(\"./useBooker\");\nfunction Booker(props) {\n var m = (0, import_useBooker.useBooker)(props);\n var _m_event_error;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.YStack, {\n backgroundColor: \"$background\",\n borderColor: \"$borderColor\",\n borderWidth: 1,\n borderRadius: \"$6\",\n padding: \"$4\",\n gap: \"$4\",\n width: \"100%\",\n maxWidth: 860,\n alignSelf: \"center\",\n children: m.event.loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StatePanel, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.Spinner, {\n size: \"large\",\n color: \"$color9\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$3\",\n color: \"$color10\",\n children: \"Loading\\u2026\"\n })\n ]\n }) : m.event.error || !m.event.data ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(StatePanel, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$5\",\n fontWeight: \"600\",\n color: \"$color12\",\n children: \"Couldn't load this event\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$3\",\n color: \"$color10\",\n textAlign: \"center\",\n children: (_m_event_error = m.event.error) !== null && _m_event_error !== void 0 ? _m_event_error : \"The event type was not found.\"\n })\n ]\n }) : m.phase === \"done\" && m.booking ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Confirmation.Confirmation, {\n booking: m.booking,\n timeZone: m.timeZone,\n onDone: m.reset\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.YStack, {\n gap: \"$4\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_EventHeader.EventHeader, {\n event: m.event.data,\n host: props.host,\n timeZone: m.timeZone,\n compact: m.phase === \"form\"\n }),\n m.phase === \"form\" && m.selectedSlot ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_BookingForm.BookingForm, {\n slotIso: m.selectedSlot,\n timeZone: m.timeZone,\n eventLength: m.event.data.length,\n submitting: m.submitting,\n error: m.error,\n onSubmit: m.submit,\n onBack: m.back\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n m.conflict ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(JustTakenBanner, {}) : null,\n m.slots.error ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.SizableText, {\n size: \"$2\",\n color: \"$red10\",\n children: [\n \"Couldn't load availability: \",\n m.slots.error\n ]\n }) : null,\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.XStack, {\n gap: \"$5\",\n flexDirection: \"column\",\n $sm: {\n flexDirection: \"row\"\n },\n alignItems: \"flex-start\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_MonthCalendar.MonthCalendar, {\n viewDate: m.viewDate,\n availableKeys: m.availableKeys,\n selectedDay: m.selectedDay,\n onSelectDay: m.selectDay,\n onPrev: m.goPrevMonth,\n onNext: m.goNextMonth,\n atFirstMonth: m.atFirstMonth,\n weekStartsOn: m.weekStartsOn,\n loading: m.slots.loading\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_TimeSlots.TimeSlots, {\n dayKey: m.selectedDay,\n slots: m.daySlots,\n timeZone: m.timeZone,\n onPick: m.selectSlot,\n selectedIso: m.selectedSlot,\n loading: m.slots.loading && !m.selectedDay\n })\n ]\n }),\n m.availableKeys.size === 0 && !m.slots.loading && !m.slots.error ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$3\",\n color: \"$color10\",\n textAlign: \"center\",\n children: \"No availability this month \\u2014 try the next month.\"\n }) : null\n ]\n })\n ]\n })\n });\n}\nfunction StatePanel(param) {\n var { children } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.YStack, {\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: \"$3\",\n padding: \"$8\",\n minHeight: 220,\n children\n });\n}\nfunction JustTakenBanner() {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.YStack, {\n backgroundColor: \"$yellow3\",\n borderColor: \"$yellow6\",\n borderWidth: 1,\n borderRadius: \"$4\",\n padding: \"$2.5\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$2\",\n color: \"$yellow11\",\n children: \"That time was just taken. We refreshed the calendar \\u2014 please pick another.\"\n })\n });\n}\n//# sourceMappingURL=Booker.js.map\n"],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/BookingForm.cjs
CHANGED
|
@@ -26,7 +26,7 @@ __export(BookingForm_exports, {
|
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(BookingForm_exports);
|
|
28
28
|
var import_react = require("react");
|
|
29
|
-
var
|
|
29
|
+
var import_gui = require("@hanzo/gui");
|
|
30
30
|
var import_time = require("./time.cjs");
|
|
31
31
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
32
32
|
const EMAIL_RE = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
@@ -55,24 +55,24 @@ function BookingForm({
|
|
|
55
55
|
notes: notes.trim() || void 0
|
|
56
56
|
});
|
|
57
57
|
};
|
|
58
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
58
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
59
59
|
gap: "$3",
|
|
60
60
|
flex: 1,
|
|
61
61
|
minWidth: 240,
|
|
62
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
62
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
63
63
|
gap: "$1",
|
|
64
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
64
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
65
65
|
alignItems: "center",
|
|
66
66
|
gap: "$2",
|
|
67
67
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(BackLink, {
|
|
68
68
|
onPress: onBack
|
|
69
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
69
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
70
70
|
size: "$5",
|
|
71
71
|
fontWeight: "700",
|
|
72
72
|
color: "$color12",
|
|
73
73
|
children: "Enter details"
|
|
74
74
|
})]
|
|
75
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
75
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
76
76
|
size: "$3",
|
|
77
77
|
color: "$color11",
|
|
78
78
|
children: [(0, import_time.formatBookingWhen)(slotIso, timeZone), " \xB7 ", eventLength, " min"]
|
|
@@ -82,7 +82,7 @@ function BookingForm({
|
|
|
82
82
|
required: true,
|
|
83
83
|
invalid: touched && !nameValid,
|
|
84
84
|
hint: "Please enter your name",
|
|
85
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
85
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Input, {
|
|
86
86
|
value: name,
|
|
87
87
|
onChangeText: setName,
|
|
88
88
|
placeholder: "Ada Lovelace",
|
|
@@ -94,7 +94,7 @@ function BookingForm({
|
|
|
94
94
|
required: true,
|
|
95
95
|
invalid: touched && !emailValid,
|
|
96
96
|
hint: "Please enter a valid email",
|
|
97
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
97
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Input, {
|
|
98
98
|
value: email,
|
|
99
99
|
onChangeText: setEmail,
|
|
100
100
|
placeholder: "ada@example.com",
|
|
@@ -106,35 +106,35 @@ function BookingForm({
|
|
|
106
106
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(Field, {
|
|
107
107
|
label: "Notes",
|
|
108
108
|
hint: "Optional",
|
|
109
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
109
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.TextArea, {
|
|
110
110
|
value: notes,
|
|
111
111
|
onChangeText: setNotes,
|
|
112
112
|
placeholder: "Anything that would help prepare?",
|
|
113
113
|
numberOfLines: 3,
|
|
114
114
|
size: "$4"
|
|
115
115
|
})
|
|
116
|
-
}), error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
116
|
+
}), error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
117
117
|
backgroundColor: "$red3",
|
|
118
118
|
borderColor: "$red6",
|
|
119
119
|
borderWidth: 1,
|
|
120
120
|
borderRadius: "$4",
|
|
121
121
|
padding: "$2.5",
|
|
122
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
122
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
123
123
|
size: "$2",
|
|
124
124
|
color: "$red11",
|
|
125
125
|
children: error
|
|
126
126
|
})
|
|
127
|
-
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
127
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
128
128
|
gap: "$2",
|
|
129
129
|
justifyContent: "flex-end",
|
|
130
130
|
marginTop: "$1",
|
|
131
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
131
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Button, {
|
|
132
132
|
size: "$4",
|
|
133
133
|
chromeless: true,
|
|
134
134
|
onPress: onBack,
|
|
135
135
|
disabled: submitting,
|
|
136
136
|
children: "Back"
|
|
137
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
137
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Button, {
|
|
138
138
|
size: "$4",
|
|
139
139
|
theme: "blue",
|
|
140
140
|
onPress: submit,
|
|
@@ -152,17 +152,17 @@ function Field({
|
|
|
152
152
|
hint,
|
|
153
153
|
children
|
|
154
154
|
}) {
|
|
155
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
155
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
156
156
|
gap: "$1.5",
|
|
157
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
157
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
158
158
|
size: "$2",
|
|
159
159
|
color: "$color11",
|
|
160
160
|
fontWeight: "600",
|
|
161
|
-
children: [label, required ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
161
|
+
children: [label, required ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
162
162
|
color: "$red10",
|
|
163
163
|
children: " *"
|
|
164
164
|
}) : null]
|
|
165
|
-
}), children, invalid && hint ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
165
|
+
}), children, invalid && hint ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
166
166
|
size: "$1",
|
|
167
167
|
color: "$red10",
|
|
168
168
|
children: hint
|
|
@@ -172,7 +172,7 @@ function Field({
|
|
|
172
172
|
function BackLink({
|
|
173
173
|
onPress
|
|
174
174
|
}) {
|
|
175
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
175
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
176
176
|
width: 30,
|
|
177
177
|
height: 30,
|
|
178
178
|
alignItems: "center",
|
|
@@ -188,7 +188,7 @@ function BackLink({
|
|
|
188
188
|
onPress,
|
|
189
189
|
"aria-label": "Back",
|
|
190
190
|
role: "button",
|
|
191
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
191
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
192
192
|
size: "$6",
|
|
193
193
|
color: "$color11",
|
|
194
194
|
children: "\u2039"
|
|
@@ -29,7 +29,7 @@ __export(BookingForm_exports, {
|
|
|
29
29
|
module.exports = __toCommonJS(BookingForm_exports);
|
|
30
30
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
31
|
var import_react = require("react");
|
|
32
|
-
var
|
|
32
|
+
var import_gui = require("@hanzo/gui");
|
|
33
33
|
var import_time = require("./time.native.js");
|
|
34
34
|
var EMAIL_RE = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
35
35
|
function BookingForm(param) {
|
|
@@ -58,24 +58,24 @@ function BookingForm(param) {
|
|
|
58
58
|
notes: notes.trim() || void 0
|
|
59
59
|
});
|
|
60
60
|
};
|
|
61
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
61
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
62
62
|
gap: "$3",
|
|
63
63
|
flex: 1,
|
|
64
64
|
minWidth: 240,
|
|
65
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
65
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
66
66
|
gap: "$1",
|
|
67
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
67
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
68
68
|
alignItems: "center",
|
|
69
69
|
gap: "$2",
|
|
70
70
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(BackLink, {
|
|
71
71
|
onPress: onBack
|
|
72
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
72
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
73
73
|
size: "$5",
|
|
74
74
|
fontWeight: "700",
|
|
75
75
|
color: "$color12",
|
|
76
76
|
children: "Enter details"
|
|
77
77
|
})]
|
|
78
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
78
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
79
79
|
size: "$3",
|
|
80
80
|
color: "$color11",
|
|
81
81
|
children: [(0, import_time.formatBookingWhen)(slotIso, timeZone), " \xB7 ", eventLength, " min"]
|
|
@@ -85,7 +85,7 @@ function BookingForm(param) {
|
|
|
85
85
|
required: true,
|
|
86
86
|
invalid: touched && !nameValid,
|
|
87
87
|
hint: "Please enter your name",
|
|
88
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
88
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Input, {
|
|
89
89
|
value: name,
|
|
90
90
|
onChangeText: setName,
|
|
91
91
|
placeholder: "Ada Lovelace",
|
|
@@ -97,7 +97,7 @@ function BookingForm(param) {
|
|
|
97
97
|
required: true,
|
|
98
98
|
invalid: touched && !emailValid,
|
|
99
99
|
hint: "Please enter a valid email",
|
|
100
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
100
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Input, {
|
|
101
101
|
value: email,
|
|
102
102
|
onChangeText: setEmail,
|
|
103
103
|
placeholder: "ada@example.com",
|
|
@@ -109,35 +109,35 @@ function BookingForm(param) {
|
|
|
109
109
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(Field, {
|
|
110
110
|
label: "Notes",
|
|
111
111
|
hint: "Optional",
|
|
112
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
112
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.TextArea, {
|
|
113
113
|
value: notes,
|
|
114
114
|
onChangeText: setNotes,
|
|
115
115
|
placeholder: "Anything that would help prepare?",
|
|
116
116
|
numberOfLines: 3,
|
|
117
117
|
size: "$4"
|
|
118
118
|
})
|
|
119
|
-
}), error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
119
|
+
}), error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
120
120
|
backgroundColor: "$red3",
|
|
121
121
|
borderColor: "$red6",
|
|
122
122
|
borderWidth: 1,
|
|
123
123
|
borderRadius: "$4",
|
|
124
124
|
padding: "$2.5",
|
|
125
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
125
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
126
126
|
size: "$2",
|
|
127
127
|
color: "$red11",
|
|
128
128
|
children: error
|
|
129
129
|
})
|
|
130
|
-
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
130
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.XStack, {
|
|
131
131
|
gap: "$2",
|
|
132
132
|
justifyContent: "flex-end",
|
|
133
133
|
marginTop: "$1",
|
|
134
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
134
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Button, {
|
|
135
135
|
size: "$4",
|
|
136
136
|
chromeless: true,
|
|
137
137
|
onPress: onBack,
|
|
138
138
|
disabled: submitting,
|
|
139
139
|
children: "Back"
|
|
140
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
140
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.Button, {
|
|
141
141
|
size: "$4",
|
|
142
142
|
theme: "blue",
|
|
143
143
|
onPress: submit,
|
|
@@ -156,17 +156,17 @@ function Field(param) {
|
|
|
156
156
|
hint,
|
|
157
157
|
children
|
|
158
158
|
} = param;
|
|
159
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
159
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.YStack, {
|
|
160
160
|
gap: "$1.5",
|
|
161
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(
|
|
161
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui.SizableText, {
|
|
162
162
|
size: "$2",
|
|
163
163
|
color: "$color11",
|
|
164
164
|
fontWeight: "600",
|
|
165
|
-
children: [label, required ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
165
|
+
children: [label, required ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
166
166
|
color: "$red10",
|
|
167
167
|
children: " *"
|
|
168
168
|
}) : null]
|
|
169
|
-
}), children, invalid && hint ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
169
|
+
}), children, invalid && hint ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
170
170
|
size: "$1",
|
|
171
171
|
color: "$red10",
|
|
172
172
|
children: hint
|
|
@@ -177,7 +177,7 @@ function BackLink(param) {
|
|
|
177
177
|
var {
|
|
178
178
|
onPress
|
|
179
179
|
} = param;
|
|
180
|
-
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
180
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.YStack, {
|
|
181
181
|
width: 30,
|
|
182
182
|
height: 30,
|
|
183
183
|
alignItems: "center",
|
|
@@ -193,7 +193,7 @@ function BackLink(param) {
|
|
|
193
193
|
onPress,
|
|
194
194
|
"aria-label": "Back",
|
|
195
195
|
role: "button",
|
|
196
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
196
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui.SizableText, {
|
|
197
197
|
size: "$6",
|
|
198
198
|
color: "$color11",
|
|
199
199
|
children: "\u2039"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","BookingForm_exports","__export","BookingForm","module","exports","import_jsx_runtime","require","import_react","import_hanzogui","import_time","EMAIL_RE","param","slotIso","timeZone","eventLength","submitting","error","onSubmit","onBack","name","setName","useState","email","setEmail","notes","setNotes","touched","setTouched","nameValid","trim","length","emailValid","test","valid","submit","jsxs","YStack","gap","flex","minWidth","children","XStack","alignItems","jsx","BackLink","onPress","SizableText","size","fontWeight","color","formatBookingWhen","Field","label","required","invalid","hint","Input","onChangeText","placeholder","autoComplete","keyboardType","autoCapitalize","TextArea","numberOfLines","backgroundColor","borderColor","borderWidth","borderRadius","padding","justifyContent","marginTop","Button","chromeless","disabled","theme","opacity"],"sources":["../../src/BookingForm.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,WAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAyC,CAAAK,mBAAA;AACzC,IAAAK,kBAAqE,GAAAC,OAAA;AAErE,IAAAC,YAAA,GAAkCD,OAAA;AA0C1B,IAAAE,eAAA,GAAAF,OAAA;AA9BR,IAAAG,WAAM,GAAWH,OAAA;AAGV,IAAAI,QAAS,+BAAY;AAAA,SAC1BR,YAAAS,KAAA;EACA;IAAAC,OAAA;IAAAC,QAAA;IAAAC,WAAA;IAAAC,UAAA;IAAAC,KAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAP,KAAA;EACA,KAAAQ,IAAA,EAAAC,OAAA,QAAAb,YAAA,CAAAc,QAAA;EACA,KAAAC,KAAA,EAAAC,QAAA,QAAAhB,YAAA,CAAAc,QAAA;EACA,KAAAG,KAAA,EAAAC,QAAA,QAAAlB,YAAA,CAAAc,QAAA;EACA,KAAAK,OAAA,EAAAC,UAAA,QAAApB,YAAA,CAAAc,QAAA;EACA,IAAAO,SAAA,GAAAT,IAAA,CAAAU,IAAA,GAAAC,MAAA;EACF,IAAqBC,UAAA,GAAArB,QAAA,CAAAsB,IAAA,CAAAV,KAAA,CAAAO,IAAA;EACnB,IAAAI,KAAO,GAAAL,SAAa,IAAAG,UAAI;EACxB,IAAAG,MAAO,YAAAA,CAAA,EAAe;IACtBP,UAAO,KAAO;IACd,IAAM,CAACM,KAAA,IAASlB,UAAU;IAE1BE,QAAM;MACNE,IAAM,EAAAA,IAAA,CAAAU,IAAa;MACnBP,KAAM,EAAAA,KAAQ,CAAAO,IAAA;MAEdL,KAAM,EAAAA,KAAS,CAAAK,IAAM;IACnB;EACA;EACA,sBAAiB,CAAK,GAAAxB,kBAAqB,CAAA8B,IAAK,EAAA3B,eAAgB,CAAA4B,MAAK,EAAK;IAC5EC,GAAA;IAEAC,IAAA,EACE;IACEC,QAAA;IACEC,QAAA,GACE,mBAAAnC,kBAAA,CAAA8B,IAAA,EAAA3B,eAAU,CAAA4B,MAAS;MACnBC,GAAA;MAEAG,QACF,GACA,mBAAAnC,kBAAA,CAAA8B,IAAC,EAAA3B,eAAA,CAAAiC,MAAA;QACEC,UAAA;QAAqCL,GAAA;QAAIG,QAAA,GAAY,mBAAAnC,kBAAA,CAAAsC,GAAA,EAAAC,QAAA;UACxDC,OAAA,EAAA3B;QACF,IAEA,mBAAAb,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAsC,WAAA;UAACC,IAAA;UAAAC,UAAA;UACOC,KAAA;UACNT,QAAQ;QACR;MAGA,IAAC,mBAAAnC,kBAAA,CAAA8B,IAAA,EAAA3B,eAAA,CAAAsC,WAAA;QAAAC,IAAA;QACCE,KAAA,EAAO;QACPT,QAAA,GACA,IAAA/B,WAAY,CAAAyC,iBAAA,EAAAtC,OAAA,EAAAC,QAAA,GACZ,UACAC,WAAK;MACP;IAGF,IAAC,mBAAAT,kBAAA,CAAAsC,GAAA,EAAAQ,KAAA;MAAAC,KAAA;MACCC,QAAM;MACNC,OAAA,EAAA5B,OAAQ,KAAAE,SAAA;MACR2B,IAAA,0BAAqB;MACrBf,QAAK,qBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAgD,KAAA;QAELzD,KAAA,EAAAoB,IAAA;QAACsC,YAAA,EAAArC,OAAA;QAAAsC,WAAA;QAAAC,YACQ;QAAAZ,IACP;MAAc;IACF,IACC,eACb,IAAA1C,kBAAe,CAAAsC,GAAA,EAAAQ,KAAA;MAAAC,KACf;MAAaC,QACb,EAAK;MAAAC,OAAA,EAAA5B,OAAA,KAAAK,UAAA;MACPwB,IAAA;MAAAf,QAAA,qBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAgD,KAAA;QACFzD,KAAA,EAAAuB,KAAA;QAEAmC,YAAA,EAAAlC,QAAA;QACGmC,WAAA;QAAAE,YAAA;QACCC,cAAO;QACPF,YAAc;QACdZ,IAAA;MACA;IAAe,EACf,EAAK,mBAAA1C,kBAAA,CAAAsC,GAAA,EAAAQ,KAAA;MAETC,KAAA;MAECG,IACC;MAACf,QAAA,qBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAsD,QAAA;QAAA/D,KAAA,EAAAyB,KAAA;QACCiC,YAAA,EAAAhC,QAAgB;QAChBiC,WAAY;QACZK,aAAa;QACbhB,IAAA;MACA;IAAQ,EAER,EAEA/B,KAAA,sBAAAX,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAA4B,MAAA;MAEA4B,eAAA;MAEJC,WAAA;MACEC,WAAA;MAGAC,YAAA;MAACC,OAAA;MAAA5B,QAAA,qBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAsC,WAAA;QACCC,IAAA,EAAK;QACLE,KAAA,EAAM;QACNT,QAAA,EAASxB;MAAA;IAC4B,KACrC,MAA4B,eAE3B,IAAAX,kBAAa,CAAA8B,IAAA,EAAa3B,eAAA,CAAAiC,MAAA;MAAAJ,GAAA;MAC7BgC,cAAA;MACFC,SAAA;MACF9B,QAAA,GAEJ,mBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAA+D,MAAA;QAESxB,IAAM;QACbyB,UAAA;QACA3B,OAAA,EAAA3B,MAAA;QACAuD,QAAA,EAAA1D,UAAA;QACAyB,QAAA;MACA,IAOC,mBAAAnC,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAA+D,MAAA;QAECxB,IAAA;QACE2B,KAAA;QACG7B,OAAA,EAAAX,MAAA;QACAuC,QAAW,EAAA1D,UAAA,IAAAW,OAAA,KAAAO,KAAA;QACd0C,OAAA,EAAA5D,UAAA;QACCyB,QAAA,EAAAzB,UAAA;MACA;IAOP;EAGE;AACE;AAAC,SAAAoC,MAAAxC,KAAA;EAAA,IACC;IAAAyC,KAAO;IAAAC,QAAA;IAAAC,OAAA;IAAAC,IAAA;IAAAf;EAAA,IAAA7B,KAAA;EAAA,OACP,eAAQ,IAAAN,kBAAA,CAAA8B,IAAA,EAAA3B,eAAA,CAAA4B,MAAA;IAAAC,GACR;IAAWG,QACX,GACA,eAAa,IAAAnC,kBAAA,CAAA8B,IAAA,EAAA3B,eAAA,CAAAsC,WAAA;MACbC,IAAA,EAAO;MACPE,KAAA,YAAc;MACdD,UAAY,EAAE;MACdR,QAAA,GACAY,KAAA,EACAC,QAAK,sBAAAhD,kBAAA,CAAAsC,GAAA,EAAAnC,eAAA,CAAAsC,WAAA;QAELG,KAAA;QAEAT,QAAA;MACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","BookingForm_exports","BookingForm","module","exports","import_jsx_runtime","require","import_react","import_gui","import_time","EMAIL_RE","param","slotIso","timeZone","eventLength","submitting","error","onSubmit","onBack","setName","useState","email","setEmail","notes","setNotes","touched","setTouched","nameValid","trim","length","emailValid","test","valid","submit","jsxs","YStack","gap","flex","minWidth","children","XStack","alignItems","jsx","BackLink","onPress","SizableText","size","fontWeight","color","formatBookingWhen","Field","label","required","invalid","hint","Input","onChangeText","placeholder","autoComplete","keyboardType","autoCapitalize","TextArea","numberOfLines","backgroundColor","borderColor","borderWidth","borderRadius","padding","justifyContent","marginTop","Button","chromeless","disabled","theme","opacity","width","height","cursor","hoverStyle","pressStyle","role"],"sources":["BookingForm.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar BookingForm_exports = {};\n__export(BookingForm_exports, {\n BookingForm: () => BookingForm\n});\nmodule.exports = __toCommonJS(BookingForm_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_react = require(\"react\");\nvar import_gui = require(\"@hanzo/gui\");\nvar import_time = require(\"./time\");\nvar EMAIL_RE = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\nfunction BookingForm(param) {\n var { slotIso, timeZone, eventLength, submitting, error, onSubmit, onBack } = param;\n var [name, setName] = (0, import_react.useState)(\"\");\n var [email, setEmail] = (0, import_react.useState)(\"\");\n var [notes, setNotes] = (0, import_react.useState)(\"\");\n var [touched, setTouched] = (0, import_react.useState)(false);\n var nameValid = name.trim().length > 0;\n var emailValid = EMAIL_RE.test(email.trim());\n var valid = nameValid && emailValid;\n var submit = function() {\n setTouched(true);\n if (!valid || submitting) return;\n onSubmit({\n name: name.trim(),\n email: email.trim(),\n notes: notes.trim() || void 0\n });\n };\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.YStack, {\n gap: \"$3\",\n flex: 1,\n minWidth: 240,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.YStack, {\n gap: \"$1\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.XStack, {\n alignItems: \"center\",\n gap: \"$2\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BackLink, {\n onPress: onBack\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$5\",\n fontWeight: \"700\",\n color: \"$color12\",\n children: \"Enter details\"\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.SizableText, {\n size: \"$3\",\n color: \"$color11\",\n children: [\n (0, import_time.formatBookingWhen)(slotIso, timeZone),\n \" \\xB7 \",\n eventLength,\n \" min\"\n ]\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Field, {\n label: \"Name\",\n required: true,\n invalid: touched && !nameValid,\n hint: \"Please enter your name\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.Input, {\n value: name,\n onChangeText: setName,\n placeholder: \"Ada Lovelace\",\n autoComplete: \"name\",\n size: \"$4\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Field, {\n label: \"Email\",\n required: true,\n invalid: touched && !emailValid,\n hint: \"Please enter a valid email\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.Input, {\n value: email,\n onChangeText: setEmail,\n placeholder: \"ada@example.com\",\n keyboardType: \"email-address\",\n autoCapitalize: \"none\",\n autoComplete: \"email\",\n size: \"$4\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Field, {\n label: \"Notes\",\n hint: \"Optional\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.TextArea, {\n value: notes,\n onChangeText: setNotes,\n placeholder: \"Anything that would help prepare?\",\n numberOfLines: 3,\n size: \"$4\"\n })\n }),\n error ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.YStack, {\n backgroundColor: \"$red3\",\n borderColor: \"$red6\",\n borderWidth: 1,\n borderRadius: \"$4\",\n padding: \"$2.5\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$2\",\n color: \"$red11\",\n children: error\n })\n }) : null,\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.XStack, {\n gap: \"$2\",\n justifyContent: \"flex-end\",\n marginTop: \"$1\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.Button, {\n size: \"$4\",\n chromeless: true,\n onPress: onBack,\n disabled: submitting,\n children: \"Back\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.Button, {\n size: \"$4\",\n theme: \"blue\",\n onPress: submit,\n disabled: submitting || touched && !valid,\n opacity: submitting ? 0.7 : 1,\n children: submitting ? \"Booking\\u2026\" : \"Confirm booking\"\n })\n ]\n })\n ]\n });\n}\nfunction Field(param) {\n var { label, required, invalid, hint, children } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.YStack, {\n gap: \"$1.5\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_gui.SizableText, {\n size: \"$2\",\n color: \"$color11\",\n fontWeight: \"600\",\n children: [\n label,\n required ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n color: \"$red10\",\n children: \" *\"\n }) : null\n ]\n }),\n children,\n invalid && hint ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$1\",\n color: \"$red10\",\n children: hint\n }) : null\n ]\n });\n}\nfunction BackLink(param) {\n var { onPress } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.YStack, {\n width: 30,\n height: 30,\n alignItems: \"center\",\n justifyContent: \"center\",\n borderRadius: \"$4\",\n cursor: \"pointer\",\n hoverStyle: {\n backgroundColor: \"$color4\"\n },\n pressStyle: {\n backgroundColor: \"$color6\"\n },\n onPress,\n \"aria-label\": \"Back\",\n role: \"button\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_gui.SizableText, {\n size: \"$6\",\n color: \"$color11\",\n children: \"\\u2039\"\n })\n });\n}\n//# sourceMappingURL=BookingForm.js.map\n"],"mappings":"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","ignoreList":[]}
|