@advplyr/partner-hub-embedded 0.1.0 → 0.2.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/client.d.ts +2 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +12 -5
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/react.d.ts +5 -2
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +74 -8
- package/dist/react.js.map +1 -1
- package/dist/types.d.ts +33 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +12 -7
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { CancelResult, ListPlansResult, PartnerHubEmbeddedClientOptions, SubscribeResult } from "./types.js";
|
|
1
|
+
import type { CancelResult, GetSubscriptionResult, ListPlansResult, PartnerHubEmbeddedClientOptions, SubscribeResult } from "./types.js";
|
|
2
2
|
export declare function createPartnerHubEmbeddedClient(options: PartnerHubEmbeddedClientOptions): {
|
|
3
|
+
getSubscription(): Promise<GetSubscriptionResult>;
|
|
3
4
|
listPlans(): Promise<ListPlansResult>;
|
|
4
5
|
subscribe(input: {
|
|
5
6
|
planHandle: string;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,+BAA+B,EAC/B,eAAe,EAChB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,+BAA+B,EAC/B,eAAe,EAChB,MAAM,YAAY,CAAC;AAsCpB,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,+BAA+B;;;qBAUlE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE;mBAOzB;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE;EAOhD;AAED,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
|
package/dist/client.js
CHANGED
|
@@ -3,13 +3,17 @@ async function embeddedFetch(options, path, init) {
|
|
|
3
3
|
const fetchImpl = options.fetch ?? fetch;
|
|
4
4
|
const base = `${options.baseUrl.replace(/\/$/, "")}/api/embedded/legacy-billing`;
|
|
5
5
|
const token = await options.getSessionToken();
|
|
6
|
+
const method = init?.method?.toUpperCase() ?? "GET";
|
|
7
|
+
const headers = {
|
|
8
|
+
Authorization: `Bearer ${token}`,
|
|
9
|
+
...init?.headers,
|
|
10
|
+
};
|
|
11
|
+
if (method !== "GET" && method !== "HEAD") {
|
|
12
|
+
headers["Content-Type"] = "application/json";
|
|
13
|
+
}
|
|
6
14
|
const response = await fetchImpl(`${base}${path}`, {
|
|
7
15
|
...init,
|
|
8
|
-
headers
|
|
9
|
-
Authorization: `Bearer ${token}`,
|
|
10
|
-
"Content-Type": "application/json",
|
|
11
|
-
...init?.headers,
|
|
12
|
-
},
|
|
16
|
+
headers,
|
|
13
17
|
});
|
|
14
18
|
const body = (await response.json().catch(() => ({})));
|
|
15
19
|
if (!response.ok) {
|
|
@@ -19,6 +23,9 @@ async function embeddedFetch(options, path, init) {
|
|
|
19
23
|
}
|
|
20
24
|
export function createPartnerHubEmbeddedClient(options) {
|
|
21
25
|
return {
|
|
26
|
+
getSubscription() {
|
|
27
|
+
return embeddedFetch(options, "/subscription");
|
|
28
|
+
},
|
|
22
29
|
listPlans() {
|
|
23
30
|
return embeddedFetch(options, "/plans");
|
|
24
31
|
},
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,KAAK,UAAU,aAAa,CAC1B,OAAwC,EACxC,IAAY,EACZ,IAAkB;IAElB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;IACzC,MAAM,IAAI,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC;IACjF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IACpD,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,GAAI,IAAI,EAAE,OAA8C;KACzD,CAAC;IACF,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1C,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE;QACjD,GAAG,IAAI;QACP,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAuB,CAAC;IAE7E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,uBAAuB,CAC/B,IAAI,CAAC,KAAK,IAAI,mBAAmB,QAAQ,CAAC,MAAM,GAAG,EACnD,QAAQ,CAAC,MAAM,CAChB,CAAC;IACJ,CAAC;IAED,OAAO,IAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,OAAwC;IACrF,OAAO;QACL,eAAe;YACb,OAAO,aAAa,CAAwB,OAAO,EAAE,eAAe,CAAC,CAAC;QACxE,CAAC;QAED,SAAS;YACP,OAAO,aAAa,CAAkB,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QAED,SAAS,CAAC,KAA6B;YACrC,OAAO,aAAa,CAAkB,OAAO,EAAE,YAAY,EAAE;gBAC3D,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,QAAyC,EAAE;YAChD,OAAO,aAAa,CAAe,OAAO,EAAE,SAAS,EAAE;gBACrD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,KAAK,EAAE,CAAC;aAC9E,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { createPartnerHubEmbeddedClient, type PartnerHubEmbeddedClient, } from "./client.js";
|
|
2
|
-
export { PartnerHubEmbeddedError, type CancelResult, type CatalogPlan, type ListPlansResult, type PartnerHubEmbeddedClientOptions, type SubscribeResult, } from "./types.js";
|
|
2
|
+
export { PartnerHubEmbeddedError, type CancelResult, type CatalogPlan, type PlanFeature, type EmbeddedSubscription, type FeatureType, type FeatureValue, type GetSubscriptionResult, type ListPlansResult, type PartnerHubEmbeddedClientOptions, type ResolvedFeature, type SubscribeResult, } from "./types.js";
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
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,EACL,8BAA8B,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,+BAA+B,EACpC,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,+BAA+B,EACpC,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,GAE/B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,GAE/B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,GAYxB,MAAM,YAAY,CAAC"}
|
package/dist/react.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import type { CancelResult,
|
|
1
|
+
import type { CancelResult, CatalogPlan, PlanFeature, EmbeddedSubscription, PartnerHubEmbeddedClientOptions, SubscribeResult } from "./types.js";
|
|
2
2
|
export type UsePartnerHubOptions = PartnerHubEmbeddedClientOptions;
|
|
3
3
|
export interface UsePartnerHubResult {
|
|
4
|
+
subscription: EmbeddedSubscription | null;
|
|
5
|
+
features: PlanFeature[];
|
|
6
|
+
plans: CatalogPlan[];
|
|
4
7
|
loading: boolean;
|
|
5
8
|
error: string | null;
|
|
6
|
-
|
|
9
|
+
refetch: () => Promise<void>;
|
|
7
10
|
subscribe: (input: {
|
|
8
11
|
planHandle: string;
|
|
9
12
|
}) => Promise<SubscribeResult>;
|
package/dist/react.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,+BAA+B,EAC/B,eAAe,EAChB,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,oBAAoB,GAAG,+BAA+B,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,mBAAmB,CAoHhF"}
|
package/dist/react.js
CHANGED
|
@@ -1,15 +1,38 @@
|
|
|
1
|
-
import { useCallback, useMemo, useState } from "react";
|
|
1
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
2
2
|
import { createPartnerHubEmbeddedClient } from "./client.js";
|
|
3
3
|
import { PartnerHubEmbeddedError } from "./types.js";
|
|
4
4
|
export function usePartnerHub(options) {
|
|
5
|
-
const
|
|
5
|
+
const getSessionTokenRef = useRef(options.getSessionToken);
|
|
6
|
+
getSessionTokenRef.current = options.getSessionToken;
|
|
7
|
+
const fetchRef = useRef(options.fetch);
|
|
8
|
+
fetchRef.current = options.fetch;
|
|
9
|
+
const client = useMemo(() => createPartnerHubEmbeddedClient({
|
|
10
|
+
baseUrl: options.baseUrl,
|
|
11
|
+
getSessionToken: () => getSessionTokenRef.current(),
|
|
12
|
+
fetch: (input, init) => {
|
|
13
|
+
const fetchImpl = fetchRef.current ?? fetch;
|
|
14
|
+
return fetchImpl(input, init);
|
|
15
|
+
},
|
|
16
|
+
}), [options.baseUrl]);
|
|
17
|
+
const [subscription, setSubscription] = useState(null);
|
|
18
|
+
const [features, setFeatures] = useState([]);
|
|
19
|
+
const [plans, setPlans] = useState([]);
|
|
6
20
|
const [loading, setLoading] = useState(false);
|
|
7
21
|
const [error, setError] = useState(null);
|
|
8
|
-
const
|
|
22
|
+
const refetch = useCallback(async () => {
|
|
23
|
+
if (!options.baseUrl) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
9
26
|
setLoading(true);
|
|
10
27
|
setError(null);
|
|
11
28
|
try {
|
|
12
|
-
|
|
29
|
+
const [subscriptionResult, plansResult] = await Promise.all([
|
|
30
|
+
client.getSubscription(),
|
|
31
|
+
client.listPlans(),
|
|
32
|
+
]);
|
|
33
|
+
setSubscription(subscriptionResult.subscription);
|
|
34
|
+
setFeatures(subscriptionResult.features);
|
|
35
|
+
setPlans(plansResult.plans);
|
|
13
36
|
}
|
|
14
37
|
catch (err) {
|
|
15
38
|
const message = err instanceof PartnerHubEmbeddedError
|
|
@@ -23,13 +46,56 @@ export function usePartnerHub(options) {
|
|
|
23
46
|
finally {
|
|
24
47
|
setLoading(false);
|
|
25
48
|
}
|
|
26
|
-
}, []);
|
|
49
|
+
}, [client, options.baseUrl]);
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
if (!options.baseUrl) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
void refetch().catch(() => {
|
|
55
|
+
// Errors are captured in state by refetch.
|
|
56
|
+
});
|
|
57
|
+
}, [options.baseUrl, refetch]);
|
|
58
|
+
const subscribe = useCallback(async (input) => {
|
|
59
|
+
try {
|
|
60
|
+
const result = await client.subscribe(input);
|
|
61
|
+
await refetch();
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
const message = err instanceof PartnerHubEmbeddedError
|
|
66
|
+
? err.message
|
|
67
|
+
: err instanceof Error
|
|
68
|
+
? err.message
|
|
69
|
+
: "Partner Hub request failed";
|
|
70
|
+
setError(message);
|
|
71
|
+
throw err;
|
|
72
|
+
}
|
|
73
|
+
}, [client, refetch]);
|
|
74
|
+
const cancel = useCallback(async (input) => {
|
|
75
|
+
try {
|
|
76
|
+
const result = await client.cancel(input ?? {});
|
|
77
|
+
await refetch();
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
catch (err) {
|
|
81
|
+
const message = err instanceof PartnerHubEmbeddedError
|
|
82
|
+
? err.message
|
|
83
|
+
: err instanceof Error
|
|
84
|
+
? err.message
|
|
85
|
+
: "Partner Hub request failed";
|
|
86
|
+
setError(message);
|
|
87
|
+
throw err;
|
|
88
|
+
}
|
|
89
|
+
}, [client, refetch]);
|
|
27
90
|
return {
|
|
91
|
+
subscription,
|
|
92
|
+
features,
|
|
93
|
+
plans,
|
|
28
94
|
loading,
|
|
29
95
|
error,
|
|
30
|
-
|
|
31
|
-
subscribe
|
|
32
|
-
cancel
|
|
96
|
+
refetch,
|
|
97
|
+
subscribe,
|
|
98
|
+
cancel,
|
|
33
99
|
};
|
|
34
100
|
}
|
|
35
101
|
//# sourceMappingURL=react.js.map
|
package/dist/react.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
export type FeatureType = "boolean" | "number" | "string";
|
|
2
|
+
export type FeatureValue = boolean | number | string;
|
|
3
|
+
export interface PlanFeature {
|
|
4
|
+
key: string;
|
|
5
|
+
name: string;
|
|
6
|
+
type: FeatureType;
|
|
7
|
+
value: FeatureValue;
|
|
8
|
+
}
|
|
9
|
+
export interface EmbeddedSubscription {
|
|
10
|
+
planHandle: string | null;
|
|
11
|
+
planName: string | null;
|
|
12
|
+
billingPeriod: string | null;
|
|
13
|
+
status: string | null;
|
|
14
|
+
trialEndsAt: string | null;
|
|
15
|
+
cancelAtEndOfCycle: boolean;
|
|
16
|
+
cancelEffectiveAt: string | null;
|
|
17
|
+
currentPeriodStart: string | null;
|
|
18
|
+
currentPeriodEnd: string | null;
|
|
19
|
+
currency: string | null;
|
|
20
|
+
recurringAmountCents: number | null;
|
|
21
|
+
}
|
|
22
|
+
export interface GetSubscriptionResult {
|
|
23
|
+
subscription: EmbeddedSubscription | null;
|
|
24
|
+
features: PlanFeature[];
|
|
25
|
+
}
|
|
1
26
|
export interface CatalogPlan {
|
|
2
27
|
id: string;
|
|
3
28
|
handle: string;
|
|
@@ -10,6 +35,7 @@ export interface CatalogPlan {
|
|
|
10
35
|
usageCapCents: number | null;
|
|
11
36
|
usageTerms: string | null;
|
|
12
37
|
developerStoreOnly: boolean;
|
|
38
|
+
features: PlanFeature[];
|
|
13
39
|
}
|
|
14
40
|
export interface PartnerHubEmbeddedClientOptions {
|
|
15
41
|
baseUrl: string;
|
|
@@ -22,12 +48,18 @@ export interface ListPlansResult {
|
|
|
22
48
|
export interface CancelResult {
|
|
23
49
|
[key: string]: unknown;
|
|
24
50
|
}
|
|
51
|
+
export interface ResolvedFeature {
|
|
52
|
+
key: string;
|
|
53
|
+
name: string;
|
|
54
|
+
type: FeatureType;
|
|
55
|
+
value: FeatureValue;
|
|
56
|
+
}
|
|
25
57
|
export interface SubscribeResult {
|
|
26
58
|
subscriptionId: string;
|
|
27
59
|
status: "pending" | "active";
|
|
28
60
|
confirmationUrl: string | null;
|
|
29
61
|
planHandle: string;
|
|
30
|
-
features: Record<string,
|
|
62
|
+
features: Record<string, ResolvedFeature>;
|
|
31
63
|
}
|
|
32
64
|
export declare class PartnerHubEmbeddedError extends Error {
|
|
33
65
|
readonly statusCode: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAErD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AACD,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC3C;AAED,qBAAa,uBAAwB,SAAQ,KAAK;IAG9C,QAAQ,CAAC,UAAU,EAAE,MAAM;gBAD3B,OAAO,EAAE,MAAM,EACN,UAAU,EAAE,MAAM;CAK9B"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAwEA,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAGrC;IAFX,YACE,OAAe,EACN,UAAkB;QAE3B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFN,eAAU,GAAV,UAAU,CAAQ;QAG3B,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@advplyr/partner-hub-embedded",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Partner Hub embedded app SDK",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -16,6 +16,16 @@
|
|
|
16
16
|
"files": [
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "tsc",
|
|
21
|
+
"dev": "tsc --watch",
|
|
22
|
+
"typecheck": "tsc --noEmit"
|
|
23
|
+
},
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "git+https://github.com/advplyr/shopify-partner-hub.git",
|
|
27
|
+
"directory": "packages/partner-hub-embedded"
|
|
28
|
+
},
|
|
19
29
|
"publishConfig": {
|
|
20
30
|
"access": "public",
|
|
21
31
|
"registry": "https://registry.npmjs.org"
|
|
@@ -31,10 +41,5 @@
|
|
|
31
41
|
"devDependencies": {
|
|
32
42
|
"@types/react": "^19.1.6",
|
|
33
43
|
"react": "^19.1.0"
|
|
34
|
-
},
|
|
35
|
-
"scripts": {
|
|
36
|
-
"build": "tsc",
|
|
37
|
-
"dev": "tsc --watch",
|
|
38
|
-
"typecheck": "tsc --noEmit"
|
|
39
44
|
}
|
|
40
|
-
}
|
|
45
|
+
}
|