@xyo-network/crypto-nft-diviner-score-plugin 3.4.2 → 3.4.3
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/browser/Diviner.d.ts +13 -0
- package/dist/browser/Diviner.d.ts.map +1 -0
- package/dist/browser/Plugin.d.ts +13 -0
- package/dist/browser/Plugin.d.ts.map +1 -0
- package/dist/browser/index.d.ts +4 -95
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.mjs +24 -6
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/lib/index.d.ts +2 -0
- package/dist/browser/lib/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/analyzeNft.d.ts +13 -0
- package/dist/browser/lib/rating/analyzeNft.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/index.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/contract.d.ts +4 -0
- package/dist/browser/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/index.d.ts +6 -0
- package/dist/browser/lib/rating/criteria/scoring/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/supply.d.ts +4 -0
- package/dist/browser/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts +10 -0
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/type.d.ts +4 -0
- package/dist/browser/lib/rating/criteria/scoring/type.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts +55 -0
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
- package/dist/browser/lib/rating/index.d.ts +3 -0
- package/dist/browser/lib/rating/index.d.ts.map +1 -0
- package/dist/neutral/Diviner.d.ts +13 -0
- package/dist/neutral/Diviner.d.ts.map +1 -0
- package/dist/neutral/Plugin.d.ts +13 -0
- package/dist/neutral/Plugin.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +4 -95
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/index.mjs +24 -6
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/lib/index.d.ts +2 -0
- package/dist/neutral/lib/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/analyzeNft.d.ts +13 -0
- package/dist/neutral/lib/rating/analyzeNft.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/index.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts +4 -0
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts +6 -0
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts +4 -0
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts +10 -0
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/type.d.ts +4 -0
- package/dist/neutral/lib/rating/criteria/scoring/type.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts +55 -0
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
- package/dist/neutral/lib/rating/index.d.ts +3 -0
- package/dist/neutral/lib/rating/index.d.ts.map +1 -0
- package/dist/node/Diviner.d.ts +13 -0
- package/dist/node/Diviner.d.ts.map +1 -0
- package/dist/node/Plugin.d.ts +13 -0
- package/dist/node/Plugin.d.ts.map +1 -0
- package/dist/node/index.d.ts +4 -95
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.mjs +24 -6
- package/dist/node/index.mjs.map +1 -1
- package/dist/node/lib/index.d.ts +2 -0
- package/dist/node/lib/index.d.ts.map +1 -0
- package/dist/node/lib/rating/analyzeNft.d.ts +13 -0
- package/dist/node/lib/rating/analyzeNft.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/index.d.ts +2 -0
- package/dist/node/lib/rating/criteria/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/contract.d.ts +4 -0
- package/dist/node/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/index.d.ts +6 -0
- package/dist/node/lib/rating/criteria/scoring/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/supply.d.ts +4 -0
- package/dist/node/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts +10 -0
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/type.d.ts +4 -0
- package/dist/node/lib/rating/criteria/scoring/type.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoringCriteria.d.ts +55 -0
- package/dist/node/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
- package/dist/node/lib/rating/index.d.ts +3 -0
- package/dist/node/lib/rating/index.d.ts.map +1 -0
- package/package.json +14 -14
- package/src/Diviner.ts +6 -9
- package/src/lib/rating/analyzeNft.ts +2 -2
- package/src/lib/rating/criteria/scoring/contract.ts +4 -3
- package/src/lib/rating/criteria/scoring/metadata/animationUrl.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/backgroundColor.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/description.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/externalUrl.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/image.ts +4 -3
- package/src/lib/rating/criteria/scoring/metadata/imageData.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/name.ts +2 -3
- package/src/lib/rating/criteria/scoring/metadata/spec/testHelpers.ts +1 -2
- package/src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts +4 -3
- package/src/lib/rating/criteria/scoring/supply.ts +4 -3
- package/src/lib/rating/criteria/scoring/tokenId.ts +4 -3
- package/src/lib/rating/criteria/scoring/type.ts +4 -3
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
+
import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreNftImage: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
|
|
4
|
+
export declare const scoreImage: (image: unknown) => ScaledScore;
|
|
5
|
+
//# sourceMappingURL=image.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EACiB,WAAW,EAClC,MAAM,qCAAqC,CAAA;AAQ5C,eAAO,MAAM,aAAa,GAAI,KAAK,aAAa,GAAG,oBAAoB,KAAG,WAQzE,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,WAS3C,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
+
import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreNftImageData: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
|
|
4
|
+
export declare const scoreImageData: (image_data: unknown) => ScaledScore;
|
|
5
|
+
//# sourceMappingURL=imageData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageData.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/imageData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAQ,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAmBvE,eAAO,MAAM,iBAAiB,GAAI,KAAK,aAAa,GAAG,oBAAoB,KAAG,WAQ7E,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,YAAY,OAAO,KAAG,WAIpD,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './animationUrl.ts';
|
|
2
|
+
export * from './attributes/index.ts';
|
|
3
|
+
export * from './backgroundColor.ts';
|
|
4
|
+
export * from './description.ts';
|
|
5
|
+
export * from './externalUrl.ts';
|
|
6
|
+
export * from './image.ts';
|
|
7
|
+
export * from './imageData.ts';
|
|
8
|
+
export * from './name.ts';
|
|
9
|
+
export * from './youtubeUrl.ts';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const web3Protocols: string[];
|
|
2
|
+
export declare const toUrl: (url?: string | null) => URL | undefined;
|
|
3
|
+
export declare const isValidUrl: (url?: string | null) => boolean;
|
|
4
|
+
export declare const isWeb3: (url?: string | null) => boolean;
|
|
5
|
+
export declare const isWeb2: (url?: string | null) => boolean;
|
|
6
|
+
export declare const isSecure: (url?: string | null) => boolean;
|
|
7
|
+
//# sourceMappingURL=urlHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"urlHelpers.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,UAAmB,CAAA;AAE7C,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,GAAG,GAAG,SAOjD,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,OAAmC,CAAA;AAEpF,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,OAA4E,CAAA;AACzH,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,OAAuB,CAAA;AACpE,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,OAA2D,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
+
import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreNftName: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
|
|
4
|
+
export declare const scoreName: (name: unknown) => ScaledScore;
|
|
5
|
+
//# sourceMappingURL=name.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"name.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,YAAY,GAAI,KAAK,aAAa,GAAG,oBAAoB,KAAG,WAExE,CAAA;AACD,eAAO,MAAM,SAAS,GAAI,MAAM,OAAO,KAAG,WAIzC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
+
import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreNftYoutubeUrl: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
|
|
4
|
+
export declare const scoreYoutubeUrl: (youtube_url: unknown) => ScaledScore;
|
|
5
|
+
//# sourceMappingURL=youtubeUrl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"youtubeUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EACiB,WAAW,EAClC,MAAM,qCAAqC,CAAA;AAI5C,eAAO,MAAM,kBAAkB,GAAI,KAAK,aAAa,GAAG,oBAAoB,KAAG,WAE9E,CAAA;AACD,eAAO,MAAM,eAAe,GAAI,aAAa,OAAO,KAAG,WAOtD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supply.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/supply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EACO,uBAAuB,EACpC,MAAM,qCAAqC,CAAA;AAE5C,eAAO,MAAM,WAAW,EAAE,uBAAuB,CAAC,aAAa,CAQ9D,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
+
import { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
/**
|
|
4
|
+
* Callers SHALL NOT assume that ID numbers have any specific pattern to them, and
|
|
5
|
+
* MUST treat the ID as a "black box"
|
|
6
|
+
* @param nft
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export declare const scoreTokenId: PassFailScoringFunction<NftInfoFields>;
|
|
10
|
+
//# sourceMappingURL=tokenId.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenId.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/tokenId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EACO,uBAAuB,EACpC,MAAM,qCAAqC,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EACO,uBAAuB,EACpC,MAAM,qCAAqC,CAAA;AAE5C,eAAO,MAAM,SAAS,EAAE,uBAAuB,CAAC,aAAa,CAM5D,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export declare const scoringCriteria: {
|
|
2
|
+
Attributes: {
|
|
3
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
4
|
+
weight: number;
|
|
5
|
+
};
|
|
6
|
+
'Animation URL': {
|
|
7
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
8
|
+
weight: number;
|
|
9
|
+
};
|
|
10
|
+
'Background Color': {
|
|
11
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
12
|
+
weight: number;
|
|
13
|
+
};
|
|
14
|
+
Description: {
|
|
15
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
16
|
+
weight: number;
|
|
17
|
+
};
|
|
18
|
+
'External Url': {
|
|
19
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
20
|
+
weight: number;
|
|
21
|
+
};
|
|
22
|
+
Image: {
|
|
23
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
24
|
+
weight: number;
|
|
25
|
+
};
|
|
26
|
+
'Image Data': {
|
|
27
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
28
|
+
weight: number;
|
|
29
|
+
};
|
|
30
|
+
Name: {
|
|
31
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
32
|
+
weight: number;
|
|
33
|
+
};
|
|
34
|
+
'YouTube URL': {
|
|
35
|
+
score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
|
|
36
|
+
weight: number;
|
|
37
|
+
};
|
|
38
|
+
'Contract Address': {
|
|
39
|
+
score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
|
|
40
|
+
weight: number;
|
|
41
|
+
};
|
|
42
|
+
Supply: {
|
|
43
|
+
score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
|
|
44
|
+
weight: number;
|
|
45
|
+
};
|
|
46
|
+
'Token Id': {
|
|
47
|
+
score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
|
|
48
|
+
weight: number;
|
|
49
|
+
};
|
|
50
|
+
Type: {
|
|
51
|
+
score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
|
|
52
|
+
weight: number;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=scoringCriteria.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoringCriteria.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/criteria/scoringCriteria.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM3B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/crypto-nft-diviner-score-plugin",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.3",
|
|
4
4
|
"description": "Typescript/Javascript Plugins for XYO Platform",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -29,25 +29,25 @@
|
|
|
29
29
|
"module": "dist/neutral/index.mjs",
|
|
30
30
|
"types": "dist/neutral/index.d.ts",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@xyo-network/crypto-nft-payload-plugin": "^3.4.
|
|
33
|
-
"@xyo-network/crypto-nft-score-model": "^3.4.
|
|
34
|
-
"@xyo-network/diviner-abstract": "^3.9.
|
|
35
|
-
"@xyo-network/diviner-model": "^3.9.
|
|
36
|
-
"@xyo-network/module-model": "^3.9.
|
|
37
|
-
"@xyo-network/payload-builder": "^3.9.
|
|
38
|
-
"@xyo-network/payload-model": "^3.9.
|
|
39
|
-
"@xyo-network/payloadset-plugin": "^3.9.
|
|
32
|
+
"@xyo-network/crypto-nft-payload-plugin": "^3.4.3",
|
|
33
|
+
"@xyo-network/crypto-nft-score-model": "^3.4.3",
|
|
34
|
+
"@xyo-network/diviner-abstract": "^3.9.23",
|
|
35
|
+
"@xyo-network/diviner-model": "^3.9.23",
|
|
36
|
+
"@xyo-network/module-model": "^3.9.23",
|
|
37
|
+
"@xyo-network/payload-builder": "^3.9.23",
|
|
38
|
+
"@xyo-network/payload-model": "^3.9.23",
|
|
39
|
+
"@xyo-network/payloadset-plugin": "^3.9.23",
|
|
40
40
|
"ethers": "^6.13.5",
|
|
41
41
|
"svg-parser": "^2.0.4"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/svg-parser": "^2.0.6",
|
|
45
|
-
"@xylabs/ts-scripts-yarn3": "^5.0.
|
|
46
|
-
"@xylabs/tsconfig": "^5.0.
|
|
45
|
+
"@xylabs/ts-scripts-yarn3": "^5.0.39",
|
|
46
|
+
"@xylabs/tsconfig": "^5.0.39",
|
|
47
47
|
"@xylabs/vitest-extended": "^4.5.1",
|
|
48
|
-
"@xyo-network/payload-wrapper": "^3.9.
|
|
49
|
-
"typescript": "^5.
|
|
50
|
-
"vitest": "^3.0.
|
|
48
|
+
"@xyo-network/payload-wrapper": "^3.9.23",
|
|
49
|
+
"typescript": "^5.8.2",
|
|
50
|
+
"vitest": "^3.0.7"
|
|
51
51
|
},
|
|
52
52
|
"publishConfig": {
|
|
53
53
|
"access": "public"
|
package/src/Diviner.ts
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
isNftInfo,
|
|
2
3
|
NftInfo,
|
|
3
4
|
NftScore,
|
|
4
5
|
NftScoreDivinerConfig,
|
|
5
|
-
} from '@xyo-network/crypto-nft-payload-plugin'
|
|
6
|
-
import {
|
|
7
|
-
isNftInfo,
|
|
8
6
|
NftScoreDivinerConfigSchema,
|
|
9
7
|
NftScoreSchema,
|
|
10
8
|
} from '@xyo-network/crypto-nft-payload-plugin'
|
|
11
9
|
import { AbstractDiviner } from '@xyo-network/diviner-abstract'
|
|
12
|
-
import
|
|
13
|
-
import
|
|
10
|
+
import { DivinerParams } from '@xyo-network/diviner-model'
|
|
11
|
+
import { AnyConfigSchema } from '@xyo-network/module-model'
|
|
14
12
|
import { PayloadBuilder } from '@xyo-network/payload-builder'
|
|
15
|
-
import
|
|
13
|
+
import { Payload, Schema } from '@xyo-network/payload-model'
|
|
16
14
|
|
|
17
|
-
import
|
|
18
|
-
import { analyzeNft } from './lib/index.ts'
|
|
15
|
+
import { analyzeNft, NftAnalysis } from './lib/index.ts'
|
|
19
16
|
|
|
20
17
|
export type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>
|
|
21
18
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import { Score } from '@xyo-network/crypto-nft-score-model'
|
|
3
3
|
|
|
4
4
|
import { scoringCriteria } from './criteria/index.ts'
|
|
5
5
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
FAIL, PASS, PassFailScoringFunction,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
import { isAddress } from 'ethers'
|
|
5
6
|
|
|
6
7
|
export const scoreContractAddress: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
3
2
|
import {
|
|
4
|
-
incrementPossible, incrementTotal, incrementTotalAndPossible, PASS,
|
|
3
|
+
incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore,
|
|
5
4
|
} from '@xyo-network/crypto-nft-score-model'
|
|
6
5
|
|
|
7
6
|
import {
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
2
|
NftAttribute, NftInfoFields, OpenSeaNftAttribute, OpenSeaNftInfoFields,
|
|
3
3
|
} from '@xyo-network/crypto-nft-payload-plugin'
|
|
4
|
-
import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
5
4
|
import {
|
|
6
|
-
incrementPossible, incrementTotal, incrementTotalAndPossible,
|
|
5
|
+
incrementPossible, incrementTotal, incrementTotalAndPossible, ScaledScore,
|
|
7
6
|
} from '@xyo-network/crypto-nft-score-model'
|
|
8
7
|
|
|
9
8
|
const isDate = (value: unknown): value is Date => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
3
2
|
import {
|
|
4
|
-
incrementPossible, incrementTotal, incrementTotalAndPossible, PASS,
|
|
3
|
+
incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore,
|
|
5
4
|
} from '@xyo-network/crypto-nft-score-model'
|
|
6
5
|
|
|
7
6
|
const isHexColor = /^[\da-f]{6}$/i
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
4
3
|
|
|
5
4
|
export const scoreNftDescription = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {
|
|
6
5
|
return scoreDescription(nft.metadata?.description)
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
4
3
|
|
|
5
4
|
import { isSecure, isValidUrl } from './lib/index.ts'
|
|
6
5
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
incrementTotal, PASS, ScaledScore,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
|
|
5
6
|
import {
|
|
6
7
|
isSecure, isValidUrl, isWeb3,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { PASS } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import { PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
4
3
|
import { parse } from 'svg-parser'
|
|
5
4
|
|
|
6
5
|
const MaxPossibleImageDataScore = 1
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
4
3
|
|
|
5
4
|
export const scoreNftName = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {
|
|
6
5
|
return scoreName(nft.metadata?.name)
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import '@xylabs/vitest-extended'
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import { PASS } from '@xyo-network/crypto-nft-score-model'
|
|
3
|
+
import { PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
|
|
5
4
|
import { expect } from 'vitest'
|
|
6
5
|
|
|
7
6
|
export const expectMaxPossibleScore = (score: ScaledScore) => {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
incrementTotal, PASS, ScaledScore,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
|
|
5
6
|
import { isSecure, isValidUrl } from './lib/index.ts'
|
|
6
7
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
FAIL, PASS, PassFailScoringFunction,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
|
|
5
6
|
export const scoreSupply: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
|
|
6
7
|
if (!nft.supply) return FAIL
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
FAIL, PASS, PassFailScoringFunction,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Callers SHALL NOT assume that ID numbers have any specific pattern to them, and
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
|
|
2
|
+
import {
|
|
3
|
+
FAIL, PASS, PassFailScoringFunction,
|
|
4
|
+
} from '@xyo-network/crypto-nft-score-model'
|
|
4
5
|
|
|
5
6
|
export const scoreType: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
|
|
6
7
|
if (!nft.type) return FAIL
|