@xyo-network/crypto-nft-diviner-score-plugin 2.99.5 → 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/browser/index.d.ts +102 -4
- package/dist/browser/index.mjs +131 -237
- package/dist/browser/index.mjs.map +1 -1
- package/dist/neutral/index.d.ts +102 -4
- package/dist/neutral/index.mjs +131 -237
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/node/index.d.ts +102 -4
- package/dist/node/index.mjs +153 -280
- package/dist/node/index.mjs.map +1 -1
- package/package.json +17 -37
- package/src/index.ts +1 -1
- package/src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts +0 -2
- package/dist/browser/Diviner.d.cts +0 -13
- package/dist/browser/Diviner.d.cts.map +0 -1
- package/dist/browser/Diviner.d.mts +0 -13
- package/dist/browser/Diviner.d.mts.map +0 -1
- package/dist/browser/Diviner.d.ts +0 -13
- package/dist/browser/Diviner.d.ts.map +0 -1
- package/dist/browser/Plugin.d.cts +0 -19
- package/dist/browser/Plugin.d.cts.map +0 -1
- package/dist/browser/Plugin.d.mts +0 -19
- package/dist/browser/Plugin.d.mts.map +0 -1
- package/dist/browser/Plugin.d.ts +0 -19
- package/dist/browser/Plugin.d.ts.map +0 -1
- package/dist/browser/index.cjs +0 -479
- package/dist/browser/index.cjs.map +0 -1
- package/dist/browser/index.d.cts +0 -4
- package/dist/browser/index.d.cts.map +0 -1
- package/dist/browser/index.d.mts +0 -4
- package/dist/browser/index.d.mts.map +0 -1
- package/dist/browser/index.d.ts.map +0 -1
- package/dist/browser/lib/index.d.cts +0 -2
- package/dist/browser/lib/index.d.cts.map +0 -1
- package/dist/browser/lib/index.d.mts +0 -2
- package/dist/browser/lib/index.d.mts.map +0 -1
- package/dist/browser/lib/index.d.ts +0 -2
- package/dist/browser/lib/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/analyzeNft.d.cts +0 -9
- package/dist/browser/lib/rating/analyzeNft.d.cts.map +0 -1
- package/dist/browser/lib/rating/analyzeNft.d.mts +0 -9
- package/dist/browser/lib/rating/analyzeNft.d.mts.map +0 -1
- package/dist/browser/lib/rating/analyzeNft.d.ts +0 -9
- package/dist/browser/lib/rating/analyzeNft.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/index.d.cts +0 -2
- package/dist/browser/lib/rating/criteria/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/index.d.mts +0 -2
- package/dist/browser/lib/rating/criteria/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/index.d.ts +0 -2
- package/dist/browser/lib/rating/criteria/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/contract.d.cts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/contract.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/contract.d.mts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/contract.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/contract.d.ts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/contract.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/index.d.cts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/index.d.mts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/index.d.ts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +0 -6
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.cts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.mts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.cts +0 -10
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.mts +0 -10
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts +0 -10
- package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.cts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.mts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts +0 -2
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts +0 -8
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts +0 -8
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +0 -8
- package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +0 -5
- package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/supply.d.cts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/supply.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/supply.d.mts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/supply.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/supply.d.ts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/supply.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.cts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.mts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/type.d.cts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/type.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/type.d.mts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/type.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoring/type.d.ts +0 -4
- package/dist/browser/lib/rating/criteria/scoring/type.d.ts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.cts +0 -55
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.cts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.mts +0 -55
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.mts.map +0 -1
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts +0 -55
- package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts.map +0 -1
- package/dist/browser/lib/rating/index.d.cts +0 -3
- package/dist/browser/lib/rating/index.d.cts.map +0 -1
- package/dist/browser/lib/rating/index.d.mts +0 -3
- package/dist/browser/lib/rating/index.d.mts.map +0 -1
- package/dist/browser/lib/rating/index.d.ts +0 -3
- package/dist/browser/lib/rating/index.d.ts.map +0 -1
- package/dist/neutral/Diviner.d.cts +0 -13
- package/dist/neutral/Diviner.d.cts.map +0 -1
- package/dist/neutral/Diviner.d.mts +0 -13
- package/dist/neutral/Diviner.d.mts.map +0 -1
- package/dist/neutral/Diviner.d.ts +0 -13
- package/dist/neutral/Diviner.d.ts.map +0 -1
- package/dist/neutral/Plugin.d.cts +0 -19
- package/dist/neutral/Plugin.d.cts.map +0 -1
- package/dist/neutral/Plugin.d.mts +0 -19
- package/dist/neutral/Plugin.d.mts.map +0 -1
- package/dist/neutral/Plugin.d.ts +0 -19
- package/dist/neutral/Plugin.d.ts.map +0 -1
- package/dist/neutral/index.cjs +0 -479
- package/dist/neutral/index.cjs.map +0 -1
- package/dist/neutral/index.d.cts +0 -4
- package/dist/neutral/index.d.cts.map +0 -1
- package/dist/neutral/index.d.mts +0 -4
- package/dist/neutral/index.d.mts.map +0 -1
- package/dist/neutral/index.d.ts.map +0 -1
- package/dist/neutral/lib/index.d.cts +0 -2
- package/dist/neutral/lib/index.d.cts.map +0 -1
- package/dist/neutral/lib/index.d.mts +0 -2
- package/dist/neutral/lib/index.d.mts.map +0 -1
- package/dist/neutral/lib/index.d.ts +0 -2
- package/dist/neutral/lib/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/analyzeNft.d.cts +0 -9
- package/dist/neutral/lib/rating/analyzeNft.d.cts.map +0 -1
- package/dist/neutral/lib/rating/analyzeNft.d.mts +0 -9
- package/dist/neutral/lib/rating/analyzeNft.d.mts.map +0 -1
- package/dist/neutral/lib/rating/analyzeNft.d.ts +0 -9
- package/dist/neutral/lib/rating/analyzeNft.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/index.d.cts +0 -2
- package/dist/neutral/lib/rating/criteria/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/index.d.mts +0 -2
- package/dist/neutral/lib/rating/criteria/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/index.d.ts +0 -2
- package/dist/neutral/lib/rating/criteria/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.cts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.mts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/index.d.cts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/index.d.mts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +0 -6
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.cts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.mts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.cts +0 -10
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.mts +0 -10
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts +0 -10
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.cts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.mts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts +0 -2
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts +0 -8
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts +0 -8
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +0 -8
- package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +0 -5
- package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.cts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.mts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.cts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.mts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/type.d.cts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/type.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/type.d.mts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/type.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoring/type.d.ts +0 -4
- package/dist/neutral/lib/rating/criteria/scoring/type.d.ts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.cts +0 -55
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.cts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.mts +0 -55
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.mts.map +0 -1
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts +0 -55
- package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts.map +0 -1
- package/dist/neutral/lib/rating/index.d.cts +0 -3
- package/dist/neutral/lib/rating/index.d.cts.map +0 -1
- package/dist/neutral/lib/rating/index.d.mts +0 -3
- package/dist/neutral/lib/rating/index.d.mts.map +0 -1
- package/dist/neutral/lib/rating/index.d.ts +0 -3
- package/dist/neutral/lib/rating/index.d.ts.map +0 -1
- package/dist/node/Diviner.d.cts +0 -13
- package/dist/node/Diviner.d.cts.map +0 -1
- package/dist/node/Diviner.d.mts +0 -13
- package/dist/node/Diviner.d.mts.map +0 -1
- package/dist/node/Diviner.d.ts +0 -13
- package/dist/node/Diviner.d.ts.map +0 -1
- package/dist/node/Plugin.d.cts +0 -19
- package/dist/node/Plugin.d.cts.map +0 -1
- package/dist/node/Plugin.d.mts +0 -19
- package/dist/node/Plugin.d.mts.map +0 -1
- package/dist/node/Plugin.d.ts +0 -19
- package/dist/node/Plugin.d.ts.map +0 -1
- package/dist/node/index.cjs +0 -508
- package/dist/node/index.cjs.map +0 -1
- package/dist/node/index.d.cts +0 -4
- package/dist/node/index.d.cts.map +0 -1
- package/dist/node/index.d.mts +0 -4
- package/dist/node/index.d.mts.map +0 -1
- package/dist/node/index.d.ts.map +0 -1
- package/dist/node/lib/index.d.cts +0 -2
- package/dist/node/lib/index.d.cts.map +0 -1
- package/dist/node/lib/index.d.mts +0 -2
- package/dist/node/lib/index.d.mts.map +0 -1
- package/dist/node/lib/index.d.ts +0 -2
- package/dist/node/lib/index.d.ts.map +0 -1
- package/dist/node/lib/rating/analyzeNft.d.cts +0 -9
- package/dist/node/lib/rating/analyzeNft.d.cts.map +0 -1
- package/dist/node/lib/rating/analyzeNft.d.mts +0 -9
- package/dist/node/lib/rating/analyzeNft.d.mts.map +0 -1
- package/dist/node/lib/rating/analyzeNft.d.ts +0 -9
- package/dist/node/lib/rating/analyzeNft.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/index.d.cts +0 -2
- package/dist/node/lib/rating/criteria/index.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/index.d.mts +0 -2
- package/dist/node/lib/rating/criteria/index.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/index.d.ts +0 -2
- package/dist/node/lib/rating/criteria/index.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/contract.d.cts +0 -4
- package/dist/node/lib/rating/criteria/scoring/contract.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/contract.d.mts +0 -4
- package/dist/node/lib/rating/criteria/scoring/contract.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/contract.d.ts +0 -4
- package/dist/node/lib/rating/criteria/scoring/contract.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/index.d.cts +0 -6
- package/dist/node/lib/rating/criteria/scoring/index.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/index.d.mts +0 -6
- package/dist/node/lib/rating/criteria/scoring/index.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/index.d.ts +0 -6
- package/dist/node/lib/rating/criteria/scoring/index.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts +0 -6
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts +0 -6
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +0 -6
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.cts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.mts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.cts +0 -10
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.mts +0 -10
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts +0 -10
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.cts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.mts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts +0 -2
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts +0 -8
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts +0 -8
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +0 -8
- package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +0 -5
- package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/supply.d.cts +0 -4
- package/dist/node/lib/rating/criteria/scoring/supply.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/supply.d.mts +0 -4
- package/dist/node/lib/rating/criteria/scoring/supply.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/supply.d.ts +0 -4
- package/dist/node/lib/rating/criteria/scoring/supply.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts +0 -4
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts +0 -4
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts +0 -4
- package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/type.d.cts +0 -4
- package/dist/node/lib/rating/criteria/scoring/type.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/type.d.mts +0 -4
- package/dist/node/lib/rating/criteria/scoring/type.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoring/type.d.ts +0 -4
- package/dist/node/lib/rating/criteria/scoring/type.d.ts.map +0 -1
- package/dist/node/lib/rating/criteria/scoringCriteria.d.cts +0 -55
- package/dist/node/lib/rating/criteria/scoringCriteria.d.cts.map +0 -1
- package/dist/node/lib/rating/criteria/scoringCriteria.d.mts +0 -55
- package/dist/node/lib/rating/criteria/scoringCriteria.d.mts.map +0 -1
- package/dist/node/lib/rating/criteria/scoringCriteria.d.ts +0 -55
- package/dist/node/lib/rating/criteria/scoringCriteria.d.ts.map +0 -1
- package/dist/node/lib/rating/index.d.cts +0 -3
- package/dist/node/lib/rating/index.d.cts.map +0 -1
- package/dist/node/lib/rating/index.d.mts +0 -3
- package/dist/node/lib/rating/index.d.mts.map +0 -1
- package/dist/node/lib/rating/index.d.ts +0 -3
- package/dist/node/lib/rating/index.d.ts.map +0 -1
package/dist/node/index.cjs
DELETED
|
@@ -1,508 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
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 __reflectGet = Reflect.get;
|
|
8
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
9
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
10
|
-
var __export = (target, all) => {
|
|
11
|
-
for (var name in all)
|
|
12
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
|
-
};
|
|
14
|
-
var __copyProps = (to, from, except, desc) => {
|
|
15
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
-
for (let key of __getOwnPropNames(from))
|
|
17
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
18
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
19
|
-
}
|
|
20
|
-
return to;
|
|
21
|
-
};
|
|
22
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
24
|
-
var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj);
|
|
25
|
-
|
|
26
|
-
// src/index.ts
|
|
27
|
-
var src_exports = {};
|
|
28
|
-
__export(src_exports, {
|
|
29
|
-
NftScoreDiviner: () => NftScoreDiviner,
|
|
30
|
-
NftScoreDivinerPlugin: () => NftScoreDivinerPlugin,
|
|
31
|
-
analyzeNft: () => analyzeNft,
|
|
32
|
-
default: () => NftScoreDivinerPlugin,
|
|
33
|
-
isNftScore: () => isNftScore,
|
|
34
|
-
scoringCriteria: () => scoringCriteria
|
|
35
|
-
});
|
|
36
|
-
module.exports = __toCommonJS(src_exports);
|
|
37
|
-
|
|
38
|
-
// src/Diviner.ts
|
|
39
|
-
var import_crypto_nft_payload_plugin = require("@xyo-network/crypto-nft-payload-plugin");
|
|
40
|
-
var import_diviner_abstract = require("@xyo-network/diviner-abstract");
|
|
41
|
-
var import_payload_builder = require("@xyo-network/payload-builder");
|
|
42
|
-
|
|
43
|
-
// src/lib/rating/criteria/scoring/contract.ts
|
|
44
|
-
var import_crypto_nft_score_model = require("@xyo-network/crypto-nft-score-model");
|
|
45
|
-
var import_ethers = require("ethers");
|
|
46
|
-
var scoreContractAddress = /* @__PURE__ */ __name((nft) => {
|
|
47
|
-
if (!nft.address) return import_crypto_nft_score_model.FAIL;
|
|
48
|
-
if (typeof nft.address !== "string") return import_crypto_nft_score_model.FAIL;
|
|
49
|
-
if (!(0, import_ethers.isAddress)(nft.address)) return import_crypto_nft_score_model.FAIL;
|
|
50
|
-
return import_crypto_nft_score_model.PASS;
|
|
51
|
-
}, "scoreContractAddress");
|
|
52
|
-
|
|
53
|
-
// src/lib/rating/criteria/scoring/metadata/animationUrl.ts
|
|
54
|
-
var import_crypto_nft_score_model2 = require("@xyo-network/crypto-nft-score-model");
|
|
55
|
-
|
|
56
|
-
// src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts
|
|
57
|
-
var import_url = require("@xylabs/url");
|
|
58
|
-
var web3Protocols = [
|
|
59
|
-
"ipfs:",
|
|
60
|
-
"ar:"
|
|
61
|
-
];
|
|
62
|
-
var toUrl = /* @__PURE__ */ __name((url) => {
|
|
63
|
-
if (!url) return void 0;
|
|
64
|
-
try {
|
|
65
|
-
return new import_url.URL(url);
|
|
66
|
-
} catch {
|
|
67
|
-
return void 0;
|
|
68
|
-
}
|
|
69
|
-
}, "toUrl");
|
|
70
|
-
var isValidUrl = /* @__PURE__ */ __name((url) => toUrl(url) !== void 0, "isValidUrl");
|
|
71
|
-
var isWeb3 = /* @__PURE__ */ __name((url) => web3Protocols.some((protocol) => {
|
|
72
|
-
var _a;
|
|
73
|
-
return protocol === ((_a = toUrl(url)) == null ? void 0 : _a.protocol);
|
|
74
|
-
}), "isWeb3");
|
|
75
|
-
var isSecure = /* @__PURE__ */ __name((url) => {
|
|
76
|
-
var _a;
|
|
77
|
-
return isWeb3(url) || ((_a = toUrl(url)) == null ? void 0 : _a.protocol) === "https:";
|
|
78
|
-
}, "isSecure");
|
|
79
|
-
|
|
80
|
-
// src/lib/rating/criteria/scoring/metadata/animationUrl.ts
|
|
81
|
-
var scoreNftAnimationUrl = /* @__PURE__ */ __name((nft) => {
|
|
82
|
-
var _a;
|
|
83
|
-
return scoreAnimationUrl((_a = nft.metadata) == null ? void 0 : _a.animation_url);
|
|
84
|
-
}, "scoreNftAnimationUrl");
|
|
85
|
-
var scoreAnimationUrl = /* @__PURE__ */ __name((animation_url) => {
|
|
86
|
-
const score = [
|
|
87
|
-
0,
|
|
88
|
-
0
|
|
89
|
-
];
|
|
90
|
-
if (animation_url === void 0 || animation_url === null) return import_crypto_nft_score_model2.PASS;
|
|
91
|
-
(0, import_crypto_nft_score_model2.incrementPossible)(score);
|
|
92
|
-
if (typeof animation_url !== "string") return score;
|
|
93
|
-
(0, import_crypto_nft_score_model2.incrementTotalAndPossible)(score);
|
|
94
|
-
if (!isValidUrl(animation_url)) return score;
|
|
95
|
-
(0, import_crypto_nft_score_model2.incrementTotalAndPossible)(score);
|
|
96
|
-
if (!isSecure(animation_url)) return score;
|
|
97
|
-
(0, import_crypto_nft_score_model2.incrementTotalAndPossible)(score);
|
|
98
|
-
if (!isWeb3(animation_url)) return score;
|
|
99
|
-
return (0, import_crypto_nft_score_model2.incrementTotal)(score);
|
|
100
|
-
}, "scoreAnimationUrl");
|
|
101
|
-
|
|
102
|
-
// src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts
|
|
103
|
-
var import_crypto_nft_score_model3 = require("@xyo-network/crypto-nft-score-model");
|
|
104
|
-
var isDate = /* @__PURE__ */ __name((value) => {
|
|
105
|
-
if (isNumber(value)) {
|
|
106
|
-
try {
|
|
107
|
-
new Date(value);
|
|
108
|
-
return true;
|
|
109
|
-
} catch {
|
|
110
|
-
return false;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return false;
|
|
114
|
-
}, "isDate");
|
|
115
|
-
var isNumber = /* @__PURE__ */ __name((value) => typeof value === "number", "isNumber");
|
|
116
|
-
var isPercentage = /* @__PURE__ */ __name((value) => isNumber(value) && value >= 0 && value <= 100, "isPercentage");
|
|
117
|
-
var isNonEmptyString = /* @__PURE__ */ __name((value) => typeof value === "string" && value.length > 0, "isNonEmptyString");
|
|
118
|
-
var isNonEmptyStringOrNumber = /* @__PURE__ */ __name((value) => value === "number" || isNonEmptyString(value), "isNonEmptyStringOrNumber");
|
|
119
|
-
var evaluateNftAttributes = /* @__PURE__ */ __name((nft) => {
|
|
120
|
-
var _a, _b;
|
|
121
|
-
return ((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.attributes) ? evaluateAttributes((_b = nft == null ? void 0 : nft.metadata) == null ? void 0 : _b.attributes) : [
|
|
122
|
-
0,
|
|
123
|
-
1
|
|
124
|
-
];
|
|
125
|
-
}, "evaluateNftAttributes");
|
|
126
|
-
var evaluateAttributes = /* @__PURE__ */ __name((attributes) => {
|
|
127
|
-
if (!attributes || !Array.isArray(attributes) || attributes.length === 0) return [
|
|
128
|
-
0,
|
|
129
|
-
1
|
|
130
|
-
];
|
|
131
|
-
const score = [
|
|
132
|
-
0,
|
|
133
|
-
0
|
|
134
|
-
];
|
|
135
|
-
for (const attribute of attributes) {
|
|
136
|
-
const [attributeTotal, attributePossible] = evaluateAttribute(attribute);
|
|
137
|
-
(0, import_crypto_nft_score_model3.incrementTotalAndPossible)(score, attributeTotal, attributePossible);
|
|
138
|
-
}
|
|
139
|
-
return [
|
|
140
|
-
1,
|
|
141
|
-
1
|
|
142
|
-
];
|
|
143
|
-
}, "evaluateAttributes");
|
|
144
|
-
var evaluateAttribute = /* @__PURE__ */ __name((attribute) => {
|
|
145
|
-
const score = [
|
|
146
|
-
0,
|
|
147
|
-
1
|
|
148
|
-
];
|
|
149
|
-
const max_value = attribute == null ? void 0 : attribute.max_value;
|
|
150
|
-
const trait_type = attribute == null ? void 0 : attribute.trait_type;
|
|
151
|
-
const value = attribute == null ? void 0 : attribute.value;
|
|
152
|
-
if (!attribute || typeof attribute !== "object" || !isNonEmptyString(trait_type) || !isNonEmptyStringOrNumber(value)) return score;
|
|
153
|
-
(0, import_crypto_nft_score_model3.incrementTotal)(score);
|
|
154
|
-
(0, import_crypto_nft_score_model3.incrementPossible)(score);
|
|
155
|
-
if (validDisplayType(attribute)) (0, import_crypto_nft_score_model3.incrementTotal)(score);
|
|
156
|
-
if (max_value !== void 0) {
|
|
157
|
-
(0, import_crypto_nft_score_model3.incrementPossible)(score);
|
|
158
|
-
if (isNumber(max_value) && isNumber(value) && value <= max_value) (0, import_crypto_nft_score_model3.incrementTotal)(score);
|
|
159
|
-
}
|
|
160
|
-
return score;
|
|
161
|
-
}, "evaluateAttribute");
|
|
162
|
-
var validDisplayType = /* @__PURE__ */ __name((attribute) => {
|
|
163
|
-
switch (attribute == null ? void 0 : attribute.display_type) {
|
|
164
|
-
case "number":
|
|
165
|
-
case "boost_number": {
|
|
166
|
-
if (isNumber(attribute == null ? void 0 : attribute.value)) return true;
|
|
167
|
-
break;
|
|
168
|
-
}
|
|
169
|
-
case "boost_percentage": {
|
|
170
|
-
if (isPercentage(attribute == null ? void 0 : attribute.value)) return true;
|
|
171
|
-
break;
|
|
172
|
-
}
|
|
173
|
-
case "date": {
|
|
174
|
-
if (isDate(attribute == null ? void 0 : attribute.value)) return true;
|
|
175
|
-
break;
|
|
176
|
-
}
|
|
177
|
-
case "string":
|
|
178
|
-
case void 0: {
|
|
179
|
-
if (isNonEmptyString(attribute == null ? void 0 : attribute.value)) return true;
|
|
180
|
-
break;
|
|
181
|
-
}
|
|
182
|
-
default: {
|
|
183
|
-
break;
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
return false;
|
|
187
|
-
}, "validDisplayType");
|
|
188
|
-
|
|
189
|
-
// src/lib/rating/criteria/scoring/metadata/backgroundColor.ts
|
|
190
|
-
var import_crypto_nft_score_model4 = require("@xyo-network/crypto-nft-score-model");
|
|
191
|
-
var isHexColor = /^[\da-f]{6}$/i;
|
|
192
|
-
var scoreNftBackgroundColor = /* @__PURE__ */ __name((nft) => {
|
|
193
|
-
var _a;
|
|
194
|
-
return scoreBackgroundColor((_a = nft.metadata) == null ? void 0 : _a.background_color);
|
|
195
|
-
}, "scoreNftBackgroundColor");
|
|
196
|
-
var scoreBackgroundColor = /* @__PURE__ */ __name((background_color) => {
|
|
197
|
-
const score = [
|
|
198
|
-
0,
|
|
199
|
-
0
|
|
200
|
-
];
|
|
201
|
-
if (background_color === void 0 || background_color === null) return import_crypto_nft_score_model4.PASS;
|
|
202
|
-
(0, import_crypto_nft_score_model4.incrementPossible)(score);
|
|
203
|
-
if (typeof background_color !== "string") return score;
|
|
204
|
-
(0, import_crypto_nft_score_model4.incrementTotalAndPossible)(score);
|
|
205
|
-
if (!isHexColor.test(background_color.toUpperCase())) return score;
|
|
206
|
-
return (0, import_crypto_nft_score_model4.incrementTotal)(score);
|
|
207
|
-
}, "scoreBackgroundColor");
|
|
208
|
-
|
|
209
|
-
// src/lib/rating/criteria/scoring/metadata/description.ts
|
|
210
|
-
var import_crypto_nft_score_model5 = require("@xyo-network/crypto-nft-score-model");
|
|
211
|
-
var scoreNftDescription = /* @__PURE__ */ __name((nft) => {
|
|
212
|
-
var _a;
|
|
213
|
-
return scoreDescription((_a = nft.metadata) == null ? void 0 : _a.description);
|
|
214
|
-
}, "scoreNftDescription");
|
|
215
|
-
var scoreDescription = /* @__PURE__ */ __name((description) => {
|
|
216
|
-
const score = [
|
|
217
|
-
0,
|
|
218
|
-
1
|
|
219
|
-
];
|
|
220
|
-
if (!description || typeof description !== "string") return score;
|
|
221
|
-
return (0, import_crypto_nft_score_model5.incrementTotal)(score);
|
|
222
|
-
}, "scoreDescription");
|
|
223
|
-
|
|
224
|
-
// src/lib/rating/criteria/scoring/metadata/externalUrl.ts
|
|
225
|
-
var import_crypto_nft_score_model6 = require("@xyo-network/crypto-nft-score-model");
|
|
226
|
-
var scoreNftExternalUrl = /* @__PURE__ */ __name((nft) => {
|
|
227
|
-
var _a;
|
|
228
|
-
return scoreExternalUrl((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.external_url);
|
|
229
|
-
}, "scoreNftExternalUrl");
|
|
230
|
-
var scoreExternalUrl = /* @__PURE__ */ __name((external_url) => {
|
|
231
|
-
const score = [
|
|
232
|
-
0,
|
|
233
|
-
2
|
|
234
|
-
];
|
|
235
|
-
if (external_url === void 0 || external_url === null || typeof external_url !== "string" || !isValidUrl(external_url)) return score;
|
|
236
|
-
(0, import_crypto_nft_score_model6.incrementTotal)(score);
|
|
237
|
-
if (!isSecure(external_url)) return score;
|
|
238
|
-
return (0, import_crypto_nft_score_model6.incrementTotal)(score);
|
|
239
|
-
}, "scoreExternalUrl");
|
|
240
|
-
|
|
241
|
-
// src/lib/rating/criteria/scoring/metadata/image.ts
|
|
242
|
-
var import_crypto_nft_score_model7 = require("@xyo-network/crypto-nft-score-model");
|
|
243
|
-
var MaxPossibleImageScore = 3;
|
|
244
|
-
var scoreNftImage = /* @__PURE__ */ __name((nft) => {
|
|
245
|
-
var _a, _b, _c;
|
|
246
|
-
if ((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.image) {
|
|
247
|
-
return scoreImage((_b = nft.metadata) == null ? void 0 : _b.image);
|
|
248
|
-
} else {
|
|
249
|
-
return ((_c = nft.metadata) == null ? void 0 : _c.image_data) ? import_crypto_nft_score_model7.PASS : [
|
|
250
|
-
0,
|
|
251
|
-
MaxPossibleImageScore
|
|
252
|
-
];
|
|
253
|
-
}
|
|
254
|
-
}, "scoreNftImage");
|
|
255
|
-
var scoreImage = /* @__PURE__ */ __name((image) => {
|
|
256
|
-
const score = [
|
|
257
|
-
0,
|
|
258
|
-
MaxPossibleImageScore
|
|
259
|
-
];
|
|
260
|
-
if (!image || typeof image !== "string" || !isValidUrl(image)) return score;
|
|
261
|
-
(0, import_crypto_nft_score_model7.incrementTotal)(score);
|
|
262
|
-
if (!isSecure(image)) return score;
|
|
263
|
-
(0, import_crypto_nft_score_model7.incrementTotal)(score);
|
|
264
|
-
if (!isWeb3(image)) return score;
|
|
265
|
-
(0, import_crypto_nft_score_model7.incrementTotal)(score);
|
|
266
|
-
return score;
|
|
267
|
-
}, "scoreImage");
|
|
268
|
-
|
|
269
|
-
// src/lib/rating/criteria/scoring/metadata/imageData.ts
|
|
270
|
-
var import_crypto_nft_score_model8 = require("@xyo-network/crypto-nft-score-model");
|
|
271
|
-
var import_svg_parser = require("svg-parser");
|
|
272
|
-
var MaxPossibleImageDataScore = 1;
|
|
273
|
-
var isValidImageData = /* @__PURE__ */ __name((image_data) => {
|
|
274
|
-
if (!image_data.startsWith("<svg")) return false;
|
|
275
|
-
try {
|
|
276
|
-
(0, import_svg_parser.parse)(image_data);
|
|
277
|
-
return true;
|
|
278
|
-
} catch {
|
|
279
|
-
return false;
|
|
280
|
-
}
|
|
281
|
-
}, "isValidImageData");
|
|
282
|
-
var scoreNftImageData = /* @__PURE__ */ __name((nft) => {
|
|
283
|
-
var _a, _b, _c;
|
|
284
|
-
if ((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.image_data) {
|
|
285
|
-
return scoreImageData((_b = nft.metadata) == null ? void 0 : _b.image_data);
|
|
286
|
-
} else {
|
|
287
|
-
return ((_c = nft.metadata) == null ? void 0 : _c.image) ? import_crypto_nft_score_model8.PASS : [
|
|
288
|
-
0,
|
|
289
|
-
MaxPossibleImageDataScore
|
|
290
|
-
];
|
|
291
|
-
}
|
|
292
|
-
}, "scoreNftImageData");
|
|
293
|
-
var scoreImageData = /* @__PURE__ */ __name((image_data) => {
|
|
294
|
-
return !image_data || typeof image_data !== "string" || !isValidImageData(image_data) ? [
|
|
295
|
-
0,
|
|
296
|
-
MaxPossibleImageDataScore
|
|
297
|
-
] : [
|
|
298
|
-
MaxPossibleImageDataScore,
|
|
299
|
-
MaxPossibleImageDataScore
|
|
300
|
-
];
|
|
301
|
-
}, "scoreImageData");
|
|
302
|
-
|
|
303
|
-
// src/lib/rating/criteria/scoring/metadata/name.ts
|
|
304
|
-
var import_crypto_nft_score_model9 = require("@xyo-network/crypto-nft-score-model");
|
|
305
|
-
var scoreNftName = /* @__PURE__ */ __name((nft) => {
|
|
306
|
-
var _a;
|
|
307
|
-
return scoreName((_a = nft.metadata) == null ? void 0 : _a.name);
|
|
308
|
-
}, "scoreNftName");
|
|
309
|
-
var scoreName = /* @__PURE__ */ __name((name) => {
|
|
310
|
-
const score = [
|
|
311
|
-
0,
|
|
312
|
-
1
|
|
313
|
-
];
|
|
314
|
-
if (!name || typeof name !== "string") return score;
|
|
315
|
-
return (0, import_crypto_nft_score_model9.incrementTotal)(score);
|
|
316
|
-
}, "scoreName");
|
|
317
|
-
|
|
318
|
-
// src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts
|
|
319
|
-
var import_crypto_nft_score_model10 = require("@xyo-network/crypto-nft-score-model");
|
|
320
|
-
var scoreNftYoutubeUrl = /* @__PURE__ */ __name((nft) => {
|
|
321
|
-
var _a;
|
|
322
|
-
return scoreYoutubeUrl((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.youtube_url);
|
|
323
|
-
}, "scoreNftYoutubeUrl");
|
|
324
|
-
var scoreYoutubeUrl = /* @__PURE__ */ __name((youtube_url) => {
|
|
325
|
-
if (youtube_url === void 0 || youtube_url === null) return import_crypto_nft_score_model10.PASS;
|
|
326
|
-
const score = [
|
|
327
|
-
0,
|
|
328
|
-
2
|
|
329
|
-
];
|
|
330
|
-
if (typeof youtube_url !== "string" || !isValidUrl(youtube_url)) return score;
|
|
331
|
-
(0, import_crypto_nft_score_model10.incrementTotal)(score);
|
|
332
|
-
if (!isSecure(youtube_url)) return score;
|
|
333
|
-
return (0, import_crypto_nft_score_model10.incrementTotal)(score);
|
|
334
|
-
}, "scoreYoutubeUrl");
|
|
335
|
-
|
|
336
|
-
// src/lib/rating/criteria/scoring/supply.ts
|
|
337
|
-
var import_crypto_nft_score_model11 = require("@xyo-network/crypto-nft-score-model");
|
|
338
|
-
var scoreSupply = /* @__PURE__ */ __name((nft) => {
|
|
339
|
-
if (!nft.supply) return import_crypto_nft_score_model11.FAIL;
|
|
340
|
-
if (typeof nft.supply !== "string") return import_crypto_nft_score_model11.FAIL;
|
|
341
|
-
try {
|
|
342
|
-
return BigInt(nft.tokenId) >= 0n && BigInt(nft.tokenId) < 2n ** 256n ? import_crypto_nft_score_model11.PASS : import_crypto_nft_score_model11.FAIL;
|
|
343
|
-
} catch {
|
|
344
|
-
return import_crypto_nft_score_model11.FAIL;
|
|
345
|
-
}
|
|
346
|
-
}, "scoreSupply");
|
|
347
|
-
|
|
348
|
-
// src/lib/rating/criteria/scoring/tokenId.ts
|
|
349
|
-
var import_crypto_nft_score_model12 = require("@xyo-network/crypto-nft-score-model");
|
|
350
|
-
var scoreTokenId = /* @__PURE__ */ __name((nft) => {
|
|
351
|
-
if (!nft.tokenId) return import_crypto_nft_score_model12.FAIL;
|
|
352
|
-
if (typeof nft.tokenId !== "string") return import_crypto_nft_score_model12.FAIL;
|
|
353
|
-
try {
|
|
354
|
-
return BigInt(nft.tokenId) >= 0n && BigInt(nft.tokenId) < 2n ** 256n ? import_crypto_nft_score_model12.PASS : import_crypto_nft_score_model12.FAIL;
|
|
355
|
-
} catch {
|
|
356
|
-
return import_crypto_nft_score_model12.FAIL;
|
|
357
|
-
}
|
|
358
|
-
}, "scoreTokenId");
|
|
359
|
-
|
|
360
|
-
// src/lib/rating/criteria/scoring/type.ts
|
|
361
|
-
var import_crypto_nft_score_model13 = require("@xyo-network/crypto-nft-score-model");
|
|
362
|
-
var scoreType = /* @__PURE__ */ __name((nft) => {
|
|
363
|
-
if (!nft.type) return import_crypto_nft_score_model13.FAIL;
|
|
364
|
-
if (typeof nft.type !== "string") return import_crypto_nft_score_model13.FAIL;
|
|
365
|
-
const type = nft.type.toUpperCase();
|
|
366
|
-
if (type !== "ERC721" && type !== "ERC1155") return import_crypto_nft_score_model13.FAIL;
|
|
367
|
-
return import_crypto_nft_score_model13.PASS;
|
|
368
|
-
}, "scoreType");
|
|
369
|
-
|
|
370
|
-
// src/lib/rating/criteria/scoringCriteria.ts
|
|
371
|
-
var attributesScoringCriteria = {
|
|
372
|
-
Attributes: {
|
|
373
|
-
score: evaluateNftAttributes,
|
|
374
|
-
weight: 1
|
|
375
|
-
}
|
|
376
|
-
};
|
|
377
|
-
var metadataScoringCriteria = {
|
|
378
|
-
"Animation URL": {
|
|
379
|
-
score: scoreNftAnimationUrl,
|
|
380
|
-
weight: 1
|
|
381
|
-
},
|
|
382
|
-
"Background Color": {
|
|
383
|
-
score: scoreNftBackgroundColor,
|
|
384
|
-
weight: 1
|
|
385
|
-
},
|
|
386
|
-
"Description": {
|
|
387
|
-
score: scoreNftDescription,
|
|
388
|
-
weight: 1
|
|
389
|
-
},
|
|
390
|
-
"External Url": {
|
|
391
|
-
score: scoreNftExternalUrl,
|
|
392
|
-
weight: 1
|
|
393
|
-
},
|
|
394
|
-
"Image": {
|
|
395
|
-
score: scoreNftImage,
|
|
396
|
-
weight: 1
|
|
397
|
-
},
|
|
398
|
-
"Image Data": {
|
|
399
|
-
score: scoreNftImageData,
|
|
400
|
-
weight: 1
|
|
401
|
-
},
|
|
402
|
-
"Name": {
|
|
403
|
-
score: scoreNftName,
|
|
404
|
-
weight: 1
|
|
405
|
-
},
|
|
406
|
-
"YouTube URL": {
|
|
407
|
-
score: scoreNftYoutubeUrl,
|
|
408
|
-
weight: 1
|
|
409
|
-
},
|
|
410
|
-
...attributesScoringCriteria
|
|
411
|
-
};
|
|
412
|
-
var scoringCriteria = {
|
|
413
|
-
"Contract Address": {
|
|
414
|
-
score: scoreContractAddress,
|
|
415
|
-
weight: 1
|
|
416
|
-
},
|
|
417
|
-
"Supply": {
|
|
418
|
-
score: scoreSupply,
|
|
419
|
-
weight: 1
|
|
420
|
-
},
|
|
421
|
-
"Token Id": {
|
|
422
|
-
score: scoreTokenId,
|
|
423
|
-
weight: 1
|
|
424
|
-
},
|
|
425
|
-
"Type": {
|
|
426
|
-
score: scoreType,
|
|
427
|
-
weight: 1
|
|
428
|
-
},
|
|
429
|
-
...metadataScoringCriteria
|
|
430
|
-
};
|
|
431
|
-
|
|
432
|
-
// src/lib/rating/analyzeNft.ts
|
|
433
|
-
var analyzeNft = /* @__PURE__ */ __name(async (nft) => {
|
|
434
|
-
const result = Object.fromEntries(await Promise.all(Object.entries(scoringCriteria).map(async ([key, { score, weight }]) => {
|
|
435
|
-
const rawScore = await score(nft);
|
|
436
|
-
const weighted = rawScore.map((v) => v * weight);
|
|
437
|
-
return [
|
|
438
|
-
key,
|
|
439
|
-
weighted
|
|
440
|
-
];
|
|
441
|
-
})));
|
|
442
|
-
return result;
|
|
443
|
-
}, "analyzeNft");
|
|
444
|
-
|
|
445
|
-
// src/Diviner.ts
|
|
446
|
-
var toNftScorePayload = /* @__PURE__ */ __name((nftInfo, scores) => {
|
|
447
|
-
const { address, chainId, type } = nftInfo;
|
|
448
|
-
return {
|
|
449
|
-
address,
|
|
450
|
-
chainId,
|
|
451
|
-
schema: import_crypto_nft_payload_plugin.NftScoreSchema,
|
|
452
|
-
scores,
|
|
453
|
-
type
|
|
454
|
-
};
|
|
455
|
-
}, "toNftScorePayload");
|
|
456
|
-
var isNftScore = /* @__PURE__ */ __name((payload) => payload.schema === import_crypto_nft_payload_plugin.NftScoreSchema, "isNftScore");
|
|
457
|
-
var _NftScoreDiviner = class _NftScoreDiviner extends import_diviner_abstract.AbstractDiviner {
|
|
458
|
-
divineHandler = /* @__PURE__ */ __name(async (payloads) => {
|
|
459
|
-
const nftInfos = (payloads == null ? void 0 : payloads.filter(import_crypto_nft_payload_plugin.isNftInfo)) ?? [];
|
|
460
|
-
const results = await Promise.all(nftInfos.map(async (nftInfo) => {
|
|
461
|
-
const [score, sourceHash] = await Promise.all([
|
|
462
|
-
// Analyze the NFT
|
|
463
|
-
toNftScorePayload(nftInfo, await analyzeNft(nftInfo)),
|
|
464
|
-
// Hash the source payload
|
|
465
|
-
import_payload_builder.PayloadBuilder.dataHash(nftInfo)
|
|
466
|
-
]);
|
|
467
|
-
return {
|
|
468
|
-
...score,
|
|
469
|
-
sources: [
|
|
470
|
-
sourceHash
|
|
471
|
-
]
|
|
472
|
-
};
|
|
473
|
-
}));
|
|
474
|
-
return results;
|
|
475
|
-
}, "divineHandler");
|
|
476
|
-
};
|
|
477
|
-
__name(_NftScoreDiviner, "NftScoreDiviner");
|
|
478
|
-
__publicField(_NftScoreDiviner, "configSchemas", [
|
|
479
|
-
...__superGet(_NftScoreDiviner, _NftScoreDiviner, "configSchemas"),
|
|
480
|
-
import_crypto_nft_payload_plugin.NftScoreDivinerConfigSchema
|
|
481
|
-
]);
|
|
482
|
-
__publicField(_NftScoreDiviner, "defaultConfigSchema", import_crypto_nft_payload_plugin.NftScoreDivinerConfigSchema);
|
|
483
|
-
var NftScoreDiviner = _NftScoreDiviner;
|
|
484
|
-
|
|
485
|
-
// src/Plugin.ts
|
|
486
|
-
var import_crypto_nft_payload_plugin2 = require("@xyo-network/crypto-nft-payload-plugin");
|
|
487
|
-
var import_payload_model = require("@xyo-network/payload-model");
|
|
488
|
-
var import_payloadset_plugin = require("@xyo-network/payloadset-plugin");
|
|
489
|
-
var NftScoreDivinerPlugin = /* @__PURE__ */ __name(() => (0, import_payloadset_plugin.createPayloadSetDivinerPlugin)({
|
|
490
|
-
required: {
|
|
491
|
-
[import_crypto_nft_payload_plugin2.NftSchema]: 1
|
|
492
|
-
},
|
|
493
|
-
schema: import_payload_model.PayloadSetSchema
|
|
494
|
-
}, {
|
|
495
|
-
diviner: /* @__PURE__ */ __name(async (params) => {
|
|
496
|
-
const result = await NftScoreDiviner.create(params);
|
|
497
|
-
return result;
|
|
498
|
-
}, "diviner")
|
|
499
|
-
}), "NftScoreDivinerPlugin");
|
|
500
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
501
|
-
0 && (module.exports = {
|
|
502
|
-
NftScoreDiviner,
|
|
503
|
-
NftScoreDivinerPlugin,
|
|
504
|
-
analyzeNft,
|
|
505
|
-
isNftScore,
|
|
506
|
-
scoringCriteria
|
|
507
|
-
});
|
|
508
|
-
//# sourceMappingURL=index.cjs.map
|
package/dist/node/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/Diviner.ts","../../src/lib/rating/criteria/scoring/contract.ts","../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts","../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts","../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts","../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts","../../src/lib/rating/criteria/scoring/metadata/description.ts","../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts","../../src/lib/rating/criteria/scoring/metadata/image.ts","../../src/lib/rating/criteria/scoring/metadata/imageData.ts","../../src/lib/rating/criteria/scoring/metadata/name.ts","../../src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts","../../src/lib/rating/criteria/scoring/supply.ts","../../src/lib/rating/criteria/scoring/tokenId.ts","../../src/lib/rating/criteria/scoring/type.ts","../../src/lib/rating/criteria/scoringCriteria.ts","../../src/lib/rating/analyzeNft.ts","../../src/Plugin.ts"],"sourcesContent":["export * from './Diviner.ts'\nexport * from './lib/index.ts'\n// eslint-disable-next-line import/no-default-export\nexport { NftScoreDivinerPlugin as default, NftScoreDivinerPlugin } from './Plugin.ts'\n","import {\n isNftInfo,\n NftInfo,\n NftScore,\n NftScoreDivinerConfig,\n NftScoreDivinerConfigSchema,\n NftScoreSchema,\n} from '@xyo-network/crypto-nft-payload-plugin'\nimport { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport { DivinerParams } from '@xyo-network/diviner-model'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nimport { analyzeNft, NftAnalysis } from './lib/index.ts'\n\nexport type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>\n\nconst toNftScorePayload = (nftInfo: NftInfo, scores: NftAnalysis): NftScore => {\n const { address, chainId, type } = nftInfo\n return { address, chainId, schema: NftScoreSchema, scores, type }\n}\n\nexport const isNftScore = (payload: Payload): payload is NftScore => payload.schema === NftScoreSchema\n\nexport class NftScoreDiviner<TParams extends NftScoreDivinerParams = NftScoreDivinerParams> extends AbstractDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, NftScoreDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = NftScoreDivinerConfigSchema\n\n protected override divineHandler = async (payloads?: Payload[]): Promise<Payload[]> => {\n const nftInfos = payloads?.filter(isNftInfo) ?? []\n const results = await Promise.all(\n nftInfos.map<Promise<NftScore>>(async (nftInfo) => {\n const [score, sourceHash] = await Promise.all([\n // Analyze the NFT\n toNftScorePayload(nftInfo, await analyzeNft(nftInfo)),\n // Hash the source payload\n PayloadBuilder.dataHash(nftInfo),\n ])\n return { ...score, sources: [sourceHash] }\n }),\n )\n return results\n }\n}\n","import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'\nimport { isAddress } from 'ethers'\n\nexport const scoreContractAddress: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {\n if (!nft.address) return FAIL\n if (typeof nft.address !== 'string') return FAIL\n if (!isAddress(nft.address)) return FAIL\n return PASS\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nimport { isSecure, isValidUrl, isWeb3 } from './lib/index.ts'\n\nexport const scoreNftAnimationUrl = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreAnimationUrl(nft.metadata?.animation_url)\n}\n\nexport const scoreAnimationUrl = (animation_url: unknown): ScaledScore => {\n const score: ScaledScore = [0, 0]\n if (animation_url === undefined || animation_url === null) return PASS\n incrementPossible(score)\n if (typeof animation_url !== 'string') return score\n incrementTotalAndPossible(score)\n if (!isValidUrl(animation_url)) return score\n incrementTotalAndPossible(score)\n if (!isSecure(animation_url)) return score\n incrementTotalAndPossible(score)\n if (!isWeb3(animation_url)) return score\n return incrementTotal(score)\n}\n","import { URL } from '@xylabs/url'\n\nexport const web3Protocols = ['ipfs:', 'ar:']\n\nexport const toUrl = (url?: string | null): URL | undefined => {\n if (!url) return undefined\n try {\n return new URL(url)\n } catch {\n return undefined\n }\n}\n\nexport const isValidUrl = (url?: string | null): boolean => toUrl(url) !== undefined\n// eslint-disable-next-line unicorn/prefer-includes\nexport const isWeb3 = (url?: string | null): boolean => web3Protocols.some(protocol => protocol === toUrl(url)?.protocol)\nexport const isWeb2 = (url?: string | null): boolean => !isWeb3(url)\nexport const isSecure = (url?: string | null): boolean => isWeb3(url) || toUrl(url)?.protocol === 'https:'\n","import { NftAttribute, NftInfoFields, OpenSeaNftAttribute, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementPossible, incrementTotal, incrementTotalAndPossible, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nconst isDate = (value: unknown): value is Date => {\n if (isNumber(value)) {\n try {\n new Date(value)\n return true\n } catch {\n return false\n }\n }\n return false\n}\n\nconst isNumber = (value: unknown): value is number => typeof value === 'number'\n\nconst isPercentage = (value: unknown): boolean => isNumber(value) && value >= 0 && value <= 100\n\nconst isNonEmptyString = (value: unknown): value is string => typeof value === 'string' && value.length > 0\n\nconst isNonEmptyStringOrNumber = (value: unknown): value is string | number => value === 'number' || isNonEmptyString(value)\n\nexport const evaluateNftAttributes = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore =>\n nft?.metadata?.attributes ? evaluateAttributes(nft?.metadata?.attributes) : [0, 1]\n\nexport const evaluateAttributes = (attributes: NftAttribute[] | OpenSeaNftAttribute[] | unknown): ScaledScore => {\n if (!attributes || !Array.isArray(attributes) || attributes.length === 0) return [0, 1]\n const score: ScaledScore = [0, 0]\n for (const attribute of attributes) {\n const [attributeTotal, attributePossible] = evaluateAttribute(attribute)\n incrementTotalAndPossible(score, attributeTotal, attributePossible)\n }\n return [1, 1]\n}\n\nexport const evaluateAttribute = (attribute: OpenSeaNftAttribute): ScaledScore => {\n const score: ScaledScore = [0, 1]\n const max_value = attribute?.max_value\n const trait_type = attribute?.trait_type\n const value = attribute?.value\n\n // Validate trait_type & value\n if (!attribute || typeof attribute !== 'object' || !isNonEmptyString(trait_type) || !isNonEmptyStringOrNumber(value)) return score\n incrementTotal(score)\n\n // Validate display_type\n incrementPossible(score)\n if (validDisplayType(attribute)) incrementTotal(score)\n\n // Validate max_value\n if (max_value !== undefined) {\n incrementPossible(score)\n if (isNumber(max_value) && isNumber(value) && value <= max_value) incrementTotal(score)\n }\n\n return score\n}\n\nconst validDisplayType = (attribute: OpenSeaNftAttribute): boolean => {\n switch (attribute?.display_type) {\n case 'number':\n case 'boost_number': {\n if (isNumber(attribute?.value)) return true\n break\n }\n case 'boost_percentage': {\n if (isPercentage(attribute?.value)) return true\n break\n }\n case 'date': {\n if (isDate(attribute?.value)) return true\n break\n }\n case 'string':\n case undefined: {\n if (isNonEmptyString(attribute?.value)) return true\n break\n }\n default: {\n break\n }\n }\n return false\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nconst isHexColor = /^[\\da-f]{6}$/i\n\nexport const scoreNftBackgroundColor = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreBackgroundColor(nft.metadata?.background_color)\n}\n\nexport const scoreBackgroundColor = (background_color: unknown): ScaledScore => {\n const score: ScaledScore = [0, 0]\n if (background_color === undefined || background_color === null) return PASS\n incrementPossible(score)\n if (typeof background_color !== 'string') return score\n incrementTotalAndPossible(score)\n if (!isHexColor.test(background_color.toUpperCase())) return score\n return incrementTotal(score)\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nexport const scoreNftDescription = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreDescription(nft.metadata?.description)\n}\n\nexport const scoreDescription = (description: unknown): ScaledScore => {\n const score: ScaledScore = [0, 1]\n if (!description || typeof description !== 'string') return score\n return incrementTotal(score)\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nimport { isSecure, isValidUrl } from './lib/index.ts'\n\nexport const scoreNftExternalUrl = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreExternalUrl(nft?.metadata?.external_url)\n}\nexport const scoreExternalUrl = (external_url: unknown): ScaledScore => {\n const score: ScaledScore = [0, 2]\n if (external_url === undefined || external_url === null || typeof external_url !== 'string' || !isValidUrl(external_url)) return score\n incrementTotal(score)\n if (!isSecure(external_url)) return score\n return incrementTotal(score)\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementTotal, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nimport { isSecure, isValidUrl, isWeb3 } from './lib/index.ts'\n\nconst MaxPossibleImageScore = 3\n\nexport const scoreNftImage = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n // If there's no image data\n if (nft?.metadata?.image) {\n return scoreImage(nft.metadata?.image)\n } else {\n // but there is image data, skip this scoring criteria, otherwise fail it completely\n return nft.metadata?.image_data ? PASS : [0, MaxPossibleImageScore]\n }\n}\n\nexport const scoreImage = (image: unknown): ScaledScore => {\n const score: ScaledScore = [0, MaxPossibleImageScore]\n if (!image || typeof image !== 'string' || !isValidUrl(image)) return score\n incrementTotal(score)\n if (!isSecure(image)) return score\n incrementTotal(score)\n if (!isWeb3(image)) return score\n incrementTotal(score)\n return score\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'\nimport { parse } from 'svg-parser'\n\nconst MaxPossibleImageDataScore = 1\n\n// NOTE: There is probably a deeper check we can do\n// here, but this is a good start\nconst isValidImageData = (image_data: string): boolean => {\n // If it doesn't start with an svg tag, it's not an svg\n if (!image_data.startsWith('<svg')) return false\n try {\n // If it can't be parsed, it's not an svg\n parse(image_data)\n return true\n } catch {\n return false\n }\n}\n\nexport const scoreNftImageData = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n // If there's no image data\n if (nft?.metadata?.image_data) {\n return scoreImageData(nft.metadata?.image_data)\n } else {\n // but there is an image, skip this scoring criteria, otherwise fail it completely\n return nft.metadata?.image ? PASS : [0, MaxPossibleImageDataScore]\n }\n}\n\nexport const scoreImageData = (image_data: unknown): ScaledScore => {\n return !image_data || typeof image_data !== 'string' || !isValidImageData(image_data)\n ? [0, MaxPossibleImageDataScore]\n : [MaxPossibleImageDataScore, MaxPossibleImageDataScore]\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nexport const scoreNftName = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreName(nft.metadata?.name)\n}\nexport const scoreName = (name: unknown): ScaledScore => {\n const score: ScaledScore = [0, 1]\n if (!name || typeof name !== 'string') return score\n return incrementTotal(score)\n}\n","import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { incrementTotal, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'\n\nimport { isSecure, isValidUrl } from './lib/index.ts'\n\nexport const scoreNftYoutubeUrl = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {\n return scoreYoutubeUrl(nft?.metadata?.youtube_url)\n}\nexport const scoreYoutubeUrl = (youtube_url: unknown): ScaledScore => {\n if (youtube_url === undefined || youtube_url === null) return PASS\n const score: ScaledScore = [0, 2]\n if (typeof youtube_url !== 'string' || !isValidUrl(youtube_url)) return score\n incrementTotal(score)\n if (!isSecure(youtube_url)) return score\n return incrementTotal(score)\n}\n","import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'\n\nexport const scoreSupply: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {\n if (!nft.supply) return FAIL\n if (typeof nft.supply !== 'string') return FAIL\n try {\n return BigInt(nft.tokenId) >= 0n && BigInt(nft.tokenId) < 2n ** 256n ? PASS : FAIL\n } catch {\n return FAIL\n }\n}\n","import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'\n\n/**\n * Callers SHALL NOT assume that ID numbers have any specific pattern to them, and\n * MUST treat the ID as a \"black box\"\n * @param nft\n * @returns\n */\nexport const scoreTokenId: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {\n if (!nft.tokenId) return FAIL\n if (typeof nft.tokenId !== 'string') return FAIL\n try {\n return BigInt(nft.tokenId) >= 0n && BigInt(nft.tokenId) < 2n ** 256n ? PASS : FAIL\n } catch {\n return FAIL\n }\n}\n","import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'\n\nexport const scoreType: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {\n if (!nft.type) return FAIL\n if (typeof nft.type !== 'string') return FAIL\n const type = nft.type.toUpperCase()\n if (type !== 'ERC721' && type !== 'ERC1155') return FAIL\n return PASS\n}\n","import {\n evaluateNftAttributes,\n scoreContractAddress,\n scoreNftAnimationUrl,\n scoreNftBackgroundColor,\n scoreNftDescription,\n scoreNftExternalUrl,\n scoreNftImage,\n scoreNftImageData,\n scoreNftName,\n scoreNftYoutubeUrl,\n scoreSupply,\n scoreTokenId,\n scoreType,\n} from './scoring/index.ts'\n\nconst attributesScoringCriteria = {\n Attributes: { score: evaluateNftAttributes, weight: 1 },\n}\n\nconst metadataScoringCriteria = {\n 'Animation URL': { score: scoreNftAnimationUrl, weight: 1 },\n 'Background Color': { score: scoreNftBackgroundColor, weight: 1 },\n 'Description': { score: scoreNftDescription, weight: 1 },\n 'External Url': { score: scoreNftExternalUrl, weight: 1 },\n 'Image': { score: scoreNftImage, weight: 1 },\n 'Image Data': { score: scoreNftImageData, weight: 1 },\n 'Name': { score: scoreNftName, weight: 1 },\n 'YouTube URL': { score: scoreNftYoutubeUrl, weight: 1 },\n ...attributesScoringCriteria,\n}\n\nexport const scoringCriteria = {\n 'Contract Address': { score: scoreContractAddress, weight: 1 },\n 'Supply': { score: scoreSupply, weight: 1 },\n 'Token Id': { score: scoreTokenId, weight: 1 },\n 'Type': { score: scoreType, weight: 1 },\n ...metadataScoringCriteria,\n}\n","import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'\nimport { Score } from '@xyo-network/crypto-nft-score-model'\n\nimport { scoringCriteria } from './criteria/index.ts'\n\nexport type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey\n\nexport type NftAnalysis = {\n [key in ScoringCriteriaKey]: Score\n}\n\nexport const analyzeNft = async (\n /**\n * The NFT to evaluate\n */\n nft: NftInfoFields,\n): Promise<NftAnalysis> => {\n const result = Object.fromEntries(\n await Promise.all(\n Object.entries(scoringCriteria).map(async ([key, { score, weight }]) => {\n const rawScore = await score(nft)\n const weighted = rawScore.map(v => v * weight) as Score\n return [key, weighted] as const\n }),\n ),\n ) as NftAnalysis\n return result\n}\n","import { NftSchema } from '@xyo-network/crypto-nft-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetDivinerPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { NftScoreDiviner } from './Diviner.ts'\n\nexport const NftScoreDivinerPlugin = () =>\n createPayloadSetDivinerPlugin<NftScoreDiviner>(\n { required: { [NftSchema]: 1 }, schema: PayloadSetSchema },\n {\n diviner: async (params) => {\n const result = await NftScoreDiviner.create(params)\n return result\n },\n },\n )\n"],"mappings":"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","names":["scoreContractAddress","nft","address","FAIL","isAddress","PASS","import_crypto_nft_score_model","web3Protocols","toUrl","url","undefined","URL","isValidUrl","isWeb3","some","protocol","isSecure","url","isWeb3","toUrl","protocol","scoreNftAnimationUrl","nft","scoreAnimationUrl","metadata","animation_url","score","undefined","PASS","incrementPossible","incrementTotalAndPossible","isValidUrl","isSecure","isWeb3","incrementTotal","import_crypto_nft_score_model","isDate","value","isNumber","Date","isPercentage","isNonEmptyString","length","isNonEmptyStringOrNumber","evaluateNftAttributes","nft","metadata","attributes","evaluateAttributes","Array","isArray","score","attribute","attributeTotal","attributePossible","evaluateAttribute","incrementTotalAndPossible","max_value","trait_type","incrementTotal","incrementPossible","validDisplayType","undefined","display_type","import_crypto_nft_score_model","isHexColor","scoreNftBackgroundColor","nft","scoreBackgroundColor","metadata","background_color","score","undefined","PASS","incrementPossible","incrementTotalAndPossible","test","toUpperCase","incrementTotal","import_crypto_nft_score_model","scoreNftDescription","nft","scoreDescription","metadata","description","score","incrementTotal","import_crypto_nft_score_model","scoreNftExternalUrl","nft","scoreExternalUrl","metadata","external_url","score","undefined","isValidUrl","incrementTotal","isSecure","import_crypto_nft_score_model","MaxPossibleImageScore","scoreNftImage","nft","metadata","image","scoreImage","image_data","PASS","score","isValidUrl","incrementTotal","isSecure","isWeb3","import_crypto_nft_score_model","MaxPossibleImageDataScore","isValidImageData","image_data","startsWith","parse","scoreNftImageData","nft","metadata","scoreImageData","image","PASS","import_crypto_nft_score_model","scoreNftName","nft","scoreName","metadata","name","score","incrementTotal","import_crypto_nft_score_model","scoreNftYoutubeUrl","nft","scoreYoutubeUrl","metadata","youtube_url","undefined","PASS","score","isValidUrl","incrementTotal","isSecure","import_crypto_nft_score_model","scoreSupply","nft","supply","FAIL","BigInt","tokenId","PASS","import_crypto_nft_score_model","scoreTokenId","nft","tokenId","FAIL","BigInt","PASS","import_crypto_nft_score_model","scoreType","nft","type","FAIL","toUpperCase","PASS","attributesScoringCriteria","Attributes","score","evaluateNftAttributes","weight","metadataScoringCriteria","scoreNftAnimationUrl","scoreNftBackgroundColor","scoreNftDescription","scoreNftExternalUrl","scoreNftImage","scoreNftImageData","scoreNftName","scoreNftYoutubeUrl","scoringCriteria","scoreContractAddress","scoreSupply","scoreTokenId","scoreType","analyzeNft","nft","result","Object","fromEntries","Promise","all","entries","scoringCriteria","map","key","score","weight","rawScore","weighted","v","toNftScorePayload","nftInfo","scores","address","chainId","type","schema","NftScoreSchema","isNftScore","payload","NftScoreDiviner","AbstractDiviner","divineHandler","payloads","nftInfos","filter","isNftInfo","results","Promise","all","map","score","sourceHash","analyzeNft","PayloadBuilder","dataHash","sources","configSchemas","NftScoreDivinerConfigSchema","defaultConfigSchema","import_crypto_nft_payload_plugin","NftScoreDivinerPlugin","createPayloadSetDivinerPlugin","required","NftSchema","schema","PayloadSetSchema","diviner","params","result","NftScoreDiviner","create"]}
|
package/dist/node/index.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAE9B,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/node/index.d.mts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAE9B,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/node/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAE9B,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
package/dist/node/lib/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
-
import { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
-
import { scoringCriteria } from './criteria/index.ts';
|
|
4
|
-
export type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
5
|
-
export type NftAnalysis = {
|
|
6
|
-
[key in ScoringCriteriaKey]: Score;
|
|
7
|
-
};
|
|
8
|
-
export declare const analyzeNft: (nft: NftInfoFields) => Promise<NftAnalysis>;
|
|
9
|
-
//# sourceMappingURL=analyzeNft.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeNft.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/analyzeNft.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,eAAe,GAAG,WAAW,CAAA;AAE3E,MAAM,MAAM,WAAW,GAAG;KACvB,GAAG,IAAI,kBAAkB,GAAG,KAAK;CACnC,CAAA;AAED,eAAO,MAAM,UAAU,QAIhB,aAAa,KACjB,OAAO,CAAC,WAAW,CAWrB,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
|
|
2
|
-
import { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
-
import { scoringCriteria } from './criteria/index.ts';
|
|
4
|
-
export type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
5
|
-
export type NftAnalysis = {
|
|
6
|
-
[key in ScoringCriteriaKey]: Score;
|
|
7
|
-
};
|
|
8
|
-
export declare const analyzeNft: (nft: NftInfoFields) => Promise<NftAnalysis>;
|
|
9
|
-
//# sourceMappingURL=analyzeNft.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeNft.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/analyzeNft.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,eAAe,GAAG,WAAW,CAAA;AAE3E,MAAM,MAAM,WAAW,GAAG;KACvB,GAAG,IAAI,kBAAkB,GAAG,KAAK;CACnC,CAAA;AAED,eAAO,MAAM,UAAU,QAIhB,aAAa,KACjB,OAAO,CAAC,WAAW,CAWrB,CAAA"}
|