@flamingo-stack/openframe-frontend-core 0.0.742 → 0.0.743

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 (91) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-WIHHA54J.cjs → chunk-4A6OF4HI.cjs} +44 -44
  3. package/dist/{chunk-OBODY7F3.cjs → chunk-4N7KGOBS.cjs} +3 -3
  4. package/dist/{chunk-L34TKFTS.cjs → chunk-6XCQXGQA.cjs} +16 -16
  5. package/dist/{chunk-32Q7K5OP.cjs → chunk-7YDF3QBN.cjs} +116 -115
  6. package/dist/{chunk-PS6T65KA.cjs → chunk-BM6JZRVD.cjs} +65 -65
  7. package/dist/{chunk-R6SCSV2I.cjs → chunk-BNTELSHZ.cjs} +81 -81
  8. package/dist/{chunk-YQGDXH3M.cjs → chunk-GAGNKWOC.cjs} +2 -2
  9. package/dist/{chunk-HIRVNBX5.cjs → chunk-IRWJKVVZ.cjs} +16 -16
  10. package/dist/{chunk-XAA5EZ5T.cjs → chunk-JGZEHBBD.cjs} +6 -6
  11. package/dist/{chunk-5MH6BRPY.cjs → chunk-LJ46XYYP.cjs} +24 -12
  12. package/dist/{chunk-HDBY2URA.cjs → chunk-MLZKPDPZ.cjs} +31 -31
  13. package/dist/{chunk-4LDU32OB.cjs → chunk-MT7ELGCV.cjs} +4 -4
  14. package/dist/{chunk-UWHCRIQQ.cjs → chunk-NGUJVM6O.cjs} +13 -13
  15. package/dist/{chunk-DNFSMVXJ.cjs → chunk-SQHTX5XP.cjs} +12 -12
  16. package/dist/{chunk-T433HSL6.cjs → chunk-TKASH5YC.cjs} +33 -33
  17. package/dist/{chunk-ZIFYSLIM.cjs → chunk-UL6ZZSL4.cjs} +4 -4
  18. package/dist/{chunk-4PKORVOX.cjs → chunk-WCY35GB5.cjs} +441 -406
  19. package/dist/{chunk-UZLRSFGG.cjs → chunk-XJO5ZHO6.cjs} +30 -30
  20. package/dist/{chunk-3LW43GIJ.cjs → chunk-Y2FN3E32.cjs} +4 -4
  21. package/dist/{chunk-54EA4RLX.cjs → chunk-YDFKFLDQ.cjs} +3 -3
  22. package/dist/{chunk-BI3XBCQX.cjs → chunk-YIOWV7LS.cjs} +2 -2
  23. package/dist/{chunk-H3UA7UY5.cjs → chunk-YJRMCFX3.cjs} +2 -2
  24. package/dist/{chunk-Z2DQYKZA.cjs → chunk-YWMUZLU2.cjs} +69 -69
  25. package/dist/{chunk-ISJXKKYW.cjs → chunk-ZP5DFF3Q.cjs} +11 -11
  26. package/dist/{cloud-tenants-6ICAL3HO.cjs → cloud-tenants-DZC3ACG6.cjs} +7 -7
  27. package/dist/components/case-studies/index.cjs +19 -19
  28. package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts.map +1 -1
  29. package/dist/components/chat/entity-cards/onboarding-guide-card.js +22 -12
  30. package/dist/components/chat/index.cjs +5 -5
  31. package/dist/components/chat/tool-execution-display.d.ts.map +1 -1
  32. package/dist/components/chat/tool-execution-display.js +5 -4
  33. package/dist/components/contact/index.cjs +8 -8
  34. package/dist/components/docs/index.cjs +11 -11
  35. package/dist/components/embeds/index.cjs +8 -8
  36. package/dist/components/faq/index.cjs +9 -9
  37. package/dist/components/features/index.cjs +7 -7
  38. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts +1 -1
  39. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts.map +1 -1
  40. package/dist/components/features/scripts/schedule-form/schedule-interval-input.js +15 -13
  41. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.d.ts.map +1 -1
  42. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.js +9 -7
  43. package/dist/components/help-center-pages/index.cjs +101 -101
  44. package/dist/components/index.cjs +59 -57
  45. package/dist/components/meeting-scheduler/booking-form.d.ts +11 -1
  46. package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
  47. package/dist/components/meeting-scheduler/booking-form.js +15 -3
  48. package/dist/components/meeting-scheduler/index.cjs +408 -114
  49. package/dist/components/meeting-scheduler/index.d.ts +16 -1
  50. package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
  51. package/dist/components/meeting-scheduler/index.js +157 -5
  52. package/dist/components/meeting-scheduler/modal-header.d.ts +27 -0
  53. package/dist/components/meeting-scheduler/modal-header.d.ts.map +1 -0
  54. package/dist/components/meeting-scheduler/modal-header.js +104 -0
  55. package/dist/components/meeting-scheduler/slot-picker.d.ts +13 -2
  56. package/dist/components/meeting-scheduler/slot-picker.d.ts.map +1 -1
  57. package/dist/components/meeting-scheduler/slot-picker.js +112 -73
  58. package/dist/components/navigation/index.cjs +10 -10
  59. package/dist/components/onboarding-guides/index.cjs +10 -10
  60. package/dist/components/product-demo/index.cjs +7 -7
  61. package/dist/components/related-content/index.cjs +5 -5
  62. package/dist/components/shared/product-release/product-release-card.d.ts.map +1 -1
  63. package/dist/components/shared/product-release/product-release-card.js +2 -0
  64. package/dist/components/tickets/index.cjs +13 -13
  65. package/dist/components/ui/index.cjs +9 -7
  66. package/dist/components/ui/radio-group.d.ts +6 -0
  67. package/dist/components/ui/radio-group.d.ts.map +1 -1
  68. package/dist/components/ui/radio-group.js +65 -58
  69. package/dist/components/ui/tab-navigation.d.ts +19 -1
  70. package/dist/components/ui/tab-navigation.d.ts.map +1 -1
  71. package/dist/components/ui/tab-navigation.js +32 -8
  72. package/dist/{devices-OFP2IBKN.cjs → devices-MFGE2JQV.cjs} +8 -8
  73. package/dist/{embeddable-chat-4C22MGNC.cjs → embeddable-chat-7ZEGCDVF.cjs} +71 -71
  74. package/dist/index.cjs +13 -11
  75. package/dist/{knowledge-KKBCSNUA.cjs → knowledge-7VPS2ZBU.cjs} +8 -8
  76. package/dist/{logs-X2GRNO57.cjs → logs-M3QPAUH7.cjs} +15 -15
  77. package/dist/{policies-35BXKB6P.cjs → policies-UAVE6X62.cjs} +11 -11
  78. package/dist/{scripts-KQYVQOLU.cjs → scripts-EDQ3IQKW.cjs} +12 -12
  79. package/dist/{software-update-ED33WSKT.cjs → software-update-B2MZVNPK.cjs} +10 -10
  80. package/package.json +1 -1
  81. package/src/components/chat/entity-cards/onboarding-guide-card.tsx +8 -1
  82. package/src/components/chat/tool-execution-display.tsx +21 -10
  83. package/src/components/features/scripts/schedule-form/schedule-interval-input.tsx +20 -13
  84. package/src/components/features/scripts/schedule-form/schedule-offline-fields.tsx +9 -5
  85. package/src/components/meeting-scheduler/booking-form.tsx +29 -3
  86. package/src/components/meeting-scheduler/index.tsx +224 -3
  87. package/src/components/meeting-scheduler/modal-header.tsx +145 -0
  88. package/src/components/meeting-scheduler/slot-picker.tsx +72 -8
  89. package/src/components/shared/product-release/product-release-card.tsx +2 -0
  90. package/src/components/ui/radio-group.tsx +51 -36
  91. package/src/components/ui/tab-navigation.tsx +54 -5
@@ -90,6 +90,16 @@ export interface BookingFormProps {
90
90
  * appended full width. Both are deliberate — see `slotNode`/`unplacedFields`.
91
91
  */
92
92
  fieldRows?: BookingFieldRow[];
93
+ /** The form element's id, so a host can submit it from a button outside it
94
+ * (`<button form={id}>`): the modal layout keeps its actions in a footer
95
+ * under the card. */
96
+ formId?: string;
97
+ /** Leave the submit button out: the host draws one of its own (see `formId`). */
98
+ hideSubmit?: boolean;
99
+ /** Whether the answers would pass validation as they stand, reported on every
100
+ * change: a host drawing its own submit keeps it disabled until this says
101
+ * true. The form's own button never needs it - its click validates. */
102
+ onValidityChange?: (valid: boolean) => void;
93
103
  /** Per-field display overrides, keyed by field name — see `BookingFieldCopy`. */
94
104
  fieldCopy?: Record<string, BookingFieldCopy>;
95
105
  /** Email domains this form refuses, with the message it shows — see `DeniedEmailDomains`.
@@ -125,7 +135,7 @@ export interface BookingFormProps {
125
135
  * submit; the parent calls `resetSignals()` after a SLOT_TAKEN refetch so a
126
136
  * legitimate retry isn't flagged too-fast.
127
137
  */
128
- export declare function BookingForm({ availability, meetingId, startTimeMs, durationMs, timezone, deferSlot, initialValues, submitLabel, footerNote, fieldRows, fieldCopy, deniedEmailDomains, consent, isSubmitting, onSubmit, honeypotInputProps, getSignals, rescue, }: BookingFormProps): import("react").JSX.Element;
138
+ export declare function BookingForm({ availability, meetingId, startTimeMs, durationMs, timezone, deferSlot, initialValues, submitLabel, footerNote, fieldRows, formId, hideSubmit, onValidityChange, fieldCopy, deniedEmailDomains, consent, isSubmitting, onSubmit, honeypotInputProps, getSignals, rescue, }: BookingFormProps): import("react").JSX.Element;
129
139
  /**
130
140
  * Cold-start placeholder for `flow="details-first"`, where the FORM is the
131
141
  * first thing in the action panel.
@@ -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;AAKvD,OAAO,EAEL,KAAK,uBAAuB,EAM5B,KAAK,kBAAkB,EAKvB,KAAK,mBAAmB,EAKzB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAqBpE;;;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;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;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;AAkBD;6CAC6C;AAC7C,QAAA,MAAM,UAAU;;;;;CAKN,CAAC;AAOX,0GAA0G;AAC1G,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAYtD;iFACiF;AACjF,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,EAAE,OAAO,MAAM,KAAG,gBAIvD,CAAC;AA2NF,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,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC7C;gFAC4E;IAC5E,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,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;IAClD;;;6BAGyB;IACzB,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACtC;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,SAAS,EACT,kBAAkB,EAClB,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,MAAa,GACd,EAAE,gBAAgB,+BA+WlB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,OAAO,EACP,UAAU,GACX,EAAE;IACD,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B;;qDAEiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,+BA2BA"}
1
+ {"version":3,"file":"booking-form.d.ts","sourceRoot":"","sources":["../../../src/components/meeting-scheduler/booking-form.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
3
  import { zodResolver } from "@hookform/resolvers/zod";
4
- import { Fragment as Fragment2, useEffect, useMemo, useState } from "react";
4
+ import { Fragment as Fragment2, useEffect, useMemo, useRef, useState } from "react";
5
5
  import { useForm, Controller } from "react-hook-form";
6
6
  import { useRescuedForm } from "../../hooks/use-rescued-form.js";
7
7
  import { useToast } from "../../hooks/use-toast.js";
@@ -240,6 +240,9 @@ function BookingForm({
240
240
  submitLabel,
241
241
  footerNote,
242
242
  fieldRows,
243
+ formId,
244
+ hideSubmit = false,
245
+ onValidityChange,
243
246
  fieldCopy,
244
247
  deniedEmailDomains,
245
248
  consent,
@@ -292,6 +295,15 @@ function BookingForm({
292
295
  const [consented, setConsented] = useState(initialValues?.[HOST_CONSENT_KEY] === true);
293
296
  const [consentError, setConsentError] = useState(null);
294
297
  const consentMissing = Boolean(consent) && !consented;
298
+ const watchedValues = watch();
299
+ const liveValid = onValidityChange ? schema.safeParse(watchedValues).success && !consentMissing : false;
300
+ const lastValidRef = useRef(null);
301
+ useEffect(() => {
302
+ if (!onValidityChange) return;
303
+ if (lastValidRef.current === liveValid) return;
304
+ lastValidRef.current = liveValid;
305
+ onValidityChange(liveValid);
306
+ });
295
307
  useEffect(() => {
296
308
  const current = getValues("legalConsentResponses") ?? priorConsents ?? [];
297
309
  setValue(
@@ -404,7 +416,7 @@ function BookingForm({
404
416
  children: submitLabel ?? DEFAULT_SUBMIT_LABEL
405
417
  }
406
418
  );
407
- return /* @__PURE__ */ jsxs("form", { onSubmit: submit, className: FORM_STACK, noValidate: true, ...HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, children: [
419
+ return /* @__PURE__ */ jsxs("form", { id: formId, onSubmit: submit, className: FORM_STACK, noValidate: true, ...HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, children: [
408
420
  /* @__PURE__ */ jsx(HoneypotField, { ...honeypotInputProps }),
409
421
  fieldRows ? /* @__PURE__ */ jsxs(Fragment, { children: [
410
422
  placedRows.map((row) => /* @__PURE__ */ jsx("div", { className: ROW_GRID, children: row.map((slot, slotIndex) => /* @__PURE__ */ jsx("div", { className: slotColumnClass(row, slot, slotIndex), children: slotNode(slot.name) }, slot.name)) }, row.map((s) => s.name).join("|"))),
@@ -473,7 +485,7 @@ function BookingForm({
473
485
  ),
474
486
  legalConsent.privacyPolicyText && /* @__PURE__ */ jsx("p", { className: "text-ods-text-secondary text-h6", children: legalConsent.privacyPolicyText })
475
487
  ] }) }),
476
- footerNote ? /* @__PURE__ */ jsxs("div", { className: FOOTER_ROW_CLASS, children: [
488
+ hideSubmit ? null : footerNote ? /* @__PURE__ */ jsxs("div", { className: FOOTER_ROW_CLASS, children: [
477
489
  /* @__PURE__ */ jsx("p", { className: "text-ods-text-secondary text-h6", children: footerNote }),
478
490
  submitButton
479
491
  ] }) : /* @__PURE__ */ jsx("div", { className: FOOTER_BARE_CLASS, children: submitButton })