@flamingo-stack/openframe-frontend-core 0.0.596-2034.5685.1 → 0.0.596-2034.5686.1
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/__tests__/fixtures/meeting-booking.d.ts +4 -0
- package/dist/__tests__/fixtures/meeting-booking.d.ts.map +1 -1
- package/dist/components/meeting-scheduler/booking-form.d.ts +2 -0
- package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +29 -38
- package/dist/components/meeting-scheduler/index.cjs.map +1 -1
- package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
- package/dist/components/meeting-scheduler/index.js +29 -38
- package/dist/components/meeting-scheduler/index.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/booking-form-field-rows.test.tsx +8 -25
- package/src/__tests__/booking-form-number-field.test.tsx +5 -17
- package/src/__tests__/fixtures/{meeting-booking.ts → meeting-booking.tsx} +12 -1
- package/src/components/meeting-scheduler/booking-form.tsx +60 -53
- package/src/components/meeting-scheduler/index.tsx +2 -2
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type BookingFormProps } from '../../components/meeting-scheduler/booking-form';
|
|
1
2
|
import type { MeetingAvailability, MeetingFormField } from '../../schemas/meeting-booking-schema';
|
|
2
3
|
/** One well-formed slot-first payload minus the questions — the base every
|
|
3
4
|
* booking-schema test extends, declared once. */
|
|
@@ -29,4 +30,7 @@ export declare const bookingFormBaseProps: () => {
|
|
|
29
30
|
export declare const typeInto: (el: HTMLElement, value: string) => boolean;
|
|
30
31
|
/** The identity trio every submit needs. */
|
|
31
32
|
export declare const fillIdentity: () => void;
|
|
33
|
+
export type BookingFormSubmit = (payload: Record<string, unknown>) => Promise<void>;
|
|
34
|
+
/** Mount a `BookingForm` over `availability` with the base props; returns the submit spy. */
|
|
35
|
+
export declare function mountBookingForm(availability: MeetingAvailability, props?: Partial<BookingFormProps>): import("vitest").Mock<BookingFormSubmit>;
|
|
32
36
|
//# sourceMappingURL=meeting-booking.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-booking.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/meeting-booking.
|
|
1
|
+
{"version":3,"file":"meeting-booking.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/meeting-booking.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AACrG,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAElG;kDACkD;AAClD,eAAO,MAAM,YAAY;;;;;;;;CAQxB,CAAC;AAEF,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,mBAAmB,CAWpF;AAED;4EAC4E;AAC5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;CAQ/B,CAAC;AAEH,eAAO,MAAM,QAAQ,GAAI,IAAI,WAAW,EAAE,OAAO,MAAM,YAA+C,CAAC;AAEvG,4CAA4C;AAC5C,eAAO,MAAM,YAAY,YAIxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpF,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,mBAAmB,EAAE,KAAK,GAAE,OAAO,CAAC,gBAAgB,CAAM,4CAIxG"}
|
|
@@ -39,6 +39,8 @@ declare const SPAN_CLASS: {
|
|
|
39
39
|
readonly 3: "md:col-span-3";
|
|
40
40
|
readonly 4: "md:col-span-4";
|
|
41
41
|
};
|
|
42
|
+
/** The submit copy every standalone `BookingForm` gets; the slot-first preset reads the same constant. */
|
|
43
|
+
export declare const DEFAULT_SUBMIT_LABEL = "Confirm Booking";
|
|
42
44
|
/** The even split of four columns over `count` slots; a remainder goes to the
|
|
43
45
|
* leading slots (three slots → 2/1/1), so a row never leaves a trailing gap. */
|
|
44
46
|
export declare const evenSpan: (count: number, index: number) => BookingFieldSpan;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"booking-form.d.ts","sourceRoot":"","sources":["../../../src/components/meeting-scheduler/booking-form.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAa,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,EAEL,KAAK,uBAAuB,EAM5B,KAAK,mBAAmB,EAIzB,MAAM,sCAAsC,CAAC;AAqB9C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yFAAyF;IACzF,IAAI,EAAE,uBAAuB,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,gFAAgF;IAChF,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,+EAA+E;AAC/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,UAAU,CAAC;AAEvD,MAAM,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiBD;6CAC6C;AAC7C,QAAA,MAAM,UAAU;;;;;CAKN,CAAC;AAKX;iFACiF;AACjF,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,EAAE,OAAO,MAAM,KAAG,gBAIvD,CAAC;AAoJF,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,mBAAmB,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qEACiE;IACjE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B,uFAAuF;IACvF,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,mFAAmF;IACnF,kBAAkB,EAAE;QAAE,GAAG,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,UAAU,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,EAC1B,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,QAAQ,EACR,SAAiB,EACjB,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,UAAU,GACX,EAAE,gBAAgB,+
|
|
1
|
+
{"version":3,"file":"booking-form.d.ts","sourceRoot":"","sources":["../../../src/components/meeting-scheduler/booking-form.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAa,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,EAEL,KAAK,uBAAuB,EAM5B,KAAK,mBAAmB,EAIzB,MAAM,sCAAsC,CAAC;AAqB9C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yFAAyF;IACzF,IAAI,EAAE,uBAAuB,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,gFAAgF;IAChF,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,+EAA+E;AAC/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,UAAU,CAAC;AAEvD,MAAM,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiBD;6CAC6C;AAC7C,QAAA,MAAM,UAAU;;;;;CAKN,CAAC;AAKX,0GAA0G;AAC1G,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAYtD;iFACiF;AACjF,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,EAAE,OAAO,MAAM,KAAG,gBAIvD,CAAC;AAoJF,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,mBAAmB,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qEACiE;IACjE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B,uFAAuF;IACvF,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,mFAAmF;IACnF,kBAAkB,EAAE;QAAE,GAAG,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,UAAU,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,EAC1B,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,QAAQ,EACR,SAAiB,EACjB,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,UAAU,GACX,EAAE,gBAAgB,+BAmTlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,+BA2BpH"}
|
|
@@ -345,6 +345,11 @@ var SPAN_CLASS = {
|
|
|
345
345
|
4: "md:col-span-4"
|
|
346
346
|
};
|
|
347
347
|
var FIELD_SKELETON_CLASS = "h-[4.75rem] w-full";
|
|
348
|
+
var DEFAULT_SUBMIT_LABEL = "Confirm Booking";
|
|
349
|
+
var FOOTER_ROW_CLASS = "flex flex-wrap items-center justify-between gap-[var(--spacing-system-m)]";
|
|
350
|
+
var FOOTER_BARE_CLASS = "flex";
|
|
351
|
+
var SUBMIT_WIDE_CLASS = "md:w-60";
|
|
352
|
+
var DEFAULT_FIELD_ROWS = [[{ name: "email" }], [{ name: "firstName" }, { name: "lastName" }]];
|
|
348
353
|
var evenSpan = (count, index) => {
|
|
349
354
|
const base = Math.floor(GRID_COLUMNS / Math.max(1, count));
|
|
350
355
|
const extra = GRID_COLUMNS - base * count;
|
|
@@ -571,22 +576,16 @@ function BookingForm({
|
|
|
571
576
|
const declared = declaredByName.get(name);
|
|
572
577
|
return declared ? renderDeclaredField(declared) : null;
|
|
573
578
|
};
|
|
574
|
-
const placedNames =
|
|
575
|
-
const unplacedBuiltIns = fieldRows ? BUILT_IN_BOOKING_FIELDS.filter((f) => !placedNames.has(f.name)) : [];
|
|
579
|
+
const { rows: placedRows, unplacedBuiltIns, named: placedNames } = normalizeFieldRows(_nullishCoalesce(fieldRows, () => ( [])), slotResolves);
|
|
576
580
|
const unplacedFields = fieldRows ? supportedFields.filter((f) => !placedNames.has(f.name)) : [];
|
|
577
|
-
const seen = /* @__PURE__ */ new Set();
|
|
578
|
-
const placedRows = (_nullishCoalesce(fieldRows, () => ( []))).map((row) => {
|
|
579
|
-
const kept = row.filter((slot) => slotResolves(slot.name) && !seen.has(slot.name) && Boolean(seen.add(slot.name)));
|
|
580
|
-
return kept.length === row.length ? kept : kept.map((slot) => ({ name: slot.name }));
|
|
581
|
-
}).filter((row) => row.length > 0);
|
|
582
581
|
const submitButton = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
583
582
|
_chunkCJBSU3XBcjs.Button,
|
|
584
583
|
{
|
|
585
584
|
type: "submit",
|
|
586
585
|
loading: isSubmitting,
|
|
587
586
|
disabled: isSubmitting,
|
|
588
|
-
className: footerNote ?
|
|
589
|
-
children: _nullishCoalesce(submitLabel, () => (
|
|
587
|
+
className: footerNote ? SUBMIT_WIDE_CLASS : void 0,
|
|
588
|
+
children: _nullishCoalesce(submitLabel, () => ( DEFAULT_SUBMIT_LABEL))
|
|
590
589
|
}
|
|
591
590
|
);
|
|
592
591
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "form", { onSubmit: submit, className: FORM_STACK, noValidate: true, children: [
|
|
@@ -658,44 +657,36 @@ function BookingForm({
|
|
|
658
657
|
),
|
|
659
658
|
legalConsent.privacyPolicyText && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: legalConsent.privacyPolicyText })
|
|
660
659
|
] }) }),
|
|
661
|
-
footerNote ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className:
|
|
660
|
+
footerNote ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: FOOTER_ROW_CLASS, children: [
|
|
662
661
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: footerNote }),
|
|
663
662
|
submitButton
|
|
664
|
-
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
663
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: FOOTER_BARE_CLASS, children: submitButton })
|
|
665
664
|
] });
|
|
666
665
|
}
|
|
667
666
|
function BookingFormSkeleton({ fieldRows, footerNote }) {
|
|
668
667
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk23V5BSHDcjs.cn.call(void 0, "flex-1", FORM_STACK), children: [
|
|
669
|
-
fieldRows
|
|
670
|
-
|
|
671
|
-
// normalised the way the form normalises what it can know without the
|
|
672
|
-
// link: a name placed twice once, and the built-ins no row names appended.
|
|
673
|
-
// (Undeclared questions cannot be dropped here — declaring them is what
|
|
674
|
-
// the availability the skeleton stands in for will tell us.)
|
|
675
|
-
skeletonRows(fieldRows).map((row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: ROW_GRID, children: row.map((slot, slotIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: _chunk23V5BSHDcjs.cn.call(void 0, FIELD_SKELETON_CLASS, slotColumnClass(row, slot, slotIndex)) }, slot.name)) }, row.map((s) => s.name).join("|")))
|
|
676
|
-
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
677
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-m)] md:grid-cols-2", children: [
|
|
678
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: FIELD_SKELETON_CLASS }),
|
|
679
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: FIELD_SKELETON_CLASS })
|
|
680
|
-
] }),
|
|
681
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: FIELD_SKELETON_CLASS }),
|
|
682
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-[7.75rem] w-full" })
|
|
683
|
-
] }),
|
|
668
|
+
skeletonRows(_nullishCoalesce(fieldRows, () => ( DEFAULT_FIELD_ROWS))).map((row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: ROW_GRID, children: row.map((slot, slotIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: _chunk23V5BSHDcjs.cn.call(void 0, FIELD_SKELETON_CLASS, slotColumnClass(row, slot, slotIndex)) }, slot.name)) }, row.map((s) => s.name).join("|"))),
|
|
669
|
+
!fieldRows && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-[7.75rem] w-full" }),
|
|
684
670
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-[4.25rem] w-full" }),
|
|
685
|
-
footerNote ? (
|
|
686
|
-
|
|
687
|
-
/* @__PURE__ */ _jsxruntime.
|
|
688
|
-
|
|
689
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-12 w-full md:w-60" })
|
|
690
|
-
] })
|
|
691
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-12 w-40" }) })
|
|
671
|
+
footerNote ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: FOOTER_ROW_CLASS, children: [
|
|
672
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-5 min-w-40 flex-1" }),
|
|
673
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: _chunk23V5BSHDcjs.cn.call(void 0, "h-12 w-full", SUBMIT_WIDE_CLASS) })
|
|
674
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: FOOTER_BARE_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCHIHYC7Qcjs.Skeleton, { className: "h-12 w-40" }) })
|
|
692
675
|
] });
|
|
693
676
|
}
|
|
694
|
-
function
|
|
677
|
+
function normalizeFieldRows(fieldRows, resolves = () => true) {
|
|
695
678
|
const seen = /* @__PURE__ */ new Set();
|
|
696
|
-
const rows = fieldRows.map((row) =>
|
|
697
|
-
|
|
698
|
-
|
|
679
|
+
const rows = fieldRows.map((row) => {
|
|
680
|
+
const kept = row.filter((slot) => resolves(slot.name) && !seen.has(slot.name) && Boolean(seen.add(slot.name)));
|
|
681
|
+
return kept.length === row.length ? kept : kept.map((slot) => ({ name: slot.name }));
|
|
682
|
+
}).filter((row) => row.length > 0);
|
|
683
|
+
const named = new Set(fieldRows.flat().map((slot) => slot.name));
|
|
684
|
+
const unplacedBuiltIns = BUILT_IN_BOOKING_FIELDS.filter((f) => !named.has(f.name));
|
|
685
|
+
return { rows, unplacedBuiltIns, named };
|
|
686
|
+
}
|
|
687
|
+
function skeletonRows(fieldRows) {
|
|
688
|
+
const { rows, unplacedBuiltIns } = normalizeFieldRows(fieldRows);
|
|
689
|
+
return [...rows, ...unplacedBuiltIns.map((f) => [{ name: f.name }])];
|
|
699
690
|
}
|
|
700
691
|
|
|
701
692
|
// src/components/meeting-scheduler/confirmation.tsx
|
|
@@ -1272,7 +1263,7 @@ var MEETING_SCHEDULER_H = "md:h-[34.375rem] lg:h-[23.75rem]";
|
|
|
1272
1263
|
var MEETING_SCHEDULER_DETAILS_FIRST_H = "md:h-[39.875rem]";
|
|
1273
1264
|
var DEFAULT_SCHEDULER_FLOW = "slot-first";
|
|
1274
1265
|
var SCHEDULER_FLOW_PRESETS = {
|
|
1275
|
-
"slot-first": { initialStep: "slot", height: MEETING_SCHEDULER_H, submitLabel:
|
|
1266
|
+
"slot-first": { initialStep: "slot", height: MEETING_SCHEDULER_H, submitLabel: DEFAULT_SUBMIT_LABEL },
|
|
1276
1267
|
"details-first": {
|
|
1277
1268
|
initialStep: "details",
|
|
1278
1269
|
height: MEETING_SCHEDULER_DETAILS_FIRST_H,
|