@xyo-network/crypto-nft-diviner-score-plugin 2.96.0 → 2.96.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/browser/Diviner.d.cts +2 -6
  2. package/dist/browser/Diviner.d.cts.map +1 -1
  3. package/dist/browser/Diviner.d.mts +2 -6
  4. package/dist/browser/Diviner.d.mts.map +1 -1
  5. package/dist/browser/Diviner.d.ts +2 -6
  6. package/dist/browser/Diviner.d.ts.map +1 -1
  7. package/dist/browser/Plugin.d.cts +7 -7
  8. package/dist/browser/Plugin.d.mts +7 -7
  9. package/dist/browser/Plugin.d.ts +7 -7
  10. package/dist/browser/index.cjs +1 -371
  11. package/dist/browser/index.cjs.map +1 -1
  12. package/dist/browser/index.js +1 -352
  13. package/dist/browser/index.js.map +1 -1
  14. package/dist/browser/lib/rating/analyzeNft.d.cts.map +1 -1
  15. package/dist/browser/lib/rating/analyzeNft.d.mts.map +1 -1
  16. package/dist/browser/lib/rating/analyzeNft.d.ts.map +1 -1
  17. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +1 -1
  18. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +1 -1
  19. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -1
  20. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +1 -1
  21. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +1 -1
  22. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -1
  23. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +1 -1
  24. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +1 -1
  25. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -1
  26. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.cts.map +1 -1
  27. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.mts.map +1 -1
  28. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -1
  29. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +1 -1
  30. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +1 -1
  31. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -1
  32. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.cts.map +1 -1
  33. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.mts.map +1 -1
  34. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -1
  35. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +1 -1
  36. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +1 -1
  37. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -1
  38. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.cts.map +1 -1
  39. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.mts.map +1 -1
  40. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -1
  41. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +1 -1
  42. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +1 -1
  43. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -1
  44. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.cts +0 -6
  45. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.cts.map +1 -1
  46. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.mts +0 -6
  47. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.mts.map +1 -1
  48. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts +0 -6
  49. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -1
  50. package/dist/neutral/Diviner.d.cts +2 -6
  51. package/dist/neutral/Diviner.d.cts.map +1 -1
  52. package/dist/neutral/Diviner.d.mts +2 -6
  53. package/dist/neutral/Diviner.d.mts.map +1 -1
  54. package/dist/neutral/Diviner.d.ts +2 -6
  55. package/dist/neutral/Diviner.d.ts.map +1 -1
  56. package/dist/neutral/Plugin.d.cts +7 -7
  57. package/dist/neutral/Plugin.d.mts +7 -7
  58. package/dist/neutral/Plugin.d.ts +7 -7
  59. package/dist/neutral/index.cjs +1 -371
  60. package/dist/neutral/index.cjs.map +1 -1
  61. package/dist/neutral/index.js +1 -352
  62. package/dist/neutral/index.js.map +1 -1
  63. package/dist/neutral/lib/rating/analyzeNft.d.cts.map +1 -1
  64. package/dist/neutral/lib/rating/analyzeNft.d.mts.map +1 -1
  65. package/dist/neutral/lib/rating/analyzeNft.d.ts.map +1 -1
  66. package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +1 -1
  67. package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +1 -1
  68. package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -1
  69. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +1 -1
  70. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +1 -1
  71. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -1
  72. package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +1 -1
  73. package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +1 -1
  74. package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -1
  75. package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.cts.map +1 -1
  76. package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.mts.map +1 -1
  77. package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -1
  78. package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +1 -1
  79. package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +1 -1
  80. package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -1
  81. package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.cts.map +1 -1
  82. package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.mts.map +1 -1
  83. package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -1
  84. package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +1 -1
  85. package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +1 -1
  86. package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -1
  87. package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.cts.map +1 -1
  88. package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.mts.map +1 -1
  89. package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -1
  90. package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +1 -1
  91. package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +1 -1
  92. package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -1
  93. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.cts +0 -6
  94. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.cts.map +1 -1
  95. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.mts +0 -6
  96. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.mts.map +1 -1
  97. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts +0 -6
  98. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -1
  99. package/dist/node/Diviner.d.cts +2 -6
  100. package/dist/node/Diviner.d.cts.map +1 -1
  101. package/dist/node/Diviner.d.mts +2 -6
  102. package/dist/node/Diviner.d.mts.map +1 -1
  103. package/dist/node/Diviner.d.ts +2 -6
  104. package/dist/node/Diviner.d.ts.map +1 -1
  105. package/dist/node/Plugin.d.cts +7 -7
  106. package/dist/node/Plugin.d.mts +7 -7
  107. package/dist/node/Plugin.d.ts +7 -7
  108. package/dist/node/index.cjs +1 -396
  109. package/dist/node/index.cjs.map +1 -1
  110. package/dist/node/index.js +1 -369
  111. package/dist/node/index.js.map +1 -1
  112. package/dist/node/lib/rating/analyzeNft.d.cts.map +1 -1
  113. package/dist/node/lib/rating/analyzeNft.d.mts.map +1 -1
  114. package/dist/node/lib/rating/analyzeNft.d.ts.map +1 -1
  115. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +1 -1
  116. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +1 -1
  117. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -1
  118. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +1 -1
  119. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +1 -1
  120. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -1
  121. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +1 -1
  122. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +1 -1
  123. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -1
  124. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.cts.map +1 -1
  125. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.mts.map +1 -1
  126. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -1
  127. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +1 -1
  128. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +1 -1
  129. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -1
  130. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.cts.map +1 -1
  131. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.mts.map +1 -1
  132. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -1
  133. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +1 -1
  134. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +1 -1
  135. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -1
  136. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.cts.map +1 -1
  137. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.mts.map +1 -1
  138. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -1
  139. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +1 -1
  140. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +1 -1
  141. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -1
  142. package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts +0 -6
  143. package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts.map +1 -1
  144. package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts +0 -6
  145. package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts.map +1 -1
  146. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts +0 -6
  147. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -1
  148. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"sources":["../../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":["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'\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'\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'\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'\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'\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'\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'\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'\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":["PASS","PASS","incrementPossible","incrementTotal","incrementTotalAndPossible","incrementPossible","incrementTotal","incrementTotalAndPossible","PASS","incrementTotal","incrementTotal","incrementTotal","incrementTotal","PASS","PASS","incrementTotal","PASS","incrementTotal","incrementTotal","PASS","PASS","incrementTotal","FAIL","PASS","FAIL","PASS","FAIL","PASS"]}
1
+ {"version":3,"sources":["../../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":["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'\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'\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'\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'\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'\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'\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'\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'\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":["isNftInfo","NftScoreDivinerConfigSchema","NftScoreSchema","AbstractDiviner","PayloadBuilder","FAIL","PASS","isAddress","scoreContractAddress","nft","incrementPossible","incrementTotal","incrementTotalAndPossible","PASS","URL","web3Protocols","toUrl","url","isValidUrl","isWeb3","protocol","isSecure","url","isWeb3","toUrl","scoreNftAnimationUrl","nft","scoreAnimationUrl","animation_url","score","PASS","incrementPossible","incrementTotalAndPossible","isValidUrl","isSecure","isWeb3","incrementTotal","incrementPossible","incrementTotal","incrementTotalAndPossible","isDate","value","isNumber","isPercentage","isNonEmptyString","isNonEmptyStringOrNumber","evaluateNftAttributes","nft","evaluateAttributes","attributes","score","attribute","attributeTotal","attributePossible","evaluateAttribute","max_value","trait_type","validDisplayType","incrementPossible","incrementTotal","incrementTotalAndPossible","PASS","isHexColor","scoreNftBackgroundColor","nft","scoreBackgroundColor","background_color","score","incrementTotal","scoreNftDescription","nft","scoreDescription","description","score","incrementTotal","scoreNftExternalUrl","nft","scoreExternalUrl","external_url","score","isValidUrl","incrementTotal","isSecure","incrementTotal","PASS","MaxPossibleImageScore","scoreNftImage","nft","scoreImage","PASS","image","score","isValidUrl","incrementTotal","isSecure","isWeb3","PASS","parse","MaxPossibleImageDataScore","isValidImageData","image_data","scoreNftImageData","nft","scoreImageData","incrementTotal","scoreNftName","nft","scoreName","name","score","incrementTotal","PASS","scoreNftYoutubeUrl","nft","scoreYoutubeUrl","youtube_url","PASS","score","isValidUrl","incrementTotal","isSecure","FAIL","PASS","scoreSupply","nft","FAIL","PASS","scoreTokenId","nft","FAIL","PASS","scoreType","nft","type","attributesScoringCriteria","evaluateNftAttributes","metadataScoringCriteria","scoreNftAnimationUrl","scoreNftBackgroundColor","scoreNftDescription","scoreNftExternalUrl","scoreNftImage","scoreNftImageData","scoreNftName","scoreNftYoutubeUrl","scoringCriteria","scoreContractAddress","scoreSupply","scoreTokenId","scoreType","analyzeNft","nft","scoringCriteria","key","score","weight","weighted","v","toNftScorePayload","nftInfo","scores","address","chainId","type","NftScoreSchema","isNftScore","payload","NftScoreDiviner","AbstractDiviner","NftScoreDivinerConfigSchema","payloads","nftInfos","isNftInfo","score","sourceHash","analyzeNft","PayloadBuilder","NftSchema","PayloadSetSchema","createPayloadSetDivinerPlugin","NftScoreDivinerPlugin","createPayloadSetDivinerPlugin","NftSchema","PayloadSetSchema","params","NftScoreDiviner"]}
@@ -1 +1 @@
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,YAAY,CAAA;AAE5C,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,QAAQ,WAAW,CAWrB,CAAA"}
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,YAAY,CAAA;AAE5C,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 +1 @@
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,YAAY,CAAA;AAE5C,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,QAAQ,WAAW,CAWrB,CAAA"}
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,YAAY,CAAA;AAE5C,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 +1 @@
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,YAAY,CAAA;AAE5C,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,QAAQ,WAAW,CAWrB,CAAA"}
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,YAAY,CAAA;AAE5C,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 +1 @@
1
- {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,gBAE7E,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,gBAYvD,CAAA"}
1
+ {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEhF,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,KAAG,WAY1D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,gBAE7E,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,gBAYvD,CAAA"}
1
+ {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEhF,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,KAAG,WAY1D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,gBAE7E,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,gBAYvD,CAAA"}
1
+ {"version":3,"file":"animationUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/animationUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,oBAAoB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEhF,CAAA;AAED,eAAO,MAAM,iBAAiB,kBAAmB,OAAO,KAAG,WAY1D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,gBACK,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,gBAQ9F,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,gBAqB/D,CAAA"}
1
+ {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WACE,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,KAAG,WAQjG,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,KAAG,WAqBlE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,gBACK,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,gBAQ9F,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,gBAqB/D,CAAA"}
1
+ {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WACE,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,KAAG,WAQjG,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,KAAG,WAqBlE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,gBACK,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,gBAQ9F,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,gBAqB/D,CAAA"}
1
+ {"version":3,"file":"evaluateAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC/H,OAAO,EAAgE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAsB/H,eAAO,MAAM,qBAAqB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WACE,CAAA;AAEpF,eAAO,MAAM,kBAAkB,eAAgB,YAAY,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,KAAG,WAQjG,CAAA;AAED,eAAO,MAAM,iBAAiB,cAAe,mBAAmB,KAAG,WAqBlE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,gBAEhF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,gBAQ7D,CAAA"}
1
+ {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEnF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,KAAG,WAQhE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,gBAEhF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,gBAQ7D,CAAA"}
1
+ {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEnF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,KAAG,WAQhE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,gBAEhF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,gBAQ7D,CAAA"}
1
+ {"version":3,"file":"backgroundColor.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAsE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIrI,eAAO,MAAM,uBAAuB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAEnF,CAAA;AAED,eAAO,MAAM,oBAAoB,qBAAsB,OAAO,KAAG,WAQhE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,gBAIpD,CAAA"}
1
+ {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,KAAG,WAIvD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,gBAIpD,CAAA"}
1
+ {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,KAAG,WAIvD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,gBAIpD,CAAA"}
1
+ {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,KAAG,WAIvD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,gBAMrD,CAAA"}
1
+ {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,KAAG,WAMxD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,gBAMrD,CAAA"}
1
+ {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,KAAG,WAMxD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,gBAE5E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,gBAMrD,CAAA"}
1
+ {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIjF,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,KAAG,WAMxD,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQzE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,WAS3C,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQzE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,WAS3C,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQzE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,WAS3C,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAQ1E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,gBAIjD,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQ7E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,KAAG,WAIpD,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAQ1E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,gBAIjD,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQ7E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,KAAG,WAIpD,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAQ1E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,gBAIjD,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQ7E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,KAAG,WAIpD,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAErE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,gBAItC,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAExE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,KAAG,WAIzC,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAErE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,gBAItC,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAExE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,KAAG,WAIzC,CAAA"}
@@ -1 +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,QAAS,aAAa,GAAG,oBAAoB,gBAErE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,gBAItC,CAAA"}
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,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAExE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,KAAG,WAIzC,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,gBAE3E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,gBAOnD,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE9E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,KAAG,WAOtD,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,gBAE3E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,gBAOnD,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE9E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,KAAG,WAOtD,CAAA"}
@@ -1 +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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,gBAE3E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,gBAOnD,CAAA"}
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,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAIvF,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE9E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,KAAG,WAOtD,CAAA"}
@@ -1,10 +1,4 @@
1
1
  import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
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
3
  export declare const scoreTokenId: PassFailScoringFunction<NftInfoFields>;
10
4
  //# sourceMappingURL=tokenId.d.ts.map
@@ -1 +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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAQzF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
@@ -1,10 +1,4 @@
1
1
  import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
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
3
  export declare const scoreTokenId: PassFailScoringFunction<NftInfoFields>;
10
4
  //# sourceMappingURL=tokenId.d.ts.map
@@ -1 +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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAQzF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
@@ -1,10 +1,4 @@
1
1
  import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
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
3
  export declare const scoreTokenId: PassFailScoringFunction<NftInfoFields>;
10
4
  //# sourceMappingURL=tokenId.d.ts.map
@@ -1 +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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
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,EAAc,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAQzF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
@@ -1,14 +1,10 @@
1
- import { NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
1
+ import { NftScore, NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
2
2
  import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
3
  import { DivinerParams } from '@xyo-network/diviner-model';
4
4
  import { AnyConfigSchema } from '@xyo-network/module-model';
5
5
  import { Payload, Schema } from '@xyo-network/payload-model';
6
6
  export type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>;
7
- export declare const isNftScore: (payload: Payload) => payload is import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/crypto-nft-payload-plugin").NftContractInformation & import("@xyo-network/crypto-nft-payload-plugin").NftScores & {
8
- sources?: string[] | undefined;
9
- } & {
10
- schema: "network.xyo.crypto.nft.score";
11
- };
7
+ export declare const isNftScore: (payload: Payload) => payload is NftScore;
12
8
  export declare class NftScoreDiviner<TParams extends NftScoreDivinerParams = NftScoreDivinerParams> extends AbstractDiviner<TParams> {
13
9
  static readonly configSchemas: Schema[];
14
10
  static readonly defaultConfigSchema: Schema;
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO;;;;CAA2D,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,QAAQ,OAAO,EAAE,CAAC,CAclF;CACF"}
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO,KAAG,OAAO,IAAI,QAA6C,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAclF;CACF"}
@@ -1,14 +1,10 @@
1
- import { NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
1
+ import { NftScore, NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
2
2
  import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
3
  import { DivinerParams } from '@xyo-network/diviner-model';
4
4
  import { AnyConfigSchema } from '@xyo-network/module-model';
5
5
  import { Payload, Schema } from '@xyo-network/payload-model';
6
6
  export type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>;
7
- export declare const isNftScore: (payload: Payload) => payload is import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/crypto-nft-payload-plugin").NftContractInformation & import("@xyo-network/crypto-nft-payload-plugin").NftScores & {
8
- sources?: string[] | undefined;
9
- } & {
10
- schema: "network.xyo.crypto.nft.score";
11
- };
7
+ export declare const isNftScore: (payload: Payload) => payload is NftScore;
12
8
  export declare class NftScoreDiviner<TParams extends NftScoreDivinerParams = NftScoreDivinerParams> extends AbstractDiviner<TParams> {
13
9
  static readonly configSchemas: Schema[];
14
10
  static readonly defaultConfigSchema: Schema;
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO;;;;CAA2D,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,QAAQ,OAAO,EAAE,CAAC,CAclF;CACF"}
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO,KAAG,OAAO,IAAI,QAA6C,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAclF;CACF"}
@@ -1,14 +1,10 @@
1
- import { NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
1
+ import { NftScore, NftScoreDivinerConfig } from '@xyo-network/crypto-nft-payload-plugin';
2
2
  import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
3
  import { DivinerParams } from '@xyo-network/diviner-model';
4
4
  import { AnyConfigSchema } from '@xyo-network/module-model';
5
5
  import { Payload, Schema } from '@xyo-network/payload-model';
6
6
  export type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>;
7
- export declare const isNftScore: (payload: Payload) => payload is import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/crypto-nft-payload-plugin").NftContractInformation & import("@xyo-network/crypto-nft-payload-plugin").NftScores & {
8
- sources?: string[] | undefined;
9
- } & {
10
- schema: "network.xyo.crypto.nft.score";
11
- };
7
+ export declare const isNftScore: (payload: Payload) => payload is NftScore;
12
8
  export declare class NftScoreDiviner<TParams extends NftScoreDivinerParams = NftScoreDivinerParams> extends AbstractDiviner<TParams> {
13
9
  static readonly configSchemas: Schema[];
14
10
  static readonly defaultConfigSchema: Schema;
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO;;;;CAA2D,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,QAAQ,OAAO,EAAE,CAAC,CAclF;CACF"}
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,qBAAqB,EAGtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAI5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAOzF,eAAO,MAAM,UAAU,YAAa,OAAO,KAAG,OAAO,IAAI,QAA6C,CAAA;AAEtG,qBAAa,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC1H,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF,UAAmB,aAAa,cAAqB,OAAO,EAAE,KAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAclF;CACF"}
@@ -1,19 +1,19 @@
1
1
  import { NftScoreDiviner } from './Diviner';
2
2
  export declare const NftScoreDivinerPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDivinerPlugin<NftScoreDiviner<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
4
- addToResolvers?: boolean | undefined;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[] | undefined;
6
- allowNameResolution?: boolean | undefined;
3
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
4
+ addToResolvers?: boolean;
5
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
6
+ allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.nft.score.diviner.config";
9
9
  } & {
10
- schema: "network.xyo.crypto.nft.score.diviner.config";
10
+ schema: import("@xyo-network/crypto-nft-payload-plugin").NftScoreDivinerConfigSchema;
11
11
  }, "schema"> & {
12
12
  schema: "network.xyo.crypto.nft.score.diviner.config";
13
13
  }, "schema"> & {
14
14
  schema: string;
15
15
  };
16
- ephemeralQueryAccountEnabled?: boolean | undefined;
17
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
16
+ ephemeralQueryAccountEnabled?: boolean;
17
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
18
18
  }>>;
19
19
  //# sourceMappingURL=Plugin.d.ts.map
@@ -1,19 +1,19 @@
1
1
  import { NftScoreDiviner } from './Diviner';
2
2
  export declare const NftScoreDivinerPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDivinerPlugin<NftScoreDiviner<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
4
- addToResolvers?: boolean | undefined;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[] | undefined;
6
- allowNameResolution?: boolean | undefined;
3
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
4
+ addToResolvers?: boolean;
5
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
6
+ allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.nft.score.diviner.config";
9
9
  } & {
10
- schema: "network.xyo.crypto.nft.score.diviner.config";
10
+ schema: import("@xyo-network/crypto-nft-payload-plugin").NftScoreDivinerConfigSchema;
11
11
  }, "schema"> & {
12
12
  schema: "network.xyo.crypto.nft.score.diviner.config";
13
13
  }, "schema"> & {
14
14
  schema: string;
15
15
  };
16
- ephemeralQueryAccountEnabled?: boolean | undefined;
17
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
16
+ ephemeralQueryAccountEnabled?: boolean;
17
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
18
18
  }>>;
19
19
  //# sourceMappingURL=Plugin.d.ts.map
@@ -1,19 +1,19 @@
1
1
  import { NftScoreDiviner } from './Diviner';
2
2
  export declare const NftScoreDivinerPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDivinerPlugin<NftScoreDiviner<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
4
- addToResolvers?: boolean | undefined;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[] | undefined;
6
- allowNameResolution?: boolean | undefined;
3
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
4
+ addToResolvers?: boolean;
5
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
6
+ allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.nft.score.diviner.config";
9
9
  } & {
10
- schema: "network.xyo.crypto.nft.score.diviner.config";
10
+ schema: import("@xyo-network/crypto-nft-payload-plugin").NftScoreDivinerConfigSchema;
11
11
  }, "schema"> & {
12
12
  schema: "network.xyo.crypto.nft.score.diviner.config";
13
13
  }, "schema"> & {
14
14
  schema: string;
15
15
  };
16
- ephemeralQueryAccountEnabled?: boolean | undefined;
17
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
16
+ ephemeralQueryAccountEnabled?: boolean;
17
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
18
18
  }>>;
19
19
  //# sourceMappingURL=Plugin.d.ts.map