@xyo-network/crypto-nft-diviner-score-plugin 3.0.2 → 3.0.4

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 (180) hide show
  1. package/dist/browser/Diviner.d.ts +13 -0
  2. package/dist/browser/Diviner.d.ts.map +1 -0
  3. package/dist/browser/Plugin.d.ts +19 -0
  4. package/dist/browser/Plugin.d.ts.map +1 -0
  5. package/dist/browser/index.d.ts +4 -102
  6. package/dist/browser/index.d.ts.map +1 -0
  7. package/dist/browser/index.mjs +30 -8
  8. package/dist/browser/index.mjs.map +1 -1
  9. package/dist/browser/lib/index.d.ts +2 -0
  10. package/dist/browser/lib/index.d.ts.map +1 -0
  11. package/dist/browser/lib/rating/analyzeNft.d.ts +9 -0
  12. package/dist/browser/lib/rating/analyzeNft.d.ts.map +1 -0
  13. package/dist/browser/lib/rating/criteria/index.d.ts +2 -0
  14. package/dist/browser/lib/rating/criteria/index.d.ts.map +1 -0
  15. package/dist/browser/lib/rating/criteria/scoring/contract.d.ts +4 -0
  16. package/dist/browser/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
  17. package/dist/browser/lib/rating/criteria/scoring/index.d.ts +6 -0
  18. package/dist/browser/lib/rating/criteria/scoring/index.d.ts.map +1 -0
  19. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
  20. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
  21. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
  22. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
  23. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
  24. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
  25. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
  26. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
  27. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
  28. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
  29. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
  30. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
  31. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
  32. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
  33. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
  34. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
  35. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
  36. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
  37. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
  38. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
  39. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
  40. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
  41. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
  42. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
  43. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
  44. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
  45. package/dist/browser/lib/rating/criteria/scoring/supply.d.ts +4 -0
  46. package/dist/browser/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
  47. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts +4 -0
  48. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
  49. package/dist/browser/lib/rating/criteria/scoring/type.d.ts +4 -0
  50. package/dist/browser/lib/rating/criteria/scoring/type.d.ts.map +1 -0
  51. package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts +55 -0
  52. package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
  53. package/dist/browser/lib/rating/index.d.ts +3 -0
  54. package/dist/browser/lib/rating/index.d.ts.map +1 -0
  55. package/dist/neutral/Diviner.d.ts +13 -0
  56. package/dist/neutral/Diviner.d.ts.map +1 -0
  57. package/dist/neutral/Plugin.d.ts +19 -0
  58. package/dist/neutral/Plugin.d.ts.map +1 -0
  59. package/dist/neutral/index.d.ts +4 -102
  60. package/dist/neutral/index.d.ts.map +1 -0
  61. package/dist/neutral/index.mjs +30 -8
  62. package/dist/neutral/index.mjs.map +1 -1
  63. package/dist/neutral/lib/index.d.ts +2 -0
  64. package/dist/neutral/lib/index.d.ts.map +1 -0
  65. package/dist/neutral/lib/rating/analyzeNft.d.ts +9 -0
  66. package/dist/neutral/lib/rating/analyzeNft.d.ts.map +1 -0
  67. package/dist/neutral/lib/rating/criteria/index.d.ts +2 -0
  68. package/dist/neutral/lib/rating/criteria/index.d.ts.map +1 -0
  69. package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts +4 -0
  70. package/dist/neutral/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
  71. package/dist/neutral/lib/rating/criteria/scoring/index.d.ts +6 -0
  72. package/dist/neutral/lib/rating/criteria/scoring/index.d.ts.map +1 -0
  73. package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
  74. package/dist/neutral/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
  75. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
  76. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
  77. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
  78. package/dist/neutral/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
  79. package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
  80. package/dist/neutral/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
  81. package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
  82. package/dist/neutral/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
  83. package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
  84. package/dist/neutral/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
  85. package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
  86. package/dist/neutral/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
  87. package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
  88. package/dist/neutral/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
  89. package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
  90. package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
  91. package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
  92. package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
  93. package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
  94. package/dist/neutral/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
  95. package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
  96. package/dist/neutral/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
  97. package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
  98. package/dist/neutral/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
  99. package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts +4 -0
  100. package/dist/neutral/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
  101. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts +4 -0
  102. package/dist/neutral/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
  103. package/dist/neutral/lib/rating/criteria/scoring/type.d.ts +4 -0
  104. package/dist/neutral/lib/rating/criteria/scoring/type.d.ts.map +1 -0
  105. package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts +55 -0
  106. package/dist/neutral/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
  107. package/dist/neutral/lib/rating/index.d.ts +3 -0
  108. package/dist/neutral/lib/rating/index.d.ts.map +1 -0
  109. package/dist/node/Diviner.d.ts +13 -0
  110. package/dist/node/Diviner.d.ts.map +1 -0
  111. package/dist/node/Plugin.d.ts +19 -0
  112. package/dist/node/Plugin.d.ts.map +1 -0
  113. package/dist/node/index.d.ts +4 -102
  114. package/dist/node/index.d.ts.map +1 -0
  115. package/dist/node/index.mjs +30 -8
  116. package/dist/node/index.mjs.map +1 -1
  117. package/dist/node/lib/index.d.ts +2 -0
  118. package/dist/node/lib/index.d.ts.map +1 -0
  119. package/dist/node/lib/rating/analyzeNft.d.ts +9 -0
  120. package/dist/node/lib/rating/analyzeNft.d.ts.map +1 -0
  121. package/dist/node/lib/rating/criteria/index.d.ts +2 -0
  122. package/dist/node/lib/rating/criteria/index.d.ts.map +1 -0
  123. package/dist/node/lib/rating/criteria/scoring/contract.d.ts +4 -0
  124. package/dist/node/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
  125. package/dist/node/lib/rating/criteria/scoring/index.d.ts +6 -0
  126. package/dist/node/lib/rating/criteria/scoring/index.d.ts.map +1 -0
  127. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
  128. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
  129. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
  130. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
  131. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
  132. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
  133. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
  134. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
  135. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
  136. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
  137. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
  138. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
  139. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
  140. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
  141. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
  142. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
  143. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
  144. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
  145. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
  146. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
  147. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +7 -0
  148. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
  149. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
  150. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
  151. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
  152. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
  153. package/dist/node/lib/rating/criteria/scoring/supply.d.ts +4 -0
  154. package/dist/node/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
  155. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts +4 -0
  156. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
  157. package/dist/node/lib/rating/criteria/scoring/type.d.ts +4 -0
  158. package/dist/node/lib/rating/criteria/scoring/type.d.ts.map +1 -0
  159. package/dist/node/lib/rating/criteria/scoringCriteria.d.ts +55 -0
  160. package/dist/node/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
  161. package/dist/node/lib/rating/index.d.ts +3 -0
  162. package/dist/node/lib/rating/index.d.ts.map +1 -0
  163. package/package.json +36 -36
  164. package/src/Diviner.ts +15 -8
  165. package/src/lib/rating/analyzeNft.ts +2 -2
  166. package/src/lib/rating/criteria/scoring/contract.ts +3 -2
  167. package/src/lib/rating/criteria/scoring/metadata/animationUrl.ts +8 -3
  168. package/src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts +7 -2
  169. package/src/lib/rating/criteria/scoring/metadata/backgroundColor.ts +5 -2
  170. package/src/lib/rating/criteria/scoring/metadata/description.ts +3 -2
  171. package/src/lib/rating/criteria/scoring/metadata/externalUrl.ts +3 -2
  172. package/src/lib/rating/criteria/scoring/metadata/image.ts +6 -3
  173. package/src/lib/rating/criteria/scoring/metadata/imageData.ts +3 -2
  174. package/src/lib/rating/criteria/scoring/metadata/name.ts +3 -2
  175. package/src/lib/rating/criteria/scoring/metadata/spec/testHelpers.ts +2 -1
  176. package/src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts +3 -2
  177. package/src/lib/rating/criteria/scoring/supply.ts +3 -2
  178. package/src/lib/rating/criteria/scoring/tokenId.ts +3 -2
  179. package/src/lib/rating/criteria/scoring/type.ts +3 -2
  180. package/src/lib/rating/criteria/scoringCriteria.ts +1 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAGtE,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AAED,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,KAAG,WAIvD,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftExternalUrl: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreExternalUrl: (external_url: unknown) => ScaledScore;
5
+ //# sourceMappingURL=externalUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externalUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAKtE,eAAO,MAAM,mBAAmB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE/E,CAAA;AACD,eAAO,MAAM,gBAAgB,iBAAkB,OAAO,KAAG,WAMxD,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftImage: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreImage: (image: unknown) => ScaledScore;
5
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAStE,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQzE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,WAS3C,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftImageData: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreImageData: (image_data: unknown) => ScaledScore;
5
+ //# sourceMappingURL=imageData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imageData.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/imageData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAoBtE,eAAO,MAAM,iBAAiB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAQ7E,CAAA;AAED,eAAO,MAAM,cAAc,eAAgB,OAAO,KAAG,WAIpD,CAAA"}
@@ -0,0 +1,10 @@
1
+ export * from './animationUrl.ts';
2
+ export * from './attributes/index.ts';
3
+ export * from './backgroundColor.ts';
4
+ export * from './description.ts';
5
+ export * from './externalUrl.ts';
6
+ export * from './image.ts';
7
+ export * from './imageData.ts';
8
+ export * from './name.ts';
9
+ export * from './youtubeUrl.ts';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './urlHelpers.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,7 @@
1
+ export declare const web3Protocols: string[];
2
+ export declare const toUrl: (url?: string | null) => URL | undefined;
3
+ export declare const isValidUrl: (url?: string | null) => boolean;
4
+ export declare const isWeb3: (url?: string | null) => boolean;
5
+ export declare const isWeb2: (url?: string | null) => boolean;
6
+ export declare const isSecure: (url?: string | null) => boolean;
7
+ //# sourceMappingURL=urlHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlHelpers.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,UAAmB,CAAA;AAE7C,eAAO,MAAM,KAAK,SAAU,MAAM,GAAG,IAAI,KAAG,GAAG,GAAG,SAOjD,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,MAAM,GAAG,IAAI,KAAG,OAAmC,CAAA;AAEpF,eAAO,MAAM,MAAM,SAAU,MAAM,GAAG,IAAI,KAAG,OAA4E,CAAA;AACzH,eAAO,MAAM,MAAM,SAAU,MAAM,GAAG,IAAI,KAAG,OAAuB,CAAA;AACpE,eAAO,MAAM,QAAQ,SAAU,MAAM,GAAG,IAAI,KAAG,OAA2D,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftName: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreName: (name: unknown) => ScaledScore;
5
+ //# sourceMappingURL=name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"name.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAGtE,eAAO,MAAM,YAAY,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAExE,CAAA;AACD,eAAO,MAAM,SAAS,SAAU,OAAO,KAAG,WAIzC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftYoutubeUrl: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreYoutubeUrl: (youtube_url: unknown) => ScaledScore;
5
+ //# sourceMappingURL=youtubeUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"youtubeUrl.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/youtubeUrl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAKtE,eAAO,MAAM,kBAAkB,QAAS,aAAa,GAAG,oBAAoB,KAAG,WAE9E,CAAA;AACD,eAAO,MAAM,eAAe,gBAAiB,OAAO,KAAG,WAOtD,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreSupply: PassFailScoringFunction<NftInfoFields>;
4
+ //# sourceMappingURL=supply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supply.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/supply.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAGlF,eAAO,MAAM,WAAW,EAAE,uBAAuB,CAAC,aAAa,CAQ9D,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreTokenId: PassFailScoringFunction<NftInfoFields>;
4
+ //# sourceMappingURL=tokenId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenId.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/tokenId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AASlF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,aAAa,CAQ/D,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreType: PassFailScoringFunction<NftInfoFields>;
4
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAGlF,eAAO,MAAM,SAAS,EAAE,uBAAuB,CAAC,aAAa,CAM5D,CAAA"}
@@ -0,0 +1,55 @@
1
+ export declare const scoringCriteria: {
2
+ Attributes: {
3
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
4
+ weight: number;
5
+ };
6
+ 'Animation URL': {
7
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
8
+ weight: number;
9
+ };
10
+ 'Background Color': {
11
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
12
+ weight: number;
13
+ };
14
+ Description: {
15
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
16
+ weight: number;
17
+ };
18
+ 'External Url': {
19
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
20
+ weight: number;
21
+ };
22
+ Image: {
23
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
24
+ weight: number;
25
+ };
26
+ 'Image Data': {
27
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
28
+ weight: number;
29
+ };
30
+ Name: {
31
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
32
+ weight: number;
33
+ };
34
+ 'YouTube URL': {
35
+ score: (nft: import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields | import("@xyo-network/crypto-nft-payload-plugin").OpenSeaNftInfoFields) => import("@xyo-network/crypto-nft-score-model").ScaledScore;
36
+ weight: number;
37
+ };
38
+ 'Contract Address': {
39
+ score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
40
+ weight: number;
41
+ };
42
+ Supply: {
43
+ score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
44
+ weight: number;
45
+ };
46
+ 'Token Id': {
47
+ score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
48
+ weight: number;
49
+ };
50
+ Type: {
51
+ score: import("@xyo-network/crypto-nft-score-model").PassFailScoringFunction<import("@xyo-network/crypto-nft-payload-plugin").NftInfoFields>;
52
+ weight: number;
53
+ };
54
+ };
55
+ //# sourceMappingURL=scoringCriteria.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringCriteria.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/criteria/scoringCriteria.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM3B,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './analyzeNft.ts';
2
+ export * from './criteria/index.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA"}
package/package.json CHANGED
@@ -1,55 +1,55 @@
1
1
  {
2
2
  "name": "@xyo-network/crypto-nft-diviner-score-plugin",
3
+ "version": "3.0.4",
4
+ "description": "Typescript/Javascript Plugins for XYO Platform",
5
+ "homepage": "https://xyo.network",
6
+ "bugs": {
7
+ "url": "git+https://github.com/XYOracleNetwork/plugins/issues",
8
+ "email": "support@xyo.network"
9
+ },
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "git+https://github.com/XYOracleNetwork/plugins.git"
13
+ },
14
+ "license": "LGPL-3.0-only",
3
15
  "author": {
4
- "email": "support@xyo.network",
5
16
  "name": "XYO Development Team",
17
+ "email": "support@xyo.network",
6
18
  "url": "https://xyo.network"
7
19
  },
8
- "bugs": {
9
- "email": "support@xyo.network",
10
- "url": "https://github.com/XYOracleNetwork/plugins/issues"
20
+ "sideEffects": false,
21
+ "type": "module",
22
+ "exports": {
23
+ ".": {
24
+ "types": "./dist/neutral/index.d.ts",
25
+ "default": "./dist/neutral/index.mjs"
26
+ },
27
+ "./package.json": "./package.json"
11
28
  },
29
+ "module": "dist/neutral/index.mjs",
30
+ "types": "dist/neutral/index.d.ts",
12
31
  "dependencies": {
13
- "@xyo-network/crypto-nft-payload-plugin": "^3.0.2",
14
- "@xyo-network/crypto-nft-score-model": "^3.0.2",
15
- "@xyo-network/diviner-abstract": "^3.0.2",
16
- "@xyo-network/diviner-model": "^3.0.2",
17
- "@xyo-network/module-model": "^3.0.2",
18
- "@xyo-network/payload-builder": "^3.0.2",
19
- "@xyo-network/payload-model": "^3.0.2",
20
- "@xyo-network/payloadset-plugin": "^3.0.2",
32
+ "@xyo-network/crypto-nft-payload-plugin": "^3.0.4",
33
+ "@xyo-network/crypto-nft-score-model": "^3.0.4",
34
+ "@xyo-network/diviner-abstract": "^3.0.10",
35
+ "@xyo-network/diviner-model": "^3.0.10",
36
+ "@xyo-network/module-model": "^3.0.10",
37
+ "@xyo-network/payload-builder": "^3.0.10",
38
+ "@xyo-network/payload-model": "^3.0.10",
39
+ "@xyo-network/payloadset-plugin": "^3.0.10",
21
40
  "ethers": "^6.13.2",
22
41
  "svg-parser": "^2.0.4"
23
42
  },
24
43
  "devDependencies": {
25
44
  "@types/svg-parser": "^2.0.6",
26
- "@xylabs/jest-helpers": "^4.0.1",
27
- "@xylabs/ts-scripts-yarn3": "^4.0.0-rc.15",
28
- "@xylabs/tsconfig": "^4.0.0-rc.15",
29
- "@xyo-network/payload-wrapper": "^3.0.2",
45
+ "@xylabs/jest-helpers": "^4.0.4",
46
+ "@xylabs/ts-scripts-yarn3": "^4.0.7",
47
+ "@xylabs/tsconfig": "^4.0.7",
48
+ "@xyo-network/payload-wrapper": "^3.0.10",
30
49
  "jest": "^29.7.0",
31
50
  "typescript": "^5.5.4"
32
51
  },
33
- "description": "Typescript/Javascript Plugins for XYO Platform",
34
- "types": "dist/neutral/index.d.ts",
35
- "exports": {
36
- ".": {
37
- "types": "./dist/neutral/index.d.ts",
38
- "default": "./dist/neutral/index.mjs"
39
- },
40
- "./package.json": "./package.json"
41
- },
42
- "module": "dist/neutral/index.mjs",
43
- "homepage": "https://xyo.network",
44
- "license": "LGPL-3.0-only",
45
52
  "publishConfig": {
46
53
  "access": "public"
47
- },
48
- "repository": {
49
- "type": "git",
50
- "url": "https://github.com/XYOracleNetwork/plugins.git"
51
- },
52
- "sideEffects": false,
53
- "version": "3.0.2",
54
- "type": "module"
54
+ }
55
55
  }
package/src/Diviner.ts CHANGED
@@ -1,24 +1,31 @@
1
- import {
2
- isNftInfo,
1
+ import type {
3
2
  NftInfo,
4
3
  NftScore,
5
4
  NftScoreDivinerConfig,
5
+ } from '@xyo-network/crypto-nft-payload-plugin'
6
+ import {
7
+ isNftInfo,
6
8
  NftScoreDivinerConfigSchema,
7
9
  NftScoreSchema,
8
10
  } from '@xyo-network/crypto-nft-payload-plugin'
9
11
  import { AbstractDiviner } from '@xyo-network/diviner-abstract'
10
- import { DivinerParams } from '@xyo-network/diviner-model'
11
- import { AnyConfigSchema } from '@xyo-network/module-model'
12
+ import type { DivinerParams } from '@xyo-network/diviner-model'
13
+ import type { AnyConfigSchema } from '@xyo-network/module-model'
12
14
  import { PayloadBuilder } from '@xyo-network/payload-builder'
13
- import { Payload, Schema } from '@xyo-network/payload-model'
15
+ import type { Payload, Schema } from '@xyo-network/payload-model'
14
16
 
15
- import { analyzeNft, NftAnalysis } from './lib/index.ts'
17
+ import type { NftAnalysis } from './lib/index.ts'
18
+ import { analyzeNft } from './lib/index.ts'
16
19
 
17
20
  export type NftScoreDivinerParams = DivinerParams<AnyConfigSchema<NftScoreDivinerConfig>>
18
21
 
19
22
  const toNftScorePayload = (nftInfo: NftInfo, scores: NftAnalysis): NftScore => {
20
- const { address, chainId, type } = nftInfo
21
- return { address, chainId, schema: NftScoreSchema, scores, type }
23
+ const {
24
+ address, chainId, type,
25
+ } = nftInfo
26
+ return {
27
+ address, chainId, schema: NftScoreSchema, scores, type,
28
+ }
22
29
  }
23
30
 
24
31
  export const isNftScore = (payload: Payload): payload is NftScore => payload.schema === NftScoreSchema
@@ -1,5 +1,5 @@
1
- import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { Score } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { Score } from '@xyo-network/crypto-nft-score-model'
3
3
 
4
4
  import { scoringCriteria } from './criteria/index.ts'
5
5
 
@@ -1,5 +1,6 @@
1
- import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
3
+ import { FAIL, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
  import { isAddress } from 'ethers'
4
5
 
5
6
  export const scoreContractAddress: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
@@ -1,7 +1,12 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import {
4
+ incrementPossible, incrementTotal, incrementTotalAndPossible, PASS,
5
+ } from '@xyo-network/crypto-nft-score-model'
3
6
 
4
- import { isSecure, isValidUrl, isWeb3 } from './lib/index.ts'
7
+ import {
8
+ isSecure, isValidUrl, isWeb3,
9
+ } from './lib/index.ts'
5
10
 
6
11
  export const scoreNftAnimationUrl = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {
7
12
  return scoreAnimationUrl(nft.metadata?.animation_url)
@@ -1,5 +1,10 @@
1
- import { NftAttribute, NftInfoFields, OpenSeaNftAttribute, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementPossible, incrementTotal, incrementTotalAndPossible, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type {
2
+ NftAttribute, NftInfoFields, OpenSeaNftAttribute, OpenSeaNftInfoFields,
3
+ } from '@xyo-network/crypto-nft-payload-plugin'
4
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
5
+ import {
6
+ incrementPossible, incrementTotal, incrementTotalAndPossible,
7
+ } from '@xyo-network/crypto-nft-score-model'
3
8
 
4
9
  const isDate = (value: unknown): value is Date => {
5
10
  if (isNumber(value)) {
@@ -1,5 +1,8 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementPossible, incrementTotal, incrementTotalAndPossible, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import {
4
+ incrementPossible, incrementTotal, incrementTotalAndPossible, PASS,
5
+ } from '@xyo-network/crypto-nft-score-model'
3
6
 
4
7
  const isHexColor = /^[\da-f]{6}$/i
5
8
 
@@ -1,5 +1,6 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  export const scoreNftDescription = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {
5
6
  return scoreDescription(nft.metadata?.description)
@@ -1,5 +1,6 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  import { isSecure, isValidUrl } from './lib/index.ts'
5
6
 
@@ -1,7 +1,10 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementTotal, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { incrementTotal, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
- import { isSecure, isValidUrl, isWeb3 } from './lib/index.ts'
5
+ import {
6
+ isSecure, isValidUrl, isWeb3,
7
+ } from './lib/index.ts'
5
8
 
6
9
  const MaxPossibleImageScore = 3
7
10
 
@@ -1,5 +1,6 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { PASS } from '@xyo-network/crypto-nft-score-model'
3
4
  import { parse } from 'svg-parser'
4
5
 
5
6
  const MaxPossibleImageDataScore = 1
@@ -1,5 +1,6 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementTotal, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { incrementTotal } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  export const scoreNftName = (nft: NftInfoFields | OpenSeaNftInfoFields): ScaledScore => {
5
6
  return scoreName(nft.metadata?.name)
@@ -1,4 +1,5 @@
1
- import { PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
2
+ import { PASS } from '@xyo-network/crypto-nft-score-model'
2
3
 
3
4
  export const expectMaxPossibleScore = (score: ScaledScore) => {
4
5
  const [total, possible] = score
@@ -1,5 +1,6 @@
1
- import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { incrementTotal, PASS, ScaledScore } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { ScaledScore } from '@xyo-network/crypto-nft-score-model'
3
+ import { incrementTotal, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  import { isSecure, isValidUrl } from './lib/index.ts'
5
6
 
@@ -1,5 +1,6 @@
1
- import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
3
+ import { FAIL, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  export const scoreSupply: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
5
6
  if (!nft.supply) return FAIL
@@ -1,5 +1,6 @@
1
- import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
3
+ import { FAIL, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  /**
5
6
  * Callers SHALL NOT assume that ID numbers have any specific pattern to them, and
@@ -1,5 +1,6 @@
1
- import { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
- import { FAIL, PASS, PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
1
+ import type { NftInfoFields } from '@xyo-network/crypto-nft-payload-plugin'
2
+ import type { PassFailScoringFunction } from '@xyo-network/crypto-nft-score-model'
3
+ import { FAIL, PASS } from '@xyo-network/crypto-nft-score-model'
3
4
 
4
5
  export const scoreType: PassFailScoringFunction<NftInfoFields> = (nft: NftInfoFields) => {
5
6
  if (!nft.type) return FAIL
@@ -14,9 +14,7 @@ import {
14
14
  scoreType,
15
15
  } from './scoring/index.ts'
16
16
 
17
- const attributesScoringCriteria = {
18
- Attributes: { score: evaluateNftAttributes, weight: 1 },
19
- }
17
+ const attributesScoringCriteria = { Attributes: { score: evaluateNftAttributes, weight: 1 } }
20
18
 
21
19
  const metadataScoringCriteria = {
22
20
  'Animation URL': { score: scoreNftAnimationUrl, weight: 1 },