@sunboard/react 0.4.0 → 0.6.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.
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ReactNode } from "react";
2
- import { RuntimeBootstrapRequest, RuntimeBootstrapResponse, RuntimeExperience, RuntimeProgress, RuntimeTrackRequest, RuntimeTrackResponse, SunboardRuntimeApiError, SunboardRuntimeClient, SunboardRuntimeClientOptions } from "@sunboard/core/runtime-api";
3
- import * as react_jsx_runtime1 from "react/jsx-runtime";
4
- import { NormalizedSunboardSpec, SunboardHotspot, SunboardStep, SunboardTourStep, SurveyQuestionType, TrackEventName } from "@sunboard/core";
2
+ import { RuntimeBootstrapRequest, RuntimeBootstrapResponse, RuntimeExperience, RuntimeProgress, RuntimeTrackRequest, RuntimeTrackResponse, SunboardRuntimeApiError, SunboardRuntimeClient, SunboardRuntimeClientOptions, TooltipDismissVia } from "@sunboard/core/runtime-api";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
+ import { NormalizedSunboardSpec, SunboardHotspot, SunboardPlacement, SunboardStep, SunboardTooltip, SunboardTourStep, SurveyQuestionType, TrackEventName } from "@sunboard/core";
5
5
 
6
6
  //#region src/adapters/navigation.d.ts
7
7
  type NavigateCallback = (url: string) => void | Promise<void>;
@@ -52,6 +52,23 @@ type TourResult = {
52
52
  ok: false;
53
53
  reason: "not-ready" | "missing-user" | "missing-tour";
54
54
  };
55
+ type TooltipResult = {
56
+ ok: true;
57
+ } | {
58
+ ok: false;
59
+ reason: "not-ready" | "missing-user" | "missing-tooltip";
60
+ };
61
+ type VisibleSunboardTooltip = {
62
+ key: string;
63
+ tooltip: SunboardTooltip;
64
+ /**
65
+ * True when the user asked for this tooltip (a checklist step's
66
+ * `openTooltip` action), false when it is showing proactively. A requested
67
+ * tooltip shows even if it was dismissed before — the user explicitly asked
68
+ * to be shown where the action happens.
69
+ */
70
+ requested: boolean;
71
+ };
55
72
  type ActiveSunboardTour = {
56
73
  key: string;
57
74
  name: string;
@@ -88,11 +105,32 @@ type SunboardContextValue = {
88
105
  }) => Promise<TourResult>;
89
106
  advanceTour: () => Promise<TourResult>;
90
107
  navigateToStep: (step: SunboardStep) => Promise<void>;
91
- startChecklistStep: (step: SunboardStep) => Promise<TourResult | void>;
108
+ startChecklistStep: (step: SunboardStep) => Promise<TourResult | TooltipResult | void>;
92
109
  visibleHotspots: Array<{
93
110
  key: string;
94
111
  hotspot: SunboardHotspot;
95
112
  }>;
113
+ dismissedTooltipKeys: ReadonlySet<string>;
114
+ /**
115
+ * Tooltips that qualify for the current route, requested-first. Renderers
116
+ * show ONE at a time: the first entry whose target resolves.
117
+ */
118
+ visibleTooltips: VisibleSunboardTooltip[];
119
+ /**
120
+ * Open a tooltip on demand (the checklist's openTooltip action). Navigates
121
+ * are the caller's job; this just marks the tooltip requested so it renders
122
+ * once its route matches and its target is present, dismissal or not.
123
+ */
124
+ openTooltip: (tooltipKey: string) => Promise<TooltipResult>;
125
+ /**
126
+ * Never show this tooltip again. `via: "close"` is the negative signal (the
127
+ * default); `via: "action"` records that the user took the tooltip's action.
128
+ */
129
+ dismissTooltip: (tooltipKey: string, options?: {
130
+ via?: TooltipDismissVia;
131
+ }) => Promise<TooltipResult>;
132
+ /** Report that a tooltip actually reached the user's eyes (deduped per session). */
133
+ markTooltipSeen: (tooltipKey: string) => void;
96
134
  };
97
135
  //#endregion
98
136
  //#region src/components/SunboardProvider.d.ts
@@ -112,9 +150,10 @@ type SunboardProviderProps = {
112
150
  /**
113
151
  * Analytics-provider ids for joining Sunboard's funnel data to your product
114
152
  * analytics. Omit it and installed providers (PostHog) are detected
115
- * automatically on each bootstrap; pass explicit ids to override detection;
116
- * pass `false` to disable capture entirely. Captured ids are inert until the
117
- * provider is connected to the project in Sunboard.
153
+ * automatically, on each bootstrap and for a few seconds after, so a
154
+ * provider that initializes late is still captured. Pass explicit ids to
155
+ * override detection; pass `false` to disable capture entirely. Captured ids
156
+ * are inert until the provider is connected to the project in Sunboard.
118
157
  */
119
158
  identities?: IdentitiesProp;
120
159
  onTrack?: (eventName: TrackEventName, properties?: TrackProperties) => void | Promise<void>;
@@ -131,21 +170,31 @@ declare function SunboardProvider({
131
170
  identities: identitiesProp,
132
171
  onTrack,
133
172
  children
134
- }: SunboardProviderProps): react_jsx_runtime1.JSX.Element;
173
+ }: SunboardProviderProps): react_jsx_runtime0.JSX.Element;
135
174
  //#endregion
136
175
  //#region src/components/SunboardHotspots.d.ts
137
- declare function SunboardHotspots(): react_jsx_runtime1.JSX.Element;
176
+ declare function SunboardHotspots(): react_jsx_runtime0.JSX.Element;
177
+ //#endregion
178
+ //#region src/components/SunboardTooltips.d.ts
179
+ /**
180
+ * Renders at most one tooltip: the first visible candidate whose target
181
+ * resolves. A candidate whose selector never appears is skipped for the rest
182
+ * of the session (without recording a dismissal — the user rejected nothing),
183
+ * so one stale selector can't block the tooltips behind it.
184
+ */
185
+ declare function SunboardTooltips(): react_jsx_runtime0.JSX.Element | null;
138
186
  //#endregion
139
187
  //#region src/components/SunboardTour.d.ts
140
- declare function SunboardTour(): react_jsx_runtime1.JSX.Element | null;
188
+ declare function SunboardTour(): react_jsx_runtime0.JSX.Element | null;
141
189
  //#endregion
142
190
  //#region src/components/Sunboard.d.ts
143
- declare function SunboardChecklist(): react_jsx_runtime1.JSX.Element | null;
144
- declare function SunboardSurvey(): react_jsx_runtime1.JSX.Element | null;
191
+ declare function SunboardChecklist(): react_jsx_runtime0.JSX.Element | null;
192
+ declare function SunboardSurvey(): react_jsx_runtime0.JSX.Element | null;
145
193
  declare const Sunboard: typeof SunboardChecklist & {
146
194
  Checklist: typeof SunboardChecklist;
147
195
  Survey: typeof SunboardSurvey;
148
196
  Hotspots: typeof SunboardHotspots;
197
+ Tooltips: typeof SunboardTooltips;
149
198
  Tour: typeof SunboardTour;
150
199
  };
151
200
  //#endregion
@@ -233,5 +282,38 @@ type UseSurveyResult = {
233
282
  };
234
283
  declare function useSurvey(): UseSurveyResult;
235
284
  //#endregion
236
- export { type ChecklistViewStep, type RuntimeBootstrapRequest, type RuntimeBootstrapResponse, type RuntimeExperience, type RuntimeProgress, type RuntimeTrackRequest, type RuntimeTrackResponse, Sunboard, SunboardChecklist, type SunboardContextValue, SunboardHotspots, SunboardProvider, type SunboardProviderProps, SunboardRuntimeApiError, SunboardRuntimeClient, type SunboardRuntimeClientOptions, SunboardSurvey, SunboardTour, type SunboardUser, type SurveyResult, type SurveyViewOption, type SurveyViewQuestion, type SurveyViewStep, type TourResult, type TrackProperties, type TrackResult, type UseChecklistResult, type UseSurveyResult, useChecklist, useSunboard, useSurvey };
285
+ //#region src/hooks/useTooltips.d.ts
286
+ type TooltipView = {
287
+ key: string;
288
+ title: string;
289
+ body?: string;
290
+ /** CSS selector of the element the tooltip points at. */
291
+ target: string;
292
+ placement: SunboardPlacement;
293
+ /** True when a tour action is attached; `engage` starts it. */
294
+ hasAction: boolean;
295
+ actionLabel?: string;
296
+ /** True when the user asked for this tooltip via a checklist step. */
297
+ requested: boolean;
298
+ };
299
+ type UseTooltipsResult = {
300
+ /**
301
+ * Tooltips that qualify for the current route (undismissed, or explicitly
302
+ * requested). Render ONE at a time — the first whose target you can anchor.
303
+ */
304
+ tooltips: TooltipView[];
305
+ /** Report that a tooltip is actually on screen (deduped per session). */
306
+ markSeen: (key: string) => void;
307
+ /** Close without acting — the tooltip never shows again. */
308
+ dismiss: (key: string) => void;
309
+ /** Take the tooltip's action: starts its tour and retires the tooltip. */
310
+ engage: (key: string) => void;
311
+ };
312
+ /**
313
+ * Headless counterpart of `<SunboardTooltips>`: the same visibility, seen,
314
+ * dismissal, and engagement semantics with rendering left to the host.
315
+ */
316
+ declare function useTooltips(): UseTooltipsResult;
317
+ //#endregion
318
+ export { type ChecklistViewStep, type RuntimeBootstrapRequest, type RuntimeBootstrapResponse, type RuntimeExperience, type RuntimeProgress, type RuntimeTrackRequest, type RuntimeTrackResponse, Sunboard, SunboardChecklist, type SunboardContextValue, SunboardHotspots, SunboardProvider, type SunboardProviderProps, SunboardRuntimeApiError, SunboardRuntimeClient, type SunboardRuntimeClientOptions, SunboardSurvey, SunboardTooltips, SunboardTour, type SunboardUser, type SurveyResult, type SurveyViewOption, type SurveyViewQuestion, type SurveyViewStep, type TooltipResult, type TooltipView, type TourResult, type TrackProperties, type TrackResult, type UseChecklistResult, type UseSurveyResult, type UseTooltipsResult, type VisibleSunboardTooltip, useChecklist, useSunboard, useSurvey, useTooltips };
237
319
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/adapters/navigation.ts","../src/lib/detect-identities.ts","../src/hooks/sunboard-context.ts","../src/components/SunboardProvider.tsx","../src/components/SunboardHotspots.tsx","../src/components/SunboardTour.tsx","../src/components/Sunboard.tsx","../src/hooks/useSunboard.ts","../src/hooks/useChecklist.ts","../src/hooks/useSurvey.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/adapters/navigation.ts","../src/lib/detect-identities.ts","../src/hooks/sunboard-context.ts","../src/components/SunboardProvider.tsx","../src/components/SunboardHotspots.tsx","../src/components/SunboardTooltips.tsx","../src/components/SunboardTour.tsx","../src/components/Sunboard.tsx","../src/hooks/useSunboard.ts","../src/hooks/useChecklist.ts","../src/hooks/useSurvey.ts","../src/hooks/useTooltips.ts"],"sourcesContent":[],"mappings":"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"}