@flamingo-stack/openframe-frontend-core 0.0.535-1762.4618.1 → 0.0.535
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/{chunk-GF5A23J3.cjs → chunk-2P4J2YLI.cjs} +98 -98
- package/dist/{chunk-GF5A23J3.cjs.map → chunk-2P4J2YLI.cjs.map} +1 -1
- package/dist/{chunk-GS4HJA2G.js → chunk-4A736Z6S.js} +74 -20
- package/dist/chunk-4A736Z6S.js.map +1 -0
- package/dist/{chunk-GBWS62LR.js → chunk-4DTUUM5V.js} +45 -25
- package/dist/{chunk-GBWS62LR.js.map → chunk-4DTUUM5V.js.map} +1 -1
- package/dist/{chunk-JW4BTXVH.cjs → chunk-4HQFV4PK.cjs} +14 -14
- package/dist/{chunk-JW4BTXVH.cjs.map → chunk-4HQFV4PK.cjs.map} +1 -1
- package/dist/{chunk-GYONSC3U.cjs → chunk-4QYUNDS3.cjs} +3 -3
- package/dist/{chunk-GYONSC3U.cjs.map → chunk-4QYUNDS3.cjs.map} +1 -1
- package/dist/{chunk-T743Z3KN.cjs → chunk-5OLF6WXF.cjs} +40 -40
- package/dist/{chunk-T743Z3KN.cjs.map → chunk-5OLF6WXF.cjs.map} +1 -1
- package/dist/{chunk-SXLEPNY2.cjs → chunk-5RJUHUCI.cjs} +106 -52
- package/dist/chunk-5RJUHUCI.cjs.map +1 -0
- package/dist/{chunk-ZUVBTDLG.cjs → chunk-7MHYRBBQ.cjs} +5 -5
- package/dist/{chunk-ZUVBTDLG.cjs.map → chunk-7MHYRBBQ.cjs.map} +1 -1
- package/dist/{chunk-T4GNFVT3.cjs → chunk-E3YB55RR.cjs} +173 -153
- package/dist/chunk-E3YB55RR.cjs.map +1 -0
- package/dist/{chunk-JWWZFEFI.js → chunk-EHPQKXXW.js} +3 -3
- package/dist/{chunk-JZMQQBUC.cjs → chunk-GV4FDDFV.cjs} +18 -18
- package/dist/{chunk-JZMQQBUC.cjs.map → chunk-GV4FDDFV.cjs.map} +1 -1
- package/dist/{chunk-XPKCOZQE.js → chunk-JVO5CYMK.js} +8 -8
- package/dist/{chunk-6OZWDOP5.js → chunk-K6566PEB.js} +3 -3
- package/dist/{chunk-WXRQYGE5.js → chunk-KLFGP6PR.js} +2 -2
- package/dist/{chunk-7TQDW3PE.js → chunk-LIQJAC6Z.js} +2 -2
- package/dist/{chunk-GS4R5UQ7.js → chunk-LIX5OUHH.js} +2 -2
- package/dist/{chunk-RCBRCZUF.js → chunk-LQPHB2YF.js} +2 -2
- package/dist/{chunk-5OPVJBHQ.js → chunk-MZVFZMQ6.js} +6 -6
- package/dist/{chunk-URBYMQ4Z.js → chunk-N3AEJTCK.js} +5 -5
- package/dist/{chunk-DRJC7TTW.js → chunk-NB6BP6JB.js} +3 -3
- package/dist/{chunk-DK6IYFLD.cjs → chunk-P65EZEBW.cjs} +12 -12
- package/dist/{chunk-DK6IYFLD.cjs.map → chunk-P65EZEBW.cjs.map} +1 -1
- package/dist/{chunk-JWJQHURJ.js → chunk-PLGITXT7.js} +2 -2
- package/dist/{chunk-HSRHPF32.cjs → chunk-PSBL3S2B.cjs} +7 -7
- package/dist/{chunk-HSRHPF32.cjs.map → chunk-PSBL3S2B.cjs.map} +1 -1
- package/dist/{chunk-A5EA3YO7.js → chunk-QUVIT4JP.js} +6 -6
- package/dist/{chunk-GRGFMXNO.cjs → chunk-RO67OOKJ.cjs} +40 -40
- package/dist/{chunk-GRGFMXNO.cjs.map → chunk-RO67OOKJ.cjs.map} +1 -1
- package/dist/{chunk-2AMYXNQ2.cjs → chunk-TS2EHMEX.cjs} +29 -29
- package/dist/{chunk-2AMYXNQ2.cjs.map → chunk-TS2EHMEX.cjs.map} +1 -1
- package/dist/{chunk-WL3PP4D6.cjs → chunk-U2Q7GEX2.cjs} +32 -32
- package/dist/{chunk-WL3PP4D6.cjs.map → chunk-U2Q7GEX2.cjs.map} +1 -1
- package/dist/{chunk-QHOVACZK.js → chunk-VPDTDKO5.js} +2 -2
- package/dist/{chunk-ENOER2QA.cjs → chunk-Y55XQFJK.cjs} +75 -75
- package/dist/{chunk-ENOER2QA.cjs.map → chunk-Y55XQFJK.cjs.map} +1 -1
- package/dist/{chunk-HNZDQ4SH.js → chunk-Y72MXG5N.js} +4 -4
- package/dist/{chunk-CMIHA6TT.cjs → chunk-ZKKEKG73.cjs} +3 -3
- package/dist/{chunk-CMIHA6TT.cjs.map → chunk-ZKKEKG73.cjs.map} +1 -1
- package/dist/{chunk-TOWXHZF5.cjs → chunk-ZR5CJTNR.cjs} +4 -4
- package/dist/{chunk-TOWXHZF5.cjs.map → chunk-ZR5CJTNR.cjs.map} +1 -1
- package/dist/components/case-studies/index.cjs +9 -9
- package/dist/components/case-studies/index.js +3 -3
- package/dist/components/chat/index.cjs +3 -3
- package/dist/components/chat/index.js +2 -2
- package/dist/components/contact/index.cjs +4 -4
- package/dist/components/contact/index.js +3 -3
- package/dist/components/docs/index.cjs +6 -6
- package/dist/components/docs/index.js +5 -5
- package/dist/components/embeds/index.cjs +4 -4
- package/dist/components/embeds/index.js +3 -3
- package/dist/components/faq/index.cjs +5 -5
- package/dist/components/faq/index.js +4 -4
- package/dist/components/features/index.cjs +3 -3
- package/dist/components/features/index.js +2 -2
- package/dist/components/help-center-pages/index.cjs +24 -24
- package/dist/components/help-center-pages/index.js +15 -15
- package/dist/components/index.cjs +138 -138
- package/dist/components/index.js +13 -13
- package/dist/components/meeting-scheduler/index.cjs +40 -40
- package/dist/components/meeting-scheduler/index.js +4 -4
- package/dist/components/navigation/index.cjs +3 -3
- package/dist/components/navigation/index.js +2 -2
- package/dist/components/onboarding-guides/index.cjs +7 -7
- package/dist/components/onboarding-guides/index.js +6 -6
- package/dist/components/popover.d.ts.map +1 -1
- package/dist/components/related-content/index.cjs +5 -5
- package/dist/components/related-content/index.js +4 -4
- package/dist/components/tickets/index.cjs +7 -7
- package/dist/components/tickets/index.js +6 -6
- package/dist/components/ui/autocomplete.d.ts.map +1 -1
- package/dist/components/ui/index.cjs +3 -3
- package/dist/components/ui/index.js +2 -2
- package/dist/components/ui/search-input.d.ts.map +1 -1
- package/dist/components/ui/searchable-select.d.ts.map +1 -1
- package/dist/components/ui/tag-select-dropdown.d.ts.map +1 -1
- package/dist/components/ui/tags-manager.d.ts.map +1 -1
- package/dist/hooks/index.cjs +4 -2
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.js +3 -1
- package/dist/hooks/ui/index.d.ts +1 -0
- package/dist/hooks/ui/index.d.ts.map +1 -1
- package/dist/hooks/ui/use-keyboard-collision-padding.d.ts +2 -0
- package/dist/hooks/ui/use-keyboard-collision-padding.d.ts.map +1 -0
- package/dist/index.cjs +5 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4 -2
- package/package.json +1 -1
- package/src/components/popover.tsx +22 -14
- package/src/components/ui/autocomplete.tsx +9 -2
- package/src/components/ui/search-input.tsx +9 -2
- package/src/components/ui/searchable-select.tsx +9 -2
- package/src/components/ui/tag-select-dropdown.tsx +8 -2
- package/src/components/ui/tags-manager.tsx +9 -2
- package/src/hooks/ui/index.ts +1 -0
- package/src/hooks/ui/use-keyboard-collision-padding.ts +101 -0
- package/dist/chunk-GS4HJA2G.js.map +0 -1
- package/dist/chunk-SXLEPNY2.cjs.map +0 -1
- package/dist/chunk-T4GNFVT3.cjs.map +0 -1
- /package/dist/{chunk-JWWZFEFI.js.map → chunk-EHPQKXXW.js.map} +0 -0
- /package/dist/{chunk-XPKCOZQE.js.map → chunk-JVO5CYMK.js.map} +0 -0
- /package/dist/{chunk-6OZWDOP5.js.map → chunk-K6566PEB.js.map} +0 -0
- /package/dist/{chunk-WXRQYGE5.js.map → chunk-KLFGP6PR.js.map} +0 -0
- /package/dist/{chunk-7TQDW3PE.js.map → chunk-LIQJAC6Z.js.map} +0 -0
- /package/dist/{chunk-GS4R5UQ7.js.map → chunk-LIX5OUHH.js.map} +0 -0
- /package/dist/{chunk-RCBRCZUF.js.map → chunk-LQPHB2YF.js.map} +0 -0
- /package/dist/{chunk-5OPVJBHQ.js.map → chunk-MZVFZMQ6.js.map} +0 -0
- /package/dist/{chunk-URBYMQ4Z.js.map → chunk-N3AEJTCK.js.map} +0 -0
- /package/dist/{chunk-DRJC7TTW.js.map → chunk-NB6BP6JB.js.map} +0 -0
- /package/dist/{chunk-JWJQHURJ.js.map → chunk-PLGITXT7.js.map} +0 -0
- /package/dist/{chunk-A5EA3YO7.js.map → chunk-QUVIT4JP.js.map} +0 -0
- /package/dist/{chunk-QHOVACZK.js.map → chunk-VPDTDKO5.js.map} +0 -0
- /package/dist/{chunk-HNZDQ4SH.js.map → chunk-Y72MXG5N.js.map} +0 -0
|
@@ -50,8 +50,8 @@ function useAutoLimitTags({
|
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
const middle = middleRef.current;
|
|
53
|
-
const
|
|
54
|
-
if (!middle || !
|
|
53
|
+
const measure2 = measureRef.current;
|
|
54
|
+
if (!middle || !measure2) {
|
|
55
55
|
setVisibleCount(count);
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
@@ -73,7 +73,7 @@ function useAutoLimitTags({
|
|
|
73
73
|
trailingGap = gap;
|
|
74
74
|
}
|
|
75
75
|
const available = middleW - padL - padR - inputReservedW - trailingGap;
|
|
76
|
-
const tagEls = Array.from(
|
|
76
|
+
const tagEls = Array.from(measure2.children);
|
|
77
77
|
const widths = tagEls.map((el) => el.offsetWidth);
|
|
78
78
|
let total = 0;
|
|
79
79
|
for (let i = 0; i < widths.length; i++) {
|
|
@@ -203,7 +203,7 @@ function useHeaderHeight(defaultHeight = 72, options = {}) {
|
|
|
203
203
|
const [height, setHeight] = useState4(defaultHeight);
|
|
204
204
|
useEffect5(() => {
|
|
205
205
|
if (!enabled) return;
|
|
206
|
-
const
|
|
206
|
+
const measure2 = () => {
|
|
207
207
|
let total = 0;
|
|
208
208
|
const header2 = document.querySelector("header");
|
|
209
209
|
if (header2) total += header2.offsetHeight;
|
|
@@ -211,8 +211,8 @@ function useHeaderHeight(defaultHeight = 72, options = {}) {
|
|
|
211
211
|
if (bar2 instanceof HTMLElement) total += bar2.offsetHeight;
|
|
212
212
|
setHeight(total > 0 ? total : defaultHeight);
|
|
213
213
|
};
|
|
214
|
-
|
|
215
|
-
const resizeObserver = new ResizeObserver(
|
|
214
|
+
measure2();
|
|
215
|
+
const resizeObserver = new ResizeObserver(measure2);
|
|
216
216
|
const header = document.querySelector("header");
|
|
217
217
|
if (header) resizeObserver.observe(header);
|
|
218
218
|
const bar = document.querySelector("[data-announcement-bar]");
|
|
@@ -220,7 +220,7 @@ function useHeaderHeight(defaultHeight = 72, options = {}) {
|
|
|
220
220
|
const mutationObserver = new MutationObserver((mutations) => {
|
|
221
221
|
for (const mutation of mutations) {
|
|
222
222
|
if (mutation.type === "childList" || mutation.type === "attributes") {
|
|
223
|
-
|
|
223
|
+
measure2();
|
|
224
224
|
const newBar = document.querySelector("[data-announcement-bar]");
|
|
225
225
|
if (newBar) resizeObserver.observe(newBar);
|
|
226
226
|
}
|
|
@@ -297,7 +297,7 @@ function useHorizontalScrollbar() {
|
|
|
297
297
|
setCanScrollRight(right);
|
|
298
298
|
}
|
|
299
299
|
}, []);
|
|
300
|
-
const
|
|
300
|
+
const measure2 = useCallback3(() => {
|
|
301
301
|
const el = scrollElRef.current;
|
|
302
302
|
if (!el) return;
|
|
303
303
|
const ratio = el.clientWidth / el.scrollWidth;
|
|
@@ -322,7 +322,7 @@ function useHorizontalScrollbar() {
|
|
|
322
322
|
if (node) {
|
|
323
323
|
const ratio = node.clientWidth / node.scrollWidth;
|
|
324
324
|
setThumbRatio(ratio >= 1 ? 0 : ratio);
|
|
325
|
-
const ro = new ResizeObserver(
|
|
325
|
+
const ro = new ResizeObserver(measure2);
|
|
326
326
|
roRef.current = ro;
|
|
327
327
|
const observeAll = () => {
|
|
328
328
|
ro.disconnect();
|
|
@@ -332,7 +332,7 @@ function useHorizontalScrollbar() {
|
|
|
332
332
|
observeAll();
|
|
333
333
|
moRef.current = new MutationObserver(() => {
|
|
334
334
|
observeAll();
|
|
335
|
-
|
|
335
|
+
measure2();
|
|
336
336
|
});
|
|
337
337
|
moRef.current.observe(node, { childList: true });
|
|
338
338
|
requestAnimationFrame(() => {
|
|
@@ -346,7 +346,7 @@ function useHorizontalScrollbar() {
|
|
|
346
346
|
setCanScrollLeft(false);
|
|
347
347
|
setCanScrollRight(false);
|
|
348
348
|
}
|
|
349
|
-
}, [
|
|
349
|
+
}, [measure2, syncThumbToDOM, syncEdgeFades]);
|
|
350
350
|
const onScroll = useCallback3(() => {
|
|
351
351
|
if (isDraggingRef.current) return;
|
|
352
352
|
if (rafIdRef.current) cancelAnimationFrame(rafIdRef.current);
|
|
@@ -547,6 +547,59 @@ function useIsTruncated(value, options) {
|
|
|
547
547
|
import { useEffect as useEffect8, useLayoutEffect } from "react";
|
|
548
548
|
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? useLayoutEffect : useEffect8;
|
|
549
549
|
|
|
550
|
+
// src/hooks/ui/use-keyboard-collision-padding.ts
|
|
551
|
+
import { useSyncExternalStore } from "react";
|
|
552
|
+
var KEYBOARD_INSET_VAR = "--of-keyboard-inset";
|
|
553
|
+
function measure() {
|
|
554
|
+
if (typeof document === "undefined") return 0;
|
|
555
|
+
const inset = Number.parseFloat(
|
|
556
|
+
getComputedStyle(document.documentElement).getPropertyValue(KEYBOARD_INSET_VAR)
|
|
557
|
+
);
|
|
558
|
+
if (!(inset > 0)) return 0;
|
|
559
|
+
const layoutHeight = document.documentElement.clientHeight;
|
|
560
|
+
const viewport = window.visualViewport;
|
|
561
|
+
const viewportBottom = viewport ? viewport.offsetTop + viewport.height : layoutHeight;
|
|
562
|
+
return Math.max(0, Math.round(viewportBottom - (layoutHeight - inset)));
|
|
563
|
+
}
|
|
564
|
+
var listeners = /* @__PURE__ */ new Set();
|
|
565
|
+
var padding = 0;
|
|
566
|
+
var teardown = null;
|
|
567
|
+
function sync() {
|
|
568
|
+
const next = measure();
|
|
569
|
+
if (next === padding) return;
|
|
570
|
+
padding = next;
|
|
571
|
+
for (const notify of listeners) notify();
|
|
572
|
+
}
|
|
573
|
+
function subscribe(onStoreChange) {
|
|
574
|
+
listeners.add(onStoreChange);
|
|
575
|
+
if (listeners.size === 1) {
|
|
576
|
+
padding = measure();
|
|
577
|
+
const observer = new MutationObserver(sync);
|
|
578
|
+
observer.observe(document.documentElement, { attributes: true, attributeFilter: ["style"] });
|
|
579
|
+
const viewport = window.visualViewport;
|
|
580
|
+
viewport?.addEventListener("resize", sync);
|
|
581
|
+
viewport?.addEventListener("scroll", sync);
|
|
582
|
+
teardown = () => {
|
|
583
|
+
observer.disconnect();
|
|
584
|
+
viewport?.removeEventListener("resize", sync);
|
|
585
|
+
viewport?.removeEventListener("scroll", sync);
|
|
586
|
+
};
|
|
587
|
+
}
|
|
588
|
+
return () => {
|
|
589
|
+
listeners.delete(onStoreChange);
|
|
590
|
+
if (listeners.size > 0) return;
|
|
591
|
+
teardown?.();
|
|
592
|
+
teardown = null;
|
|
593
|
+
};
|
|
594
|
+
}
|
|
595
|
+
function useKeyboardCollisionPadding() {
|
|
596
|
+
return useSyncExternalStore(
|
|
597
|
+
subscribe,
|
|
598
|
+
() => padding,
|
|
599
|
+
() => 0
|
|
600
|
+
);
|
|
601
|
+
}
|
|
602
|
+
|
|
550
603
|
// src/hooks/ui/use-local-storage.ts
|
|
551
604
|
import { useEffect as useEffect9, useRef as useRef4, useState as useState8 } from "react";
|
|
552
605
|
function useLocalStorage(key, initialValue) {
|
|
@@ -748,22 +801,22 @@ function useNotificationPermission() {
|
|
|
748
801
|
useEffect11(() => {
|
|
749
802
|
if (typeof window === "undefined" || !("Notification" in window)) return;
|
|
750
803
|
setSupported(true);
|
|
751
|
-
const
|
|
752
|
-
|
|
804
|
+
const sync2 = () => setPermission(Notification.permission);
|
|
805
|
+
sync2();
|
|
753
806
|
let cancelled = false;
|
|
754
807
|
let status;
|
|
755
808
|
navigator.permissions?.query({ name: "notifications" }).then((s) => {
|
|
756
809
|
if (cancelled) return;
|
|
757
810
|
status = s;
|
|
758
|
-
s.addEventListener("change",
|
|
811
|
+
s.addEventListener("change", sync2);
|
|
759
812
|
}).catch(() => void 0);
|
|
760
|
-
document.addEventListener("visibilitychange",
|
|
761
|
-
window.addEventListener("focus",
|
|
813
|
+
document.addEventListener("visibilitychange", sync2);
|
|
814
|
+
window.addEventListener("focus", sync2);
|
|
762
815
|
return () => {
|
|
763
816
|
cancelled = true;
|
|
764
|
-
status?.removeEventListener("change",
|
|
765
|
-
document.removeEventListener("visibilitychange",
|
|
766
|
-
window.removeEventListener("focus",
|
|
817
|
+
status?.removeEventListener("change", sync2);
|
|
818
|
+
document.removeEventListener("visibilitychange", sync2);
|
|
819
|
+
window.removeEventListener("focus", sync2);
|
|
767
820
|
};
|
|
768
821
|
}, []);
|
|
769
822
|
const request = useCallback7(async () => {
|
|
@@ -3983,6 +4036,7 @@ function useHumanitySignals() {
|
|
|
3983
4036
|
export {
|
|
3984
4037
|
useIsTruncated,
|
|
3985
4038
|
useAutoLimitTags,
|
|
4039
|
+
useKeyboardCollisionPadding,
|
|
3986
4040
|
useDebounce,
|
|
3987
4041
|
useDeferredError,
|
|
3988
4042
|
useFocusTrap,
|
|
@@ -4116,4 +4170,4 @@ export {
|
|
|
4116
4170
|
splitCsvEnv,
|
|
4117
4171
|
useHumanitySignals
|
|
4118
4172
|
};
|
|
4119
|
-
//# sourceMappingURL=chunk-
|
|
4173
|
+
//# sourceMappingURL=chunk-4A736Z6S.js.map
|