@getuserfeedback/protocol 0.5.1 → 0.5.2
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.ts
CHANGED
|
@@ -2,6 +2,7 @@ export { type AppEventPayload, type AppEventTrackInput, appEventBaseSchema, appE
|
|
|
2
2
|
export { type ClientMeta, clientMetaSchema, } from "./client-meta.js";
|
|
3
3
|
export { DEFAULT_AUTO_DETECT_COLOR_SCHEME_ATTRS } from "./defaults.js";
|
|
4
4
|
export { buildIdentityTypeGuidanceMessage, getIdentityTypeSuggestion, IDENTITY_TYPE_VALUES, type IdentityTypeValue, isIdentityTypeValue, } from "./identity-type.js";
|
|
5
|
+
export { type RuntimeEndpoints, resolveApiBaseUrl, resolveCoreUrl, resolveTrpcBaseUrl, runtimeEndpointsSchema, } from "./runtime-endpoints.js";
|
|
5
6
|
export { getScopeMeta, isScope, listScopes, SCOPE_IDS, type Scope, scopeIdSchema, } from "./scopes.js";
|
|
6
7
|
export { type FlowVersionResolution, flowVersionResolutionSchema, type ThemeVersionResolution, themeVersionResolutionSchema, } from "./version-resolution.js";
|
|
7
8
|
export { type PublicCommandPayload, parseConfigureOptions, parseInitOptions, parsePublicCommand, publicCommandPayloadSchema, } from "./widget-commands.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,KAAK,UAAU,EACf,gBAAgB,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sCAAsC,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACN,gCAAgC,EAChC,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,mBAAmB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACN,YAAY,EACZ,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,KAAK,EACV,aAAa,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,4BAA4B,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,0BAA0B,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,WAAW,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,KAAK,UAAU,EACf,gBAAgB,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sCAAsC,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACN,gCAAgC,EAChC,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,mBAAmB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACN,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,sBAAsB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,YAAY,EACZ,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,KAAK,EACV,aAAa,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,4BAA4B,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,0BAA0B,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,WAAW,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@ export { appEventBaseSchema, appEventContextSchema, appEventFlowDismissedSchema,
|
|
|
2
2
|
export { clientMetaSchema, } from "./client-meta.js";
|
|
3
3
|
export { DEFAULT_AUTO_DETECT_COLOR_SCHEME_ATTRS } from "./defaults.js";
|
|
4
4
|
export { buildIdentityTypeGuidanceMessage, getIdentityTypeSuggestion, IDENTITY_TYPE_VALUES, isIdentityTypeValue, } from "./identity-type.js";
|
|
5
|
+
export { resolveApiBaseUrl, resolveCoreUrl, resolveTrpcBaseUrl, runtimeEndpointsSchema, } from "./runtime-endpoints.js";
|
|
5
6
|
export { getScopeMeta, isScope, listScopes, SCOPE_IDS, scopeIdSchema, } from "./scopes.js";
|
|
6
7
|
export { flowVersionResolutionSchema, themeVersionResolutionSchema, } from "./version-resolution.js";
|
|
7
8
|
export { parseConfigureOptions, parseInitOptions, parsePublicCommand, publicCommandPayloadSchema, } from "./widget-commands.js";
|
|
@@ -4,4 +4,7 @@ export declare const runtimeEndpointsSchema: z.ZodObject<{
|
|
|
4
4
|
coreUrl: z.ZodOptional<z.ZodString>;
|
|
5
5
|
}, z.core.$strict>;
|
|
6
6
|
export type RuntimeEndpoints = z.output<typeof runtimeEndpointsSchema>;
|
|
7
|
+
export declare const resolveCoreUrl: (runtimeEndpoints: RuntimeEndpoints | undefined) => URL | null;
|
|
8
|
+
export declare const resolveApiBaseUrl: (runtimeEndpoints: RuntimeEndpoints | undefined) => URL | null;
|
|
9
|
+
export declare const resolveTrpcBaseUrl: (runtimeEndpoints: RuntimeEndpoints | undefined) => URL | null;
|
|
7
10
|
//# sourceMappingURL=runtime-endpoints.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-endpoints.d.ts","sourceRoot":"","sources":["../src/runtime-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,eAAO,MAAM,sBAAsB;;;kBAKzB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"runtime-endpoints.d.ts","sourceRoot":"","sources":["../src/runtime-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,eAAO,MAAM,sBAAsB;;;kBAKzB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAqBvE,eAAO,MAAM,cAAc,GAC1B,kBAAkB,gBAAgB,GAAG,SAAS,KAC5C,GAAG,GAAG,IAER,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC7B,kBAAkB,gBAAgB,GAAG,SAAS,KAC5C,GAAG,GAAG,IAaR,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC9B,kBAAkB,gBAAgB,GAAG,SAAS,KAC5C,GAAG,GAAG,IAaR,CAAC"}
|
|
@@ -6,3 +6,52 @@ export const runtimeEndpointsSchema = z
|
|
|
6
6
|
coreUrl: z.optional(absoluteUrlSchema),
|
|
7
7
|
})
|
|
8
8
|
.strict();
|
|
9
|
+
const parseAbsoluteUrl = (value) => {
|
|
10
|
+
if (!value) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
return new URL(value);
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
const normalizeOrigin = (value) => {
|
|
21
|
+
const parsed = parseAbsoluteUrl(value);
|
|
22
|
+
if (!parsed) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
return parsed.origin;
|
|
26
|
+
};
|
|
27
|
+
export const resolveCoreUrl = (runtimeEndpoints) => {
|
|
28
|
+
return parseAbsoluteUrl(runtimeEndpoints?.coreUrl);
|
|
29
|
+
};
|
|
30
|
+
export const resolveApiBaseUrl = (runtimeEndpoints) => {
|
|
31
|
+
const apiUrl = runtimeEndpoints?.apiUrl;
|
|
32
|
+
const parsed = parseAbsoluteUrl(apiUrl);
|
|
33
|
+
if (!parsed) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
if (!parsed.pathname || parsed.pathname === "/") {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
if (!parsed.pathname.endsWith("/")) {
|
|
40
|
+
parsed.pathname = `${parsed.pathname}/`;
|
|
41
|
+
}
|
|
42
|
+
return parsed;
|
|
43
|
+
};
|
|
44
|
+
export const resolveTrpcBaseUrl = (runtimeEndpoints) => {
|
|
45
|
+
const apiBaseUrl = resolveApiBaseUrl(runtimeEndpoints);
|
|
46
|
+
if (!apiBaseUrl) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
const normalizedApiPath = apiBaseUrl.pathname.endsWith("/")
|
|
50
|
+
? apiBaseUrl.pathname.slice(0, -1)
|
|
51
|
+
: apiBaseUrl.pathname;
|
|
52
|
+
if (!normalizedApiPath.endsWith("/v1")) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
const trpcPath = normalizedApiPath.slice(0, -"/v1".length) || "/";
|
|
56
|
+
return new URL(trpcPath, `${normalizeOrigin(apiBaseUrl.toString()) ?? ""}/`);
|
|
57
|
+
};
|