@cellarnode/ui 0.185.1 → 0.187.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/brand/brand-generation-api.d.ts +44 -0
  2. package/dist/brand/brand-generation-api.d.ts.map +1 -0
  3. package/dist/brand/brand-generation-api.js +2 -0
  4. package/dist/brand/brand-generation-api.js.map +1 -0
  5. package/dist/brand/brand-generation-client.d.ts +28 -0
  6. package/dist/brand/brand-generation-client.d.ts.map +1 -0
  7. package/dist/brand/brand-generation-client.js +107 -0
  8. package/dist/brand/brand-generation-client.js.map +1 -0
  9. package/dist/brand/brand-generation-copy.d.ts +44 -0
  10. package/dist/brand/brand-generation-copy.d.ts.map +1 -0
  11. package/dist/brand/brand-generation-copy.js +70 -0
  12. package/dist/brand/brand-generation-copy.js.map +1 -0
  13. package/dist/brand/brand-generation-fixtures.d.ts +32 -0
  14. package/dist/brand/brand-generation-fixtures.d.ts.map +1 -0
  15. package/dist/brand/brand-generation-fixtures.js +88 -0
  16. package/dist/brand/brand-generation-fixtures.js.map +1 -0
  17. package/dist/brand/brand-generation-flow.d.ts +34 -0
  18. package/dist/brand/brand-generation-flow.d.ts.map +1 -0
  19. package/dist/brand/brand-generation-flow.js +34 -0
  20. package/dist/brand/brand-generation-flow.js.map +1 -0
  21. package/dist/brand/brand-generation-keys.d.ts +16 -0
  22. package/dist/brand/brand-generation-keys.d.ts.map +1 -0
  23. package/dist/brand/brand-generation-keys.js +16 -0
  24. package/dist/brand/brand-generation-keys.js.map +1 -0
  25. package/dist/brand/brand-generation-progress.d.ts +27 -0
  26. package/dist/brand/brand-generation-progress.d.ts.map +1 -0
  27. package/dist/brand/brand-generation-progress.js +61 -0
  28. package/dist/brand/brand-generation-progress.js.map +1 -0
  29. package/dist/brand/brand-generation-recovery-error.d.ts +8 -0
  30. package/dist/brand/brand-generation-recovery-error.d.ts.map +1 -0
  31. package/dist/brand/brand-generation-recovery-error.js +7 -0
  32. package/dist/brand/brand-generation-recovery-error.js.map +1 -0
  33. package/dist/brand/brand-generation-response.d.ts +86 -0
  34. package/dist/brand/brand-generation-response.d.ts.map +1 -0
  35. package/dist/brand/brand-generation-response.js +261 -0
  36. package/dist/brand/brand-generation-response.js.map +1 -0
  37. package/dist/brand/brand-generation-sse-parser.d.ts +14 -0
  38. package/dist/brand/brand-generation-sse-parser.d.ts.map +1 -0
  39. package/dist/brand/brand-generation-sse-parser.js +92 -0
  40. package/dist/brand/brand-generation-sse-parser.js.map +1 -0
  41. package/dist/brand/brand-generation-steps.d.ts +4 -0
  42. package/dist/brand/brand-generation-steps.d.ts.map +1 -0
  43. package/dist/brand/brand-generation-steps.js +29 -0
  44. package/dist/brand/brand-generation-steps.js.map +1 -0
  45. package/dist/brand/brand-generation-surface.d.ts +50 -0
  46. package/dist/brand/brand-generation-surface.d.ts.map +1 -0
  47. package/dist/brand/brand-generation-surface.js +25 -0
  48. package/dist/brand/brand-generation-surface.js.map +1 -0
  49. package/dist/brand/brand-generation-url.d.ts +6 -0
  50. package/dist/brand/brand-generation-url.d.ts.map +1 -0
  51. package/dist/brand/brand-generation-url.js +4 -0
  52. package/dist/brand/brand-generation-url.js.map +1 -0
  53. package/dist/brand/index.d.ts +20 -0
  54. package/dist/brand/index.d.ts.map +1 -1
  55. package/dist/brand/index.js +15 -0
  56. package/dist/brand/index.js.map +1 -1
  57. package/dist/brand/resume-brand-generation.d.ts +17 -0
  58. package/dist/brand/resume-brand-generation.d.ts.map +1 -0
  59. package/dist/brand/resume-brand-generation.js +22 -0
  60. package/dist/brand/resume-brand-generation.js.map +1 -0
  61. package/dist/brand/use-brand-generation-discovery.d.ts +14 -0
  62. package/dist/brand/use-brand-generation-discovery.d.ts.map +1 -0
  63. package/dist/brand/use-brand-generation-discovery.js +61 -0
  64. package/dist/brand/use-brand-generation-discovery.js.map +1 -0
  65. package/dist/brand/use-brand-generation-transport.d.ts +16 -0
  66. package/dist/brand/use-brand-generation-transport.d.ts.map +1 -0
  67. package/dist/brand/use-brand-generation-transport.js +182 -0
  68. package/dist/brand/use-brand-generation-transport.js.map +1 -0
  69. package/dist/brand/use-brand-generation.d.ts +35 -0
  70. package/dist/brand/use-brand-generation.d.ts.map +1 -0
  71. package/dist/brand/use-brand-generation.js +225 -0
  72. package/dist/brand/use-brand-generation.js.map +1 -0
  73. package/dist/brand/use-org-scoped-state.d.ts +3 -0
  74. package/dist/brand/use-org-scoped-state.d.ts.map +1 -0
  75. package/dist/brand/use-org-scoped-state.js +22 -0
  76. package/dist/brand/use-org-scoped-state.js.map +1 -0
  77. package/dist/components/multi-step-loader.d.ts +4 -0
  78. package/dist/components/multi-step-loader.d.ts.map +1 -1
  79. package/dist/components/multi-step-loader.js +4 -3
  80. package/dist/components/multi-step-loader.js.map +1 -1
  81. package/dist/profile/business-details.d.ts +3 -1
  82. package/dist/profile/business-details.d.ts.map +1 -1
  83. package/dist/profile/business-details.js +2 -2
  84. package/dist/profile/business-details.js.map +1 -1
  85. package/dist/profile/certifications-card.d.ts +3 -1
  86. package/dist/profile/certifications-card.d.ts.map +1 -1
  87. package/dist/profile/certifications-card.js +2 -2
  88. package/dist/profile/certifications-card.js.map +1 -1
  89. package/dist/profile/importer-profile-view.d.ts +88 -0
  90. package/dist/profile/importer-profile-view.d.ts.map +1 -0
  91. package/dist/profile/importer-profile-view.js +87 -0
  92. package/dist/profile/importer-profile-view.js.map +1 -0
  93. package/dist/profile/index.d.ts +1 -0
  94. package/dist/profile/index.d.ts.map +1 -1
  95. package/dist/profile/index.js +1 -0
  96. package/dist/profile/index.js.map +1 -1
  97. package/dist/profile/market-reach.d.ts +3 -1
  98. package/dist/profile/market-reach.d.ts.map +1 -1
  99. package/dist/profile/market-reach.js +2 -2
  100. package/dist/profile/market-reach.js.map +1 -1
  101. package/dist/profile/profile-hero.d.ts +3 -1
  102. package/dist/profile/profile-hero.d.ts.map +1 -1
  103. package/dist/profile/profile-hero.js +3 -2
  104. package/dist/profile/profile-hero.js.map +1 -1
  105. package/dist/realtime/job-status/schemas.d.ts +2 -2
  106. package/package.json +1 -1
@@ -0,0 +1,225 @@
1
+ import { useEffect, useCallback, useRef } from "react";
2
+ import { useQueryClient } from "@tanstack/react-query";
3
+ import { brandGenerationKeys, isTerminalStatus, } from "./brand-generation-keys.js";
4
+ import { resumeBrandGeneration } from "./resume-brand-generation.js";
5
+ import { useBrandGenerationDiscovery } from "./use-brand-generation-discovery.js";
6
+ import { useBrandGenerationTransport, } from "./use-brand-generation-transport.js";
7
+ import { useOrgScopedState } from "./use-org-scoped-state.js";
8
+ export function useBrandGeneration({ orgId, api, stream, profileQueryKey, }) {
9
+ // Read through a ref so a fresh array literal each render cannot churn the callbacks below.
10
+ const profileKeyRef = useRef(profileQueryKey);
11
+ profileKeyRef.current = profileQueryKey;
12
+ const orgEpochRef = useRef(0);
13
+ const renderedOrgIdRef = useRef(orgId);
14
+ if (renderedOrgIdRef.current !== orgId) {
15
+ renderedOrgIdRef.current = orgId;
16
+ orgEpochRef.current += 1;
17
+ }
18
+ const orgEpoch = orgEpochRef.current;
19
+ const queryClient = useQueryClient();
20
+ const { activeQuery, activeJob, terminalQuery, terminalJob, eligibility: discoveryEligibility, needsTerminalHandoff, isDiscoveringActive, discoveryError, } = useBrandGenerationDiscovery(orgId, api, profileKeyRef);
21
+ const [job, setJob, updateJob] = useOrgScopedState(orgId, null);
22
+ const [dismissedTerminalJobId, setDismissedTerminalJobId] = useOrgScopedState(orgId, null);
23
+ const [isGenerating, setIsGenerating] = useOrgScopedState(orgId, false);
24
+ const [error, setError] = useOrgScopedState(orgId, null);
25
+ const [transportDegraded, setTransportDegraded] = useOrgScopedState(orgId, false);
26
+ const clearGenerationState = useCallback(() => {
27
+ setJob(null);
28
+ setIsGenerating(false);
29
+ setError(null);
30
+ setTransportDegraded(false);
31
+ }, [setError, setIsGenerating, setJob, setTransportDegraded]);
32
+ const markTransportDegraded = useCallback(() => {
33
+ if (orgEpochRef.current === orgEpoch)
34
+ setTransportDegraded(true);
35
+ }, [orgEpoch, setTransportDegraded]);
36
+ const invalidateGenerationHandoff = useCallback(() => {
37
+ if (!orgId)
38
+ return;
39
+ queryClient.setQueryData(brandGenerationKeys.active(orgId), null);
40
+ void Promise.all([
41
+ queryClient.invalidateQueries({ queryKey: brandGenerationKeys.active(orgId), exact: true }),
42
+ queryClient.invalidateQueries({ queryKey: profileKeyRef.current }),
43
+ ]);
44
+ }, [orgId, queryClient]);
45
+ const handleUpdate = useCallback((data) => {
46
+ if (orgEpochRef.current !== orgEpoch)
47
+ return;
48
+ const { jobId, ...update } = data;
49
+ updateJob((currentJob) => {
50
+ if (!currentJob)
51
+ return currentJob;
52
+ return { ...currentJob, ...update, id: jobId || update.id || currentJob.id };
53
+ });
54
+ if (isTerminalStatus(data.status)) {
55
+ setIsGenerating(false);
56
+ invalidateGenerationHandoff();
57
+ }
58
+ }, [invalidateGenerationHandoff, orgEpoch, setIsGenerating, updateJob]);
59
+ const { cleanup, connect: connectSSE } = useBrandGenerationTransport({
60
+ api,
61
+ stream,
62
+ onUpdate: handleUpdate,
63
+ onDegraded: markTransportDegraded,
64
+ isTerminal: isTerminalStatus,
65
+ });
66
+ // CEL-1679 contract §2: "Retry is a start with amended context" — no
67
+ // separate retry endpoint, so a retry calls this same function again with
68
+ // the operator's amended context from `BrandGenerationContextForm`.
69
+ const start = async (homepageUrl, context) => {
70
+ if (isDiscoveringActive || discoveryError !== null)
71
+ return;
72
+ const actionEpoch = orgEpoch;
73
+ try {
74
+ setError(null);
75
+ setTransportDegraded(false);
76
+ setDismissedTerminalJobId(null);
77
+ setIsGenerating(true);
78
+ const res = await api.start(homepageUrl, context);
79
+ if (orgEpochRef.current !== actionEpoch)
80
+ return;
81
+ setJob({
82
+ id: res.jobId,
83
+ workflowId: res.workflowId,
84
+ status: "pending",
85
+ progress: {},
86
+ error: null,
87
+ createdAt: new Date().toISOString(),
88
+ updatedAt: new Date().toISOString(),
89
+ });
90
+ connectSSE(res.jobId);
91
+ }
92
+ catch {
93
+ if (orgEpochRef.current !== actionEpoch)
94
+ return;
95
+ setIsGenerating(false);
96
+ setError("start");
97
+ }
98
+ };
99
+ const cancel = async () => {
100
+ if (!job?.id)
101
+ return;
102
+ const actionEpoch = orgEpoch;
103
+ try {
104
+ const res = await api.cancel(job.id);
105
+ if (orgEpochRef.current !== actionEpoch)
106
+ return;
107
+ handleUpdate(res);
108
+ }
109
+ catch {
110
+ if (orgEpochRef.current !== actionEpoch)
111
+ return;
112
+ setError("cancel");
113
+ }
114
+ };
115
+ const prioritizeUrl = async (url) => {
116
+ if (!job?.id)
117
+ return;
118
+ const actionEpoch = orgEpoch;
119
+ try {
120
+ const res = await api.prioritizeUrl(job.id, url);
121
+ if (orgEpochRef.current !== actionEpoch)
122
+ return;
123
+ handleUpdate(res);
124
+ }
125
+ catch {
126
+ if (orgEpochRef.current !== actionEpoch)
127
+ return;
128
+ setError("prioritize");
129
+ }
130
+ };
131
+ const accept = async () => {
132
+ if (!job?.id)
133
+ return false;
134
+ const actionEpoch = orgEpoch;
135
+ try {
136
+ await api.accept(job.id);
137
+ if (orgEpochRef.current !== actionEpoch)
138
+ return false;
139
+ invalidateGenerationHandoff();
140
+ if (isTerminalStatus(job.status))
141
+ setDismissedTerminalJobId(job.id);
142
+ setJob(null);
143
+ return true;
144
+ }
145
+ catch {
146
+ if (orgEpochRef.current !== actionEpoch)
147
+ return false;
148
+ setError("accept");
149
+ return false;
150
+ }
151
+ };
152
+ const reset = () => {
153
+ cleanup();
154
+ if (job && isTerminalStatus(job.status))
155
+ setDismissedTerminalJobId(job.id);
156
+ clearGenerationState();
157
+ };
158
+ useEffect(() => cleanup, [cleanup]);
159
+ useEffect(() => {
160
+ cleanup();
161
+ }, [cleanup, orgId]);
162
+ useEffect(() => {
163
+ if (activeQuery.isFetching ||
164
+ (needsTerminalHandoff && terminalQuery.isFetching) ||
165
+ (!activeJob && (!terminalJob || terminalJob.id === dismissedTerminalJobId)) ||
166
+ job ||
167
+ isGenerating)
168
+ return;
169
+ setError(null);
170
+ setTransportDegraded(false);
171
+ setJob(activeJob ?? terminalJob ?? null);
172
+ if (activeJob) {
173
+ setIsGenerating(true);
174
+ void connectSSE(activeJob.id);
175
+ }
176
+ }, [
177
+ activeJob,
178
+ activeQuery.isFetching,
179
+ connectSSE,
180
+ isGenerating,
181
+ job,
182
+ dismissedTerminalJobId,
183
+ needsTerminalHandoff,
184
+ setError,
185
+ setIsGenerating,
186
+ setJob,
187
+ setTransportDegraded,
188
+ terminalJob,
189
+ terminalQuery.isFetching,
190
+ ]);
191
+ const resume = (jobId) => resumeBrandGeneration(jobId, {
192
+ api,
193
+ isCurrent: () => orgEpochRef.current === orgEpoch,
194
+ setError,
195
+ setIsGenerating,
196
+ setTransportDegraded,
197
+ setJob,
198
+ handleUpdate,
199
+ connect: connectSSE,
200
+ });
201
+ return {
202
+ job,
203
+ isGenerating,
204
+ isDiscoveringActive,
205
+ discoveryError,
206
+ error,
207
+ transportDegraded,
208
+ // CEL-1682 (contracts §2): prefers the tracked job's own eligibility
209
+ // (populated by GET /:jobId via `resume`, and by GET /active when a job
210
+ // is active — the freshest snapshot once a specific job is in view),
211
+ // falling back to the discovery-level snapshot from
212
+ // `useBrandGenerationDiscovery`'s unconditional `/active` read. This is
213
+ // the fix for the confirmed idle-state gap: `getActiveBrandGeneration`
214
+ // no longer collapses `{ job: null, eligibility }` to a bare `null`, so
215
+ // the cooldown banner has data even when nothing is running.
216
+ eligibility: job?.eligibility ?? discoveryEligibility,
217
+ start,
218
+ resume,
219
+ cancel,
220
+ prioritizeUrl,
221
+ accept,
222
+ reset,
223
+ };
224
+ }
225
+ //# sourceMappingURL=use-brand-generation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-brand-generation.js","sourceRoot":"","sources":["../../src/brand/use-brand-generation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** State that resets whenever `orgId` changes, so one org's value never leaks into another's. */
2
+ export declare function useOrgScopedState<T>(orgId: string, initialValue: T): readonly [T, (nextValue: T) => void, (update: (currentValue: T) => T) => void];
3
+ //# sourceMappingURL=use-org-scoped-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-org-scoped-state.d.ts","sourceRoot":"","sources":["../../src/brand/use-org-scoped-state.ts"],"names":[],"mappings":"AAIA,iGAAiG;AACjG,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,4BAMnD,CAAC,oBAMJ,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,WAYlC"}
@@ -0,0 +1,22 @@
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ /** State that resets whenever `orgId` changes, so one org's value never leaks into another's. */
3
+ export function useOrgScopedState(orgId, initialValue) {
4
+ const [state, setState] = useState({ orgId, value: initialValue });
5
+ const initialValueRef = useRef(initialValue);
6
+ initialValueRef.current = initialValue;
7
+ const value = state.orgId === orgId ? state.value : initialValue;
8
+ const setValue = useCallback((nextValue) => {
9
+ setState({ orgId, value: nextValue });
10
+ }, [orgId]);
11
+ const updateValue = useCallback((update) => {
12
+ setState((current) => ({
13
+ orgId,
14
+ value: update(current.orgId === orgId ? current.value : initialValue),
15
+ }));
16
+ }, [initialValue, orgId]);
17
+ useEffect(() => {
18
+ setState({ orgId, value: initialValueRef.current });
19
+ }, [orgId]);
20
+ return [value, setValue, updateValue];
21
+ }
22
+ //# sourceMappingURL=use-org-scoped-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-org-scoped-state.js","sourceRoot":"","sources":["../../src/brand/use-org-scoped-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIjE,iGAAiG;AACjG,MAAM,UAAU,iBAAiB,CAAI,KAAa,EAAE,YAAe;IACjE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACtF,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IAC7C,eAAe,CAAC,OAAO,GAAG,YAAY,CAAC;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IACjE,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,SAAY,EAAE,EAAE;QACf,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,MAA8B,EAAE,EAAE;QACjC,QAAQ,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACrB,KAAK;YACL,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;SACtE,CAAC,CAAC,CAAC;IACN,CAAC,EACD,CAAC,YAAY,EAAE,KAAK,CAAC,CACtB,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACZ,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAC;AACjD,CAAC"}
@@ -7,6 +7,8 @@ export interface MultiStepLoaderStep {
7
7
  }
8
8
  export interface MultiStepLoaderCopy {
9
9
  announceLabel?: (current: number, total: number, label: string) => string;
10
+ /** Accessible name of the step list. */
11
+ stepsLabel?: string;
10
12
  }
11
13
  export interface MultiStepLoaderProps {
12
14
  steps: MultiStepLoaderStep[];
@@ -40,5 +42,7 @@ export declare function MultiStepLoader({ steps, activeId, variant, maxVisibleSt
40
42
  export declare function MultiStepLoaderSkeleton(props: {
41
43
  steps?: number;
42
44
  className?: string;
45
+ /** Accessible name of the placeholder list. */
46
+ label?: string;
43
47
  }): import("react/jsx-runtime").JSX.Element;
44
48
  //# sourceMappingURL=multi-step-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"multi-step-loader.d.ts","sourceRoot":"","sources":["../../src/components/multi-step-loader.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC3E;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AA0BD,eAAO,MAAM,iCAAiC,EAAE,mBAAmB,EAMlE,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,mBAAmB,EAMhE,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,OAAgB,EAChB,eAAmB,EACnB,IAAI,EACJ,SAAS,EACT,SAAiB,EACjB,MAAM,GACP,EAAE,oBAAoB,2CA4MtB;AA+GD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,2CAyCpF"}
1
+ {"version":3,"file":"multi-step-loader.d.ts","sourceRoot":"","sources":["../../src/components/multi-step-loader.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1E,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AA2BD,eAAO,MAAM,iCAAiC,EAAE,mBAAmB,EAMlE,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,mBAAmB,EAMhE,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,OAAgB,EAChB,eAAmB,EACnB,IAAI,EACJ,SAAS,EACT,SAAiB,EACjB,MAAM,GACP,EAAE,oBAAoB,2CAgNtB;AA+GD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,2CAyCA"}
@@ -4,6 +4,7 @@ import * as React from "react";
4
4
  import { cn } from "../lib/utils.js";
5
5
  const DEFAULT_COPY = {
6
6
  announceLabel: (current, total, label) => `Step ${current} of ${total}: ${label}`,
7
+ stepsLabel: "Process steps",
7
8
  };
8
9
  const SPRING_PIP = { type: "spring", stiffness: 250, damping: 22 };
9
10
  const RAIL_EASE = [0.32, 0.72, 0, 1];
@@ -127,7 +128,7 @@ export function MultiStepLoader({ steps, activeId, variant = "list", maxVisibleS
127
128
  const viewportTransform = isViewport && displayIdx >= 0
128
129
  ? `translateY(calc(${viewportHeightRem / 2}rem - (${ROW_PITCH_REM}rem * ${displayIdx} + ${ROW_PITCH_REM / 2}rem)))`
129
130
  : undefined;
130
- return (_jsxs("div", { className: cn("relative", isViewport && "overflow-hidden mask-t-from-10% mask-b-from-10%", className), style: isViewport ? { height: `${viewportHeightRem}rem` } : undefined, children: [_jsxs("div", { className: cn("relative", isViewport && "transition-transform duration-700 ease-[cubic-bezier(0.32,0.72,0,1)]"), style: viewportTransform ? { transform: viewportTransform } : undefined, children: [steps.length > 1 && (_jsxs("div", { className: "pointer-events-none absolute bottom-0 left-[11px] top-0 w-px -translate-x-1/2", "aria-hidden": "true", children: [_jsx("div", { className: "absolute inset-y-3 left-0 w-full bg-border/70" }), _jsx(motion.div, { className: "absolute left-0 top-3 w-full bg-linear-to-b from-primary/40 to-primary origin-top", initial: false, animate: { height: `calc(${fillPct}% - 24px)` }, transition: prefersReducedMotion ? { duration: 0 } : { duration: 0.7, ease: RAIL_EASE } })] })), _jsx("ol", { role: "list", "aria-label": "Process steps", className: "relative flex flex-col gap-y-4", children: steps.map((s, i) => {
131
+ return (_jsxs("div", { className: cn("relative", isViewport && "overflow-hidden mask-t-from-10% mask-b-from-10%", className), style: isViewport ? { height: `${viewportHeightRem}rem` } : undefined, children: [_jsxs("div", { className: cn("relative", isViewport && "transition-transform duration-700 ease-[cubic-bezier(0.32,0.72,0,1)]"), style: viewportTransform ? { transform: viewportTransform } : undefined, children: [steps.length > 1 && (_jsxs("div", { className: "pointer-events-none absolute bottom-0 left-[11px] top-0 w-px -translate-x-1/2", "aria-hidden": "true", children: [_jsx("div", { className: "absolute inset-y-3 left-0 w-full bg-border/70" }), _jsx(motion.div, { className: "absolute left-0 top-3 w-full bg-linear-to-b from-primary/40 to-primary origin-top", initial: false, animate: { height: `calc(${fillPct}% - 24px)` }, transition: prefersReducedMotion ? { duration: 0 } : { duration: 0.7, ease: RAIL_EASE } })] })), _jsx("ol", { role: "list", "aria-label": resolvedCopy.stepsLabel, className: "relative flex flex-col gap-y-4", children: steps.map((s, i) => {
131
132
  const state = resolveState(s, i, displayIdx);
132
133
  // Only the row frozen at the high-water mark ever borrows another
133
134
  // step's content, and only while a regression is actually live
@@ -140,7 +141,7 @@ export function MultiStepLoader({ steps, activeId, variant = "list", maxVisibleS
140
141
  const isBorrowRow = monotonic && i === displayIdx && effectiveIdx >= 0;
141
142
  const label = isBorrowRow ? (currentLabel ?? s.label) : s.label;
142
143
  const subLabel = isBorrowRow ? steps[effectiveIdx]?.subLabel : s.subLabel;
143
- return (_jsxs("li", { "aria-current": state === "current" ? "step" : undefined, className: "relative flex items-start gap-3", children: [_jsx("div", { className: "flex h-6 items-center justify-center shrink-0", children: _jsx(Pip, { state: state, prefersReducedMotion: !!prefersReducedMotion }) }), _jsxs("div", { className: "flex flex-col min-w-0 pt-[2px]", children: [_jsx("span", { className: cn("text-sm/5 truncate transition-colors duration-200", state === "current" && "font-medium text-foreground", state === "done" && "text-muted-foreground", state === "pending" && "text-muted-foreground/70", state === "failed" && "font-medium text-destructive", state === "skipped" && "text-muted-foreground/40 line-through decoration-1"), children: label }), _jsx("div", { className: "h-4 overflow-hidden", children: _jsx(AnimatePresence, { mode: "wait", children: subLabel ? (_jsx(motion.span, { className: "block text-xs/4 text-muted-foreground truncate", initial: prefersReducedMotion ? false : { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: prefersReducedMotion
144
+ return (_jsxs("li", { "aria-current": state === "current" ? "step" : undefined, className: "relative flex items-start gap-3", children: [_jsx("div", { className: "flex h-6 items-center justify-center shrink-0", children: _jsx(Pip, { state: state, prefersReducedMotion: !!prefersReducedMotion }) }), _jsxs("div", { className: "flex flex-col min-w-0 pt-[2px]", children: [_jsx("span", { className: cn("text-sm/5 truncate transition-colors duration-200", state === "current" && "font-medium text-foreground", state === "done" && "text-muted-foreground", state === "pending" && "text-muted-foreground", state === "failed" && "font-medium text-destructive", state === "skipped" && "text-muted-foreground/40 line-through decoration-1"), children: label }), _jsx("div", { className: "h-4 overflow-hidden", children: _jsx(AnimatePresence, { mode: "wait", children: subLabel ? (_jsx(motion.span, { className: "block text-xs/4 text-muted-foreground truncate", initial: prefersReducedMotion ? false : { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: prefersReducedMotion
144
145
  ? { duration: 0 }
145
146
  : { duration: 0.4, ease: RAIL_EASE }, children: subLabel }, "sublabel")) : (_jsx("span", { className: "block text-xs/4 select-none", children: "\u00A0" }, "empty")) }) })] })] }, s.id));
146
147
  }) })] }), _jsx("span", { ref: announceRef, className: "sr-only", "aria-live": "polite", "aria-atomic": "true" })] }));
@@ -195,7 +196,7 @@ export function MultiStepLoaderSkeleton(props) {
195
196
  const count = Number.isFinite(requested) ? Math.max(0, Math.min(20, Math.floor(requested))) : 5;
196
197
  const rowId = React.useId();
197
198
  const rowKeys = React.useMemo(() => Array.from({ length: count }, (_, i) => `${rowId}-pip-${i}`), [count, rowId]);
198
- return (_jsxs("div", { className: cn("relative", props.className), children: [_jsx("div", { className: "pointer-events-none absolute bottom-0 left-[11px] top-0 w-px -translate-x-1/2 bg-border/60", "aria-hidden": "true" }), _jsx("ol", { role: "list", "aria-label": "Loading steps", "aria-busy": "true", className: "relative flex flex-col gap-y-4", children: rowKeys.map((key) => (_jsxs("li", { className: "relative flex items-start gap-3", children: [_jsx("div", { className: "flex h-6 items-center justify-center shrink-0 z-10", children: _jsx("span", { className: "h-6 w-6 animate-pulse rounded-full bg-muted", "aria-hidden": "true" }) }), _jsxs("div", { className: "flex flex-col gap-1.5 pt-1 w-full min-w-0", children: [_jsx("span", { className: "h-3.5 w-3/4 animate-pulse rounded bg-muted max-w-[200px]", "aria-hidden": "true" }), _jsx("span", { className: "h-2.5 w-1/2 animate-pulse rounded bg-muted max-w-[140px]", "aria-hidden": "true" })] })] }, key))) })] }));
199
+ return (_jsxs("div", { className: cn("relative", props.className), children: [_jsx("div", { className: "pointer-events-none absolute bottom-0 left-[11px] top-0 w-px -translate-x-1/2 bg-border/60", "aria-hidden": "true" }), _jsx("ol", { role: "list", "aria-label": props.label ?? "Loading steps", "aria-busy": "true", className: "relative flex flex-col gap-y-4", children: rowKeys.map((key) => (_jsxs("li", { className: "relative flex items-start gap-3", children: [_jsx("div", { className: "flex h-6 items-center justify-center shrink-0 z-10", children: _jsx("span", { className: "h-6 w-6 animate-pulse rounded-full bg-muted", "aria-hidden": "true" }) }), _jsxs("div", { className: "flex flex-col gap-1.5 pt-1 w-full min-w-0", children: [_jsx("span", { className: "h-3.5 w-3/4 animate-pulse rounded bg-muted max-w-[200px]", "aria-hidden": "true" }), _jsx("span", { className: "h-2.5 w-1/2 animate-pulse rounded bg-muted max-w-[140px]", "aria-hidden": "true" })] })] }, key))) })] }));
199
200
  }
200
201
  function CheckIcon(props) {
201
202
  return (_jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 3, strokeLinecap: "round", strokeLinejoin: "round", className: props.className, "aria-hidden": "true", children: _jsx("path", { d: "M5 12.5l5 5L20 7" }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"multi-step-loader.js","sourceRoot":"","sources":["../../src/components/multi-step-loader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multi-step-loader.js","sourceRoot":"","sources":["../../src/components/multi-step-loader.tsx"],"names":[],"mappings":"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"}
@@ -8,7 +8,9 @@ interface BusinessDetailItem {
8
8
  interface BusinessDetailsProps {
9
9
  items: BusinessDetailItem[];
10
10
  className?: string;
11
+ /** Card heading. Defaults to "Business Details". */
12
+ title?: string;
11
13
  }
12
- export declare function BusinessDetails({ items, className }: BusinessDetailsProps): import("react/jsx-runtime").JSX.Element | null;
14
+ export declare function BusinessDetails({ items, className, title, }: BusinessDetailsProps): import("react/jsx-runtime").JSX.Element | null;
13
15
  export {};
14
16
  //# sourceMappingURL=business-details.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"business-details.d.ts","sourceRoot":"","sources":["../../src/profile/business-details.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,UAAU,kBAAkB;IAC1B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,oBAAoB;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,oBAAoB,kDA2BzE"}
1
+ {"version":3,"file":"business-details.d.ts","sourceRoot":"","sources":["../../src/profile/business-details.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,UAAU,kBAAkB;IAC1B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,oBAAoB;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,SAAS,EACT,KAA0B,GAC3B,EAAE,oBAAoB,kDA2BtB"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { cn } from "../lib/utils.js";
3
- export function BusinessDetails({ items, className }) {
3
+ export function BusinessDetails({ items, className, title = "Business Details", }) {
4
4
  if (items.length === 0)
5
5
  return null;
6
- return (_jsxs("div", { className: cn("rounded-xl border border-border/60 bg-card px-5 py-4", className), children: [_jsx("h3", { className: "mb-2.5 text-eyebrow-xs font-bold text-muted-foreground", children: "Business Details" }), _jsx("div", { className: "flex flex-col gap-2.5", children: items.map((item) => (_jsxs("div", { className: "flex items-center gap-2.5", children: [_jsx("span", { className: "shrink-0 text-sm text-muted-foreground/60", children: item.icon }), item.href ? (_jsx("a", { href: item.href, target: "_blank", rel: "noopener noreferrer", className: "truncate text-xs font-medium text-primary hover:opacity-80 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring", children: item.value })) : (_jsx("span", { className: "truncate text-xs text-foreground", children: item.value }))] }, item.label))) })] }));
6
+ return (_jsxs("div", { className: cn("rounded-xl border border-border/60 bg-card px-5 py-4", className), children: [_jsx("h3", { className: "mb-2.5 text-eyebrow-xs font-bold text-muted-foreground", children: title }), _jsx("div", { className: "flex flex-col gap-2.5", children: items.map((item) => (_jsxs("div", { className: "flex items-center gap-2.5", children: [_jsx("span", { className: "shrink-0 text-sm text-muted-foreground/60", children: item.icon }), item.href ? (_jsx("a", { href: item.href, target: "_blank", rel: "noopener noreferrer", className: "truncate text-xs font-medium text-primary hover:opacity-80 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring", children: item.value })) : (_jsx("span", { className: "truncate text-xs text-foreground", children: item.value }))] }, item.label))) })] }));
7
7
  }
8
8
  //# sourceMappingURL=business-details.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"business-details.js","sourceRoot":"","sources":["../../src/profile/business-details.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAclC,MAAM,UAAU,eAAe,CAAC,EAAE,KAAK,EAAE,SAAS,EAAwB;IACxE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,sDAAsD,EAAE,SAAS,CAAC,aACnF,aAAI,SAAS,EAAC,wDAAwD,iCAAsB,EAC5F,cAAK,SAAS,EAAC,uBAAuB,YACnC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,eAAsB,SAAS,EAAC,2BAA2B,aACzD,eAAM,SAAS,EAAC,2CAA2C,YAAE,IAAI,CAAC,IAAI,GAAQ,EAC7E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,YACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,8IAA8I,YAEvJ,IAAI,CAAC,KAAK,GACT,CACL,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,kCAAkC,YAAE,IAAI,CAAC,KAAK,GAAQ,CACvE,KAbO,IAAI,CAAC,KAAK,CAcd,CACP,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"business-details.js","sourceRoot":"","sources":["../../src/profile/business-details.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAgBlC,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,SAAS,EACT,KAAK,GAAG,kBAAkB,GACL;IACrB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,sDAAsD,EAAE,SAAS,CAAC,aACnF,aAAI,SAAS,EAAC,wDAAwD,YAAE,KAAK,GAAM,EACnF,cAAK,SAAS,EAAC,uBAAuB,YACnC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,eAAsB,SAAS,EAAC,2BAA2B,aACzD,eAAM,SAAS,EAAC,2CAA2C,YAAE,IAAI,CAAC,IAAI,GAAQ,EAC7E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,YACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,8IAA8I,YAEvJ,IAAI,CAAC,KAAK,GACT,CACL,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,kCAAkC,YAAE,IAAI,CAAC,KAAK,GAAQ,CACvE,KAbO,IAAI,CAAC,KAAK,CAcd,CACP,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -8,8 +8,10 @@ interface Certification {
8
8
  }
9
9
  interface CertificationsCardProps {
10
10
  certifications: Certification[];
11
+ /** Card heading. Defaults to "Certifications". */
12
+ title?: string;
11
13
  className?: string;
12
14
  }
13
- export declare function CertificationsCard({ certifications, className }: CertificationsCardProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function CertificationsCard({ certifications, className, title, }: CertificationsCardProps): import("react/jsx-runtime").JSX.Element;
14
16
  export {};
15
17
  //# sourceMappingURL=certifications-card.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"certifications-card.d.ts","sourceRoot":"","sources":["../../src/profile/certifications-card.tsx"],"names":[],"mappings":"AAIA,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;kCAE8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,uBAAuB;IAC/B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAoCxF"}
1
+ {"version":3,"file":"certifications-card.d.ts","sourceRoot":"","sources":["../../src/profile/certifications-card.tsx"],"names":[],"mappings":"AAIA,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;kCAE8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,uBAAuB;IAC/B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,cAAc,EACd,SAAS,EACT,KAAwB,GACzB,EAAE,uBAAuB,2CAoCzB"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { BadgeCheck, FileText } from "lucide-react";
3
3
  import { cn } from "../lib/utils.js";
4
- export function CertificationsCard({ certifications, className }) {
5
- return (_jsxs("div", { className: cn("rounded-xl border border-border/60 bg-card px-5 py-4", className), children: [_jsx("h3", { className: "mb-2.5 text-eyebrow-xs font-bold text-muted-foreground", children: "Certifications" }), certifications.length === 0 ? (_jsx("p", { className: "text-xs text-muted-foreground", children: "No certifications uploaded" })) : (_jsx("div", { className: "flex flex-col gap-2", children: certifications.map((cert) => (_jsxs("div", { className: cn("flex items-center gap-2.5 rounded-lg px-3 py-1.5", cert.verified ? "bg-primary/4" : "bg-muted/40"), children: [_jsx("div", { className: cn("flex size-5 shrink-0 items-center justify-center rounded-full", cert.verified ? "bg-primary/10 text-primary" : "bg-muted text-muted-foreground"), children: cert.verified ? (_jsx(BadgeCheck, { className: "size-3", "aria-hidden": true })) : (_jsx(FileText, { className: "size-3", "aria-hidden": true })) }), _jsx("span", { className: "truncate text-xs text-foreground", children: cert.name }), _jsx("span", { className: "sr-only", children: cert.verified ? "Verified" : "Unverified" })] }, cert.type))) }))] }));
4
+ export function CertificationsCard({ certifications, className, title = "Certifications", }) {
5
+ return (_jsxs("div", { className: cn("rounded-xl border border-border/60 bg-card px-5 py-4", className), children: [_jsx("h3", { className: "mb-2.5 text-eyebrow-xs font-bold text-muted-foreground", children: title }), certifications.length === 0 ? (_jsx("p", { className: "text-xs text-muted-foreground", children: "No certifications uploaded" })) : (_jsx("div", { className: "flex flex-col gap-2", children: certifications.map((cert) => (_jsxs("div", { className: cn("flex items-center gap-2.5 rounded-lg px-3 py-1.5", cert.verified ? "bg-primary/4" : "bg-muted/40"), children: [_jsx("div", { className: cn("flex size-5 shrink-0 items-center justify-center rounded-full", cert.verified ? "bg-primary/10 text-primary" : "bg-muted text-muted-foreground"), children: cert.verified ? (_jsx(BadgeCheck, { className: "size-3", "aria-hidden": true })) : (_jsx(FileText, { className: "size-3", "aria-hidden": true })) }), _jsx("span", { className: "truncate text-xs text-foreground", children: cert.name }), _jsx("span", { className: "sr-only", children: cert.verified ? "Verified" : "Unverified" })] }, cert.type))) }))] }));
6
6
  }
7
7
  //# sourceMappingURL=certifications-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"certifications-card.js","sourceRoot":"","sources":["../../src/profile/certifications-card.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAgBlC,MAAM,UAAU,kBAAkB,CAAC,EAAE,cAAc,EAAE,SAAS,EAA2B;IACvF,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,sDAAsD,EAAE,SAAS,CAAC,aACnF,aAAI,SAAS,EAAC,wDAAwD,+BAAoB,EACzF,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC7B,YAAG,SAAS,EAAC,+BAA+B,2CAA+B,CAC5E,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,qBAAqB,YACjC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC5B,eAEE,SAAS,EAAE,EAAE,CACX,kDAAkD,EAClD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAC/C,aAED,cACE,SAAS,EAAE,EAAE,CACX,+DAA+D,EAC/D,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,gCAAgC,CAChF,YAEA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACf,KAAC,UAAU,IAAC,SAAS,EAAC,QAAQ,wBAAe,CAC9C,CAAC,CAAC,CAAC,CACF,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,wBAAe,CAC5C,GACG,EACN,eAAM,SAAS,EAAC,kCAAkC,YAAE,IAAI,CAAC,IAAI,GAAQ,EACrE,eAAM,SAAS,EAAC,SAAS,YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,GAAQ,KAnBvE,IAAI,CAAC,IAAI,CAoBV,CACP,CAAC,GACE,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"certifications-card.js","sourceRoot":"","sources":["../../src/profile/certifications-card.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAkBlC,MAAM,UAAU,kBAAkB,CAAC,EACjC,cAAc,EACd,SAAS,EACT,KAAK,GAAG,gBAAgB,GACA;IACxB,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,sDAAsD,EAAE,SAAS,CAAC,aACnF,aAAI,SAAS,EAAC,wDAAwD,YAAE,KAAK,GAAM,EAClF,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC7B,YAAG,SAAS,EAAC,+BAA+B,2CAA+B,CAC5E,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,qBAAqB,YACjC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC5B,eAEE,SAAS,EAAE,EAAE,CACX,kDAAkD,EAClD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAC/C,aAED,cACE,SAAS,EAAE,EAAE,CACX,+DAA+D,EAC/D,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,gCAAgC,CAChF,YAEA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACf,KAAC,UAAU,IAAC,SAAS,EAAC,QAAQ,wBAAe,CAC9C,CAAC,CAAC,CAAC,CACF,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,wBAAe,CAC5C,GACG,EACN,eAAM,SAAS,EAAC,kCAAkC,YAAE,IAAI,CAAC,IAAI,GAAQ,EACrE,eAAM,SAAS,EAAC,SAAS,YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,GAAQ,KAnBvE,IAAI,CAAC,IAAI,CAoBV,CACP,CAAC,GACE,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,88 @@
1
+ import * as React from "react";
2
+ import type { PublicBrandProfileCopy, PublicBrandProfileData } from "../brand/public-brand-profile.js";
3
+ /**
4
+ * CEL-2126 phase 3: the importer's public profile, as a producer sees it.
5
+ *
6
+ * One presentational body shared by the producer dashboard's importer profile
7
+ * page and the importer dashboard's "how producers see your profile" preview,
8
+ * so the two can never drift. Data fetching, loading/error states, partnership
9
+ * CTAs and the preview banner stay with the consumer.
10
+ *
11
+ * It renders ONLY what the public projection (`GET /importers/:orgId/profile`)
12
+ * returned. Privacy (contact, key people) is enforced server-side by that
13
+ * projection; this view never adds fields and null-renders absent ones.
14
+ *
15
+ * Backend mapping: `PublicImporterProfileDetail` (cellarnode-backend-v2
16
+ * `features/importers/public-response-schemas.ts`) is passed as-is. Field names
17
+ * match 1:1 (orgName, verified, description, country, city, region, website,
18
+ * profilePictureUrl, bannerUrl, banner, createdAt, operatingCountries,
19
+ * beverageCategories, beverageSubtypes, certifications, brandProfile.profileData).
20
+ * Consumers should add a type-level structural assertion against their generated
21
+ * API type so wire drift fails typecheck.
22
+ */
23
+ export interface ImporterProfileViewData {
24
+ readonly orgName: string;
25
+ readonly verified: boolean;
26
+ readonly description?: string | null;
27
+ readonly country?: string | null;
28
+ readonly city?: string | null;
29
+ readonly region?: string | null;
30
+ readonly website?: string | null;
31
+ readonly profilePictureUrl?: string | null;
32
+ readonly bannerUrl?: string | null;
33
+ readonly banner?: {
34
+ readonly focalX: number | null;
35
+ readonly focalY: number | null;
36
+ } | null;
37
+ readonly createdAt?: string | null;
38
+ readonly operatingCountries: readonly string[];
39
+ readonly beverageCategories: readonly string[];
40
+ readonly beverageSubtypes: readonly string[];
41
+ readonly certifications: ReadonlyArray<{
42
+ readonly type: string;
43
+ readonly displayName: string | null;
44
+ }>;
45
+ readonly brandProfile?: {
46
+ readonly profileData: PublicBrandProfileData;
47
+ } | null;
48
+ }
49
+ export interface ImporterProfileViewLabels {
50
+ readonly categories?: string;
51
+ readonly markets?: string;
52
+ readonly certifications?: string;
53
+ readonly since?: string;
54
+ readonly location?: string;
55
+ readonly website?: string;
56
+ readonly operatingCountries?: string;
57
+ readonly productExpertise?: string;
58
+ readonly specializations?: string;
59
+ readonly marketReach?: string;
60
+ readonly businessDetails?: string;
61
+ readonly certificationsHeading?: string;
62
+ }
63
+ export interface ImporterProfileViewIcons {
64
+ readonly location?: React.ReactNode;
65
+ readonly website?: React.ReactNode;
66
+ readonly operatingCountries?: React.ReactNode;
67
+ }
68
+ export interface ImporterProfileViewProps {
69
+ readonly profile: ImporterProfileViewData;
70
+ /** Beverage category/subtype id to display label (from beverage-utils). */
71
+ readonly labelMap?: Record<string, string>;
72
+ readonly labels?: ImporterProfileViewLabels;
73
+ readonly brandCopy?: PublicBrandProfileCopy;
74
+ /** Hero badges (e.g. an active-partner mark). Viewer-specific, so a slot. */
75
+ readonly badges?: ReadonlyArray<{
76
+ label: string;
77
+ variant: "recommended" | "partner" | "default";
78
+ }>;
79
+ /** Replace the default icons (consumers on a different icon set). */
80
+ readonly icons?: ImporterProfileViewIcons;
81
+ /** Full-width row at the end of the bento grid (e.g. a partnership CTA). */
82
+ readonly footer?: React.ReactNode;
83
+ /** Org-name heading level. Use 2 when a page shell already owns the h1. Default 1. */
84
+ readonly headingLevel?: 1 | 2;
85
+ readonly className?: string;
86
+ }
87
+ export declare function ImporterProfileView({ profile, labelMap, labels, brandCopy, badges, icons, footer, headingLevel, className, }: ImporterProfileViewProps): import("react/jsx-runtime").JSX.Element;
88
+ //# sourceMappingURL=importer-profile-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importer-profile-view.d.ts","sourceRoot":"","sources":["../../src/profile/importer-profile-view.tsx"],"names":[],"mappings":"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"}