@getpara/core-sdk 3.0.0-alpha.1 → 3.0.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/cjs/ParaCore.js +436 -86
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/cryptography/utils.js +5 -2
- package/dist/cjs/errors.js +10 -0
- package/dist/cjs/external/userManagementClient.js +21 -4
- package/dist/cjs/index.js +67 -1
- package/dist/cjs/services/AuthService.js +66 -47
- package/dist/cjs/services/LoginFlowService.js +30 -27
- package/dist/cjs/services/PollingService.js +100 -75
- package/dist/cjs/services/PortalUrlService.js +112 -19
- package/dist/cjs/services/PregenWalletService.js +125 -76
- package/dist/cjs/services/SessionManagementService.js +15 -8
- package/dist/cjs/services/SignupFlowService.js +52 -47
- package/dist/cjs/services/VerificationFlowService.js +13 -10
- package/dist/cjs/services/WalletService.js +51 -36
- package/dist/cjs/shares/enclave.js +44 -24
- package/dist/cjs/state/CoreStateManager.js +17 -5
- package/dist/cjs/state/actors/setupPara.js +4 -1
- package/dist/cjs/state/machines/walletStateMachine.js +22 -0
- package/dist/cjs/telemetry/config.js +15 -0
- package/dist/cjs/telemetry/init.js +185 -0
- package/dist/cjs/telemetry/modalSession.js +54 -0
- package/dist/cjs/telemetry/session.js +39 -0
- package/dist/cjs/telemetry/tracer.js +126 -0
- package/dist/cjs/telemetry/uxAction.js +30 -0
- package/dist/cjs/telemetry/uxBaggagePropagator.js +58 -0
- package/dist/cjs/telemetry/uxState.js +46 -0
- package/dist/cjs/telemetry/uxStateSpanProcessor.js +51 -0
- package/dist/cjs/utils/configEncoding.js +98 -0
- package/dist/cjs/utils/deprecation.js +13 -13
- package/dist/cjs/utils/index.js +11 -0
- package/dist/cjs/utils/partnerConfig.js +103 -0
- package/dist/cjs/utils/partnerConfigGating.js +83 -0
- package/dist/cjs/utils/stateErrorHelpers.js +6 -1
- package/dist/cjs/utils/url.js +10 -2
- package/dist/esm/ParaCore.js +441 -88
- package/dist/esm/constants.js +1 -1
- package/dist/esm/cryptography/utils.js +5 -2
- package/dist/esm/errors.js +9 -0
- package/dist/esm/external/userManagementClient.js +21 -4
- package/dist/esm/index.js +58 -4
- package/dist/esm/services/AuthService.js +66 -47
- package/dist/esm/services/LoginFlowService.js +30 -27
- package/dist/esm/services/PollingService.js +100 -75
- package/dist/esm/services/PortalUrlService.js +112 -19
- package/dist/esm/services/PregenWalletService.js +125 -76
- package/dist/esm/services/SessionManagementService.js +15 -8
- package/dist/esm/services/SignupFlowService.js +52 -47
- package/dist/esm/services/VerificationFlowService.js +13 -10
- package/dist/esm/services/WalletService.js +51 -36
- package/dist/esm/shares/enclave.js +44 -24
- package/dist/esm/state/CoreStateManager.js +17 -5
- package/dist/esm/state/actors/setupPara.js +4 -1
- package/dist/esm/state/machines/walletStateMachine.js +22 -0
- package/dist/esm/telemetry/config.js +0 -0
- package/dist/esm/telemetry/init.js +118 -0
- package/dist/esm/telemetry/modalSession.js +29 -0
- package/dist/esm/telemetry/session.js +16 -0
- package/dist/esm/telemetry/tracer.js +84 -0
- package/dist/esm/telemetry/uxAction.js +8 -0
- package/dist/esm/telemetry/uxBaggagePropagator.js +35 -0
- package/dist/esm/telemetry/uxState.js +21 -0
- package/dist/esm/telemetry/uxStateSpanProcessor.js +28 -0
- package/dist/esm/utils/configEncoding.js +45 -0
- package/dist/esm/utils/deprecation.js +11 -12
- package/dist/esm/utils/index.js +6 -0
- package/dist/esm/utils/partnerConfig.js +67 -0
- package/dist/esm/utils/partnerConfigGating.js +61 -0
- package/dist/esm/utils/stateErrorHelpers.js +6 -1
- package/dist/esm/utils/url.js +10 -2
- package/dist/types/ParaCore.d.ts +101 -19
- package/dist/types/PlatformUtils.d.ts +1 -0
- package/dist/types/errors.d.ts +26 -0
- package/dist/types/external/userManagementClient.d.ts +2 -1
- package/dist/types/index.d.ts +15 -3
- package/dist/types/services/types/AuthServiceTypes.d.ts +10 -3
- package/dist/types/services/types/PortalUrlServiceTypes.d.ts +3 -3
- package/dist/types/services/types/WalletServiceTypes.d.ts +4 -0
- package/dist/types/state/actors/setupPara.d.ts +18 -0
- package/dist/types/state/machines/authStateMachine.d.ts +1 -1
- package/dist/types/state/machines/coreStateMachine.d.ts +30 -6
- package/dist/types/state/machines/walletStateMachine.d.ts +4 -0
- package/dist/types/state/types/core.d.ts +7 -1
- package/dist/types/telemetry/config.d.ts +4 -0
- package/dist/types/telemetry/init.d.ts +17 -0
- package/dist/types/telemetry/modalSession.d.ts +5 -0
- package/dist/types/telemetry/session.d.ts +2 -0
- package/dist/types/telemetry/tracer.d.ts +10 -0
- package/dist/types/telemetry/uxAction.d.ts +3 -0
- package/dist/types/telemetry/uxBaggagePropagator.d.ts +7 -0
- package/dist/types/telemetry/uxState.d.ts +8 -0
- package/dist/types/telemetry/uxStateSpanProcessor.d.ts +9 -0
- package/dist/types/types/config.d.ts +15 -3
- package/dist/types/types/coreApi.d.ts +7 -9
- package/dist/types/types/serviceInterfaces.d.ts +5 -3
- package/dist/types/types/util.d.ts +2 -15
- package/dist/types/utils/configEncoding.d.ts +51 -0
- package/dist/types/utils/deprecation.d.ts +3 -1
- package/dist/types/utils/index.d.ts +2 -0
- package/dist/types/utils/partnerConfig.d.ts +28 -0
- package/dist/types/utils/partnerConfigGating.d.ts +48 -0
- package/dist/types/utils/url.d.ts +3 -2
- package/package.json +14 -4
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __typeError = (msg) => {
|
|
6
|
+
throw TypeError(msg);
|
|
7
|
+
};
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
21
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
22
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
23
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
24
|
+
var uxBaggagePropagator_exports = {};
|
|
25
|
+
__export(uxBaggagePropagator_exports, {
|
|
26
|
+
UxBaggagePropagator: () => UxBaggagePropagator
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(uxBaggagePropagator_exports);
|
|
29
|
+
var import_api = require("@opentelemetry/api");
|
|
30
|
+
var import_core = require("@opentelemetry/core");
|
|
31
|
+
var import_uxState = require("./uxState.js");
|
|
32
|
+
var import_session = require("./session.js");
|
|
33
|
+
var _inner;
|
|
34
|
+
class UxBaggagePropagator {
|
|
35
|
+
constructor() {
|
|
36
|
+
__privateAdd(this, _inner, new import_core.W3CBaggagePropagator());
|
|
37
|
+
}
|
|
38
|
+
inject(ctx, carrier, setter) {
|
|
39
|
+
var _a;
|
|
40
|
+
const state = (0, import_uxState.getUxState)();
|
|
41
|
+
let bag = (_a = import_api.propagation.getBaggage(ctx)) != null ? _a : import_api.propagation.createBaggage();
|
|
42
|
+
bag = bag.setEntry("ui.session_id", { value: (0, import_session.getOrCreateSessionId)() });
|
|
43
|
+
if (state.view) bag = bag.setEntry("ui.view", { value: state.view });
|
|
44
|
+
if (state.lastInteraction) bag = bag.setEntry("ui.last_interaction", { value: state.lastInteraction });
|
|
45
|
+
__privateGet(this, _inner).inject(import_api.propagation.setBaggage(ctx, bag), carrier, setter);
|
|
46
|
+
}
|
|
47
|
+
extract(ctx, carrier, getter) {
|
|
48
|
+
return __privateGet(this, _inner).extract(ctx, carrier, getter);
|
|
49
|
+
}
|
|
50
|
+
fields() {
|
|
51
|
+
return __privateGet(this, _inner).fields();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
_inner = new WeakMap();
|
|
55
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
56
|
+
0 && (module.exports = {
|
|
57
|
+
UxBaggagePropagator
|
|
58
|
+
});
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var uxState_exports = {};
|
|
19
|
+
__export(uxState_exports, {
|
|
20
|
+
__resetUxStateForTests: () => __resetUxStateForTests,
|
|
21
|
+
getUxState: () => getUxState,
|
|
22
|
+
setCurrentView: () => setCurrentView,
|
|
23
|
+
setLastInteraction: () => setLastInteraction
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(uxState_exports);
|
|
26
|
+
const state = {};
|
|
27
|
+
function getUxState() {
|
|
28
|
+
return state;
|
|
29
|
+
}
|
|
30
|
+
function setCurrentView(view) {
|
|
31
|
+
state.view = view;
|
|
32
|
+
}
|
|
33
|
+
function setLastInteraction(targetId) {
|
|
34
|
+
state.lastInteraction = targetId;
|
|
35
|
+
}
|
|
36
|
+
function __resetUxStateForTests() {
|
|
37
|
+
state.view = void 0;
|
|
38
|
+
state.lastInteraction = void 0;
|
|
39
|
+
}
|
|
40
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
41
|
+
0 && (module.exports = {
|
|
42
|
+
__resetUxStateForTests,
|
|
43
|
+
getUxState,
|
|
44
|
+
setCurrentView,
|
|
45
|
+
setLastInteraction
|
|
46
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var uxStateSpanProcessor_exports = {};
|
|
19
|
+
__export(uxStateSpanProcessor_exports, {
|
|
20
|
+
UxStateSpanProcessor: () => UxStateSpanProcessor,
|
|
21
|
+
setCurrentUserId: () => setCurrentUserId
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(uxStateSpanProcessor_exports);
|
|
24
|
+
var import_uxState = require("./uxState.js");
|
|
25
|
+
var import_session = require("./session.js");
|
|
26
|
+
let currentUserId;
|
|
27
|
+
function setCurrentUserId(userId) {
|
|
28
|
+
currentUserId = userId;
|
|
29
|
+
}
|
|
30
|
+
class UxStateSpanProcessor {
|
|
31
|
+
onStart(span, _parentContext) {
|
|
32
|
+
const state = (0, import_uxState.getUxState)();
|
|
33
|
+
span.setAttribute("ui.session_id", (0, import_session.getOrCreateSessionId)());
|
|
34
|
+
if (currentUserId) span.setAttribute("user.id", currentUserId);
|
|
35
|
+
if (state.view) span.setAttribute("ui.view", state.view);
|
|
36
|
+
if (state.lastInteraction) span.setAttribute("ui.last_interaction", state.lastInteraction);
|
|
37
|
+
}
|
|
38
|
+
onEnd() {
|
|
39
|
+
}
|
|
40
|
+
forceFlush() {
|
|
41
|
+
return Promise.resolve();
|
|
42
|
+
}
|
|
43
|
+
shutdown() {
|
|
44
|
+
return Promise.resolve();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
48
|
+
0 && (module.exports = {
|
|
49
|
+
UxStateSpanProcessor,
|
|
50
|
+
setCurrentUserId
|
|
51
|
+
});
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var __async = (__this, __arguments, generator) => {
|
|
29
|
+
return new Promise((resolve, reject) => {
|
|
30
|
+
var fulfilled = (value) => {
|
|
31
|
+
try {
|
|
32
|
+
step(generator.next(value));
|
|
33
|
+
} catch (e) {
|
|
34
|
+
reject(e);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
var rejected = (value) => {
|
|
38
|
+
try {
|
|
39
|
+
step(generator.throw(value));
|
|
40
|
+
} catch (e) {
|
|
41
|
+
reject(e);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
45
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
var configEncoding_exports = {};
|
|
49
|
+
__export(configEncoding_exports, {
|
|
50
|
+
ENCODED_CONFIG_VERSION: () => ENCODED_CONFIG_VERSION,
|
|
51
|
+
encodeConfigParams: () => encodeConfigParams,
|
|
52
|
+
isCompressionStreamSupported: () => isCompressionStreamSupported,
|
|
53
|
+
tryDecodeConfig: () => tryDecodeConfig
|
|
54
|
+
});
|
|
55
|
+
module.exports = __toCommonJS(configEncoding_exports);
|
|
56
|
+
var import_buffer = require("buffer");
|
|
57
|
+
var import_base64url = __toESM(require("base64url"));
|
|
58
|
+
const ENCODED_CONFIG_VERSION = 1;
|
|
59
|
+
function isCompressionStreamSupported() {
|
|
60
|
+
return typeof CompressionStream !== "undefined" && typeof DecompressionStream !== "undefined";
|
|
61
|
+
}
|
|
62
|
+
function encodeConfigParams(config) {
|
|
63
|
+
return __async(this, null, function* () {
|
|
64
|
+
if (!isCompressionStreamSupported()) return null;
|
|
65
|
+
try {
|
|
66
|
+
const json = JSON.stringify(config);
|
|
67
|
+
const stream = new Blob([json]).stream().pipeThrough(new CompressionStream("gzip"));
|
|
68
|
+
const compressed = new Uint8Array(yield new Response(stream).arrayBuffer());
|
|
69
|
+
return import_base64url.default.encode(import_buffer.Buffer.from(compressed));
|
|
70
|
+
} catch (e) {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
function tryDecodeConfig(s) {
|
|
76
|
+
return __async(this, null, function* () {
|
|
77
|
+
if (!isCompressionStreamSupported()) return null;
|
|
78
|
+
if (!/^[A-Za-z0-9_-]+$/.test(s)) return null;
|
|
79
|
+
try {
|
|
80
|
+
const compressed = import_base64url.default.toBuffer(s);
|
|
81
|
+
const stream = new Blob([compressed]).stream().pipeThrough(new DecompressionStream("gzip"));
|
|
82
|
+
const json = yield new Response(stream).text();
|
|
83
|
+
const parsed = JSON.parse(json);
|
|
84
|
+
if (!parsed || typeof parsed !== "object") return null;
|
|
85
|
+
if (parsed.v !== ENCODED_CONFIG_VERSION) return null;
|
|
86
|
+
return parsed;
|
|
87
|
+
} catch (e) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
93
|
+
0 && (module.exports = {
|
|
94
|
+
ENCODED_CONFIG_VERSION,
|
|
95
|
+
encodeConfigParams,
|
|
96
|
+
isCompressionStreamSupported,
|
|
97
|
+
tryDecodeConfig
|
|
98
|
+
});
|
|
@@ -17,22 +17,22 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
18
|
var deprecation_exports = {};
|
|
19
19
|
__export(deprecation_exports, {
|
|
20
|
-
|
|
20
|
+
_resetWarnOnceForTests: () => _resetWarnOnceForTests,
|
|
21
|
+
warnOnce: () => warnOnce
|
|
21
22
|
});
|
|
22
23
|
module.exports = __toCommonJS(deprecation_exports);
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (
|
|
27
|
-
|
|
28
|
-
console.warn(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
\u2192 Guide: ${MIGRATION_GUIDE_URL}`
|
|
33
|
-
);
|
|
24
|
+
const warnedScopedKeys = /* @__PURE__ */ new Set();
|
|
25
|
+
function warnOnce(scope, key, message) {
|
|
26
|
+
const fullKey = `${scope}::${key}`;
|
|
27
|
+
if (warnedScopedKeys.has(fullKey)) return;
|
|
28
|
+
warnedScopedKeys.add(fullKey);
|
|
29
|
+
console.warn(`[Para] ${message}`);
|
|
30
|
+
}
|
|
31
|
+
function _resetWarnOnceForTests() {
|
|
32
|
+
warnedScopedKeys.clear();
|
|
34
33
|
}
|
|
35
34
|
// Annotate the CommonJS export names for ESM import in node:
|
|
36
35
|
0 && (module.exports = {
|
|
37
|
-
|
|
36
|
+
_resetWarnOnceForTests,
|
|
37
|
+
warnOnce
|
|
38
38
|
});
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -2,6 +2,10 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
5
9
|
var __copyProps = (to, from, except, desc) => {
|
|
6
10
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
11
|
for (let key of __getOwnPropNames(from))
|
|
@@ -13,14 +17,19 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
13
17
|
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
14
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
19
|
var utils_exports = {};
|
|
20
|
+
__export(utils_exports, {
|
|
21
|
+
warnOnce: () => import_deprecation.warnOnce
|
|
22
|
+
});
|
|
16
23
|
module.exports = __toCommonJS(utils_exports);
|
|
17
24
|
__reExport(utils_exports, require("./autobind.js"), module.exports);
|
|
18
25
|
__reExport(utils_exports, require("./config.js"), module.exports);
|
|
26
|
+
var import_deprecation = require("./deprecation.js");
|
|
19
27
|
__reExport(utils_exports, require("./events.js"), module.exports);
|
|
20
28
|
__reExport(utils_exports, require("./formatting.js"), module.exports);
|
|
21
29
|
__reExport(utils_exports, require("./json.js"), module.exports);
|
|
22
30
|
__reExport(utils_exports, require("./listeners.js"), module.exports);
|
|
23
31
|
__reExport(utils_exports, require("./onRamps.js"), module.exports);
|
|
32
|
+
__reExport(utils_exports, require("./partnerConfig.js"), module.exports);
|
|
24
33
|
__reExport(utils_exports, require("./phone.js"), module.exports);
|
|
25
34
|
__reExport(utils_exports, require("./polling.js"), module.exports);
|
|
26
35
|
__reExport(utils_exports, require("./types.js"), module.exports);
|
|
@@ -29,6 +38,7 @@ __reExport(utils_exports, require("./wallet.js"), module.exports);
|
|
|
29
38
|
__reExport(utils_exports, require("./window.js"), module.exports);
|
|
30
39
|
// Annotate the CommonJS export names for ESM import in node:
|
|
31
40
|
0 && (module.exports = {
|
|
41
|
+
warnOnce,
|
|
32
42
|
...require("./autobind.js"),
|
|
33
43
|
...require("./config.js"),
|
|
34
44
|
...require("./events.js"),
|
|
@@ -36,6 +46,7 @@ __reExport(utils_exports, require("./window.js"), module.exports);
|
|
|
36
46
|
...require("./json.js"),
|
|
37
47
|
...require("./listeners.js"),
|
|
38
48
|
...require("./onRamps.js"),
|
|
49
|
+
...require("./partnerConfig.js"),
|
|
39
50
|
...require("./phone.js"),
|
|
40
51
|
...require("./polling.js"),
|
|
41
52
|
...require("./types.js"),
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __export = (target, all) => {
|
|
20
|
+
for (var name in all)
|
|
21
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
22
|
+
};
|
|
23
|
+
var __copyProps = (to, from, except, desc) => {
|
|
24
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
25
|
+
for (let key of __getOwnPropNames(from))
|
|
26
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
27
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
28
|
+
}
|
|
29
|
+
return to;
|
|
30
|
+
};
|
|
31
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
32
|
+
var partnerConfig_exports = {};
|
|
33
|
+
__export(partnerConfig_exports, {
|
|
34
|
+
DEFAULT_PARTNER_APP_CONFIG: () => DEFAULT_PARTNER_APP_CONFIG,
|
|
35
|
+
mergePartnerAppConfig: () => import_user_management_client.mergePartnerAppConfig,
|
|
36
|
+
partnerToAppConfigLayer: () => partnerToAppConfigLayer
|
|
37
|
+
});
|
|
38
|
+
module.exports = __toCommonJS(partnerConfig_exports);
|
|
39
|
+
var import_user_management_client = require("@getpara/user-management-client");
|
|
40
|
+
const DEFAULT_PARTNER_APP_CONFIG = {};
|
|
41
|
+
function partnerToAppConfigLayer(partner) {
|
|
42
|
+
var _a;
|
|
43
|
+
const layer = {};
|
|
44
|
+
const themeConfig = (_a = partner.themeConfig) != null ? _a : synthesizeLegacyTheme(partner);
|
|
45
|
+
if (themeConfig) layer.themeConfig = themeConfig;
|
|
46
|
+
const authConfig = synthesizeAuthConfig(partner);
|
|
47
|
+
if (authConfig) layer.authConfig = authConfig;
|
|
48
|
+
const modalConfig = synthesizeModalConfig(partner);
|
|
49
|
+
if (modalConfig) layer.modalConfig = modalConfig;
|
|
50
|
+
if (partner.partnerLinks) layer.partnerLinks = partner.partnerLinks;
|
|
51
|
+
if (partner.externalWalletConfig) layer.externalWalletConfig = partner.externalWalletConfig;
|
|
52
|
+
if (partner.farcasterConfig) layer.farcasterConfig = partner.farcasterConfig;
|
|
53
|
+
if (partner.rpcUrl) layer.rpcUrl = partner.rpcUrl;
|
|
54
|
+
if (partner.displayName) layer.appName = partner.displayName;
|
|
55
|
+
if (partner.supportedWalletTypes) layer.supportedWalletTypes = partner.supportedWalletTypes;
|
|
56
|
+
if (partner.supportedAccountLinks) layer.supportedAccountLinks = partner.supportedAccountLinks;
|
|
57
|
+
if (partner.balancesConfig) layer.balancesConfig = partner.balancesConfig;
|
|
58
|
+
return layer;
|
|
59
|
+
}
|
|
60
|
+
function synthesizeAuthConfig(partner) {
|
|
61
|
+
const result = {};
|
|
62
|
+
const stored = partner.authConfig;
|
|
63
|
+
if (stored) {
|
|
64
|
+
if (stored.oAuthMethods != null) result.oAuthMethods = stored.oAuthMethods;
|
|
65
|
+
if (stored.disableEmailLogin != null) result.disableEmailLogin = stored.disableEmailLogin;
|
|
66
|
+
if (stored.disablePhoneLogin != null) result.disablePhoneLogin = stored.disablePhoneLogin;
|
|
67
|
+
if (stored.twoFactorAuthEnabled != null) result.twoFactorAuthEnabled = stored.twoFactorAuthEnabled;
|
|
68
|
+
if (stored.isGuestModeEnabled != null) result.isGuestModeEnabled = stored.isGuestModeEnabled;
|
|
69
|
+
if (stored.supportedAuthMethods != null) result.supportedAuthMethods = stored.supportedAuthMethods;
|
|
70
|
+
}
|
|
71
|
+
if (result.supportedAuthMethods === void 0) {
|
|
72
|
+
const legacy = partner.supportedAuthMethods;
|
|
73
|
+
const isMeaningful = legacy && !(legacy.length === 1 && legacy[0] === import_user_management_client.AuthMethod.PASSKEY);
|
|
74
|
+
if (isMeaningful) {
|
|
75
|
+
result.supportedAuthMethods = legacy;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return Object.keys(result).length > 0 ? result : void 0;
|
|
79
|
+
}
|
|
80
|
+
function synthesizeModalConfig(partner) {
|
|
81
|
+
var _a, _b;
|
|
82
|
+
const stored = (_a = partner.modalConfig) != null ? _a : void 0;
|
|
83
|
+
const logo = (_b = partner.logoUrl) != null ? _b : void 0;
|
|
84
|
+
if (!stored && logo === void 0) return void 0;
|
|
85
|
+
return __spreadValues(__spreadValues({}, stored != null ? stored : {}), logo !== void 0 && { logo });
|
|
86
|
+
}
|
|
87
|
+
function synthesizeLegacyTheme(partner) {
|
|
88
|
+
const hasActiveThemeData = partner.backgroundColor || partner.foregroundColor || partner.accentColor || partner.font || partner.themeMode === "DARK";
|
|
89
|
+
if (!hasActiveThemeData) return void 0;
|
|
90
|
+
const theme = {};
|
|
91
|
+
if (partner.backgroundColor) theme.backgroundColor = partner.backgroundColor;
|
|
92
|
+
if (partner.foregroundColor) theme.foregroundColor = partner.foregroundColor;
|
|
93
|
+
if (partner.accentColor) theme.accentColor = partner.accentColor;
|
|
94
|
+
if (partner.font) theme.font = partner.font;
|
|
95
|
+
if (partner.themeMode === "DARK") theme.mode = "dark";
|
|
96
|
+
return theme;
|
|
97
|
+
}
|
|
98
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
99
|
+
0 && (module.exports = {
|
|
100
|
+
DEFAULT_PARTNER_APP_CONFIG,
|
|
101
|
+
mergePartnerAppConfig,
|
|
102
|
+
partnerToAppConfigLayer
|
|
103
|
+
});
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var partnerConfigGating_exports = {};
|
|
19
|
+
__export(partnerConfigGating_exports, {
|
|
20
|
+
assertConfigAllowed: () => assertConfigAllowed
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(partnerConfigGating_exports);
|
|
23
|
+
var import_errors = require("../errors.js");
|
|
24
|
+
function assertConfigAllowed(config, check) {
|
|
25
|
+
var _a, _b, _c, _d, _e;
|
|
26
|
+
switch (check.kind) {
|
|
27
|
+
case "email": {
|
|
28
|
+
if ((_a = config.authConfig) == null ? void 0 : _a.disableEmailLogin) {
|
|
29
|
+
throw new import_errors.PartnerConfigError(
|
|
30
|
+
"EMAIL_LOGIN_DISABLED",
|
|
31
|
+
"Email login is disabled for this partner. Update partner.authConfig.disableEmailLogin in the developer portal to enable it."
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
case "phone": {
|
|
37
|
+
if ((_b = config.authConfig) == null ? void 0 : _b.disablePhoneLogin) {
|
|
38
|
+
throw new import_errors.PartnerConfigError(
|
|
39
|
+
"PHONE_LOGIN_DISABLED",
|
|
40
|
+
"Phone login is disabled for this partner. Update partner.authConfig.disablePhoneLogin in the developer portal to enable it."
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
case "oauth": {
|
|
46
|
+
const allowed = (_c = config.authConfig) == null ? void 0 : _c.oAuthMethods;
|
|
47
|
+
if (allowed !== void 0 && !allowed.includes(check.method)) {
|
|
48
|
+
throw new import_errors.PartnerConfigError(
|
|
49
|
+
"OAUTH_METHOD_NOT_ALLOWED",
|
|
50
|
+
`OAuth method "${check.method}" is not in the partner's allowlist. Allowed: ${allowed.length === 0 ? "(none)" : allowed.join(", ")}.`,
|
|
51
|
+
check.method
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
case "2fa": {
|
|
57
|
+
if (((_d = config.authConfig) == null ? void 0 : _d.twoFactorAuthEnabled) === false) {
|
|
58
|
+
throw new import_errors.PartnerConfigError(
|
|
59
|
+
"TWO_FACTOR_DISABLED",
|
|
60
|
+
"2FA is disabled for this partner. Update partner.authConfig.twoFactorAuthEnabled in the developer portal to enable it."
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
case "guest": {
|
|
66
|
+
if (((_e = config.authConfig) == null ? void 0 : _e.isGuestModeEnabled) === false) {
|
|
67
|
+
throw new import_errors.PartnerConfigError(
|
|
68
|
+
"GUEST_MODE_DISABLED",
|
|
69
|
+
"Guest mode is disabled for this partner. Update partner.authConfig.isGuestModeEnabled in the developer portal to enable it."
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
default: {
|
|
75
|
+
const _exhaustive = check;
|
|
76
|
+
throw new Error(`assertConfigAllowed: unhandled ConfigCheck kind ${JSON.stringify(_exhaustive)}`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
81
|
+
0 && (module.exports = {
|
|
82
|
+
assertConfigAllowed
|
|
83
|
+
});
|
|
@@ -45,7 +45,12 @@ function formatStateError(error, defaultMessage) {
|
|
|
45
45
|
return new Error(error);
|
|
46
46
|
}
|
|
47
47
|
if (error && typeof error === "object" && "message" in error) {
|
|
48
|
-
|
|
48
|
+
const src = error;
|
|
49
|
+
const normalized = Object.assign(new Error(String(src.message)), {});
|
|
50
|
+
if ("code" in src) normalized.code = src.code;
|
|
51
|
+
if ("status" in src) normalized.status = src.status;
|
|
52
|
+
if ("data" in src) normalized.data = src.data;
|
|
53
|
+
return normalized;
|
|
49
54
|
}
|
|
50
55
|
if (error && typeof error === "object" && "error" in error) {
|
|
51
56
|
return formatStateError(error.error, defaultMessage);
|
package/dist/cjs/utils/url.js
CHANGED
|
@@ -47,6 +47,10 @@ __export(url_exports, {
|
|
|
47
47
|
module.exports = __toCommonJS(url_exports);
|
|
48
48
|
var import_transmissionUtils = require("../transmission/transmissionUtils.js");
|
|
49
49
|
var import_types = require("../types/index.js");
|
|
50
|
+
function getGlobalPortalUrlOverride() {
|
|
51
|
+
const override = typeof globalThis !== "undefined" ? globalThis.__PARA_PORTAL_URL_OVERRIDE__ : void 0;
|
|
52
|
+
return typeof override === "string" && override ? override : void 0;
|
|
53
|
+
}
|
|
50
54
|
function getPortalDomain(env, isE2E, isLegacy) {
|
|
51
55
|
if (isE2E) {
|
|
52
56
|
return `localhost`;
|
|
@@ -65,7 +69,11 @@ function getPortalDomain(env, isE2E, isLegacy) {
|
|
|
65
69
|
throw new Error(`env: ${env} not supported`);
|
|
66
70
|
}
|
|
67
71
|
}
|
|
68
|
-
function getPortalBaseURL({ env, isE2E }, useLocalIp, isForWasm, isLegacy) {
|
|
72
|
+
function getPortalBaseURL({ env, isE2E, portalUrlOverride }, useLocalIp, isForWasm, isLegacy) {
|
|
73
|
+
const resolvedPortalUrlOverride = portalUrlOverride != null ? portalUrlOverride : getGlobalPortalUrlOverride();
|
|
74
|
+
if (resolvedPortalUrlOverride && !isForWasm) {
|
|
75
|
+
return new URL(resolvedPortalUrlOverride).origin;
|
|
76
|
+
}
|
|
69
77
|
if (isE2E) {
|
|
70
78
|
if (isForWasm) {
|
|
71
79
|
return `https://app.sandbox.getpara.com`;
|
|
@@ -88,7 +96,7 @@ function getParaConnectDomain(env) {
|
|
|
88
96
|
case import_types.Environment.SANDBOX:
|
|
89
97
|
return "connect.sandbox.getpara.com";
|
|
90
98
|
case import_types.Environment.BETA:
|
|
91
|
-
return "connect.
|
|
99
|
+
return "connect.getpara.com";
|
|
92
100
|
case import_types.Environment.PROD:
|
|
93
101
|
return "connect.getpara.com";
|
|
94
102
|
default:
|