@flamingo-stack/openframe-frontend-core 0.0.700 → 0.0.701-snapshot.20261005171139
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-MFORWVGD.js → chunk-2V4Z44G6.js} +4 -4
- package/dist/{chunk-GFXZMFDX.cjs → chunk-3G76LRGL.cjs} +9 -9
- package/dist/{chunk-65YVUYWJ.cjs → chunk-3WSFIV5G.cjs} +32 -32
- package/dist/{chunk-GD4JALTR.js → chunk-446KS5BG.js} +1 -1
- package/dist/{chunk-BRQY2HKD.cjs → chunk-AEQANLBW.cjs} +17 -17
- package/dist/{chunk-ZSPHOHOW.cjs → chunk-ASN65P3F.cjs} +2 -2
- package/dist/{chunk-YBC346FY.cjs → chunk-B3LZJ6J3.cjs} +12 -12
- package/dist/{chunk-JPVDJB27.js → chunk-BO5ZHDA4.js} +3 -3
- package/dist/{chunk-2CSYUMNM.cjs → chunk-CXDJUKC6.cjs} +2 -2
- package/dist/{chunk-QPNR4N7N.cjs → chunk-CYYTD5ZK.cjs} +16 -16
- package/dist/{chunk-B7M6QEEM.js → chunk-CZ34HXDW.js} +661 -275
- package/dist/{chunk-4H5Q6MQG.cjs → chunk-E3DH543A.cjs} +35 -35
- package/dist/{chunk-BZYMGI4L.js → chunk-ETFFEA3J.js} +1 -1
- package/dist/{chunk-QDIX2ZRL.cjs → chunk-FD4DBTFO.cjs} +430 -44
- package/dist/{chunk-BPS7JQCI.cjs → chunk-FHM7GD5B.cjs} +2 -2
- package/dist/{chunk-QZGFJBG5.cjs → chunk-HIXGAY2L.cjs} +50 -50
- package/dist/{chunk-V5QNDOEL.js → chunk-HPJ4XS2L.js} +3 -3
- package/dist/{chunk-DJLZXJYB.js → chunk-HYFLTFFB.js} +1 -1
- package/dist/{chunk-CUPJCGLB.js → chunk-IZKOQVXO.js} +1 -1
- package/dist/{chunk-N7DPIH57.js → chunk-JOY6HVPV.js} +1 -1
- package/dist/{chunk-NIT257DV.cjs → chunk-L7KZA7ZD.cjs} +2 -2
- package/dist/{chunk-BQ34PIFC.cjs → chunk-LZNJH23A.cjs} +3 -3
- package/dist/{chunk-EONNPRAW.js → chunk-MWUBBBWZ.js} +1 -1
- package/dist/{chunk-N7HMUQRV.js → chunk-PLK6GHN7.js} +1 -1
- package/dist/{chunk-DG2I57UM.cjs → chunk-QFW3RUZS.cjs} +16 -16
- package/dist/{chunk-S4ADN25W.js → chunk-RS7HWAYX.js} +1 -1
- package/dist/{chunk-PNWIVND4.js → chunk-SAA7B3DA.js} +2 -2
- package/dist/{chunk-6JG75WVO.js → chunk-UJJWTJ6S.js} +4 -4
- package/dist/{chunk-7ZDTAABP.cjs → chunk-YGRHITPY.cjs} +3 -3
- package/dist/{chunk-A5ZGKBN2.js → chunk-Z5HDCZAS.js} +1 -1
- package/dist/components/announcement-bar.d.ts +1 -1
- package/dist/components/announcement-bar.d.ts.map +1 -1
- package/dist/components/case-studies/index.cjs +11 -11
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +6 -6
- package/dist/components/docs/index.js +5 -5
- 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 +22 -2
- package/dist/components/features/index.js +21 -1
- package/dist/components/features/remote-session/index.d.ts +9 -1
- package/dist/components/features/remote-session/index.d.ts.map +1 -1
- package/dist/components/features/remote-session/remote-session-block.d.ts +4 -2
- package/dist/components/features/remote-session/remote-session-block.d.ts.map +1 -1
- package/dist/components/features/remote-session/remote-session-chat-panel.d.ts +4 -2
- package/dist/components/features/remote-session/remote-session-chat-panel.d.ts.map +1 -1
- package/dist/components/features/remote-session/remote-session-events.d.ts +24 -0
- package/dist/components/features/remote-session/remote-session-events.d.ts.map +1 -0
- package/dist/components/features/remote-session/remote-session-keep-modals.d.ts +41 -0
- package/dist/components/features/remote-session/remote-session-keep-modals.d.ts.map +1 -0
- package/dist/components/features/remote-session/remote-session-parts.d.ts +13 -2
- package/dist/components/features/remote-session/remote-session-parts.d.ts.map +1 -1
- package/dist/components/features/remote-session/remote-session-status.d.ts +34 -0
- package/dist/components/features/remote-session/remote-session-status.d.ts.map +1 -0
- package/dist/components/features/remote-session/remote-session-viewers.d.ts +15 -0
- package/dist/components/features/remote-session/remote-session-viewers.d.ts.map +1 -0
- package/dist/components/features/remote-session/types.d.ts +22 -0
- package/dist/components/features/remote-session/types.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.cjs +49 -49
- package/dist/components/help-center-pages/index.js +13 -13
- package/dist/components/index.cjs +55 -34
- package/dist/components/index.js +35 -14
- package/dist/components/meeting-scheduler/index.cjs +22 -22
- package/dist/components/meeting-scheduler/index.js +1 -1
- package/dist/components/navigation/index.cjs +5 -5
- package/dist/components/navigation/index.js +4 -4
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/tickets/index.cjs +6 -6
- package/dist/components/tickets/index.js +5 -5
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/index.cjs +26 -6
- package/dist/index.js +25 -5
- package/dist/tailwind.config.cjs +7 -1
- package/dist/tailwind.config.js +7 -1
- package/dist/types/announcement.d.ts +1 -6
- package/dist/types/announcement.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/announcement-bar.tsx +7 -2
- package/src/components/features/remote-session/index.ts +28 -0
- package/src/components/features/remote-session/remote-session-block.tsx +6 -3
- package/src/components/features/remote-session/remote-session-chat-panel.tsx +11 -7
- package/src/components/features/remote-session/remote-session-events.tsx +93 -0
- package/src/components/features/remote-session/remote-session-keep-modals.tsx +208 -0
- package/src/components/features/remote-session/remote-session-parts.tsx +32 -3
- package/src/components/features/remote-session/remote-session-status.tsx +102 -0
- package/src/components/features/remote-session/remote-session-viewers.tsx +103 -0
- package/src/components/features/remote-session/types.ts +26 -0
- package/src/types/announcement.ts +1 -6
- package/tailwind.config.ts +6 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { RemoteSessionEvent } from './types';
|
|
2
|
+
/** `mm:ss` from the start of a recording; `h:mm:ss` from the first hour on. */
|
|
3
|
+
export declare function formatRemoteSessionOffset(offsetMs: number): string;
|
|
4
|
+
export interface RemoteSessionEventListProps {
|
|
5
|
+
events: RemoteSessionEvent[];
|
|
6
|
+
/** The event the playhead is on; highlighted. */
|
|
7
|
+
activeEventId?: string | null;
|
|
8
|
+
/** Seek the player to the event. */
|
|
9
|
+
onSelect?: (event: RemoteSessionEvent) => void;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/** SESSION EVENTS under the recording player: each event with its time, newest last. */
|
|
13
|
+
export declare function RemoteSessionEventList({ events, activeEventId, onSelect, className }: RemoteSessionEventListProps): import("react").JSX.Element;
|
|
14
|
+
export interface RemoteSessionTimelineMarkersProps {
|
|
15
|
+
events: RemoteSessionEvent[];
|
|
16
|
+
/** Length of the recording; events past it are pinned to the end. */
|
|
17
|
+
durationMs: number;
|
|
18
|
+
/** Seek the player to the event. */
|
|
19
|
+
onSelect?: (event: RemoteSessionEvent) => void;
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
/** The event marks above the player's track, one per event, at its share of the recording. */
|
|
23
|
+
export declare function RemoteSessionTimelineMarkers({ events, durationMs, onSelect, className, }: RemoteSessionTimelineMarkersProps): import("react").JSX.Element | null;
|
|
24
|
+
//# sourceMappingURL=remote-session-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-session-events.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-events.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,+EAA+E;AAC/E,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMlE;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,iDAAiD;IACjD,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oCAAoC;IACpC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,2BAA2B,+BA8BjH;AAED,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8FAA8F;AAC9F,wBAAgB,4BAA4B,CAAC,EAC3C,MAAM,EACN,UAAU,EACV,QAAQ,EACR,SAAS,GACV,EAAE,iCAAiC,sCAqBnC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { RemoteSessionKeepReason } from './types';
|
|
2
|
+
/** How each Keep reason reads in the dialog, the session list and the release notice. */
|
|
3
|
+
export declare const REMOTE_SESSION_KEEP_REASON_LABELS: Record<RemoteSessionKeepReason, string>;
|
|
4
|
+
export interface KeepRecordingSelection {
|
|
5
|
+
reason: RemoteSessionKeepReason;
|
|
6
|
+
/** Trimmed; set for `OTHER` only. */
|
|
7
|
+
description: string | null;
|
|
8
|
+
}
|
|
9
|
+
export interface KeepRecordingModalProps {
|
|
10
|
+
isOpen: boolean;
|
|
11
|
+
onClose: () => void;
|
|
12
|
+
/** What kept recordings take of the tenant's allowance, e.g. "612 MB of 50 GB". */
|
|
13
|
+
keptUsage: string;
|
|
14
|
+
/** The Keep is in flight: the button spins and the dialog refuses to close. */
|
|
15
|
+
isPending?: boolean;
|
|
16
|
+
onConfirm: (selection: KeepRecordingSelection) => void;
|
|
17
|
+
}
|
|
18
|
+
/** Keep this recording: exempts it from automatic deletion until someone releases it. */
|
|
19
|
+
export declare function KeepRecordingModal({ isOpen, onClose, keptUsage, isPending, onConfirm, }: KeepRecordingModalProps): import("react").JSX.Element;
|
|
20
|
+
export interface ReleaseKeepingModalProps {
|
|
21
|
+
isOpen: boolean;
|
|
22
|
+
onClose: () => void;
|
|
23
|
+
/** Who placed the Keep. */
|
|
24
|
+
keptBy: string;
|
|
25
|
+
/** When the Keep was placed, formatted, e.g. "27 Jul 2026". */
|
|
26
|
+
keptOn: string;
|
|
27
|
+
/** The reason as it reads in the sentence, e.g. "Client dispute". */
|
|
28
|
+
reason: string;
|
|
29
|
+
/** The ticket or reference the Keep was placed for. */
|
|
30
|
+
ticket?: string | null;
|
|
31
|
+
/** When the recording will be deleted once released, formatted. */
|
|
32
|
+
expiresOn: string;
|
|
33
|
+
/** The original expiry date when it has already passed, so the release adds the grace period. */
|
|
34
|
+
dueOn?: string | null;
|
|
35
|
+
/** The release is in flight: the button spins and the dialog refuses to close. */
|
|
36
|
+
isPending?: boolean;
|
|
37
|
+
onConfirm: () => void;
|
|
38
|
+
}
|
|
39
|
+
/** Release Keeping: hands the recording back to the normal expiry, nothing is deleted on the spot. */
|
|
40
|
+
export declare function ReleaseKeepingModal({ isOpen, onClose, keptBy, keptOn, reason, ticket, expiresOn, dueOn, isPending, onConfirm, }: ReleaseKeepingModalProps): import("react").JSX.Element;
|
|
41
|
+
//# sourceMappingURL=remote-session-keep-modals.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-session-keep-modals.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-keep-modals.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAEvD,yFAAyF;AACzF,eAAO,MAAM,iCAAiC,EAAE,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAKrF,CAAC;AAmBF,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,uBAAuB,CAAC;IAChC,qCAAqC;IACrC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,mFAAmF;IACnF,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,CAAC,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACxD;AAED,yFAAyF;AACzF,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAiB,EACjB,SAAS,GACV,EAAE,uBAAuB,+BAoFzB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,iGAAiG;IACjG,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,kFAAkF;IAClF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,sGAAsG;AACtG,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAiB,EACjB,SAAS,GACV,EAAE,wBAAwB,+BA+B1B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
-
import type { RemoteSessionDragHandlers } from './types';
|
|
2
|
+
import type { RemoteSessionDragHandlers, RemoteSessionViewer } from './types';
|
|
3
3
|
export interface RemoteSessionScopeProps {
|
|
4
4
|
children: ReactNode;
|
|
5
5
|
className?: string;
|
|
@@ -20,7 +20,18 @@ export interface RemoteSessionOrgLogoProps {
|
|
|
20
20
|
/** Organization logo tile; the OpenFrame mark when there is no logo. */
|
|
21
21
|
export declare function RemoteSessionOrgLogo({ name, logoUrl, sizePx, className }: RemoteSessionOrgLogoProps): import("react").JSX.Element;
|
|
22
22
|
/** The green SESSION RECORDING tag. */
|
|
23
|
-
export declare function RemoteSessionRecordingTag(
|
|
23
|
+
export declare function RemoteSessionRecordingTag({ className }: {
|
|
24
|
+
className?: string;
|
|
25
|
+
}): import("react").JSX.Element;
|
|
26
|
+
/**
|
|
27
|
+
* The row under the block's header: the SESSION RECORDING tag and, while
|
|
28
|
+
* colleagues watch, who is in the session. With viewers the tag stretches to
|
|
29
|
+
* the left and the viewers sit on the right.
|
|
30
|
+
*/
|
|
31
|
+
export declare function RemoteSessionStatusRow({ showRecordingTag, viewers, }: {
|
|
32
|
+
showRecordingTag: boolean;
|
|
33
|
+
viewers?: RemoteSessionViewer[];
|
|
34
|
+
}): import("react").JSX.Element | null;
|
|
24
35
|
/** Grab cursor on the surfaces the window is moved by. */
|
|
25
36
|
export declare const REMOTE_SESSION_DRAG_HANDLE_CLASS = "cursor-grab active:cursor-grabbing";
|
|
26
37
|
/** The dragger glyph in the top-right corner of a block header: the visible handle for moving it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-session-parts.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-parts.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-session-parts.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-parts.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAC;AAMhF,OAAO,KAAK,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AA4B9E,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,uBAAuB,+BAMlF;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wEAAwE;AACxE,wBAAgB,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,yBAAyB,+BA2BnG;AAED,uCAAuC;AACvC,wBAAgB,yBAAyB,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY9E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,gBAAgB,EAChB,OAAO,GACR,EAAE;IACD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACjC,sCAUA;AAED,0DAA0D;AAC1D,eAAO,MAAM,gCAAgC,uCAAuC,CAAC;AAErF,qGAAqG;AACrG,wBAAgB,oBAAoB,CAAC,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,yBAAyB,CAAA;CAAE,+BAalG;AAED,wEAAwE;AACxE,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAO/D"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { RemoteSessionStatus } from './types';
|
|
2
|
+
export interface RemoteSessionStatusTagProps {
|
|
3
|
+
status: RemoteSessionStatus;
|
|
4
|
+
className?: string;
|
|
5
|
+
}
|
|
6
|
+
/** LIVE / PROCESSING / FAILED beside a session's date in the session list and on its page. */
|
|
7
|
+
export declare function RemoteSessionStatusTag({ status, className }: RemoteSessionStatusTagProps): import("react").JSX.Element;
|
|
8
|
+
export type RemoteSessionExpiryProps = {
|
|
9
|
+
className?: string;
|
|
10
|
+
} & ({
|
|
11
|
+
state: 'kept';
|
|
12
|
+
keptBy: string;
|
|
13
|
+
reason: string;
|
|
14
|
+
} | {
|
|
15
|
+
state: 'scheduled';
|
|
16
|
+
date: string;
|
|
17
|
+
remaining?: string | null;
|
|
18
|
+
} | {
|
|
19
|
+
state: 'expired';
|
|
20
|
+
} | {
|
|
21
|
+
state: 'none';
|
|
22
|
+
});
|
|
23
|
+
/** The EXPIRES cell of a recording: its expiry date, the Keep holding it, or that it has expired. */
|
|
24
|
+
export declare function RemoteSessionExpiry(props: RemoteSessionExpiryProps): import("react").JSX.Element;
|
|
25
|
+
export interface RemoteSessionStorageAlertProps {
|
|
26
|
+
/** `device` on the device page (new sessions there aren't recorded); `session` on a running session. */
|
|
27
|
+
scope: 'device' | 'session';
|
|
28
|
+
/** The plan's recording storage, e.g. "100 GB"; named on the device page. */
|
|
29
|
+
capacity?: string | null;
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
/** The banner shown while the tenant's recording storage is full. */
|
|
33
|
+
export declare function RemoteSessionStorageAlert({ scope, capacity, className }: RemoteSessionStorageAlertProps): import("react").JSX.Element;
|
|
34
|
+
//# sourceMappingURL=remote-session-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-session-status.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-status.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAanD,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,2BAA2B,+BAUxF;AAED,MAAM,MAAM,wBAAwB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,CAC5D;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC/D;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,GACpB;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CACpB,CAAC;AAEF,qGAAqG;AACrG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,+BA2BlE;AAED,MAAM,WAAW,8BAA8B;IAC7C,wGAAwG;IACxG,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qEAAqE;AACrE,wBAAgB,yBAAyB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,8BAA8B,+BAmBvG"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { RemoteSessionViewer } from './types';
|
|
2
|
+
export interface RemoteSessionViewersProps {
|
|
3
|
+
/** Everyone in the session, the host included. */
|
|
4
|
+
viewers: RemoteSessionViewer[];
|
|
5
|
+
/** Faces shown before the rest collapse into "+N". */
|
|
6
|
+
max?: number;
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Who is in a live session: an avatar stack (the host ringed in the accent
|
|
11
|
+
* colour) that opens the full list. Shown to the host, to the watchers and to
|
|
12
|
+
* the end user.
|
|
13
|
+
*/
|
|
14
|
+
export declare function RemoteSessionViewers({ viewers, max, className }: RemoteSessionViewersProps): import("react").JSX.Element | null;
|
|
15
|
+
//# sourceMappingURL=remote-session-viewers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-session-viewers.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/remote-session-viewers.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAanD,MAAM,WAAW,yBAAyB;IACxC,kDAAkD;IAClD,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAO,EAAE,SAAS,EAAE,EAAE,yBAAyB,sCAqE9F"}
|
|
@@ -25,6 +25,28 @@ export interface RemoteSessionChatMessage {
|
|
|
25
25
|
}
|
|
26
26
|
/** The terminal dialogs of a session: the end confirm and the two "it is over" notices. */
|
|
27
27
|
export type RemoteSessionDialogVariant = 'end-confirm' | 'session-ended' | 'connection-lost';
|
|
28
|
+
/** Someone in a live session: the technician running it (the host) or a colleague watching. */
|
|
29
|
+
export interface RemoteSessionViewer {
|
|
30
|
+
id: string;
|
|
31
|
+
name: string;
|
|
32
|
+
avatarUrl?: string | null;
|
|
33
|
+
/** The technician running the session; listed first and ringed in the accent colour. */
|
|
34
|
+
isHost?: boolean;
|
|
35
|
+
/** The signed-in user, labelled "(you)" in the list. */
|
|
36
|
+
isYou?: boolean;
|
|
37
|
+
}
|
|
38
|
+
/** Where a remote session's recording is in its lifecycle, as the session list tags it. */
|
|
39
|
+
export type RemoteSessionStatus = 'live' | 'processing' | 'failed';
|
|
40
|
+
/** Why a recording is kept past its expiry date. */
|
|
41
|
+
export type RemoteSessionKeepReason = 'CLIENT_DISPUTE' | 'INTERNAL_REVIEW' | 'LEGAL_OR_COMPLIANCE' | 'OTHER';
|
|
42
|
+
/** A moment of the session, placed on the recording by its offset from the start. */
|
|
43
|
+
export interface RemoteSessionEvent {
|
|
44
|
+
id: string;
|
|
45
|
+
/** Milliseconds from the start of the recording. */
|
|
46
|
+
offsetMs: number;
|
|
47
|
+
title: string;
|
|
48
|
+
detail?: string | null;
|
|
49
|
+
}
|
|
28
50
|
/**
|
|
29
51
|
* Pointer handlers a host attaches to the surfaces the user moves the window
|
|
30
52
|
* by (the desktop chat starts a native window drag from them).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,mGAAmG;IACnG,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,wDAAwD;AACxD,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEzD,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEvE,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,uBAAuB,CAAC;IAChC,qFAAqF;IACrF,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,IAAI,CAAC;CACV;AAED,2FAA2F;AAC3F,MAAM,MAAM,0BAA0B,GAAG,aAAa,GAAG,eAAe,GAAG,iBAAiB,CAAC;AAE7F;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,cAAc,CAAC,WAAW,CAAC,EAC3B,eAAe,GAAG,eAAe,GAAG,aAAa,CAClD,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/features/remote-session/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,mGAAmG;IACnG,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,wDAAwD;AACxD,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEzD,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEvE,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,uBAAuB,CAAC;IAChC,qFAAqF;IACrF,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,IAAI,CAAC;CACV;AAED,2FAA2F;AAC3F,MAAM,MAAM,0BAA0B,GAAG,aAAa,GAAG,eAAe,GAAG,iBAAiB,CAAC;AAE7F,+FAA+F;AAC/F,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,wFAAwF;IACxF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,2FAA2F;AAC3F,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEnE,oDAAoD;AACpD,MAAM,MAAM,uBAAuB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,qBAAqB,GAAG,OAAO,CAAC;AAE7G,qFAAqF;AACrF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,cAAc,CAAC,WAAW,CAAC,EAC3B,eAAe,GAAG,eAAe,GAAG,aAAa,CAClD,CAAC"}
|
|
@@ -6,38 +6,38 @@
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkE3DH543Acjs = require('../../chunk-E3DH543A.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var
|
|
14
|
-
require('../../chunk-
|
|
13
|
+
var _chunk3WSFIV5Gcjs = require('../../chunk-3WSFIV5G.cjs');
|
|
14
|
+
require('../../chunk-LZNJH23A.cjs');
|
|
15
15
|
require('../../chunk-UIBSSVON.cjs');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _chunkYGRHITPYcjs = require('../../chunk-YGRHITPY.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkCXDJUKC6cjs = require('../../chunk-CXDJUKC6.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var _chunkHIXGAY2Lcjs = require('../../chunk-HIXGAY2L.cjs');
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _chunkCYYTD5ZKcjs = require('../../chunk-CYYTD5ZK.cjs');
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
var
|
|
32
|
+
var _chunk3G76LRGLcjs = require('../../chunk-3G76LRGL.cjs');
|
|
33
33
|
require('../../chunk-HUOLB7ZN.cjs');
|
|
34
|
-
require('../../chunk-
|
|
34
|
+
require('../../chunk-L7KZA7ZD.cjs');
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
39
|
-
require('../../chunk-
|
|
40
|
-
require('../../chunk-
|
|
38
|
+
var _chunkQFW3RUZScjs = require('../../chunk-QFW3RUZS.cjs');
|
|
39
|
+
require('../../chunk-FHM7GD5B.cjs');
|
|
40
|
+
require('../../chunk-ASN65P3F.cjs');
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
var _chunkXCIFHW4Ecjs = require('../../chunk-XCIFHW4E.cjs');
|
|
@@ -53,7 +53,7 @@ var _chunkXCIFHW4Ecjs = require('../../chunk-XCIFHW4E.cjs');
|
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
|
|
56
|
-
var
|
|
56
|
+
var _chunkFD4DBTFOcjs = require('../../chunk-FD4DBTFO.cjs');
|
|
57
57
|
require('../../chunk-HQQE74RO.cjs');
|
|
58
58
|
require('../../chunk-DEY6XXGO.cjs');
|
|
59
59
|
|
|
@@ -138,9 +138,9 @@ function RoadmapPage({
|
|
|
138
138
|
belowContent,
|
|
139
139
|
shell
|
|
140
140
|
}) {
|
|
141
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
141
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3G76LRGLcjs.DevSectionPage, { sectionKey: "roadmap", backButton, title, subtitle, shell, children: [
|
|
142
142
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
143
|
-
|
|
143
|
+
_chunkE3DH543Acjs.RoadmapView,
|
|
144
144
|
{
|
|
145
145
|
endpoint: roadmapEndpoint,
|
|
146
146
|
initialItems,
|
|
@@ -166,9 +166,9 @@ function ProductReleasesListPage({
|
|
|
166
166
|
belowContent,
|
|
167
167
|
shell
|
|
168
168
|
}) {
|
|
169
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
169
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3G76LRGLcjs.DevSectionPage, { sectionKey: "releases", backButton, title, subtitle, shell, children: [
|
|
170
170
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
171
|
-
|
|
171
|
+
_chunkE3DH543Acjs.ProductReleasesView,
|
|
172
172
|
{
|
|
173
173
|
endpoint: releasesEndpoint,
|
|
174
174
|
basePath,
|
|
@@ -191,8 +191,8 @@ function DeliveryPage({
|
|
|
191
191
|
belowContent,
|
|
192
192
|
shell
|
|
193
193
|
}) {
|
|
194
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
195
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
194
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3G76LRGLcjs.DevSectionPage, { sectionKey: "delivery", backButton, title, subtitle, shell, children: [
|
|
195
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE3DH543Acjs.DeliveryLists, { completedApiEndpoint: completedEndpoint, inProgressApiEndpoint: inProgressEndpoint }),
|
|
196
196
|
belowContent
|
|
197
197
|
] });
|
|
198
198
|
}
|
|
@@ -212,9 +212,9 @@ function OnboardingGuidesCatalogPage({
|
|
|
212
212
|
belowContent,
|
|
213
213
|
shell
|
|
214
214
|
}) {
|
|
215
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
215
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk3G76LRGLcjs.DevSectionPage, { sectionKey: "onboarding", backButton, title, subtitle, shell, children: [
|
|
216
216
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
217
|
-
|
|
217
|
+
_chunkQFW3RUZScjs.OnboardingGuidesCatalogView,
|
|
218
218
|
{
|
|
219
219
|
guidesEndpoint,
|
|
220
220
|
sectionsEndpoint,
|
|
@@ -287,7 +287,7 @@ function AiSection({ practices }) {
|
|
|
287
287
|
}
|
|
288
288
|
]
|
|
289
289
|
}));
|
|
290
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
290
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows });
|
|
291
291
|
}
|
|
292
292
|
function ComplianceSection({ frameworks }) {
|
|
293
293
|
const rows = frameworks.map((framework) => {
|
|
@@ -298,7 +298,7 @@ function ComplianceSection({ frameworks }) {
|
|
|
298
298
|
columns: [
|
|
299
299
|
{
|
|
300
300
|
key: "framework",
|
|
301
|
-
leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
301
|
+
leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.ComplianceLogo, { names: [framework.standard, framework.label], fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { "aria-hidden": "true" }) }),
|
|
302
302
|
value: framework.label,
|
|
303
303
|
label: _nullishCoalesce(framework.description, () => ( void 0)),
|
|
304
304
|
wrap: true
|
|
@@ -312,7 +312,7 @@ function ComplianceSection({ frameworks }) {
|
|
|
312
312
|
]
|
|
313
313
|
};
|
|
314
314
|
});
|
|
315
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
315
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows });
|
|
316
316
|
}
|
|
317
317
|
var CONTROL_ROW_CLASS = "h-14 md:h-20 overflow-hidden";
|
|
318
318
|
function controlRows(controls) {
|
|
@@ -351,7 +351,7 @@ function ControlsListSkeleton() {
|
|
|
351
351
|
}
|
|
352
352
|
]
|
|
353
353
|
}));
|
|
354
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
354
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows });
|
|
355
355
|
}
|
|
356
356
|
function ControlsSection({ endpoint, seed }) {
|
|
357
357
|
const [domain, setDomain] = _react.useState.call(void 0, seed.domain);
|
|
@@ -379,12 +379,12 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
379
379
|
else summary = `${countLabel(current.controls.length, "passing control")} in ${current.domain}`;
|
|
380
380
|
let body;
|
|
381
381
|
if (answer.error && !current) {
|
|
382
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
382
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.LoadError, { message: "Could not load the controls", onRetry: answer.reload });
|
|
383
383
|
} else if (!current) {
|
|
384
384
|
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsListSkeleton, {});
|
|
385
385
|
} else if (current.controls.length === 0) {
|
|
386
386
|
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
387
|
-
|
|
387
|
+
_chunk3G76LRGLcjs.ListEmptyState,
|
|
388
388
|
{
|
|
389
389
|
isFiltered: true,
|
|
390
390
|
filtered: {
|
|
@@ -397,11 +397,11 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
397
397
|
}
|
|
398
398
|
);
|
|
399
399
|
} else {
|
|
400
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
400
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows: controlRows(current.controls) });
|
|
401
401
|
}
|
|
402
402
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
403
403
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
404
|
-
|
|
404
|
+
_chunkFD4DBTFOcjs.TabNavigation,
|
|
405
405
|
{
|
|
406
406
|
tabs,
|
|
407
407
|
activeTab,
|
|
@@ -411,7 +411,7 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
411
411
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-s)] md:flex-row md:items-center md:justify-between", children: [
|
|
412
412
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, "aria-live": "polite", children: summary }),
|
|
413
413
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full md:w-80", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
414
|
-
|
|
414
|
+
_chunkFD4DBTFOcjs.SearchInput,
|
|
415
415
|
{
|
|
416
416
|
placeholder: "Search controls",
|
|
417
417
|
value: typed,
|
|
@@ -460,7 +460,7 @@ function DocumentsSection({
|
|
|
460
460
|
]
|
|
461
461
|
};
|
|
462
462
|
});
|
|
463
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
463
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows });
|
|
464
464
|
}
|
|
465
465
|
function DocumentRequestModal({
|
|
466
466
|
open,
|
|
@@ -474,7 +474,7 @@ function DocumentRequestModal({
|
|
|
474
474
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRTGPIHVOcjs.ModalContent, { children: open ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
475
475
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: "We share gated security documents under NDA. Leave your work email and our security team will follow up with access, usually within one business day." }),
|
|
476
476
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
477
|
-
|
|
477
|
+
_chunkCYYTD5ZKcjs.ContactForm,
|
|
478
478
|
{
|
|
479
479
|
rescue: _chunk3L7KCOGOcjs.RESCUE_FORMS.trustCenterRequest,
|
|
480
480
|
title: "",
|
|
@@ -492,12 +492,12 @@ function DocumentRequestModal({
|
|
|
492
492
|
] });
|
|
493
493
|
}
|
|
494
494
|
function subprocessorMark({ name, logoUrl }) {
|
|
495
|
-
if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
495
|
+
if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.EntityImage, { src: logoUrl, alt: name, fallbackText: name, sizeClassName: "size-6" });
|
|
496
496
|
const logo = _chunkRTGPIHVOcjs.brandLogoForName.call(void 0, name);
|
|
497
|
-
return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
497
|
+
return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.EntityImage, { alt: name, fallbackText: name, sizeClassName: "size-6" });
|
|
498
498
|
}
|
|
499
499
|
function countryWithFlag(country) {
|
|
500
|
-
const flag =
|
|
500
|
+
const flag = _chunkFD4DBTFOcjs.getFlagFromCountryName.call(void 0, country);
|
|
501
501
|
return flag ? `${flag} ${country}` : country;
|
|
502
502
|
}
|
|
503
503
|
function SubprocessorsSection({ subprocessors }) {
|
|
@@ -524,11 +524,11 @@ function SubprocessorsSection({ subprocessors }) {
|
|
|
524
524
|
] : []
|
|
525
525
|
]
|
|
526
526
|
}));
|
|
527
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
527
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows });
|
|
528
528
|
}
|
|
529
529
|
function ContactSection({ onContact }) {
|
|
530
530
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
531
|
-
|
|
531
|
+
_chunkFD4DBTFOcjs.StackedRowsPanel,
|
|
532
532
|
{
|
|
533
533
|
rows: [
|
|
534
534
|
{
|
|
@@ -631,9 +631,9 @@ function TrustCenterSkeleton() {
|
|
|
631
631
|
] }),
|
|
632
632
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_BODY_GRID_CLASS, "aria-busy": "true", "aria-label": "Loading the trust center", children: [
|
|
633
633
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: [
|
|
634
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "compliance", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
634
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "compliance", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows: skeletonRows(3, { mark: "logo", action: "badge" }) }) }),
|
|
635
635
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "controls", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsSectionSkeleton, {}) }),
|
|
636
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "documents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
636
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "documents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StackedRowsPanel, { rows: skeletonRows(2, { mark: "glyph", action: "button" }) }) })
|
|
637
637
|
] }),
|
|
638
638
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden lg:block", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SectionRailSkeleton, {}) })
|
|
639
639
|
] })
|
|
@@ -698,7 +698,7 @@ function TrustCenterPage({
|
|
|
698
698
|
documentTitle: null
|
|
699
699
|
});
|
|
700
700
|
const sections = _react.useMemo.call(void 0, () => data ? visibleSections(data) : [], [data]);
|
|
701
|
-
const { activeSection, handleSectionClick } =
|
|
701
|
+
const { activeSection, handleSectionClick } = _chunk3WSFIV5Gcjs.useScrollSpy.call(void 0, sections, {
|
|
702
702
|
syncHash: true,
|
|
703
703
|
headerOffset: _chunkIIMICN7Lcjs.STICKY_HEADER_OFFSET_PX
|
|
704
704
|
});
|
|
@@ -737,24 +737,24 @@ function TrustCenterPage({
|
|
|
737
737
|
lead: TRUST_SECTION_LEADS.subprocessors,
|
|
738
738
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SubprocessorsSection, { subprocessors: d.subprocessors })
|
|
739
739
|
},
|
|
740
|
-
faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
740
|
+
faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYGRHITPYcjs.FaqSection, { initialFaqs: d.faqs, heading: null }) },
|
|
741
741
|
contact: { render: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ContactSection, { onContact: () => openRequest(null) }) }
|
|
742
742
|
};
|
|
743
743
|
let body;
|
|
744
744
|
if (error && !data) {
|
|
745
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
745
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.LoadError, { message: "Could not load the trust center", onRetry: reload });
|
|
746
746
|
} else if (!data) {
|
|
747
747
|
body = isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterSkeleton, {}) : null;
|
|
748
748
|
} else {
|
|
749
749
|
const status = monitoringStatus(data, hydrated, nowMs);
|
|
750
750
|
body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
751
751
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_STATUS_ROW_CLASS, children: [
|
|
752
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
752
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.StatusIndicator, { status: status.status, label: status.label }),
|
|
753
753
|
data.connected ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
754
|
-
|
|
754
|
+
_chunkFD4DBTFOcjs.DataAttribution,
|
|
755
755
|
{
|
|
756
756
|
icon: data.dataSource.logoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
757
|
-
|
|
757
|
+
_chunkFD4DBTFOcjs.EntityImage,
|
|
758
758
|
{
|
|
759
759
|
src: data.dataSource.logoUrl,
|
|
760
760
|
alt: data.dataSource.name,
|
|
@@ -773,7 +773,7 @@ function TrustCenterPage({
|
|
|
773
773
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustSection, { id: section.id, title: section.label, lead: view.lead, children: view.render(data) }, section.id);
|
|
774
774
|
}) }),
|
|
775
775
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden lg:block", "aria-label": "Trust center sections", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkIIMICN7Lcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
776
|
-
|
|
776
|
+
_chunkCXDJUKC6cjs.StickySectionNav,
|
|
777
777
|
{
|
|
778
778
|
sections: sections.map((section) => ({ id: section.id, label: section.label })),
|
|
779
779
|
activeSection,
|
|
@@ -805,7 +805,7 @@ function TrustCenterChrome({
|
|
|
805
805
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
806
806
|
const backCfg = backButton === false ? void 0 : { label: _nullishCoalesce(backButton.label, () => ( "Back to home")), onClick: () => router.push(_nullishCoalesce(backButton.href, () => ( "/"))) };
|
|
807
807
|
const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
808
|
-
|
|
808
|
+
_chunkFD4DBTFOcjs.PageLayout,
|
|
809
809
|
{
|
|
810
810
|
title,
|
|
811
811
|
subtitle,
|
|
@@ -817,7 +817,7 @@ function TrustCenterChrome({
|
|
|
817
817
|
children
|
|
818
818
|
}
|
|
819
819
|
);
|
|
820
|
-
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
820
|
+
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFD4DBTFOcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
|
|
821
821
|
}
|
|
822
822
|
function TrustCenterPageSkeleton({
|
|
823
823
|
shell = true,
|
|
@@ -840,4 +840,4 @@ function TrustCenterPageSkeleton({
|
|
|
840
840
|
|
|
841
841
|
|
|
842
842
|
|
|
843
|
-
exports.DeliveryPage = DeliveryPage; exports.DocsHubPage =
|
|
843
|
+
exports.DeliveryPage = DeliveryPage; exports.DocsHubPage = _chunk3WSFIV5Gcjs.DocsHubPage; exports.FaqDocumentPage = _chunkYGRHITPYcjs.FaqDocumentPage; exports.HelpCenterList = _chunkHIXGAY2Lcjs.HelpCenterList; exports.LegalDocumentPage = _chunkE3DH543Acjs.LegalDocumentPage; exports.OnboardingGuideDetailView = _chunkQFW3RUZScjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogPage = OnboardingGuidesCatalogPage; exports.ProductReleasesListPage = ProductReleasesListPage; exports.ReleaseDetailPage = _chunkE3DH543Acjs.ReleaseDetailPage; exports.RoadmapPage = RoadmapPage; exports.TrustCenterPage = TrustCenterPage; exports.TrustCenterPageSkeleton = TrustCenterPageSkeleton;
|
|
@@ -6,38 +6,38 @@ import {
|
|
|
6
6
|
ProductReleasesView,
|
|
7
7
|
ReleaseDetailPage,
|
|
8
8
|
RoadmapView
|
|
9
|
-
} from "../../chunk-
|
|
9
|
+
} from "../../chunk-HPJ4XS2L.js";
|
|
10
10
|
import {
|
|
11
11
|
DocsHubPage,
|
|
12
12
|
useScrollSpy
|
|
13
|
-
} from "../../chunk-
|
|
14
|
-
import "../../chunk-
|
|
13
|
+
} from "../../chunk-UJJWTJ6S.js";
|
|
14
|
+
import "../../chunk-ETFFEA3J.js";
|
|
15
15
|
import "../../chunk-TCZCMD5Q.js";
|
|
16
16
|
import {
|
|
17
17
|
FaqDocumentPage,
|
|
18
18
|
FaqSection
|
|
19
|
-
} from "../../chunk-
|
|
19
|
+
} from "../../chunk-MWUBBBWZ.js";
|
|
20
20
|
import {
|
|
21
21
|
StickySectionNav
|
|
22
|
-
} from "../../chunk-
|
|
22
|
+
} from "../../chunk-HYFLTFFB.js";
|
|
23
23
|
import {
|
|
24
24
|
HelpCenterList
|
|
25
|
-
} from "../../chunk-
|
|
25
|
+
} from "../../chunk-2V4Z44G6.js";
|
|
26
26
|
import {
|
|
27
27
|
ContactForm
|
|
28
|
-
} from "../../chunk-
|
|
28
|
+
} from "../../chunk-IZKOQVXO.js";
|
|
29
29
|
import {
|
|
30
30
|
DevSectionPage,
|
|
31
31
|
ListEmptyState
|
|
32
|
-
} from "../../chunk-
|
|
32
|
+
} from "../../chunk-Z5HDCZAS.js";
|
|
33
33
|
import "../../chunk-OGLCD3UL.js";
|
|
34
|
-
import "../../chunk-
|
|
34
|
+
import "../../chunk-RS7HWAYX.js";
|
|
35
35
|
import {
|
|
36
36
|
OnboardingGuideDetailView,
|
|
37
37
|
OnboardingGuidesCatalogView
|
|
38
|
-
} from "../../chunk-
|
|
39
|
-
import "../../chunk-
|
|
40
|
-
import "../../chunk-
|
|
38
|
+
} from "../../chunk-BO5ZHDA4.js";
|
|
39
|
+
import "../../chunk-JOY6HVPV.js";
|
|
40
|
+
import "../../chunk-446KS5BG.js";
|
|
41
41
|
import {
|
|
42
42
|
useSelfFetch
|
|
43
43
|
} from "../../chunk-5FFNNJM7.js";
|
|
@@ -53,7 +53,7 @@ import {
|
|
|
53
53
|
StatusIndicator,
|
|
54
54
|
TabNavigation,
|
|
55
55
|
getFlagFromCountryName
|
|
56
|
-
} from "../../chunk-
|
|
56
|
+
} from "../../chunk-CZ34HXDW.js";
|
|
57
57
|
import "../../chunk-LQYXMEYF.js";
|
|
58
58
|
import "../../chunk-4JPLYOS6.js";
|
|
59
59
|
import {
|