@sylphx/sdk 0.3.7 → 0.4.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.cts +360 -1
- package/dist/index.d.ts +360 -1
- package/dist/index.js +113 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +100 -0
- package/dist/index.mjs.map +1 -1
- package/dist/nextjs/index.js +7 -2
- package/dist/nextjs/index.js.map +1 -1
- package/dist/nextjs/index.mjs +7 -2
- package/dist/nextjs/index.mjs.map +1 -1
- package/dist/react/index.d.cts +330 -1
- package/dist/react/index.d.ts +330 -1
- package/dist/react/index.js +710 -543
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +384 -221
- package/dist/react/index.mjs.map +1 -1
- package/dist/server/index.js +30 -11
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +30 -11
- package/dist/server/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/server/index.mjs
CHANGED
|
@@ -1238,6 +1238,13 @@ var SylphxError = class _SylphxError extends Error {
|
|
|
1238
1238
|
static isRateLimited(err) {
|
|
1239
1239
|
return err instanceof _SylphxError && err.code === "TOO_MANY_REQUESTS";
|
|
1240
1240
|
}
|
|
1241
|
+
/**
|
|
1242
|
+
* Check if error is an account lockout error (too many failed login attempts).
|
|
1243
|
+
* When true, `error.data?.lockoutUntil` contains the ISO 8601 timestamp when the lockout expires.
|
|
1244
|
+
*/
|
|
1245
|
+
static isAccountLocked(err) {
|
|
1246
|
+
return err instanceof _SylphxError && err.code === "TOO_MANY_REQUESTS" && err.data?.code === "ACCOUNT_LOCKED";
|
|
1247
|
+
}
|
|
1241
1248
|
/**
|
|
1242
1249
|
* Check if error is a quota exceeded error (plan limit reached)
|
|
1243
1250
|
*/
|
|
@@ -2544,11 +2551,16 @@ async function cachedFetch(params) {
|
|
|
2544
2551
|
}
|
|
2545
2552
|
}
|
|
2546
2553
|
function sanitizeOptions(options) {
|
|
2547
|
-
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
platformUrl
|
|
2551
|
-
}
|
|
2554
|
+
const secretKey = validateAndSanitizeSecretKey(options.secretKey);
|
|
2555
|
+
let platformUrl;
|
|
2556
|
+
if (options.platformUrl) {
|
|
2557
|
+
platformUrl = options.platformUrl.trim();
|
|
2558
|
+
} else {
|
|
2559
|
+
const parts = secretKey.split("_");
|
|
2560
|
+
const ref = parts.length === 4 ? parts[2] : null;
|
|
2561
|
+
platformUrl = ref ? `https://${ref}.${DEFAULT_SDK_API_HOST}` : `https://${DEFAULT_SDK_API_HOST}`;
|
|
2562
|
+
}
|
|
2563
|
+
return { ...options, secretKey, platformUrl };
|
|
2552
2564
|
}
|
|
2553
2565
|
function sdkHeaders(secretKey) {
|
|
2554
2566
|
return { "x-app-secret": secretKey };
|
|
@@ -2608,13 +2620,20 @@ async function getAppMetadata(options) {
|
|
|
2608
2620
|
});
|
|
2609
2621
|
}
|
|
2610
2622
|
async function getAppConfig(options) {
|
|
2611
|
-
const { secretKey, appId
|
|
2623
|
+
const { secretKey, appId } = options;
|
|
2624
|
+
const resolvedPlatformUrl = (() => {
|
|
2625
|
+
if (options.platformUrl) return options.platformUrl.trim();
|
|
2626
|
+
const keyForRef = secretKey || appId;
|
|
2627
|
+
const parts = keyForRef?.split("_") ?? [];
|
|
2628
|
+
const ref = parts.length === 4 ? parts[2] : null;
|
|
2629
|
+
return ref ? `https://${ref}.${DEFAULT_SDK_API_HOST}` : `https://${DEFAULT_SDK_API_HOST}`;
|
|
2630
|
+
})();
|
|
2612
2631
|
const [plans, consentTypes, oauthProviders, featureFlags, app] = await Promise.all([
|
|
2613
|
-
getPlans({ secretKey, platformUrl }),
|
|
2614
|
-
getConsentTypes({ secretKey, platformUrl }),
|
|
2615
|
-
getOAuthProvidersWithInfo({ appId, platformUrl }),
|
|
2616
|
-
getFeatureFlags({ secretKey, platformUrl }),
|
|
2617
|
-
getAppMetadata({ secretKey, platformUrl })
|
|
2632
|
+
getPlans({ secretKey, platformUrl: resolvedPlatformUrl }),
|
|
2633
|
+
getConsentTypes({ secretKey, platformUrl: resolvedPlatformUrl }),
|
|
2634
|
+
getOAuthProvidersWithInfo({ appId, platformUrl: resolvedPlatformUrl }),
|
|
2635
|
+
getFeatureFlags({ secretKey, platformUrl: resolvedPlatformUrl }),
|
|
2636
|
+
getAppMetadata({ secretKey, platformUrl: resolvedPlatformUrl })
|
|
2618
2637
|
]);
|
|
2619
2638
|
return {
|
|
2620
2639
|
plans,
|