@revturbine/sdk 0.11.12 → 0.11.13
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/CHANGELOG.md +49 -0
- package/dist/growthbook.d.ts +1 -1
- package/dist/headless.d.ts +7548 -463
- package/dist/headless.js +2 -2
- package/dist/headless.js.map +1 -1
- package/dist/index.d.ts +7589 -466
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/optimizely.d.ts +1 -1
- package/dist/types/web-sdk/controllers.d.ts +16 -0
- package/dist/types/web-sdk/controllers.d.ts.map +1 -1
- package/dist/types/web-sdk/headless.d.ts +2 -0
- package/dist/types/web-sdk/headless.d.ts.map +1 -1
- package/dist/types/web-sdk/react/RevTurbineRoute.d.ts +45 -0
- package/dist/types/web-sdk/react/RevTurbineRoute.d.ts.map +1 -0
- package/dist/types/web-sdk/react/index.d.ts +1 -0
- package/dist/types/web-sdk/react/index.d.ts.map +1 -1
- package/dist/types/web-sdk/react/usePlacement.d.ts.map +1 -1
- package/dist/types/web-sdk/slot-route.d.ts +83 -0
- package/dist/types/web-sdk/slot-route.d.ts.map +1 -0
- package/package.json +4 -4
package/dist/optimizely.d.ts
CHANGED
|
@@ -226,11 +226,11 @@ declare const UserPlanContextSchema: z.ZodObject<{
|
|
|
226
226
|
*/
|
|
227
227
|
declare const UserBuiltinDimensionsSchema: z.ZodObject<{
|
|
228
228
|
activity_level: z.ZodOptional<z.ZodEnum<{
|
|
229
|
-
inactive: "inactive";
|
|
230
229
|
new: "new";
|
|
231
230
|
high: "high";
|
|
232
231
|
medium: "medium";
|
|
233
232
|
low: "low";
|
|
233
|
+
inactive: "inactive";
|
|
234
234
|
}>>;
|
|
235
235
|
subscription_state: z.ZodOptional<z.ZodEnum<{
|
|
236
236
|
trial: "trial";
|
|
@@ -66,6 +66,20 @@ export interface PlacementControllerOptions {
|
|
|
66
66
|
* its history unchanged.
|
|
67
67
|
*/
|
|
68
68
|
placementExposure?: PlacementExposureMode;
|
|
69
|
+
/**
|
|
70
|
+
* The app route this slot renders on, stamped onto every slot lifecycle
|
|
71
|
+
* event as `route` (BL-0207 / D-30) so ingestion-driven discovery can
|
|
72
|
+
* persist it on the discovered surface slot.
|
|
73
|
+
*
|
|
74
|
+
* A string, or a getter read at emission time (so a slot that outlives a
|
|
75
|
+
* client-side navigation reports the route it was evaluated on). Either is
|
|
76
|
+
* normalized by {@link normalizeSlotRoute}: origin, query string and
|
|
77
|
+
* fragment are dropped and identifier-like segments templated to `:id`.
|
|
78
|
+
* The React `usePlacement()` hook supplies this automatically — the nearest
|
|
79
|
+
* `<RevTurbineRoute>` pattern, else `window.location.pathname`. Omitted, a
|
|
80
|
+
* headless controller emits `route: null`.
|
|
81
|
+
*/
|
|
82
|
+
route?: string | (() => string | null | undefined);
|
|
69
83
|
}
|
|
70
84
|
/**
|
|
71
85
|
* When the presentation-writing `impression` fires relative to a placement's
|
|
@@ -235,6 +249,8 @@ export declare class PlacementController {
|
|
|
235
249
|
* fields default to `null` before a decision resolves.
|
|
236
250
|
*/
|
|
237
251
|
private slotContext;
|
|
252
|
+
/** The slot's route for this emission, normalized; `null` when unknown. Never throws. */
|
|
253
|
+
private resolveRoute;
|
|
238
254
|
/**
|
|
239
255
|
* Emit the slot resolution diagnostics (plan 144 TASK-10 / spec §10.1): always
|
|
240
256
|
* `slot_evaluated`, then exactly one terminal — `slot_filled` (visible),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../../controllers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,oCAAoC,EACpC,gCAAgC,EAChC,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,KAAK,EAGL,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EACb,UAAU,EAGX,MAAM,iBAAiB,CAAC;AAQzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../../controllers.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,6 +56,8 @@ export type { ChangeListener, PlacementControllerOptions, PlacementControllerSta
|
|
|
56
56
|
export { createRevTurbineApiClient, ApiError as RevTurbineApiError, } from './api-client';
|
|
57
57
|
export type { RevTurbineApiClient, RevTurbineApiClientConfig, paths as RevTurbineApiPaths, } from './api-client';
|
|
58
58
|
export { isServer, isBrowser } from './env';
|
|
59
|
+
export { SLOT_ROUTE_MAX_LENGTH, SLOT_ROUTE_ID_PLACEHOLDER, currentBrowserRoute, isIdentifierLikeSegment, normalizeSlotRoute, routePatternFromParams, } from './slot-route';
|
|
60
|
+
export type { SlotRouteParams } from './slot-route';
|
|
59
61
|
export { InMemoryStorage, BrowserStorage, resolvePersistentStorage, resolveSessionStorage, } from './storage';
|
|
60
62
|
export type { RevTurbineStorage } from './storage';
|
|
61
63
|
export { BrowserRuntime } from './browser-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../headless.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../headless.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The route pattern established by the nearest {@link RevTurbineRoute}, or
|
|
4
|
+
* `null` when none is mounted.
|
|
5
|
+
*/
|
|
6
|
+
declare const RevTurbineRouteContext: React.Context<string | null>;
|
|
7
|
+
/** Props for {@link RevTurbineRoute}. */
|
|
8
|
+
export interface RevTurbineRouteProps {
|
|
9
|
+
/**
|
|
10
|
+
* The framework route pattern for this subtree — e.g. Next.js
|
|
11
|
+
* `/projects/[projectId]` (see `routePatternFromParams`) or a React Router
|
|
12
|
+
* pattern `/projects/:projectId`. Normalized before use: any query string,
|
|
13
|
+
* fragment or origin is dropped. `null`/`undefined` falls back to the
|
|
14
|
+
* browser's pathname.
|
|
15
|
+
*/
|
|
16
|
+
route: string | null | undefined;
|
|
17
|
+
children?: React.ReactNode;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Declares the app route for the slots beneath it (BL-0207 / D-30). Every
|
|
21
|
+
* `usePlacement()` / `<Slot>` in the subtree stamps this route onto its slot
|
|
22
|
+
* lifecycle events (`slot_evaluated`, `slot_filled`, …), and ingestion-driven
|
|
23
|
+
* slot discovery persists it on the discovered surface slot.
|
|
24
|
+
*
|
|
25
|
+
* Optional: without it, slots report `window.location.pathname` with
|
|
26
|
+
* identifier-like segments templated to `:id`. Mount it when your router
|
|
27
|
+
* knows the route PATTERN, so `/projects/42` and `/projects/43` are one route.
|
|
28
|
+
* Renderless — adds no DOM node. The innermost boundary wins.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```tsx
|
|
32
|
+
* // Next.js App Router (app/layout.tsx child, a client component)
|
|
33
|
+
* const route = routePatternFromParams(usePathname(), useParams());
|
|
34
|
+
* return <RevTurbineRoute route={route}>{children}</RevTurbineRoute>;
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare function RevTurbineRoute({ route, children }: RevTurbineRouteProps): React.ReactElement;
|
|
38
|
+
/**
|
|
39
|
+
* The route a slot rendered here would report: the nearest
|
|
40
|
+
* {@link RevTurbineRoute} pattern, else the browser's normalized pathname,
|
|
41
|
+
* else `null` (server render). Read at call time.
|
|
42
|
+
*/
|
|
43
|
+
export declare function useSlotRoute(): string | null;
|
|
44
|
+
export { RevTurbineRouteContext };
|
|
45
|
+
//# sourceMappingURL=RevTurbineRoute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RevTurbineRoute.d.ts","sourceRoot":"","sources":["../../../../react/RevTurbineRoute.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAGzD;;;GAGG;AACH,QAAA,MAAM,sBAAsB,8BAAqC,CAAC;AAElE,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAI7F;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAG5C;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -3,6 +3,7 @@ export { useRevTurbine } from './useRevTurbine';
|
|
|
3
3
|
export { INIT_STATUS_OK, initStatusForError, remediationFor, type RevTurbineInitPhase, type RevTurbineInitStatus, } from './init-status';
|
|
4
4
|
export { InitFailureDiagnostic, type InitFailureDiagnosticProps, } from './InitFailureDiagnostic';
|
|
5
5
|
export * from './usePlacement';
|
|
6
|
+
export { RevTurbineRoute, useSlotRoute, type RevTurbineRouteProps, } from './RevTurbineRoute';
|
|
6
7
|
export * from './Placement';
|
|
7
8
|
export * from './SurfaceTypes';
|
|
8
9
|
export * from './PlacementDecisionInspector';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../react/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,KAAK,0BAA0B,GAChC,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../react/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,KAAK,0BAA0B,GAChC,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,KAAK,oBAAoB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePlacement.d.ts","sourceRoot":"","sources":["../../../../react/usePlacement.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,EACzC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"usePlacement.d.ts","sourceRoot":"","sources":["../../../../react/usePlacement.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,EACzC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAKnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,2DAA2D;IAC3D,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,yEAAyE;IACzE,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,oDAAoD;IACpD,SAAS,CAAC,EAAE,oCAAoC,CAAC;IACjD,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACnD,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAAC;IAC7C,OAAO,EAAE,0BAA0B,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IACtD,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C;;;;;OAKG;IACH,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,WAAW,EACX,MAAM,EACN,WAAoB,EACpB,SAAS,EACT,MAAM,EACN,KAAK,EACL,QAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,EAAE,mBAAmB,GAAG,kBAAkB,CAsI1C"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Slot route computation (BL-0207, ruling D-30).
|
|
3
|
+
*
|
|
4
|
+
* "The route of a slot should be calculated by react and emitted as part of
|
|
5
|
+
* its events. Slot discovery should pick this up and be able to persist that
|
|
6
|
+
* route." This module is the pure half of that: it decides what a route IS.
|
|
7
|
+
* The React layer (`usePlacement` + `<RevTurbineRoute>`) decides WHEN and
|
|
8
|
+
* from WHERE, and the controller stamps the result onto every slot lifecycle
|
|
9
|
+
* event as `route` (scaffold `slotContextBase.route`).
|
|
10
|
+
*
|
|
11
|
+
* A route is a PATH, never a URL:
|
|
12
|
+
* - no origin, no query string, no fragment — query strings are where
|
|
13
|
+
* tokens, emails and search terms live, so they never reach the wire;
|
|
14
|
+
* - the framework route PATTERN when the host supplies one
|
|
15
|
+
* (`/projects/[projectId]`, `/billing/:accountId`) — kept verbatim;
|
|
16
|
+
* - otherwise the concrete `location.pathname` with identifier-like
|
|
17
|
+
* segments (numbers, UUIDs, long hex, opaque tokens, prefixed ids,
|
|
18
|
+
* email-shaped values) templated to `:id`, so neither PII nor
|
|
19
|
+
* per-entity cardinality reaches discovery.
|
|
20
|
+
*
|
|
21
|
+
* Pure and framework-free: exported from the headless entry so a non-React
|
|
22
|
+
* host (or a Next.js app computing its own pattern) can reuse it.
|
|
23
|
+
*/
|
|
24
|
+
/** Upper bound on an emitted route — matches scaffold `SURFACE_SLOT_ROUTE_MAX_LENGTH`. */
|
|
25
|
+
export declare const SLOT_ROUTE_MAX_LENGTH = 512;
|
|
26
|
+
/** The placeholder an identifier-like path segment is templated to. */
|
|
27
|
+
export declare const SLOT_ROUTE_ID_PLACEHOLDER = ":id";
|
|
28
|
+
/**
|
|
29
|
+
* `true` when a single path segment looks like an identifier or personal data
|
|
30
|
+
* rather than a stable route name. Exported for tests and custom resolvers.
|
|
31
|
+
*/
|
|
32
|
+
export declare function isIdentifierLikeSegment(segment: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Normalize a path, URL or route pattern into a slot route.
|
|
35
|
+
*
|
|
36
|
+
* Strips any origin, query string and fragment; collapses duplicate slashes
|
|
37
|
+
* and a trailing slash; keeps route-pattern segments (`[id]`, `:id`)
|
|
38
|
+
* verbatim; templates identifier-like segments to `:id`; bounds the result to
|
|
39
|
+
* {@link SLOT_ROUTE_MAX_LENGTH}. Returns `null` for empty or non-string input.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* normalizeSlotRoute('https://app.example.com/accounts/4821/billing?tab=x#top');
|
|
44
|
+
* // → '/accounts/:id/billing'
|
|
45
|
+
* normalizeSlotRoute('/projects/[projectId]');
|
|
46
|
+
* // → '/projects/[projectId]'
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare function normalizeSlotRoute(input: string | null | undefined): string | null;
|
|
50
|
+
/**
|
|
51
|
+
* Framework route params, as Next.js `useParams()` returns them (a catch-all
|
|
52
|
+
* param is an array of segments).
|
|
53
|
+
*/
|
|
54
|
+
export type SlotRouteParams = Readonly<Record<string, string | readonly string[] | undefined>>;
|
|
55
|
+
/**
|
|
56
|
+
* Rebuild the framework route PATTERN from a concrete pathname and the
|
|
57
|
+
* framework's route params — the Next.js App Router recipe, without the SDK
|
|
58
|
+
* importing `next/navigation`:
|
|
59
|
+
*
|
|
60
|
+
* ```tsx
|
|
61
|
+
* 'use client';
|
|
62
|
+
* import { useParams, usePathname } from 'next/navigation';
|
|
63
|
+
* import { RevTurbineRoute, routePatternFromParams } from '@revturbine/sdk';
|
|
64
|
+
*
|
|
65
|
+
* export function RouteBoundary({ children }: { children: React.ReactNode }) {
|
|
66
|
+
* const route = routePatternFromParams(usePathname(), useParams());
|
|
67
|
+
* return <RevTurbineRoute route={route}>{children}</RevTurbineRoute>;
|
|
68
|
+
* }
|
|
69
|
+
* ```
|
|
70
|
+
*
|
|
71
|
+
* `/projects/p_42/settings` with `{ projectId: 'p_42' }` becomes
|
|
72
|
+
* `/projects/[projectId]/settings`; a catch-all `{ slug: ['a', 'b'] }`
|
|
73
|
+
* becomes `[...slug]`. The result is then normalized like any other route,
|
|
74
|
+
* so a segment the params did not name is still templated if it looks like
|
|
75
|
+
* an identifier.
|
|
76
|
+
*/
|
|
77
|
+
export declare function routePatternFromParams(pathname: string | null | undefined, params: SlotRouteParams | null | undefined): string | null;
|
|
78
|
+
/**
|
|
79
|
+
* The browser's current route — `window.location.pathname`, normalized.
|
|
80
|
+
* `null` outside a browser (SSR, server runtimes, workers without `location`).
|
|
81
|
+
*/
|
|
82
|
+
export declare function currentBrowserRoute(): string | null;
|
|
83
|
+
//# sourceMappingURL=slot-route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slot-route.d.ts","sourceRoot":"","sources":["../../../slot-route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,uEAAuE;AACvE,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAoB/C;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAUhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAmBlF;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;AAE/F;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,MAAM,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GACzC,MAAM,GAAG,IAAI,CAuBf;AAaD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAGnD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@revturbine/sdk",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.13",
|
|
4
4
|
"description": "RevTurbine customer-facing SDK — placement decisioning, entitlement checks, and usage tracking.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "pnpm@11.12.0",
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@growthbook/growthbook": "^1.7.0",
|
|
58
58
|
"@optimizely/optimizely-sdk": "^6.5.0",
|
|
59
|
-
"@revt-eng/core": "0.1.
|
|
60
|
-
"@revt-eng/schema": "0.1.
|
|
61
|
-
"@revt-eng/schema-external": "0.1.
|
|
59
|
+
"@revt-eng/core": "0.1.366",
|
|
60
|
+
"@revt-eng/schema": "0.1.366",
|
|
61
|
+
"@revt-eng/schema-external": "0.1.366",
|
|
62
62
|
"@types/react": "^19.2.17",
|
|
63
63
|
"@types/react-dom": "^19.2.3",
|
|
64
64
|
"openapi-fetch": "^0.17.0",
|