@flamingo-stack/openframe-frontend-core 0.0.737 → 0.0.739
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/build/export-map.json +1 -1
- package/dist/{chunk-AZL332TK.cjs → chunk-2QMBXGMQ.cjs} +15 -2
- package/dist/{chunk-HZJRERJW.cjs → chunk-3RFQPQ7Z.cjs} +3 -3
- package/dist/{chunk-YADG5Q7C.cjs → chunk-63N4FN5V.cjs} +3 -3
- package/dist/{chunk-FTTLBMHU.cjs → chunk-7ZFCR7UY.cjs} +2 -2
- package/dist/{chunk-MJGX357L.cjs → chunk-B27QEHYR.cjs} +2 -2
- package/dist/{chunk-VRNNIV5Y.cjs → chunk-B3XBJCOD.cjs} +9 -9
- package/dist/{chunk-VL4JKXU2.cjs → chunk-BV5WZVOP.cjs} +243 -243
- package/dist/{chunk-KVGBDWYV.cjs → chunk-CUDTMCXK.cjs} +36 -36
- package/dist/{chunk-L4ZNR5V7.cjs → chunk-DSVNFRY5.cjs} +87 -87
- package/dist/{chunk-LW3QSP47.cjs → chunk-DTLHY2ZF.cjs} +27 -27
- package/dist/{chunk-4ISP3XP4.cjs → chunk-EGN4I5Q7.cjs} +76 -76
- package/dist/{chunk-XPP7VCNY.cjs → chunk-ENCAIAMY.cjs} +10 -10
- package/dist/{chunk-FA2LATDM.cjs → chunk-FL6UO7IR.cjs} +4 -4
- package/dist/{chunk-ZRYKDN2J.cjs → chunk-GABDE3FM.cjs} +24 -24
- package/dist/{chunk-MYBTNOS6.cjs → chunk-GSWQZX23.cjs} +2 -2
- package/dist/{chunk-L535OD7V.cjs → chunk-HF7Z2E4W.cjs} +2 -2
- package/dist/chunk-HOTM4UM6.cjs +84 -0
- package/dist/{chunk-EAY6ZUES.cjs → chunk-I5MSCD57.cjs} +2 -2
- package/dist/{chunk-FCGLSWKR.cjs → chunk-IFS4AH77.cjs} +19 -1
- package/dist/{chunk-MGW5DO6P.cjs → chunk-KLI4OSRA.cjs} +7 -7
- package/dist/{chunk-O4MG7FXW.cjs → chunk-NX6JQT25.cjs} +6 -6
- package/dist/{chunk-ZJNYWNCB.cjs → chunk-O67V3HJR.cjs} +29 -29
- package/dist/{chunk-DUXLZPMJ.cjs → chunk-PQ2M7P2U.cjs} +7 -7
- package/dist/{chunk-SGVQO5J6.cjs → chunk-Q7GG3WC5.cjs} +26 -26
- package/dist/{chunk-TJQYX3QC.cjs → chunk-RGFT3P3L.cjs} +97 -97
- package/dist/{chunk-4FJZ7RJD.cjs → chunk-S2CA5WE4.cjs} +161 -93
- package/dist/{chunk-E2JCZU36.cjs → chunk-SB4VWA5V.cjs} +1044 -857
- package/dist/{chunk-XLSVQJBA.cjs → chunk-SFY4UYPY.cjs} +44 -44
- package/dist/{chunk-4RMLAHU2.cjs → chunk-TF7J6VXG.cjs} +20 -20
- package/dist/{chunk-CM35DLKS.cjs → chunk-UI3HROSI.cjs} +35 -35
- package/dist/{chunk-DA4VS6TS.cjs → chunk-UXFJXIUT.cjs} +4 -4
- package/dist/{chunk-N6YOOGCD.cjs → chunk-UYP3G6PB.cjs} +12 -12
- package/dist/{chunk-URIJ6YUG.cjs → chunk-V2ZFH42N.cjs} +22 -17
- package/dist/{chunk-77SD7RXY.cjs → chunk-WBANGORJ.cjs} +7 -7
- package/dist/{chunk-VYODTHMR.cjs → chunk-WMKNZI4G.cjs} +54 -54
- package/dist/{chunk-EX2GYIGW.cjs → chunk-YRE3O65E.cjs} +12 -12
- package/dist/{chunk-EJOXXJJB.cjs → chunk-YXKB5WRE.cjs} +95 -104
- package/dist/{cloud-tenants-IWQ5FFLY.cjs → cloud-tenants-QSFSO3PA.cjs} +20 -20
- package/dist/components/agent-identity.d.ts +8 -1
- package/dist/components/agent-identity.d.ts.map +1 -1
- package/dist/components/agent-identity.js +6 -1
- package/dist/components/calendar.cjs +4 -4
- package/dist/components/case-studies/index.cjs +32 -32
- package/dist/components/chat/chat-turn.d.ts +23 -0
- package/dist/components/chat/chat-turn.d.ts.map +1 -0
- package/dist/components/chat/chat-turn.js +30 -0
- package/dist/components/chat/index.cjs +18 -16
- package/dist/components/chat/index.d.ts +1 -0
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +1 -0
- package/dist/components/contact/index.cjs +21 -21
- package/dist/components/docs/index.cjs +24 -24
- package/dist/components/embeds/index.cjs +21 -21
- package/dist/components/faq/faq-section.d.ts.map +1 -1
- package/dist/components/faq/faq-section.js +9 -4
- package/dist/components/faq/index.cjs +22 -22
- package/dist/components/features/auth/auth-benefits-panel.d.ts +3 -5
- package/dist/components/features/auth/auth-benefits-panel.d.ts.map +1 -1
- package/dist/components/features/auth/auth-benefits-panel.js +3 -19
- package/dist/components/features/conversation-card.d.ts +12 -4
- package/dist/components/features/conversation-card.d.ts.map +1 -1
- package/dist/components/features/conversation-card.js +30 -38
- package/dist/components/features/index.cjs +20 -20
- package/dist/components/features/walkthrough-video.d.ts +3 -0
- package/dist/components/features/walkthrough-video.d.ts.map +1 -1
- package/dist/components/features/walkthrough-video.js +36 -13
- package/dist/components/help-center-pages/index.cjs +127 -127
- package/dist/components/index.cjs +114 -98
- package/dist/components/meeting-scheduler/index.cjs +67 -67
- package/dist/components/navigation/index.cjs +23 -23
- package/dist/components/onboarding-guides/index.cjs +23 -23
- package/dist/components/platform/ToolBadge.d.ts.map +1 -1
- package/dist/components/platform/ToolBadge.js +4 -3
- package/dist/components/product-demo/index.cjs +8 -8
- package/dist/components/related-content/index.cjs +12 -12
- package/dist/components/tickets/index.cjs +26 -26
- package/dist/components/ui/app-window-frame.d.ts +7 -1
- package/dist/components/ui/app-window-frame.d.ts.map +1 -1
- package/dist/components/ui/app-window-frame.js +10 -2
- package/dist/components/ui/benefit-list.d.ts +42 -0
- package/dist/components/ui/benefit-list.d.ts.map +1 -0
- package/dist/components/ui/benefit-list.js +62 -0
- package/dist/components/ui/button/button.d.ts +1 -0
- package/dist/components/ui/button/button.d.ts.map +1 -1
- package/dist/components/ui/button/button.js +15 -2
- package/dist/components/ui/dropdown-button.d.ts +20 -2
- package/dist/components/ui/dropdown-button.d.ts.map +1 -1
- package/dist/components/ui/dropdown-button.js +57 -1
- package/dist/components/ui/file-manager/index.cjs +11 -11
- package/dist/components/ui/index.cjs +34 -20
- package/dist/components/ui/index.d.ts +3 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +3 -0
- package/dist/components/ui/leader-row.d.ts +17 -0
- package/dist/components/ui/leader-row.d.ts.map +1 -0
- package/dist/components/ui/leader-row.js +14 -0
- package/dist/components/ui/strip-card.d.ts +23 -0
- package/dist/components/ui/strip-card.d.ts.map +1 -0
- package/dist/components/ui/strip-card.js +56 -0
- package/dist/{devices-OUHGWA6Y.cjs → devices-C7XLWJFC.cjs} +21 -21
- package/dist/embed-shims/index.cjs +2 -2
- package/dist/embed-shims/next-image.cjs +2 -2
- package/dist/embed-shims/next-image.d.ts.map +1 -1
- package/dist/embed-shims/next-image.js +6 -2
- package/dist/{embeddable-chat-U3C4WWB7.cjs → embeddable-chat-6JKKFQEB.cjs} +89 -89
- package/dist/hooks/index.cjs +3 -3
- package/dist/index.cjs +46 -25
- package/dist/{knowledge-3ZASPWMF.cjs → knowledge-3QKWTOE7.cjs} +21 -21
- package/dist/{logs-E6Y54P6K.cjs → logs-JXD75NR4.cjs} +29 -29
- package/dist/{policies-LAV75B5B.cjs → policies-ZPN53PFQ.cjs} +24 -24
- package/dist/{remote-session-Z4YZFG5E.cjs → remote-session-DNFZ5OLY.cjs} +10 -10
- package/dist/{software-update-2CAL3AMJ.cjs → software-update-CRSIBS3K.cjs} +24 -24
- package/dist/{tickets-board-JOSYLOS7.cjs → tickets-board-CKZRB6YV.cjs} +12 -12
- package/dist/utils/demo-clock.d.ts +22 -0
- package/dist/utils/demo-clock.d.ts.map +1 -0
- package/dist/utils/demo-clock.js +40 -0
- package/dist/utils/identity-tint.d.ts +13 -0
- package/dist/utils/identity-tint.d.ts.map +1 -0
- package/dist/utils/identity-tint.js +14 -0
- package/dist/utils/index.cjs +54 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/{video-file-player-6NWGXZ3W.cjs → video-file-player-ZH2ILAPO.cjs} +12 -12
- package/package.json +1 -1
- package/src/components/agent-identity.tsx +12 -1
- package/src/components/chat/chat-turn.tsx +52 -0
- package/src/components/chat/index.ts +1 -0
- package/src/components/faq/faq-section.tsx +4 -1
- package/src/components/features/auth/auth-benefits-panel.tsx +5 -32
- package/src/components/features/conversation-card.tsx +48 -46
- package/src/components/features/walkthrough-video.tsx +59 -18
- package/src/components/platform/ToolBadge.tsx +4 -3
- package/src/components/ui/app-window-frame.tsx +18 -2
- package/src/components/ui/benefit-list.tsx +97 -0
- package/src/components/ui/button/button.tsx +14 -1
- package/src/components/ui/dropdown-button.tsx +73 -1
- package/src/components/ui/index.ts +3 -0
- package/src/components/ui/leader-row.tsx +28 -0
- package/src/components/ui/strip-card.tsx +68 -0
- package/src/embed-shims/next-image.tsx +15 -4
- package/src/utils/demo-clock.ts +62 -0
- package/src/utils/identity-tint.ts +23 -0
- package/src/utils/index.ts +2 -0
- package/dist/chunk-UR4K2NSL.cjs +0 -69
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
11
|
-
require('../../chunk-
|
|
12
|
-
require('../../chunk-
|
|
13
|
-
require('../../chunk-
|
|
14
|
-
require('../../chunk-
|
|
10
|
+
var _chunkCUDTMCXKcjs = require('../../chunk-CUDTMCXK.cjs');
|
|
11
|
+
require('../../chunk-B3XBJCOD.cjs');
|
|
12
|
+
require('../../chunk-UYP3G6PB.cjs');
|
|
13
|
+
require('../../chunk-SB4VWA5V.cjs');
|
|
14
|
+
require('../../chunk-O67V3HJR.cjs');
|
|
15
15
|
require('../../chunk-3HPB4H4C.cjs');
|
|
16
|
-
require('../../chunk-
|
|
16
|
+
require('../../chunk-DSVNFRY5.cjs');
|
|
17
17
|
require('../../chunk-HQQE74RO.cjs');
|
|
18
18
|
require('../../chunk-DEY6XXGO.cjs');
|
|
19
19
|
require('../../chunk-VA7OMDZO.cjs');
|
|
@@ -21,14 +21,14 @@ require('../../chunk-AAFW4STC.cjs');
|
|
|
21
21
|
require('../../chunk-24I6RFVU.cjs');
|
|
22
22
|
require('../../chunk-A6P6DHEZ.cjs');
|
|
23
23
|
require('../../chunk-MZ4KBSH7.cjs');
|
|
24
|
-
require('../../chunk-
|
|
24
|
+
require('../../chunk-KLI4OSRA.cjs');
|
|
25
25
|
require('../../chunk-YUMFVQIN.cjs');
|
|
26
|
-
require('../../chunk-
|
|
27
|
-
require('../../chunk-
|
|
28
|
-
require('../../chunk-
|
|
29
|
-
require('../../chunk-
|
|
30
|
-
require('../../chunk-
|
|
31
|
-
require('../../chunk-
|
|
26
|
+
require('../../chunk-S2CA5WE4.cjs');
|
|
27
|
+
require('../../chunk-BV5WZVOP.cjs');
|
|
28
|
+
require('../../chunk-GABDE3FM.cjs');
|
|
29
|
+
require('../../chunk-3RFQPQ7Z.cjs');
|
|
30
|
+
require('../../chunk-PQ2M7P2U.cjs');
|
|
31
|
+
require('../../chunk-B27QEHYR.cjs');
|
|
32
32
|
require('../../chunk-ZOZR3QI2.cjs');
|
|
33
33
|
require('../../chunk-OMV5S5PI.cjs');
|
|
34
34
|
require('../../chunk-KHPX3KU4.cjs');
|
|
@@ -1825,12 +1825,12 @@ require('../../chunk-7DNL734S.cjs');
|
|
|
1825
1825
|
require('../../chunk-WWUSFOJ7.cjs');
|
|
1826
1826
|
require('../../chunk-SKI6NKOE.cjs');
|
|
1827
1827
|
require('../../chunk-EWPR7662.cjs');
|
|
1828
|
-
require('../../chunk-
|
|
1829
|
-
require('../../chunk-
|
|
1830
|
-
require('../../chunk-
|
|
1831
|
-
require('../../chunk-
|
|
1832
|
-
require('../../chunk-
|
|
1833
|
-
require('../../chunk-
|
|
1828
|
+
require('../../chunk-YRE3O65E.cjs');
|
|
1829
|
+
require('../../chunk-YXKB5WRE.cjs');
|
|
1830
|
+
require('../../chunk-IFS4AH77.cjs');
|
|
1831
|
+
require('../../chunk-63N4FN5V.cjs');
|
|
1832
|
+
require('../../chunk-GSWQZX23.cjs');
|
|
1833
|
+
require('../../chunk-7ZFCR7UY.cjs');
|
|
1834
1834
|
require('../../chunk-S5C3OZCO.cjs');
|
|
1835
1835
|
require('../../chunk-32ASZMTV.cjs');
|
|
1836
1836
|
require('../../chunk-OOYBIS7D.cjs');
|
|
@@ -1839,20 +1839,20 @@ require('../../chunk-6VOOPMP5.cjs');
|
|
|
1839
1839
|
require('../../chunk-ORO54HDF.cjs');
|
|
1840
1840
|
require('../../chunk-RUHKTWGB.cjs');
|
|
1841
1841
|
require('../../chunk-BLH2SFOO.cjs');
|
|
1842
|
-
require('../../chunk-
|
|
1842
|
+
require('../../chunk-I5MSCD57.cjs');
|
|
1843
1843
|
require('../../chunk-PX7FY655.cjs');
|
|
1844
1844
|
require('../../chunk-CW3ML76U.cjs');
|
|
1845
1845
|
require('../../chunk-GVTDVS5U.cjs');
|
|
1846
1846
|
require('../../chunk-FICJS5OA.cjs');
|
|
1847
1847
|
require('../../chunk-VOX4E6AX.cjs');
|
|
1848
|
-
require('../../chunk-
|
|
1848
|
+
require('../../chunk-HOTM4UM6.cjs');
|
|
1849
1849
|
require('../../chunk-UJ7AXHRZ.cjs');
|
|
1850
1850
|
require('../../chunk-HTRILBJD.cjs');
|
|
1851
1851
|
require('../../chunk-K6VWTUCH.cjs');
|
|
1852
1852
|
require('../../chunk-L2RMTGOK.cjs');
|
|
1853
1853
|
require('../../chunk-Z74QE57T.cjs');
|
|
1854
1854
|
require('../../chunk-XZJCBIYR.cjs');
|
|
1855
|
-
require('../../chunk-
|
|
1855
|
+
require('../../chunk-2QMBXGMQ.cjs');
|
|
1856
1856
|
require('../../chunk-V45KLJQP.cjs');
|
|
1857
1857
|
require('../../chunk-G7SBHMRR.cjs');
|
|
1858
1858
|
require('../../chunk-AKTPO2DN.cjs');
|
|
@@ -1868,4 +1868,4 @@ require('../../chunk-3ATAYP36.cjs');
|
|
|
1868
1868
|
|
|
1869
1869
|
|
|
1870
1870
|
|
|
1871
|
-
exports.OnboardingGuideDetailView =
|
|
1871
|
+
exports.OnboardingGuideDetailView = _chunkCUDTMCXKcjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogSkeleton = _chunkCUDTMCXKcjs.OnboardingGuidesCatalogSkeleton; exports.OnboardingGuidesCatalogView = _chunkCUDTMCXKcjs.OnboardingGuidesCatalogView; exports.onboardingGuideKeys = _chunkCUDTMCXKcjs.onboardingGuideKeys; exports.useOnboardingGuide = _chunkCUDTMCXKcjs.useOnboardingGuide; exports.useOnboardingGuideSections = _chunkCUDTMCXKcjs.useOnboardingGuideSections; exports.useOnboardingGuides = _chunkCUDTMCXKcjs.useOnboardingGuides;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolBadge.d.ts","sourceRoot":"","sources":["../../../src/components/platform/ToolBadge.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAMvD,YAAY,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"ToolBadge.d.ts","sourceRoot":"","sources":["../../../src/components/platform/ToolBadge.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAMvD,YAAY,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA4D9C,CAAC"}
|
|
@@ -33,12 +33,13 @@ const ToolBadge = ({
|
|
|
33
33
|
"span",
|
|
34
34
|
{
|
|
35
35
|
className: cn(
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
// The house tag (Figma `tag`): 32px, on the card surface, the caption face.
|
|
37
|
+
"inline-flex h-8 items-center gap-[var(--spacing-system-xs)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xsf)] text-ods-text-primary text-h5",
|
|
38
|
+
href && "transition-colors hover:border-ods-border-hover",
|
|
38
39
|
className
|
|
39
40
|
),
|
|
40
41
|
children: [
|
|
41
|
-
mark && /* @__PURE__ */ jsx("span", { className: "flex h-
|
|
42
|
+
mark && /* @__PURE__ */ jsx("span", { className: "flex h-4 w-4 shrink-0 items-center justify-center [&_img]:h-full [&_img]:w-full [&_img]:rounded-sm [&_img]:object-contain [&_svg]:h-full [&_svg]:w-full", children: mark }),
|
|
42
43
|
text && /* @__PURE__ */ jsx("span", { className: "whitespace-nowrap", children: text })
|
|
43
44
|
]
|
|
44
45
|
}
|
|
@@ -21,14 +21,14 @@ var _react = require('react');
|
|
|
21
21
|
|
|
22
22
|
// src/components/product-demo/registry.ts
|
|
23
23
|
var PRODUCT_SCREEN_LOADERS = {
|
|
24
|
-
"remote-session": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../remote-session-
|
|
25
|
-
"software-update": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../software-update-
|
|
26
|
-
devices: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../devices-
|
|
27
|
-
policies: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../policies-
|
|
28
|
-
"cloud-tenants": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../cloud-tenants-
|
|
29
|
-
"tickets-board": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../tickets-board-
|
|
30
|
-
logs: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../logs-
|
|
31
|
-
knowledge: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../knowledge-
|
|
24
|
+
"remote-session": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../remote-session-DNFZ5OLY.cjs"))),
|
|
25
|
+
"software-update": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../software-update-CRSIBS3K.cjs"))),
|
|
26
|
+
devices: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../devices-C7XLWJFC.cjs"))),
|
|
27
|
+
policies: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../policies-ZPN53PFQ.cjs"))),
|
|
28
|
+
"cloud-tenants": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../cloud-tenants-QSFSO3PA.cjs"))),
|
|
29
|
+
"tickets-board": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../tickets-board-CKZRB6YV.cjs"))),
|
|
30
|
+
logs: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../logs-JXD75NR4.cjs"))),
|
|
31
|
+
knowledge: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../knowledge-3QKWTOE7.cjs")))
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
// src/components/product-demo/screen-keys.ts
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../../chunk-
|
|
7
|
-
require('../../chunk-
|
|
8
|
-
require('../../chunk-
|
|
9
|
-
require('../../chunk-
|
|
10
|
-
require('../../chunk-
|
|
11
|
-
require('../../chunk-
|
|
12
|
-
require('../../chunk-
|
|
5
|
+
var _chunkSFY4UYPYcjs = require('../../chunk-SFY4UYPY.cjs');
|
|
6
|
+
require('../../chunk-KLI4OSRA.cjs');
|
|
7
|
+
require('../../chunk-YRE3O65E.cjs');
|
|
8
|
+
require('../../chunk-YXKB5WRE.cjs');
|
|
9
|
+
require('../../chunk-IFS4AH77.cjs');
|
|
10
|
+
require('../../chunk-63N4FN5V.cjs');
|
|
11
|
+
require('../../chunk-GSWQZX23.cjs');
|
|
12
|
+
require('../../chunk-7ZFCR7UY.cjs');
|
|
13
13
|
require('../../chunk-S5C3OZCO.cjs');
|
|
14
14
|
require('../../chunk-32ASZMTV.cjs');
|
|
15
15
|
require('../../chunk-OOYBIS7D.cjs');
|
|
@@ -18,19 +18,19 @@ require('../../chunk-6VOOPMP5.cjs');
|
|
|
18
18
|
require('../../chunk-ORO54HDF.cjs');
|
|
19
19
|
require('../../chunk-RUHKTWGB.cjs');
|
|
20
20
|
require('../../chunk-BLH2SFOO.cjs');
|
|
21
|
-
require('../../chunk-
|
|
21
|
+
require('../../chunk-I5MSCD57.cjs');
|
|
22
22
|
require('../../chunk-PX7FY655.cjs');
|
|
23
23
|
require('../../chunk-CW3ML76U.cjs');
|
|
24
24
|
require('../../chunk-GVTDVS5U.cjs');
|
|
25
25
|
require('../../chunk-FICJS5OA.cjs');
|
|
26
26
|
require('../../chunk-VOX4E6AX.cjs');
|
|
27
|
-
require('../../chunk-
|
|
27
|
+
require('../../chunk-HOTM4UM6.cjs');
|
|
28
28
|
require('../../chunk-UJ7AXHRZ.cjs');
|
|
29
|
-
require('../../chunk-
|
|
29
|
+
require('../../chunk-2QMBXGMQ.cjs');
|
|
30
30
|
require('../../chunk-V45KLJQP.cjs');
|
|
31
31
|
require('../../chunk-3LU4UFPS.cjs');
|
|
32
32
|
require('../../chunk-3ATAYP36.cjs');
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
|
|
36
|
-
exports.GROUP_PAGE_SIZE =
|
|
36
|
+
exports.GROUP_PAGE_SIZE = _chunkSFY4UYPYcjs.GROUP_PAGE_SIZE; exports.RelatedContentSection = _chunkSFY4UYPYcjs.RelatedContentSection;
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
18
|
-
require('../../chunk-
|
|
19
|
-
require('../../chunk-
|
|
20
|
-
require('../../chunk-
|
|
21
|
-
require('../../chunk-
|
|
17
|
+
var _chunkRGFT3P3Lcjs = require('../../chunk-RGFT3P3L.cjs');
|
|
18
|
+
require('../../chunk-Q7GG3WC5.cjs');
|
|
19
|
+
require('../../chunk-TF7J6VXG.cjs');
|
|
20
|
+
require('../../chunk-WBANGORJ.cjs');
|
|
21
|
+
require('../../chunk-V2ZFH42N.cjs');
|
|
22
22
|
require('../../chunk-HEVW75L3.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
@@ -26,11 +26,11 @@ require('../../chunk-HEVW75L3.cjs');
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
29
|
-
var
|
|
30
|
-
require('../../chunk-
|
|
31
|
-
require('../../chunk-
|
|
29
|
+
var _chunkFL6UO7IRcjs = require('../../chunk-FL6UO7IR.cjs');
|
|
30
|
+
require('../../chunk-SB4VWA5V.cjs');
|
|
31
|
+
require('../../chunk-O67V3HJR.cjs');
|
|
32
32
|
require('../../chunk-3HPB4H4C.cjs');
|
|
33
|
-
require('../../chunk-
|
|
33
|
+
require('../../chunk-DSVNFRY5.cjs');
|
|
34
34
|
require('../../chunk-HQQE74RO.cjs');
|
|
35
35
|
require('../../chunk-DEY6XXGO.cjs');
|
|
36
36
|
require('../../chunk-VA7OMDZO.cjs');
|
|
@@ -38,17 +38,17 @@ require('../../chunk-AAFW4STC.cjs');
|
|
|
38
38
|
require('../../chunk-24I6RFVU.cjs');
|
|
39
39
|
require('../../chunk-A6P6DHEZ.cjs');
|
|
40
40
|
require('../../chunk-MZ4KBSH7.cjs');
|
|
41
|
-
require('../../chunk-
|
|
41
|
+
require('../../chunk-KLI4OSRA.cjs');
|
|
42
42
|
require('../../chunk-YUMFVQIN.cjs');
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
|
|
46
|
-
var
|
|
47
|
-
require('../../chunk-
|
|
48
|
-
require('../../chunk-
|
|
49
|
-
require('../../chunk-
|
|
50
|
-
require('../../chunk-
|
|
51
|
-
require('../../chunk-
|
|
46
|
+
var _chunkS2CA5WE4cjs = require('../../chunk-S2CA5WE4.cjs');
|
|
47
|
+
require('../../chunk-BV5WZVOP.cjs');
|
|
48
|
+
require('../../chunk-GABDE3FM.cjs');
|
|
49
|
+
require('../../chunk-3RFQPQ7Z.cjs');
|
|
50
|
+
require('../../chunk-PQ2M7P2U.cjs');
|
|
51
|
+
require('../../chunk-B27QEHYR.cjs');
|
|
52
52
|
require('../../chunk-ZOZR3QI2.cjs');
|
|
53
53
|
require('../../chunk-OMV5S5PI.cjs');
|
|
54
54
|
require('../../chunk-KHPX3KU4.cjs');
|
|
@@ -1845,12 +1845,12 @@ require('../../chunk-7DNL734S.cjs');
|
|
|
1845
1845
|
require('../../chunk-WWUSFOJ7.cjs');
|
|
1846
1846
|
require('../../chunk-SKI6NKOE.cjs');
|
|
1847
1847
|
require('../../chunk-EWPR7662.cjs');
|
|
1848
|
-
require('../../chunk-
|
|
1849
|
-
require('../../chunk-
|
|
1850
|
-
require('../../chunk-
|
|
1851
|
-
require('../../chunk-
|
|
1852
|
-
require('../../chunk-
|
|
1853
|
-
require('../../chunk-
|
|
1848
|
+
require('../../chunk-YRE3O65E.cjs');
|
|
1849
|
+
require('../../chunk-YXKB5WRE.cjs');
|
|
1850
|
+
require('../../chunk-IFS4AH77.cjs');
|
|
1851
|
+
require('../../chunk-63N4FN5V.cjs');
|
|
1852
|
+
require('../../chunk-GSWQZX23.cjs');
|
|
1853
|
+
require('../../chunk-7ZFCR7UY.cjs');
|
|
1854
1854
|
require('../../chunk-S5C3OZCO.cjs');
|
|
1855
1855
|
require('../../chunk-32ASZMTV.cjs');
|
|
1856
1856
|
require('../../chunk-OOYBIS7D.cjs');
|
|
@@ -1859,20 +1859,20 @@ require('../../chunk-6VOOPMP5.cjs');
|
|
|
1859
1859
|
require('../../chunk-ORO54HDF.cjs');
|
|
1860
1860
|
require('../../chunk-RUHKTWGB.cjs');
|
|
1861
1861
|
require('../../chunk-BLH2SFOO.cjs');
|
|
1862
|
-
require('../../chunk-
|
|
1862
|
+
require('../../chunk-I5MSCD57.cjs');
|
|
1863
1863
|
require('../../chunk-PX7FY655.cjs');
|
|
1864
1864
|
require('../../chunk-CW3ML76U.cjs');
|
|
1865
1865
|
require('../../chunk-GVTDVS5U.cjs');
|
|
1866
1866
|
require('../../chunk-FICJS5OA.cjs');
|
|
1867
1867
|
require('../../chunk-VOX4E6AX.cjs');
|
|
1868
|
-
require('../../chunk-
|
|
1868
|
+
require('../../chunk-HOTM4UM6.cjs');
|
|
1869
1869
|
require('../../chunk-UJ7AXHRZ.cjs');
|
|
1870
1870
|
require('../../chunk-HTRILBJD.cjs');
|
|
1871
1871
|
require('../../chunk-K6VWTUCH.cjs');
|
|
1872
1872
|
require('../../chunk-L2RMTGOK.cjs');
|
|
1873
1873
|
require('../../chunk-Z74QE57T.cjs');
|
|
1874
1874
|
require('../../chunk-XZJCBIYR.cjs');
|
|
1875
|
-
require('../../chunk-
|
|
1875
|
+
require('../../chunk-2QMBXGMQ.cjs');
|
|
1876
1876
|
require('../../chunk-V45KLJQP.cjs');
|
|
1877
1877
|
require('../../chunk-G7SBHMRR.cjs');
|
|
1878
1878
|
require('../../chunk-AKTPO2DN.cjs');
|
|
@@ -1902,4 +1902,4 @@ require('../../chunk-3ATAYP36.cjs');
|
|
|
1902
1902
|
|
|
1903
1903
|
|
|
1904
1904
|
|
|
1905
|
-
exports.HelpCenterCard =
|
|
1905
|
+
exports.HelpCenterCard = _chunkRGFT3P3Lcjs.HelpCenterCard; exports.HelpCenterCreateForm = _chunkRGFT3P3Lcjs.HelpCenterCreateForm; exports.HelpCenterCreateFormSkeleton = _chunkRGFT3P3Lcjs.HelpCenterCreateFormSkeleton; exports.HelpCenterList = _chunkRGFT3P3Lcjs.HelpCenterList; exports.TICKET_OPEN_PARAM = _chunkS2CA5WE4cjs.TICKET_OPEN_PARAM; exports.TICKET_TOAST_COPY = _chunkFL6UO7IRcjs.TOAST_COPY; exports.TicketCenter = _chunkRGFT3P3Lcjs.TicketCenter; exports.TicketDetailDrawer = _chunkRGFT3P3Lcjs.TicketDetailDrawer; exports.TicketLinkedDeliveryCard = _chunkRGFT3P3Lcjs.TicketLinkedDeliveryCard; exports.TicketLiveProvider = _chunkFL6UO7IRcjs.TicketLiveProvider; exports.TicketOpenForm = _chunkRGFT3P3Lcjs.TicketOpenForm; exports.TicketReplyComposer = _chunkRGFT3P3Lcjs.TicketReplyComposer; exports.TicketRow = _chunkRGFT3P3Lcjs.TicketRow; exports.buildTicketOpenHref = _chunkS2CA5WE4cjs.buildTicketOpenHref; exports.isOptimistic = _chunkFL6UO7IRcjs.isOptimistic; exports.mapTicketActionError = _chunkRGFT3P3Lcjs.mapTicketActionError; exports.useOptionalTicketLive = _chunkFL6UO7IRcjs.useOptionalTicketLive; exports.useTicketActions = _chunkRGFT3P3Lcjs.useTicketActions; exports.useTicketEngagements = _chunkRGFT3P3Lcjs.useTicketEngagements; exports.useTicketLive = _chunkFL6UO7IRcjs.useTicketLive; exports.useTicketsList = _chunkRGFT3P3Lcjs.useTicketsList;
|
|
@@ -5,6 +5,12 @@ export interface AppWindowFrameProps {
|
|
|
5
5
|
children: ReactNode;
|
|
6
6
|
/** A bar pinned under the body (a status line, an action). */
|
|
7
7
|
footer?: ReactNode;
|
|
8
|
+
/**
|
|
9
|
+
* The slug of the agent whose window this is. The window takes that agent's
|
|
10
|
+
* tint from its identity, like every card of the agent's. A window names its
|
|
11
|
+
* agent, never a colour.
|
|
12
|
+
*/
|
|
13
|
+
agent?: string | null;
|
|
8
14
|
className?: string;
|
|
9
15
|
/** The scrolling body between the title bar and the footer. */
|
|
10
16
|
bodyClassName?: string;
|
|
@@ -16,5 +22,5 @@ export interface AppWindowFrameProps {
|
|
|
16
22
|
*
|
|
17
23
|
* The frame is a column, so give it a height and the body fills what is left.
|
|
18
24
|
*/
|
|
19
|
-
export declare function AppWindowFrame({ title, children, footer, className, bodyClassName }: AppWindowFrameProps): import("react").JSX.Element;
|
|
25
|
+
export declare function AppWindowFrame({ title, children, footer, agent, className, bodyClassName }: AppWindowFrameProps): import("react").JSX.Element;
|
|
20
26
|
//# sourceMappingURL=app-window-frame.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-window-frame.d.ts","sourceRoot":"","sources":["../../../src/components/ui/app-window-frame.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app-window-frame.d.ts","sourceRoot":"","sources":["../../../src/components/ui/app-window-frame.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,WAAW,mBAAmB;IAClC,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,CAAC;IACpB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,mBAAmB,+BA0B/G"}
|
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { cn } from "../../utils/cn.js";
|
|
4
|
-
|
|
4
|
+
import { useAgentTint } from "../agent-identity.js";
|
|
5
|
+
function AppWindowFrame({ title, children, footer, agent, className, bodyClassName }) {
|
|
6
|
+
const tint = useAgentTint(agent);
|
|
5
7
|
return /* @__PURE__ */ jsxs(
|
|
6
8
|
"div",
|
|
7
9
|
{
|
|
8
|
-
className: cn(
|
|
10
|
+
className: cn(
|
|
11
|
+
"flex min-w-0 flex-col overflow-hidden rounded-xl border border-ods-border",
|
|
12
|
+
// An agent's window sits on the page surface under that agent's tint.
|
|
13
|
+
tint ? "bg-ods-bg" : "bg-ods-card",
|
|
14
|
+
className
|
|
15
|
+
),
|
|
16
|
+
style: tint,
|
|
9
17
|
children: [
|
|
10
18
|
/* @__PURE__ */ jsxs("div", { className: "relative flex h-10 shrink-0 items-center gap-2 border-b border-ods-border px-4", "aria-hidden": true, children: [
|
|
11
19
|
/* @__PURE__ */ jsx("span", { className: "h-2.5 w-2.5 rounded-full bg-ods-border" }),
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface BenefitItem {
|
|
3
|
+
/** Drawn at 16px in the quiet colour. */
|
|
4
|
+
icon?: ReactNode;
|
|
5
|
+
label: string;
|
|
6
|
+
}
|
|
7
|
+
/** The mark of each of the trial's terms, wherever a term is listed. */
|
|
8
|
+
export declare const TRIAL_TERM_ICONS: {
|
|
9
|
+
readonly noCard: import("react").JSX.Element;
|
|
10
|
+
readonly cancel: import("react").JSX.Element;
|
|
11
|
+
readonly length: import("react").JSX.Element;
|
|
12
|
+
readonly noContract: import("react").JSX.Element;
|
|
13
|
+
};
|
|
14
|
+
export type TrialTerm = keyof typeof TRIAL_TERM_ICONS;
|
|
15
|
+
/** The trial's terms a list shows when its host names none: cancel anytime, the trial's length, no contract. */
|
|
16
|
+
export declare const DEFAULT_TRIAL_TERMS: readonly TrialTerm[];
|
|
17
|
+
/** The named terms of the trial as benefits, in the order given. The length is left out when the host does not know it. */
|
|
18
|
+
export declare function trialBenefits(trialDays: number | string | null | undefined, terms?: readonly TrialTerm[]): BenefitItem[];
|
|
19
|
+
export interface BenefitListProps {
|
|
20
|
+
/**
|
|
21
|
+
* Which of the trial's terms to list, in order ("cancel", "length",
|
|
22
|
+
* "noContract", "noCard"). Omitted: none, the list is `items` alone.
|
|
23
|
+
*/
|
|
24
|
+
terms?: readonly TrialTerm[];
|
|
25
|
+
/** The free trial's length in days, for the `length` term. Without it that term is left out. */
|
|
26
|
+
trialDays?: number | string | null;
|
|
27
|
+
/** The host's own benefits. With `terms`, `itemsFirst` says which come first. */
|
|
28
|
+
items?: BenefitItem[];
|
|
29
|
+
/** Draw `items` before the trial's terms. Default: after them. */
|
|
30
|
+
itemsFirst?: boolean;
|
|
31
|
+
/** `center` centres the row (under a centred hero). Default `start`. */
|
|
32
|
+
align?: 'start' | 'center';
|
|
33
|
+
className?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* THE row of short benefits beside a call to action ("Cancel Anytime", "No
|
|
37
|
+
* Contract"): a small mark and a few words each, wrapping as a row. The one
|
|
38
|
+
* such row everywhere: the sign-up panel, every hero, every closing call to
|
|
39
|
+
* action. A host chooses WHICH benefits (`terms`, `items`), never how they look.
|
|
40
|
+
*/
|
|
41
|
+
export declare function BenefitList({ terms, trialDays, items, itemsFirst, align, className, }: BenefitListProps): import("react").JSX.Element | null;
|
|
42
|
+
//# sourceMappingURL=benefit-list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benefit-list.d.ts","sourceRoot":"","sources":["../../../src/components/ui/benefit-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC,MAAM,WAAW,WAAW;IAC1B,yCAAyC;IACzC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wEAAwE;AACxE,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAEtD,gHAAgH;AAChH,eAAO,MAAM,mBAAmB,EAAE,SAAS,SAAS,EAAuC,CAAC;AAE5F,2HAA2H;AAC3H,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,KAAK,GAAE,SAAS,SAAS,EAAwB,GAChD,WAAW,EAAE,CAMf;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IAC7B,gGAAgG;IAChG,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACnC,iFAAiF;IACjF,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,SAAS,EACT,KAAU,EACV,UAAkB,EAClB,KAAe,EACf,SAAS,GACV,EAAE,gBAAgB,sCA4BlB"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { cn } from "../../utils/cn.js";
|
|
4
|
+
import { trialLabels } from "../../utils/trial.js";
|
|
5
|
+
import { FileOffIcon } from "../icons-v2-generated/documents/file-off-icon.js";
|
|
6
|
+
import { CreditCardXmarkIcon } from "../icons-v2-generated/finance/credit-card-xmark-icon.js";
|
|
7
|
+
import { FlaskVialIcon } from "../icons-v2-generated/school/flask-vial-icon.js";
|
|
8
|
+
import { XmarkAltIcon } from "../icons-v2-generated/signs-and-symbols/xmark-alt-icon.js";
|
|
9
|
+
const TRIAL_TERM_ICONS = {
|
|
10
|
+
noCard: /* @__PURE__ */ jsx(CreditCardXmarkIcon, {}),
|
|
11
|
+
cancel: /* @__PURE__ */ jsx(XmarkAltIcon, {}),
|
|
12
|
+
length: /* @__PURE__ */ jsx(FlaskVialIcon, {}),
|
|
13
|
+
noContract: /* @__PURE__ */ jsx(FileOffIcon, {})
|
|
14
|
+
};
|
|
15
|
+
const DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
|
|
16
|
+
function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
|
|
17
|
+
const labels = trialLabels(trialDays);
|
|
18
|
+
return terms.flatMap((term) => {
|
|
19
|
+
const label = labels[term];
|
|
20
|
+
return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function BenefitList({
|
|
24
|
+
terms,
|
|
25
|
+
trialDays,
|
|
26
|
+
items = [],
|
|
27
|
+
itemsFirst = false,
|
|
28
|
+
align = "start",
|
|
29
|
+
className
|
|
30
|
+
}) {
|
|
31
|
+
const termItems = terms ? trialBenefits(trialDays, terms) : [];
|
|
32
|
+
const all = itemsFirst ? [...items, ...termItems] : [...termItems, ...items];
|
|
33
|
+
if (all.length === 0) return null;
|
|
34
|
+
return /* @__PURE__ */ jsx(
|
|
35
|
+
"ul",
|
|
36
|
+
{
|
|
37
|
+
className: cn(
|
|
38
|
+
// A full step between benefits, a tighter one between wrapped rows: each reads as its own point.
|
|
39
|
+
"m-0 flex list-none flex-wrap content-center items-center gap-x-[var(--spacing-system-l)] gap-y-[var(--spacing-system-m)] p-0",
|
|
40
|
+
align === "center" && "justify-center",
|
|
41
|
+
className
|
|
42
|
+
),
|
|
43
|
+
children: all.map((item) => /* @__PURE__ */ jsxs("li", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
44
|
+
item.icon && /* @__PURE__ */ jsx(
|
|
45
|
+
"span",
|
|
46
|
+
{
|
|
47
|
+
className: "flex size-4 shrink-0 items-center justify-center text-ods-text-secondary [&_svg]:size-4",
|
|
48
|
+
"aria-hidden": true,
|
|
49
|
+
children: item.icon
|
|
50
|
+
}
|
|
51
|
+
),
|
|
52
|
+
/* @__PURE__ */ jsx("span", { className: "whitespace-nowrap text-ods-text-primary text-h4", children: item.label })
|
|
53
|
+
] }, item.label))
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
export {
|
|
58
|
+
BenefitList,
|
|
59
|
+
DEFAULT_TRIAL_TERMS,
|
|
60
|
+
TRIAL_TERM_ICONS,
|
|
61
|
+
trialBenefits
|
|
62
|
+
};
|
|
@@ -6,6 +6,7 @@ declare const buttonVariants: (props?: ({
|
|
|
6
6
|
font?: "bold" | "regular" | null | undefined;
|
|
7
7
|
fullWidth?: boolean | null | undefined;
|
|
8
8
|
noPaddingX?: boolean | null | undefined;
|
|
9
|
+
attach?: "end" | "start" | "none" | null | undefined;
|
|
9
10
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
10
11
|
/** @deprecated Use `size="small"` instead. Temporary alias kept for backward compatibility; will be removed in the future. */
|
|
11
12
|
type DeprecatedButtonSize = 'small-legacy';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/button.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,QAAA,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/button.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,QAAA,MAAM,cAAc;;;;;;;8EAwGnB,CAAC;AAgGF,8HAA8H;AAC9H,KAAK,oBAAoB,GAAG,cAAc,CAAC;AAE3C,KAAK,UAAU,GACb,OAAO,CAAC,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,oBAAoB,CAAC;AAEjH,UAAU,WACR,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,cAAc,CAAC,EAAE,MAAM,CAAC;IACxG,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,QAAQ,CAAC;QAClB;;wCAEgC;QAChC,GAAG,CAAC,EAAE,UAAU,GAAG,qBAAqB,CAAC;QACzC,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;KACtD,GAAG,IAAI,CAAC;IACT,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAaD,QAAA,MAAM,MAAM,uFAmNV,CAAC;AAGH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,CAAC"}
|
|
@@ -88,9 +88,20 @@ const buttonVariants = cva(
|
|
|
88
88
|
noPaddingX: {
|
|
89
89
|
true: "px-0",
|
|
90
90
|
false: ""
|
|
91
|
+
},
|
|
92
|
+
// Two buttons drawn as ONE surface with a seam between them (a main action
|
|
93
|
+
// and a chevron that opens its alternatives: `DropdownButton` with an
|
|
94
|
+
// `action`). `start` is the leading half, `end` the trailing one: each
|
|
95
|
+
// gives up the corners and the border on its inner edge.
|
|
96
|
+
attach: {
|
|
97
|
+
none: "",
|
|
98
|
+
start: "rounded-r-none",
|
|
99
|
+
end: "rounded-l-none border-l-0"
|
|
91
100
|
}
|
|
92
101
|
},
|
|
93
102
|
compoundVariants: [
|
|
103
|
+
// The trailing half as an icon button is the design's 40px chevron cell, at every breakpoint.
|
|
104
|
+
{ attach: "end", size: "icon", class: "w-10 px-0 md:w-10" },
|
|
94
105
|
{ size: "small", class: "[&_svg]:h-4 [&_svg]:w-4" },
|
|
95
106
|
// Comes after the size classes, so cn()'s tailwind-merge resolves the
|
|
96
107
|
// ods-typography group in favour of text-h4.
|
|
@@ -101,7 +112,8 @@ const buttonVariants = cva(
|
|
|
101
112
|
size: "default",
|
|
102
113
|
font: "bold",
|
|
103
114
|
fullWidth: false,
|
|
104
|
-
noPaddingX: false
|
|
115
|
+
noPaddingX: false,
|
|
116
|
+
attach: "none"
|
|
105
117
|
}
|
|
106
118
|
}
|
|
107
119
|
);
|
|
@@ -213,6 +225,7 @@ const Button = React.forwardRef(function ButtonImpl({
|
|
|
213
225
|
font,
|
|
214
226
|
fullWidth,
|
|
215
227
|
noPaddingX,
|
|
228
|
+
attach,
|
|
216
229
|
asChild,
|
|
217
230
|
href,
|
|
218
231
|
openInNewTab,
|
|
@@ -300,7 +313,7 @@ const Button = React.forwardRef(function ButtonImpl({
|
|
|
300
313
|
}
|
|
301
314
|
return /* @__PURE__ */ jsx("button", { ref, className: shellClasses, disabled: isDisabled, onClick, ...props, children: splitContent });
|
|
302
315
|
}
|
|
303
|
-
const classes = cn(buttonVariants({ variant, size, font, fullWidth, noPaddingX }), className);
|
|
316
|
+
const classes = cn(buttonVariants({ variant, size, font, fullWidth, noPaddingX, attach }), className);
|
|
304
317
|
if (asChild) {
|
|
305
318
|
return /* @__PURE__ */ jsx(Slot, { ref, className: classes, ...props, children });
|
|
306
319
|
}
|
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type ActionsMenuGroup, type ActionsMenuItem } from './actions-menu';
|
|
3
3
|
import { type ButtonProps } from './button';
|
|
4
|
+
/** The button's own action, when its label does something itself and the chevron holds the alternatives. */
|
|
5
|
+
export interface DropdownButtonAction {
|
|
6
|
+
href?: string;
|
|
7
|
+
/** Fetch `href` as a file (an installer) instead of navigating to it. */
|
|
8
|
+
download?: boolean | string;
|
|
9
|
+
openInNewTab?: boolean;
|
|
10
|
+
onClick?: React.MouseEventHandler<HTMLButtonElement | HTMLAnchorElement>;
|
|
11
|
+
}
|
|
4
12
|
export interface DropdownButtonProps {
|
|
5
13
|
/** Button label rendered next to the chevron. */
|
|
6
14
|
label: React.ReactNode;
|
|
15
|
+
/**
|
|
16
|
+
* Makes the label a button of its own (Figma `button-action`): it runs this
|
|
17
|
+
* action, and the chevron beside it opens the menu of alternatives. Two click
|
|
18
|
+
* targets on one surface. Without it the whole button opens the menu.
|
|
19
|
+
*/
|
|
20
|
+
action?: DropdownButtonAction;
|
|
21
|
+
/** The chevron's accessible name when `action` is set (it has no text of its own). Default: "More options". */
|
|
22
|
+
menuAriaLabel?: string;
|
|
7
23
|
/** Optional leading icon rendered before the label. */
|
|
8
24
|
icon?: React.ReactNode;
|
|
9
25
|
/**
|
|
@@ -49,7 +65,9 @@ export interface DropdownButtonProps {
|
|
|
49
65
|
* `ActionsMenu`. One component, so the trigger styling, chevron, and menu
|
|
50
66
|
* chrome cannot drift between surfaces.
|
|
51
67
|
*
|
|
52
|
-
*
|
|
68
|
+
* With `action`, the label is a button of its own and the chevron alone opens
|
|
69
|
+
* the menu (two targets, one surface). Otherwise, two trigger looks — BOTH
|
|
70
|
+
* render through the unified `Button`:
|
|
53
71
|
* - default (no `variant`): the card-colored seam trigger — `Button
|
|
54
72
|
* variant="outline"` with the chevron in its `splitIcon` slot, so the label
|
|
55
73
|
* and chevron are separated by a divider, the whole surface is one click
|
|
@@ -62,5 +80,5 @@ export interface DropdownButtonProps {
|
|
|
62
80
|
* Item clicks close the menu (ActionsMenuDropdown's default; opt out per item
|
|
63
81
|
* with `closeOnSelect: false`).
|
|
64
82
|
*/
|
|
65
|
-
export declare function DropdownButton({ label, icon, items, groups, variant, size, loading, disabled, fullWidth, className, ariaLabel, align, side, onCloseAutoFocus, }: DropdownButtonProps): React.JSX.Element;
|
|
83
|
+
export declare function DropdownButton({ label, action, menuAriaLabel, icon, items, groups, variant, size, loading, disabled, fullWidth, className, ariaLabel, align, side, onCloseAutoFocus, }: DropdownButtonProps): React.JSX.Element;
|
|
66
84
|
//# sourceMappingURL=dropdown-button.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAuB,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAEpD,MAAM,WAAW,mBAAmB;IAClC,iDAAiD;IACjD,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,uDAAuD;IACvD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;IAC1B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACjC,wEAAwE;IACxE,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,mDAAmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3C;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC3C;AAED
|
|
1
|
+
{"version":3,"file":"dropdown-button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAuB,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAEpD,4GAA4G;AAC5G,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,mBAAmB;IAClC,iDAAiD;IACjD,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;;OAIG;IACH,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,+GAA+G;IAC/G,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;IAC1B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACjC,wEAAwE;IACxE,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,mDAAmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3C;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,MAAM,EACN,aAA8B,EAC9B,IAAI,EACJ,KAAK,EACL,MAAM,EACN,OAAO,EACP,IAAqB,EACrB,OAAe,EACf,QAAQ,EACR,SAAS,EACT,SAAS,EACT,SAAS,EACT,KAAa,EACb,IAAe,EACf,gBAAgB,GACjB,EAAE,mBAAmB,qBA0HrB"}
|