@flamingo-stack/openframe-frontend-core 0.0.428-snapshot.20260715202150 → 0.0.428
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-GMR5AA3C.js → chunk-43KGFHI3.js} +2 -2
- package/dist/{chunk-CCL6JEMS.cjs → chunk-533XR4JK.cjs} +62 -62
- package/dist/{chunk-CCL6JEMS.cjs.map → chunk-533XR4JK.cjs.map} +1 -1
- package/dist/{chunk-4VODJPTB.js → chunk-55EIHSOQ.js} +2 -2
- package/dist/{chunk-7MJTM6QT.cjs → chunk-7ELFQWYF.cjs} +7 -7
- package/dist/{chunk-7MJTM6QT.cjs.map → chunk-7ELFQWYF.cjs.map} +1 -1
- package/dist/{chunk-TJ4HJ3KX.js → chunk-7JUUQAAH.js} +2 -2
- package/dist/{chunk-Y2TW664W.js → chunk-CVYVCBMM.js} +4 -4
- package/dist/{chunk-NYISC4Z3.js → chunk-DA2VSDAX.js} +2 -2
- package/dist/{chunk-MAYEJ3NY.js → chunk-DQ5NRLCG.js} +2 -2
- package/dist/{chunk-BN3V465H.cjs → chunk-F4WTCWOY.cjs} +15 -15
- package/dist/{chunk-BN3V465H.cjs.map → chunk-F4WTCWOY.cjs.map} +1 -1
- package/dist/{chunk-WXKFFVGC.cjs → chunk-FFDGTMZX.cjs} +5 -5
- package/dist/{chunk-WXKFFVGC.cjs.map → chunk-FFDGTMZX.cjs.map} +1 -1
- package/dist/{chunk-B3Y47C2U.cjs → chunk-I7YFFSDS.cjs} +59 -59
- package/dist/{chunk-B3Y47C2U.cjs.map → chunk-I7YFFSDS.cjs.map} +1 -1
- package/dist/{chunk-B3FBMRHQ.js → chunk-KMXHSL6M.js} +2 -2
- package/dist/{chunk-CRGH6TV6.cjs → chunk-LZYKGEN3.cjs} +26 -26
- package/dist/{chunk-CRGH6TV6.cjs.map → chunk-LZYKGEN3.cjs.map} +1 -1
- package/dist/{chunk-E4PKZNR7.cjs → chunk-MJH4VS4L.cjs} +11 -11
- package/dist/{chunk-E4PKZNR7.cjs.map → chunk-MJH4VS4L.cjs.map} +1 -1
- package/dist/{chunk-GGJUXN6Z.cjs → chunk-MO4QIPT7.cjs} +9 -9
- package/dist/{chunk-GGJUXN6Z.cjs.map → chunk-MO4QIPT7.cjs.map} +1 -1
- package/dist/{chunk-2LJA3ABH.cjs → chunk-N2CTZ3Q2.cjs} +37 -37
- package/dist/{chunk-2LJA3ABH.cjs.map → chunk-N2CTZ3Q2.cjs.map} +1 -1
- package/dist/{chunk-OLGFIDZY.cjs → chunk-NXCFIPEY.cjs} +26 -26
- package/dist/{chunk-OLGFIDZY.cjs.map → chunk-NXCFIPEY.cjs.map} +1 -1
- package/dist/{chunk-62L7S7HQ.js → chunk-OBDDE4WV.js} +2697 -2769
- package/dist/chunk-OBDDE4WV.js.map +1 -0
- package/dist/{chunk-YGITDP6O.cjs → chunk-OZTPC6VW.cjs} +31 -31
- package/dist/{chunk-YGITDP6O.cjs.map → chunk-OZTPC6VW.cjs.map} +1 -1
- package/dist/{chunk-KHKB5RY2.js → chunk-RR77Z27A.js} +2 -2
- package/dist/{chunk-XDBD6BJN.cjs → chunk-SJTNVETH.cjs} +20 -92
- package/dist/chunk-SJTNVETH.cjs.map +1 -0
- package/dist/{chunk-RTOVYU4D.js → chunk-SLCANQN3.js} +4 -4
- package/dist/{chunk-2WJ25MTA.js → chunk-UXXCNZXC.js} +4 -4
- package/dist/{chunk-7PA4B6SD.js → chunk-YP3DO4BM.js} +4 -4
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/chat-message-skeleton.d.ts +2 -17
- package/dist/components/chat/chat-message-skeleton.d.ts.map +1 -1
- package/dist/components/chat/chat-panel-header.d.ts +1 -6
- package/dist/components/chat/chat-panel-header.d.ts.map +1 -1
- package/dist/components/chat/chat-quick-action-row.d.ts +2 -12
- package/dist/components/chat/chat-quick-action-row.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts +2 -22
- package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +2 -4
- package/dist/components/chat/index.cjs.map +1 -1
- package/dist/components/chat/index.js +1 -3
- package/dist/components/chat/quick-action-chip.d.ts +1 -5
- package/dist/components/chat/quick-action-chip.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +20 -20
- package/dist/components/help-center-pages/index.js +11 -11
- package/dist/components/index.cjs +128 -132
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +9 -13
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +5 -5
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/index.cjs +2 -6
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.d.ts +0 -1
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +1 -5
- package/dist/components/ui/tag.d.ts +1 -1
- package/dist/components/ui/tag.d.ts.map +1 -1
- package/dist/index.cjs +2 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -5
- package/package.json +1 -1
- package/src/components/chat/chat-message-skeleton.tsx +9 -40
- package/src/components/chat/chat-panel-header.tsx +16 -28
- package/src/components/chat/chat-quick-action-row.tsx +0 -33
- package/src/components/chat/embeddable-chat.tsx +1 -11
- package/src/components/chat/hooks/use-nats-chat-adapter.ts +1 -7
- package/src/components/chat/quick-action-chip.tsx +1 -6
- package/src/components/ui/index.ts +0 -1
- package/src/components/ui/tag.tsx +0 -7
- package/dist/chunk-62L7S7HQ.js.map +0 -1
- package/dist/chunk-XDBD6BJN.cjs.map +0 -1
- package/dist/components/ui/info-card-row.d.ts +0 -13
- package/dist/components/ui/info-card-row.d.ts.map +0 -1
- package/src/components/ui/info-card-row.tsx +0 -70
- package/src/stories/InfoCardRow.stories.tsx +0 -68
- /package/dist/{chunk-GMR5AA3C.js.map → chunk-43KGFHI3.js.map} +0 -0
- /package/dist/{chunk-4VODJPTB.js.map → chunk-55EIHSOQ.js.map} +0 -0
- /package/dist/{chunk-TJ4HJ3KX.js.map → chunk-7JUUQAAH.js.map} +0 -0
- /package/dist/{chunk-Y2TW664W.js.map → chunk-CVYVCBMM.js.map} +0 -0
- /package/dist/{chunk-NYISC4Z3.js.map → chunk-DA2VSDAX.js.map} +0 -0
- /package/dist/{chunk-MAYEJ3NY.js.map → chunk-DQ5NRLCG.js.map} +0 -0
- /package/dist/{chunk-B3FBMRHQ.js.map → chunk-KMXHSL6M.js.map} +0 -0
- /package/dist/{chunk-KHKB5RY2.js.map → chunk-RR77Z27A.js.map} +0 -0
- /package/dist/{chunk-RTOVYU4D.js.map → chunk-SLCANQN3.js.map} +0 -0
- /package/dist/{chunk-2WJ25MTA.js.map → chunk-UXXCNZXC.js.map} +0 -0
- /package/dist/{chunk-7PA4B6SD.js.map → chunk-YP3DO4BM.js.map} +0 -0
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type * as React from 'react';
|
|
2
|
-
export interface InfoCardRowSection {
|
|
3
|
-
title: string;
|
|
4
|
-
caption: string;
|
|
5
|
-
icon?: React.ReactNode;
|
|
6
|
-
}
|
|
7
|
-
export interface InfoCardRowProps {
|
|
8
|
-
lead: InfoCardRowSection;
|
|
9
|
-
stats: [InfoCardRowSection, InfoCardRowSection];
|
|
10
|
-
className?: string;
|
|
11
|
-
}
|
|
12
|
-
export declare function InfoCardRow({ lead, stats, className }: InfoCardRowProps): React.JSX.Element;
|
|
13
|
-
//# sourceMappingURL=info-card-row.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"info-card-row.d.ts","sourceRoot":"","sources":["../../../src/components/ui/info-card-row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AAGnC,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,kBAAkB,CAAA;IACxB,KAAK,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA8BD,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,gBAAgB,qBA0BvE"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import type * as React from 'react'
|
|
2
|
-
import { cn } from '../../utils/cn'
|
|
3
|
-
|
|
4
|
-
export interface InfoCardRowSection {
|
|
5
|
-
title: string
|
|
6
|
-
caption: string
|
|
7
|
-
icon?: React.ReactNode
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface InfoCardRowProps {
|
|
11
|
-
lead: InfoCardRowSection
|
|
12
|
-
stats: [InfoCardRowSection, InfoCardRowSection]
|
|
13
|
-
className?: string
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const CELL =
|
|
17
|
-
'flex items-center gap-[var(--spacing-system-s)] min-w-0 p-[var(--spacing-system-xsf)] md:p-[var(--spacing-system-m)] min-h-[60px] md:min-h-[76px]'
|
|
18
|
-
|
|
19
|
-
function StatCell({ section, className }: { section: InfoCardRowSection; className?: string }) {
|
|
20
|
-
return (
|
|
21
|
-
<div className={cn(CELL, 'flex-1', className)}>
|
|
22
|
-
<div className="flex min-w-0 flex-1 flex-col">
|
|
23
|
-
<p className="truncate text-h5 uppercase text-ods-text-secondary">{section.title}</p>
|
|
24
|
-
<div className="flex min-w-0 items-center gap-[var(--spacing-system-s)]">
|
|
25
|
-
<p className="min-w-0 flex-1 truncate text-h3 text-ods-text-primary">
|
|
26
|
-
{section.caption}
|
|
27
|
-
</p>
|
|
28
|
-
{section.icon && (
|
|
29
|
-
<div className="flex size-6 shrink-0 items-center justify-center md:hidden">
|
|
30
|
-
{section.icon}
|
|
31
|
-
</div>
|
|
32
|
-
)}
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
{section.icon && (
|
|
36
|
-
<div className="hidden size-6 shrink-0 items-center justify-center md:flex">
|
|
37
|
-
{section.icon}
|
|
38
|
-
</div>
|
|
39
|
-
)}
|
|
40
|
-
</div>
|
|
41
|
-
)
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export function InfoCardRow({ lead, stats, className }: InfoCardRowProps) {
|
|
45
|
-
return (
|
|
46
|
-
<div
|
|
47
|
-
className={cn(
|
|
48
|
-
'flex shrink-0 flex-col overflow-hidden rounded-md border border-ods-border bg-ods-card md:flex-row',
|
|
49
|
-
className,
|
|
50
|
-
)}
|
|
51
|
-
>
|
|
52
|
-
<div className={cn(CELL, 'border-b border-ods-border md:flex-1 md:border-b-0 md:border-r')}>
|
|
53
|
-
{lead.icon && (
|
|
54
|
-
<div className="flex size-10 shrink-0 items-center justify-center overflow-hidden rounded-sm border border-ods-border [&>*]:size-full [&_img]:object-cover">
|
|
55
|
-
{lead.icon}
|
|
56
|
-
</div>
|
|
57
|
-
)}
|
|
58
|
-
<div className="flex min-w-0 flex-1 flex-col justify-center">
|
|
59
|
-
<p className="truncate text-h3 text-ods-text-primary">{lead.title}</p>
|
|
60
|
-
<p className="truncate text-h6 text-ods-text-secondary">{lead.caption}</p>
|
|
61
|
-
</div>
|
|
62
|
-
</div>
|
|
63
|
-
|
|
64
|
-
<div className="flex md:flex-1">
|
|
65
|
-
<StatCell section={stats[0]} className="border-r border-ods-border" />
|
|
66
|
-
<StatCell section={stats[1]} />
|
|
67
|
-
</div>
|
|
68
|
-
</div>
|
|
69
|
-
)
|
|
70
|
-
}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from '@storybook/nextjs-vite'
|
|
2
|
-
import { InfoCardRow } from '../components/ui/info-card-row'
|
|
3
|
-
import { CheckCircleIcon } from '../components/icons-v2-generated/signs-and-symbols/check-circle-icon'
|
|
4
|
-
import { TagIcon } from '../components/icons-v2-generated/shopping/tag-icon'
|
|
5
|
-
|
|
6
|
-
// Stand-in company logo — the lead `icon` fills the 40px bordered avatar box.
|
|
7
|
-
// In real usage this is typically an `<img>` logo (rendered with object-cover).
|
|
8
|
-
const companyLogo = (
|
|
9
|
-
<div className="size-full" style={{ background: 'linear-gradient(135deg, #5EFAF0, #F357BB)' }} />
|
|
10
|
-
)
|
|
11
|
-
|
|
12
|
-
const meta = {
|
|
13
|
-
title: 'UI/InfoCardRow',
|
|
14
|
-
component: InfoCardRow,
|
|
15
|
-
parameters: {
|
|
16
|
-
layout: 'padded',
|
|
17
|
-
docs: {
|
|
18
|
-
description: {
|
|
19
|
-
component:
|
|
20
|
-
'A responsive summary row: a 50%-width lead section (icon + title/caption) and two 25%-width stat sections (title + caption + right icon). On mobile the two stat sections wrap into their own row beneath the lead (76px rows on desktop/tablet, 60px on mobile), and each stat icon drops onto the caption line. Neighbouring sections share inner borders; only the outer edges are rounded. Each section takes a required `title` and `caption`, and an optional `icon`.',
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
tags: ['autodocs'],
|
|
25
|
-
argTypes: {
|
|
26
|
-
lead: { control: false, description: 'Lead section (50% width): { title, caption, icon? }' },
|
|
27
|
-
stats: {
|
|
28
|
-
control: false,
|
|
29
|
-
description: 'Two stat sections (25% width each): { title, caption, icon? }',
|
|
30
|
-
},
|
|
31
|
-
},
|
|
32
|
-
decorators: [
|
|
33
|
-
(Story) => (
|
|
34
|
-
<div className="w-full max-w-[1024px]">
|
|
35
|
-
<Story />
|
|
36
|
-
</div>
|
|
37
|
-
),
|
|
38
|
-
],
|
|
39
|
-
} satisfies Meta<typeof InfoCardRow>
|
|
40
|
-
|
|
41
|
-
export default meta
|
|
42
|
-
type Story = StoryObj<typeof meta>
|
|
43
|
-
|
|
44
|
-
/** Full row — lead logo + name/devices, and two stats with icons. Matches Figma. */
|
|
45
|
-
export const Default: Story = {
|
|
46
|
-
args: {
|
|
47
|
-
lead: { title: 'Precision Accounting Partners', caption: '847 devices', icon: companyLogo },
|
|
48
|
-
stats: [
|
|
49
|
-
{
|
|
50
|
-
title: 'Resolved this week',
|
|
51
|
-
caption: '312',
|
|
52
|
-
icon: <CheckCircleIcon className="text-ods-success" />,
|
|
53
|
-
},
|
|
54
|
-
{ title: 'Open tickets', caption: '2', icon: <TagIcon className="text-ods-text-secondary" /> },
|
|
55
|
-
],
|
|
56
|
-
},
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/** Icons omitted — text-only sections. */
|
|
60
|
-
export const WithoutIcons: Story = {
|
|
61
|
-
args: {
|
|
62
|
-
lead: { title: 'Precision Accounting Partners', caption: '847 devices' },
|
|
63
|
-
stats: [
|
|
64
|
-
{ title: 'Resolved this week', caption: '312' },
|
|
65
|
-
{ title: 'Open tickets', caption: '2' },
|
|
66
|
-
],
|
|
67
|
-
},
|
|
68
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|