@cross-deck/web 1.5.0 → 1.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/CHANGELOG.md +74 -0
- package/README.md +94 -0
- package/dist/crossdeck.umd.min.js +2 -2
- package/dist/crossdeck.umd.min.js.map +1 -1
- package/dist/error-codes.json +1 -106
- package/dist/index.cjs +22 -940
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +4 -177
- package/dist/index.d.ts +4 -177
- package/dist/index.mjs +22 -939
- package/dist/index.mjs.map +1 -1
- package/dist/react.cjs +22 -404
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.mts +1 -1
- package/dist/react.d.ts +1 -1
- package/dist/react.mjs +22 -404
- package/dist/react.mjs.map +1 -1
- package/dist/{types-Bu3jbmdq.d.mts → types-BzoKor4z.d.mts} +0 -4
- package/dist/{types-Bu3jbmdq.d.ts → types-BzoKor4z.d.ts} +0 -4
- package/dist/vue.cjs +22 -404
- package/dist/vue.cjs.map +1 -1
- package/dist/vue.mjs +22 -404
- package/dist/vue.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/contracts.json +0 -378
package/dist/error-codes.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"generatedAt": "2026-05-
|
|
3
|
+
"generatedAt": "2026-05-24T15:50:15.563Z",
|
|
4
4
|
"sdk": "@cross-deck/web",
|
|
5
5
|
"codes": [
|
|
6
6
|
{
|
|
@@ -86,111 +86,6 @@
|
|
|
86
86
|
"description": "The server returned a 2xx with an unparseable body.",
|
|
87
87
|
"resolution": "Likely a transient backend bug. Retry; if it persists, contact support with the requestId.",
|
|
88
88
|
"retryable": true
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
"code": "missing_api_key",
|
|
92
|
-
"type": "authentication_error",
|
|
93
|
-
"description": "No Authorization header (or Crossdeck-Api-Key header) on the request.",
|
|
94
|
-
"resolution": "Make sure Crossdeck.init({ publicKey }) was called with a cd_pub_… key before the request fired. Re-check your env-vars in CI / Docker if the key is empty at runtime.",
|
|
95
|
-
"retryable": false
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"code": "invalid_api_key",
|
|
99
|
-
"type": "authentication_error",
|
|
100
|
-
"description": "The API key is malformed, unknown, or doesn't resolve to a project.",
|
|
101
|
-
"resolution": "Copy the key from your Crossdeck dashboard → API keys. Confirm prefix is cd_pub_test_ / cd_pub_live_ for client SDKs and cd_sk_test_ / cd_sk_live_ for the Node server SDK.",
|
|
102
|
-
"retryable": false
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
"code": "key_revoked",
|
|
106
|
-
"type": "authentication_error",
|
|
107
|
-
"description": "The API key was revoked in the Crossdeck dashboard.",
|
|
108
|
-
"resolution": "Mint a fresh key in the dashboard → API keys → Create new, swap it in, and redeploy. The revoked key cannot be reactivated.",
|
|
109
|
-
"retryable": false
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
"code": "identity_token_invalid",
|
|
113
|
-
"type": "authentication_error",
|
|
114
|
-
"description": "The Firebase / Apple / Google ID token supplied with the request didn't verify against the dashboard's configured signers.",
|
|
115
|
-
"resolution": "Refresh the token client-side (Firebase auth.currentUser.getIdToken(true)) and retry. If the failure persists, confirm the signer is registered under dashboard → Authentication → Identity sources.",
|
|
116
|
-
"retryable": true
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"code": "origin_not_allowed",
|
|
120
|
-
"type": "permission_error",
|
|
121
|
-
"description": "The Origin header isn't in the project's Allowed origins list.",
|
|
122
|
-
"resolution": "Add the origin (e.g. https://app.example.com) under dashboard → Settings → Allowed origins. Wildcards like https://*.example.com are supported.",
|
|
123
|
-
"retryable": false
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"code": "bundle_id_not_allowed",
|
|
127
|
-
"type": "permission_error",
|
|
128
|
-
"description": "The iOS bundle ID sent via X-Crossdeck-Bundle-Id isn't registered under this app's Apple identity lock.",
|
|
129
|
-
"resolution": "Add the bundle ID under dashboard → Apps → <your app> → iOS bundle IDs.",
|
|
130
|
-
"retryable": false
|
|
131
|
-
},
|
|
132
|
-
{
|
|
133
|
-
"code": "package_name_not_allowed",
|
|
134
|
-
"type": "permission_error",
|
|
135
|
-
"description": "The Android package name sent via X-Crossdeck-Package-Name isn't registered under this app's Android identity lock.",
|
|
136
|
-
"resolution": "Add the package name under dashboard → Apps → <your app> → Android package names.",
|
|
137
|
-
"retryable": false
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
"code": "env_mismatch",
|
|
141
|
-
"type": "permission_error",
|
|
142
|
-
"description": "The request env (inferred from key prefix) doesn't match the resolved app's configured env.",
|
|
143
|
-
"resolution": "Use a cd_pub_live_ / cd_sk_live_ key with a production app, cd_pub_test_ / cd_sk_test_ with a sandbox app. The two cannot cross.",
|
|
144
|
-
"retryable": false
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
"code": "idempotency_key_in_use",
|
|
148
|
-
"type": "invalid_request_error",
|
|
149
|
-
"description": "An Idempotency-Key was reused for a request with a different body (Stripe-grade contract).",
|
|
150
|
-
"resolution": "Generate a fresh key for a different transaction, or reuse the key only with the EXACT same body. The v1.4.0 SDKs derive keys deterministically from the body so this should never fire on SDK-managed calls.",
|
|
151
|
-
"retryable": false
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
"code": "rate_limited",
|
|
155
|
-
"type": "rate_limit_error",
|
|
156
|
-
"description": "Request rate exceeded the project's per-second cap.",
|
|
157
|
-
"resolution": "Honour the Retry-After header — the SDK does this automatically on managed retries. If you're hitting it from a custom code path, throttle to <100 req/s/key.",
|
|
158
|
-
"retryable": true
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
"code": "internal_error",
|
|
162
|
-
"type": "internal_error",
|
|
163
|
-
"description": "Server-side issue. Safe to retry with backoff.",
|
|
164
|
-
"resolution": "The SDK retries automatically. If your code paths through to this error, contact support with the requestId from the response envelope.",
|
|
165
|
-
"retryable": true
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
"code": "google_not_supported",
|
|
169
|
-
"type": "invalid_request_error",
|
|
170
|
-
"description": "POST /purchases/sync with rail=google is gated until the Play Developer API reconciliation worker ships.",
|
|
171
|
-
"resolution": "Until v1.5+, Google Play purchases verify via Real-time Developer Notifications. The SDK auto-track path handles this transparently for Android consumers.",
|
|
172
|
-
"retryable": false
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
"code": "stripe_not_supported",
|
|
176
|
-
"type": "invalid_request_error",
|
|
177
|
-
"description": "POST /purchases/sync with rail=stripe is unsupported — Stripe Checkout's redirect flow uses platform webhooks instead.",
|
|
178
|
-
"resolution": "Wire Stripe via the standard Checkout / Customer Portal flow; Crossdeck reconciles via the platform webhook automatically. No SDK call needed.",
|
|
179
|
-
"retryable": false
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
"code": "missing_required_param",
|
|
183
|
-
"type": "invalid_request_error",
|
|
184
|
-
"description": "A required field is absent from the request body.",
|
|
185
|
-
"resolution": "Inspect the error.message — the missing field name is included verbatim. Refer to the SDK's TypeScript types for the canonical request shape.",
|
|
186
|
-
"retryable": false
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
"code": "invalid_param_value",
|
|
190
|
-
"type": "invalid_request_error",
|
|
191
|
-
"description": "A field is present but the value failed validation (wrong shape, wrong length, wrong enum value).",
|
|
192
|
-
"resolution": "Read error.message for the specific field + reason. SDK-managed call sites should never emit this — file a bug if you do.",
|
|
193
|
-
"retryable": false
|
|
194
89
|
}
|
|
195
90
|
]
|
|
196
91
|
}
|