thirdweb 5.109.2-nightly-f2121e9519719ef809986c919acc5069b5b7ce74-20251022000400 → 5.110.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/exports/utils.js +5 -0
- package/dist/cjs/exports/utils.js.map +1 -1
- package/dist/cjs/extensions/airdrop/write/saveSnapshot.js +7 -1
- package/dist/cjs/extensions/airdrop/write/saveSnapshot.js.map +1 -1
- package/dist/cjs/extensions/common/read/getContractMetadata.js +7 -3
- package/dist/cjs/extensions/common/read/getContractMetadata.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +5 -2
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +5 -2
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
- package/dist/cjs/utils/contract/fetchContractMetadata.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc1155.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc1155.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc20.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc20.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc721.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/fetch-proofs-erc721.js.map +1 -1
- package/dist/cjs/utils/extensions/drops/get-claim-params.js +2 -1
- package/dist/cjs/utils/extensions/drops/get-claim-params.js.map +1 -1
- package/dist/cjs/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.js +7 -1
- package/dist/cjs/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.js.map +1 -1
- package/dist/cjs/utils/type-guards.js +25 -0
- package/dist/cjs/utils/type-guards.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/exports/utils.js +4 -0
- package/dist/esm/exports/utils.js.map +1 -1
- package/dist/esm/extensions/airdrop/write/saveSnapshot.js +7 -1
- package/dist/esm/extensions/airdrop/write/saveSnapshot.js.map +1 -1
- package/dist/esm/extensions/common/read/getContractMetadata.js +7 -3
- package/dist/esm/extensions/common/read/getContractMetadata.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +5 -2
- package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +5 -2
- package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
- package/dist/esm/utils/contract/fetchContractMetadata.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc1155.js +2 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc1155.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc20.js +2 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc20.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc721.js +2 -1
- package/dist/esm/utils/extensions/airdrop/fetch-proofs-erc721.js.map +1 -1
- package/dist/esm/utils/extensions/drops/get-claim-params.js +2 -1
- package/dist/esm/utils/extensions/drops/get-claim-params.js.map +1 -1
- package/dist/esm/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.js +7 -1
- package/dist/esm/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.js.map +1 -1
- package/dist/esm/utils/type-guards.js +23 -1
- package/dist/esm/utils/type-guards.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/scripts/bridge-widget.js +2 -2
- package/dist/types/exports/utils.d.ts +1 -0
- package/dist/types/exports/utils.d.ts.map +1 -1
- package/dist/types/extensions/airdrop/write/saveSnapshot.d.ts.map +1 -1
- package/dist/types/extensions/common/read/getContractMetadata.d.ts +3 -3
- package/dist/types/extensions/common/read/getContractMetadata.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/index.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.d.ts.map +1 -1
- package/dist/types/utils/contract/fetchContractMetadata.d.ts +1 -1
- package/dist/types/utils/contract/fetchContractMetadata.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/fetch-proofs-erc1155.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/fetch-proofs-erc20.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/fetch-proofs-erc721.d.ts.map +1 -1
- package/dist/types/utils/extensions/drops/get-claim-params.d.ts.map +1 -1
- package/dist/types/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.d.ts.map +1 -1
- package/dist/types/utils/type-guards.d.ts +24 -0
- package/dist/types/utils/type-guards.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/exports/utils.ts +5 -0
- package/src/extensions/airdrop/write/saveSnapshot.ts +7 -1
- package/src/extensions/common/read/getContractMetadata.ts +12 -7
- package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx +5 -2
- package/src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx +5 -2
- package/src/utils/contract/fetchContractMetadata.ts +1 -2
- package/src/utils/extensions/airdrop/fetch-proofs-erc1155.ts +3 -1
- package/src/utils/extensions/airdrop/fetch-proofs-erc20.ts +2 -1
- package/src/utils/extensions/airdrop/fetch-proofs-erc721.ts +3 -1
- package/src/utils/extensions/drops/get-claim-params.ts +3 -1
- package/src/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.ts +7 -1
- package/src/utils/type-guard.test.ts +115 -0
- package/src/utils/type-guards.ts +37 -1
- package/src/version.ts +1 -1
|
@@ -53,4 +53,5 @@ export type { JWTPayload } from "../utils/jwt/types.js";
|
|
|
53
53
|
export type { NFTInput, NFTMetadata } from "../utils/nft/parseNft.js";
|
|
54
54
|
export { resolvePromisedValue } from "../utils/promise/resolve-promised-value.js";
|
|
55
55
|
export { shortenLargeNumber } from "../utils/shortenLargeNumber.js";
|
|
56
|
+
export * from "../utils/type-guards.js";
|
|
56
57
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/exports/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/exports/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveSnapshot.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/airdrop/write/saveSnapshot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"saveSnapshot.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/airdrop/write/saveSnapshot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAI5E;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,kMAkDpD"}
|
|
@@ -12,8 +12,8 @@ export { isContractURISupported as isGetContractMetadataSupported } from "../__g
|
|
|
12
12
|
* ```
|
|
13
13
|
*/
|
|
14
14
|
export declare function getContractMetadata(options: BaseTransactionOptions): Promise<{
|
|
15
|
-
name: string;
|
|
16
|
-
symbol: string;
|
|
17
|
-
[key: string]:
|
|
15
|
+
name: string | null;
|
|
16
|
+
symbol: string | null;
|
|
17
|
+
[key: string]: unknown;
|
|
18
18
|
}>;
|
|
19
19
|
//# sourceMappingURL=getContractMetadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getContractMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/common/read/getContractMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAM5E,OAAO,EAAE,sBAAsB,IAAI,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AAElI;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"getContractMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/common/read/getContractMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAM5E,OAAO,EAAE,sBAAsB,IAAI,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AAElI;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC,CA6BD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,wCAAwC,CAAC;AAGhD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,wCAAwC,CAAC;AAGhD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAGhG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gDAAgD,CAAC;AAK9E,OAAO,KAAK,EACV,gBAAgB,EAEhB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsFG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CA6DlD;AAwDD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,QAAQ,EACR,OAAO,EACP,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,iBAAiB,CAAC;CAChC,8JAWA;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,QAAQ,EACR,OAAO,EACP,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,kBAAkB,CAAC;CACjC,8JAYA;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,EACpC,QAAQ,EACR,OAAO,EACP,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,gBAAgB,CAAC;CAC/B,8JAwBA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,iFAAiF,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,iFAAiF,CAAC;AAIzF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mEAAmE,CAAC;AAKhH,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,sBAAsB,EACtB,aAAa,CACd,GACC,mBAAmB,GAAG;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,8BAA8B,2CAiItC"}
|
|
@@ -14,6 +14,6 @@ export type FetchContractMetadata = {
|
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
16
16
|
export declare function fetchContractMetadata(options: FetchContractMetadata): Promise<{
|
|
17
|
-
[key: string]:
|
|
17
|
+
[key: string]: unknown;
|
|
18
18
|
} | undefined>;
|
|
19
19
|
//# sourceMappingURL=fetchContractMetadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchContractMetadata.d.ts","sourceRoot":"","sources":["../../../../src/utils/contract/fetchContractMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"fetchContractMetadata.d.ts","sourceRoot":"","sources":["../../../../src/utils/contract/fetchContractMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,CAAC,CAqBjD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-proofs-erc1155.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc1155.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-proofs-erc1155.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc1155.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAOtE,OAAO,KAAK,EACV,iBAAiB,EAGlB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAChD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAqEpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-proofs-erc20.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc20.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-proofs-erc20.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc20.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQtE,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC9C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CA0ElC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-proofs-erc721.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc721.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-proofs-erc721.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/airdrop/fetch-proofs-erc721.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAOtE,OAAO,KAAK,EACV,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAoEnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-claim-params.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/drops/get-claim-params.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"get-claim-params.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/drops/get-claim-params.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,KAAK,EAAkB,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,CACA;IACE,IAAI,EAAE,QAAQ,CAAC;CAChB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;CACvB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CACJ,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB;;;UAkIjD,GAAG;;;;;;;;;;;;GAUpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-multicall-set-claim-claim-conditon-transactions.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAItE,OAAO,EAAE,KAAK,GAAG,EAAS,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"get-multicall-set-claim-claim-conditon-transactions.d.ts","sourceRoot":"","sources":["../../../../../src/utils/extensions/drops/get-multicall-set-claim-claim-conditon-transactions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAItE,OAAO,EAAE,KAAK,GAAG,EAAS,MAAM,uBAAuB,CAAC;AAIxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,wBAAsB,yCAAyC,CAAC,OAAO,EAAE;IACvE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAqIjB"}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if a value is an object.
|
|
3
|
+
* @param value - The value to check.
|
|
4
|
+
* @returns True if the value is an object, false otherwise.
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare function isObject(value: unknown): value is object;
|
|
8
|
+
/**
|
|
9
|
+
* Checks if a value is a string.
|
|
10
|
+
* @param value - The value to check.
|
|
11
|
+
* @returns True if the value is a string, false otherwise.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare function isString(value: unknown): value is string;
|
|
1
15
|
/**
|
|
2
16
|
* Checks if a value is an object with specified keys.
|
|
3
17
|
* @param value - The value to check.
|
|
@@ -6,4 +20,14 @@
|
|
|
6
20
|
* @internal
|
|
7
21
|
*/
|
|
8
22
|
export declare function isObjectWithKeys<key extends string>(value: unknown, keys?: key[]): value is Record<key, unknown>;
|
|
23
|
+
/**
|
|
24
|
+
* Checks if a value is a record with string values.
|
|
25
|
+
* @param value - The value to check.
|
|
26
|
+
* @returns True if the value is a record with string values, false otherwise.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
export declare function isRecord<K extends string | number | symbol = string, V = string, T extends Record<K, V> = Record<K, V>>(value: unknown, guards?: {
|
|
30
|
+
key?: (k: unknown) => k is K;
|
|
31
|
+
value?: (v: unknown) => v is V;
|
|
32
|
+
}): value is T;
|
|
9
33
|
//# sourceMappingURL=type-guards.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../../src/utils/type-guards.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../../src/utils/type-guards.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,SAAS,MAAM,EACjD,KAAK,EAAE,OAAO,EACd,IAAI,GAAE,GAAG,EAAO,GACf,KAAK,IAAI,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAE/B;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAC3C,CAAC,GAAG,MAAM,EACV,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAErC,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE;IACP,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;CAChC,GACA,KAAK,IAAI,CAAC,CAQZ"}
|
package/dist/types/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "5.
|
|
1
|
+
export declare const version = "5.110.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,YAAY,CAAC"}
|
package/package.json
CHANGED
|
@@ -399,7 +399,7 @@
|
|
|
399
399
|
}
|
|
400
400
|
},
|
|
401
401
|
"typings": "./dist/types/exports/thirdweb.d.ts",
|
|
402
|
-
"version": "5.
|
|
402
|
+
"version": "5.110.0",
|
|
403
403
|
"scripts": {
|
|
404
404
|
"bench": "vitest -c ./test/vitest.config.ts bench",
|
|
405
405
|
"bench:compare": "bun run ./benchmarks/run.ts",
|
package/src/exports/utils.ts
CHANGED
|
@@ -197,3 +197,8 @@ export type { JWTPayload } from "../utils/jwt/types.js";
|
|
|
197
197
|
export type { NFTInput, NFTMetadata } from "../utils/nft/parseNft.js";
|
|
198
198
|
export { resolvePromisedValue } from "../utils/promise/resolve-promised-value.js";
|
|
199
199
|
export { shortenLargeNumber } from "../utils/shortenLargeNumber.js";
|
|
200
|
+
|
|
201
|
+
// ------------------------------------------------
|
|
202
|
+
// type guards
|
|
203
|
+
// ------------------------------------------------
|
|
204
|
+
export * from "../utils/type-guards.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { upload } from "../../../storage/upload.js";
|
|
2
2
|
import type { BaseTransactionOptions } from "../../../transaction/types.js";
|
|
3
|
+
import { isRecord } from "../../../utils/type-guards.js";
|
|
3
4
|
import { setContractURI } from "../../common/__generated__/IContractMetadata/write/setContractURI.js";
|
|
4
5
|
|
|
5
6
|
/**
|
|
@@ -80,7 +81,12 @@ export function saveSnapshot(
|
|
|
80
81
|
|
|
81
82
|
// keep the old merkle roots from other tokenIds
|
|
82
83
|
for (const key of Object.keys(metadata.merkle || {})) {
|
|
83
|
-
|
|
84
|
+
const merkleInfo = isRecord(metadata.merkle)
|
|
85
|
+
? metadata.merkle[key]
|
|
86
|
+
: undefined;
|
|
87
|
+
if (merkleInfo) {
|
|
88
|
+
merkleInfos[key] = merkleInfo;
|
|
89
|
+
}
|
|
84
90
|
}
|
|
85
91
|
const mergedMetadata = {
|
|
86
92
|
...metadata,
|
|
@@ -20,10 +20,9 @@ export { isContractURISupported as isGetContractMetadataSupported } from "../__g
|
|
|
20
20
|
export async function getContractMetadata(
|
|
21
21
|
options: BaseTransactionOptions,
|
|
22
22
|
): Promise<{
|
|
23
|
-
name: string;
|
|
24
|
-
symbol: string;
|
|
25
|
-
|
|
26
|
-
[key: string]: any;
|
|
23
|
+
name: string | null;
|
|
24
|
+
symbol: string | null;
|
|
25
|
+
[key: string]: unknown;
|
|
27
26
|
}> {
|
|
28
27
|
const [resolvedMetadata, resolvedName, resolvedSymbol] = await Promise.all([
|
|
29
28
|
contractURI(options)
|
|
@@ -43,8 +42,14 @@ export async function getContractMetadata(
|
|
|
43
42
|
|
|
44
43
|
// TODO: basic parsing?
|
|
45
44
|
return {
|
|
46
|
-
...resolvedMetadata,
|
|
47
|
-
name:
|
|
48
|
-
|
|
45
|
+
...(resolvedMetadata ?? {}),
|
|
46
|
+
name:
|
|
47
|
+
resolvedMetadata?.name && typeof resolvedMetadata.name === "string"
|
|
48
|
+
? resolvedMetadata.name
|
|
49
|
+
: resolvedName,
|
|
50
|
+
symbol:
|
|
51
|
+
resolvedMetadata?.symbol && typeof resolvedMetadata.symbol === "string"
|
|
52
|
+
? resolvedMetadata.symbol
|
|
53
|
+
: resolvedSymbol,
|
|
49
54
|
};
|
|
50
55
|
}
|
|
@@ -8,6 +8,7 @@ import { getContractMetadata } from "../../../../../../extensions/common/read/ge
|
|
|
8
8
|
import { getNFT } from "../../../../../../extensions/erc1155/read/getNFT.js";
|
|
9
9
|
import type { PreparedTransaction } from "../../../../../../transaction/prepare-transaction.js";
|
|
10
10
|
import type { BaseTransactionOptions } from "../../../../../../transaction/types.js";
|
|
11
|
+
import { isString } from "../../../../../../utils/type-guards.js";
|
|
11
12
|
import type { Account } from "../../../../../../wallets/interfaces/wallet.js";
|
|
12
13
|
import { useReadContract } from "../../../../../core/hooks/contract/useReadContract.js";
|
|
13
14
|
import { useActiveAccount } from "../../../../../core/hooks/wallets/useActiveAccount.js";
|
|
@@ -191,8 +192,10 @@ async function getPayMetadata(
|
|
|
191
192
|
};
|
|
192
193
|
}
|
|
193
194
|
return {
|
|
194
|
-
image: contractMetadata?.image
|
|
195
|
-
|
|
195
|
+
image: isString(contractMetadata?.image)
|
|
196
|
+
? contractMetadata.image
|
|
197
|
+
: undefined,
|
|
198
|
+
name: isString(contractMetadata?.name) ? contractMetadata.name : undefined,
|
|
196
199
|
};
|
|
197
200
|
}
|
|
198
201
|
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
createListing,
|
|
12
12
|
} from "../../../../../../extensions/marketplace/direct-listings/write/createListing.js";
|
|
13
13
|
import type { BaseTransactionOptions } from "../../../../../../transaction/types.js";
|
|
14
|
+
import { isString } from "../../../../../../utils/type-guards.js";
|
|
14
15
|
import { useReadContract } from "../../../../../core/hooks/contract/useReadContract.js";
|
|
15
16
|
import type { TransactionButtonProps } from "../../../../../core/hooks/transaction/transaction-button-utils.js";
|
|
16
17
|
import { useActiveAccount } from "../../../../../core/hooks/wallets/useActiveAccount.js";
|
|
@@ -228,7 +229,9 @@ async function getPayMetadata(
|
|
|
228
229
|
}
|
|
229
230
|
|
|
230
231
|
return {
|
|
231
|
-
image: contractMetadata?.image
|
|
232
|
-
|
|
232
|
+
image: isString(contractMetadata?.image)
|
|
233
|
+
? contractMetadata.image
|
|
234
|
+
: undefined,
|
|
235
|
+
name: isString(contractMetadata?.name) ? contractMetadata.name : undefined,
|
|
233
236
|
};
|
|
234
237
|
}
|
|
@@ -18,8 +18,7 @@ export type FetchContractMetadata = {
|
|
|
18
18
|
*/
|
|
19
19
|
export async function fetchContractMetadata(
|
|
20
20
|
options: FetchContractMetadata,
|
|
21
|
-
|
|
22
|
-
): Promise<{ [key: string]: any } | undefined> {
|
|
21
|
+
): Promise<{ [key: string]: unknown } | undefined> {
|
|
23
22
|
const { client, uri } = options;
|
|
24
23
|
|
|
25
24
|
// handle case where the URI is a base64 encoded JSON
|
|
@@ -3,6 +3,7 @@ import { getContractMetadata } from "../../../extensions/common/read/getContract
|
|
|
3
3
|
import { MerkleTree } from "../../../merkletree/MerkleTree.js";
|
|
4
4
|
import { download } from "../../../storage/download.js";
|
|
5
5
|
import type { Address } from "../../address.js";
|
|
6
|
+
import { isRecord } from "../../type-guards.js";
|
|
6
7
|
import { hashEntryERC1155 } from "./hash-entry-erc1155.js";
|
|
7
8
|
import type {
|
|
8
9
|
ClaimProofERC1155,
|
|
@@ -54,7 +55,8 @@ export async function fetchProofsERC1155(options: {
|
|
|
54
55
|
const metadata = await getContractMetadata({
|
|
55
56
|
contract,
|
|
56
57
|
});
|
|
57
|
-
|
|
58
|
+
|
|
59
|
+
const merkleData = isRecord(metadata.merkle) ? metadata.merkle : {};
|
|
58
60
|
const snapshotUri = merkleData[merkleRoot];
|
|
59
61
|
|
|
60
62
|
if (!snapshotUri) {
|
|
@@ -3,6 +3,7 @@ import { getContractMetadata } from "../../../extensions/common/read/getContract
|
|
|
3
3
|
import { MerkleTree } from "../../../merkletree/MerkleTree.js";
|
|
4
4
|
import { download } from "../../../storage/download.js";
|
|
5
5
|
import type { Address } from "../../address.js";
|
|
6
|
+
import { isRecord } from "../../type-guards.js";
|
|
6
7
|
import { convertQuantity } from "../drops/convert-quantity.js";
|
|
7
8
|
import { hashEntryERC20 } from "./hash-entry-erc20.js";
|
|
8
9
|
import type {
|
|
@@ -56,7 +57,7 @@ export async function fetchProofsERC20(options: {
|
|
|
56
57
|
const metadata = await getContractMetadata({
|
|
57
58
|
contract,
|
|
58
59
|
});
|
|
59
|
-
const merkleData
|
|
60
|
+
const merkleData = isRecord(metadata.merkle) ? metadata.merkle : {};
|
|
60
61
|
const snapshotUri = merkleData[merkleRoot];
|
|
61
62
|
|
|
62
63
|
if (!snapshotUri) {
|
|
@@ -3,6 +3,7 @@ import { getContractMetadata } from "../../../extensions/common/read/getContract
|
|
|
3
3
|
import { MerkleTree } from "../../../merkletree/MerkleTree.js";
|
|
4
4
|
import { download } from "../../../storage/download.js";
|
|
5
5
|
import type { Address } from "../../address.js";
|
|
6
|
+
import { isRecord } from "../../type-guards.js";
|
|
6
7
|
import { hashEntryERC721 } from "./hash-entry-erc721.js";
|
|
7
8
|
import type {
|
|
8
9
|
ClaimProofERC721,
|
|
@@ -54,7 +55,8 @@ export async function fetchProofsERC721(options: {
|
|
|
54
55
|
const metadata = await getContractMetadata({
|
|
55
56
|
contract,
|
|
56
57
|
});
|
|
57
|
-
|
|
58
|
+
|
|
59
|
+
const merkleData = isRecord(metadata.merkle) ? metadata.merkle : {};
|
|
58
60
|
const snapshotUri = merkleData[merkleRoot];
|
|
59
61
|
|
|
60
62
|
if (!snapshotUri) {
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
import type { ThirdwebContract } from "../../../contract/contract.js";
|
|
7
7
|
import { getContractMetadata } from "../../../extensions/common/read/getContractMetadata.js";
|
|
8
8
|
import type { Hex } from "../../encoding/hex.js";
|
|
9
|
+
import { isRecord } from "../../type-guards.js";
|
|
9
10
|
import type { ClaimCondition, OverrideProof } from "./types.js";
|
|
10
11
|
|
|
11
12
|
export type GetClaimParamsOptions = {
|
|
@@ -118,7 +119,8 @@ export async function getClaimParams(options: GetClaimParamsOptions) {
|
|
|
118
119
|
const metadata = await getContractMetadata({
|
|
119
120
|
contract: options.contract,
|
|
120
121
|
});
|
|
121
|
-
|
|
122
|
+
|
|
123
|
+
const merkleData = isRecord(metadata.merkle) ? metadata.merkle : {};
|
|
122
124
|
const snapshotUri = merkleData[cc.merkleRoot];
|
|
123
125
|
|
|
124
126
|
if (!snapshotUri) {
|
|
@@ -5,6 +5,7 @@ import type { SetClaimConditionsParams as GeneratedParams } from "../../../exten
|
|
|
5
5
|
import { upload } from "../../../storage/upload.js";
|
|
6
6
|
import { dateToSeconds } from "../../date.js";
|
|
7
7
|
import { type Hex, toHex } from "../../encoding/hex.js";
|
|
8
|
+
import { isRecord } from "../../type-guards.js";
|
|
8
9
|
import { convertErc20Amount } from "../convert-erc20-amount.js";
|
|
9
10
|
import { processOverrideList } from "./process-override-list.js";
|
|
10
11
|
import type { ClaimConditionsInput } from "./types.js";
|
|
@@ -74,7 +75,12 @@ export async function getMulticallSetClaimConditionTransactions(options: {
|
|
|
74
75
|
});
|
|
75
76
|
// keep the old merkle roots from other tokenIds
|
|
76
77
|
for (const key of Object.keys(metadata.merkle || {})) {
|
|
77
|
-
|
|
78
|
+
const merkleInfo = isRecord(metadata.merkle)
|
|
79
|
+
? metadata.merkle[key]
|
|
80
|
+
: undefined;
|
|
81
|
+
if (merkleInfo) {
|
|
82
|
+
merkleInfos[key] = merkleInfo;
|
|
83
|
+
}
|
|
78
84
|
}
|
|
79
85
|
const mergedMetadata = {
|
|
80
86
|
...metadata,
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
isObject,
|
|
5
|
+
isObjectWithKeys,
|
|
6
|
+
isRecord,
|
|
7
|
+
isString,
|
|
8
|
+
} from "./type-guards.js";
|
|
9
|
+
|
|
10
|
+
describe("isObject", () => {
|
|
11
|
+
it("returns true for plain objects", () => {
|
|
12
|
+
expect(isObject({})).toBe(true);
|
|
13
|
+
expect(isObject({ a: 1 })).toBe(true);
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it("returns true for non-null object-like values (arrays, dates, maps)", () => {
|
|
17
|
+
expect(isObject([])).toBe(true);
|
|
18
|
+
expect(isObject(new Date())).toBe(true);
|
|
19
|
+
expect(isObject(new Map())).toBe(true);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
it("returns false for primitives, functions and null/undefined", () => {
|
|
23
|
+
expect(isObject(null)).toBe(false);
|
|
24
|
+
expect(isObject(undefined)).toBe(false);
|
|
25
|
+
expect(isObject(123)).toBe(false);
|
|
26
|
+
expect(isObject("str")).toBe(false);
|
|
27
|
+
expect(isObject(true)).toBe(false);
|
|
28
|
+
expect(isObject(() => {})).toBe(false);
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
describe("isString", () => {
|
|
33
|
+
it("returns true for string primitives", () => {
|
|
34
|
+
expect(isString("" as unknown)).toBe(true);
|
|
35
|
+
expect(isString("hello" as unknown)).toBe(true);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it("returns false for non-strings and String objects", () => {
|
|
39
|
+
// String objects are typeof "object"
|
|
40
|
+
// eslint-disable-next-line no-new-wrappers
|
|
41
|
+
expect(isString(new String("x") as unknown)).toBe(false);
|
|
42
|
+
expect(isString(1 as unknown)).toBe(false);
|
|
43
|
+
expect(isString({} as unknown)).toBe(false);
|
|
44
|
+
expect(isString([] as unknown)).toBe(false);
|
|
45
|
+
expect(isString(null as unknown)).toBe(false);
|
|
46
|
+
expect(isString(undefined as unknown)).toBe(false);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
describe("isObjectWithKeys", () => {
|
|
51
|
+
it("returns true when object has all specified keys", () => {
|
|
52
|
+
const value = { a: 1, b: 2 } as const;
|
|
53
|
+
expect(isObjectWithKeys(value, ["a"])).toBe(true);
|
|
54
|
+
expect(isObjectWithKeys(value, ["a", "b"])).toBe(true);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it("returns false when any specified key is missing", () => {
|
|
58
|
+
const value = { a: 1 } as const;
|
|
59
|
+
expect(isObjectWithKeys(value, ["a", "b"])).toBe(false);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
it("defaults to just checking object-ness when no keys are provided", () => {
|
|
63
|
+
expect(isObjectWithKeys({})).toBe(true);
|
|
64
|
+
expect(isObjectWithKeys([])).toBe(true);
|
|
65
|
+
expect(isObjectWithKeys(123 as unknown)).toBe(false);
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
it("works with arrays when keys exist on the array", () => {
|
|
69
|
+
const arr = ["x"];
|
|
70
|
+
expect(isObjectWithKeys(arr, ["0"])).toBe(true);
|
|
71
|
+
expect(isObjectWithKeys(arr, ["length"])).toBe(true);
|
|
72
|
+
expect(isObjectWithKeys([], ["0"])).toBe(false);
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
describe("isRecord", () => {
|
|
77
|
+
it("returns true for plain object with string values (default)", () => {
|
|
78
|
+
expect(isRecord({})).toBe(true);
|
|
79
|
+
expect(isRecord({ a: "x", b: "y" })).toBe(true);
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
it("returns false for arrays and non-objects", () => {
|
|
83
|
+
expect(isRecord([] as unknown)).toBe(false);
|
|
84
|
+
expect(isRecord(1 as unknown)).toBe(false);
|
|
85
|
+
expect(isRecord(null as unknown)).toBe(false);
|
|
86
|
+
expect(isRecord(undefined as unknown)).toBe(false);
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
it("returns false when any value is not a string (default guards)", () => {
|
|
90
|
+
expect(isRecord({ a: 1 })).toBe(false);
|
|
91
|
+
expect(isRecord({ a: "x", b: 2 as unknown as string })).toBe(false);
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
it("respects a custom value guard (numbers)", () => {
|
|
95
|
+
const numberGuard = (v: unknown): v is number => typeof v === "number";
|
|
96
|
+
expect(isRecord({ a: 1, b: 2 }, { value: numberGuard })).toBe(true);
|
|
97
|
+
expect(isRecord({ a: 1, b: "x" }, { value: numberGuard })).toBe(false);
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
it("applies a custom key guard", () => {
|
|
101
|
+
const keyStartsWithA = (k: unknown): k is string =>
|
|
102
|
+
typeof k === "string" && k.startsWith("a");
|
|
103
|
+
expect(
|
|
104
|
+
isRecord({ apple: "x", aardvark: "y" }, { key: keyStartsWithA }),
|
|
105
|
+
).toBe(true);
|
|
106
|
+
expect(isRecord({ banana: "x" }, { key: keyStartsWithA })).toBe(false);
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
it("objects with only symbol keys are considered records (no enumerable string keys)", () => {
|
|
110
|
+
const s = Symbol("s");
|
|
111
|
+
const obj = { [s]: "x" } as Record<symbol, string>;
|
|
112
|
+
// Object.entries ignores symbol keys; guard will see zero entries
|
|
113
|
+
expect(isRecord(obj)).toBe(true);
|
|
114
|
+
});
|
|
115
|
+
});
|
package/src/utils/type-guards.ts
CHANGED
|
@@ -4,10 +4,20 @@
|
|
|
4
4
|
* @returns True if the value is an object, false otherwise.
|
|
5
5
|
* @internal
|
|
6
6
|
*/
|
|
7
|
-
function isObject(value: unknown): value is object {
|
|
7
|
+
export function isObject(value: unknown): value is object {
|
|
8
8
|
return typeof value === "object" && value !== null;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* Checks if a value is a string.
|
|
13
|
+
* @param value - The value to check.
|
|
14
|
+
* @returns True if the value is a string, false otherwise.
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
export function isString(value: unknown): value is string {
|
|
18
|
+
return typeof value === "string";
|
|
19
|
+
}
|
|
20
|
+
|
|
11
21
|
/**
|
|
12
22
|
* Checks if a value is an object with specified keys.
|
|
13
23
|
* @param value - The value to check.
|
|
@@ -21,3 +31,29 @@ export function isObjectWithKeys<key extends string>(
|
|
|
21
31
|
): value is Record<key, unknown> {
|
|
22
32
|
return isObject(value) && keys.every((key) => key in value);
|
|
23
33
|
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Checks if a value is a record with string values.
|
|
37
|
+
* @param value - The value to check.
|
|
38
|
+
* @returns True if the value is a record with string values, false otherwise.
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
export function isRecord<
|
|
42
|
+
K extends string | number | symbol = string,
|
|
43
|
+
V = string,
|
|
44
|
+
T extends Record<K, V> = Record<K, V>,
|
|
45
|
+
>(
|
|
46
|
+
value: unknown,
|
|
47
|
+
guards?: {
|
|
48
|
+
key?: (k: unknown) => k is K;
|
|
49
|
+
value?: (v: unknown) => v is V;
|
|
50
|
+
},
|
|
51
|
+
): value is T {
|
|
52
|
+
const keyGuard = guards?.key ?? isString;
|
|
53
|
+
const valueGuard = guards?.value ?? isString;
|
|
54
|
+
return (
|
|
55
|
+
isObject(value) &&
|
|
56
|
+
!Array.isArray(value) &&
|
|
57
|
+
Object.entries(value).every(([k, v]) => keyGuard(k) && valueGuard(v))
|
|
58
|
+
);
|
|
59
|
+
}
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = "5.
|
|
1
|
+
export const version = "5.110.0";
|