@xyo-network/crypto-nft-diviner-score-plugin 2.74.5 → 2.75.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 (642) hide show
  1. package/dist/browser/Diviner.cjs +407 -0
  2. package/dist/browser/Diviner.cjs.map +1 -0
  3. package/dist/browser/Diviner.d.cts.map +1 -0
  4. package/dist/browser/Diviner.d.mts.map +1 -0
  5. package/dist/browser/Diviner.d.ts +14 -0
  6. package/dist/browser/Diviner.d.ts.map +1 -0
  7. package/dist/browser/Diviner.js +36 -0
  8. package/dist/browser/Diviner.js.map +1 -0
  9. package/dist/browser/Plugin.cjs +421 -0
  10. package/dist/browser/Plugin.cjs.map +1 -0
  11. package/dist/browser/Plugin.d.cts.map +1 -0
  12. package/dist/browser/Plugin.d.mts.map +1 -0
  13. package/dist/browser/Plugin.d.ts +50 -0
  14. package/dist/browser/Plugin.d.ts.map +1 -0
  15. package/dist/browser/Plugin.js +17 -0
  16. package/dist/browser/Plugin.js.map +1 -0
  17. package/dist/{index.js → browser/index.cjs} +1 -8
  18. package/dist/browser/index.cjs.map +1 -0
  19. package/dist/browser/index.d.cts.map +1 -0
  20. package/dist/browser/index.d.mts.map +1 -0
  21. package/dist/browser/index.d.ts +6 -0
  22. package/dist/browser/index.d.ts.map +1 -0
  23. package/dist/browser/index.js +9 -0
  24. package/dist/browser/index.js.map +1 -0
  25. package/dist/browser/lib/index.cjs +378 -0
  26. package/dist/browser/lib/index.cjs.map +1 -0
  27. package/dist/browser/lib/index.d.cts.map +1 -0
  28. package/dist/browser/lib/index.d.mts.map +1 -0
  29. package/dist/browser/lib/index.d.ts +2 -0
  30. package/dist/browser/lib/index.d.ts.map +1 -0
  31. package/dist/browser/lib/index.js +2 -0
  32. package/dist/browser/lib/index.js.map +1 -0
  33. package/dist/browser/lib/rating/analyzeNft.cjs +378 -0
  34. package/dist/browser/lib/rating/analyzeNft.cjs.map +1 -0
  35. package/dist/browser/lib/rating/analyzeNft.d.cts.map +1 -0
  36. package/dist/browser/lib/rating/analyzeNft.d.mts.map +1 -0
  37. package/dist/browser/lib/rating/analyzeNft.d.ts +9 -0
  38. package/dist/browser/lib/rating/analyzeNft.d.ts.map +1 -0
  39. package/dist/browser/lib/rating/analyzeNft.js +17 -0
  40. package/dist/browser/lib/rating/analyzeNft.js.map +1 -0
  41. package/dist/browser/lib/rating/criteria/index.cjs +364 -0
  42. package/dist/browser/lib/rating/criteria/index.cjs.map +1 -0
  43. package/dist/browser/lib/rating/criteria/index.d.cts.map +1 -0
  44. package/dist/browser/lib/rating/criteria/index.d.mts.map +1 -0
  45. package/dist/browser/lib/rating/criteria/index.d.ts +2 -0
  46. package/dist/browser/lib/rating/criteria/index.d.ts.map +1 -0
  47. package/dist/browser/lib/rating/criteria/index.js +2 -0
  48. package/dist/browser/lib/rating/criteria/index.js.map +1 -0
  49. package/dist/browser/lib/rating/criteria/scoring/contract.cjs +37 -0
  50. package/dist/browser/lib/rating/criteria/scoring/contract.cjs.map +1 -0
  51. package/dist/browser/lib/rating/criteria/scoring/contract.d.cts.map +1 -0
  52. package/dist/browser/lib/rating/criteria/scoring/contract.d.mts.map +1 -0
  53. package/dist/browser/lib/rating/criteria/scoring/contract.d.ts +4 -0
  54. package/dist/browser/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
  55. package/dist/browser/lib/rating/criteria/scoring/contract.js +15 -0
  56. package/dist/browser/lib/rating/criteria/scoring/contract.js.map +1 -0
  57. package/dist/browser/lib/rating/criteria/scoring/index.cjs +363 -0
  58. package/dist/browser/lib/rating/criteria/scoring/index.cjs.map +1 -0
  59. package/dist/browser/lib/rating/criteria/scoring/index.d.cts.map +1 -0
  60. package/dist/browser/lib/rating/criteria/scoring/index.d.mts.map +1 -0
  61. package/dist/browser/lib/rating/criteria/scoring/index.d.ts +6 -0
  62. package/dist/browser/lib/rating/criteria/scoring/index.d.ts.map +1 -0
  63. package/dist/browser/lib/rating/criteria/scoring/index.js +6 -0
  64. package/dist/browser/lib/rating/criteria/scoring/index.js.map +1 -0
  65. package/dist/browser/lib/rating/criteria/scoring/lib/index.cjs +43 -0
  66. package/dist/browser/lib/rating/criteria/scoring/lib/index.cjs.map +1 -0
  67. package/dist/browser/lib/rating/criteria/scoring/lib/index.d.cts.map +1 -0
  68. package/dist/browser/lib/rating/criteria/scoring/lib/index.d.mts.map +1 -0
  69. package/dist/browser/lib/rating/criteria/scoring/lib/index.d.ts +3 -0
  70. package/dist/browser/lib/rating/criteria/scoring/lib/index.d.ts.map +1 -0
  71. package/dist/browser/lib/rating/criteria/scoring/lib/index.js +3 -0
  72. package/dist/browser/lib/rating/criteria/scoring/lib/index.js.map +1 -0
  73. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.cjs +42 -0
  74. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.cjs.map +1 -0
  75. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.cts.map +1 -0
  76. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts.map +1 -0
  77. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts +2 -0
  78. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts.map +1 -0
  79. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.js +9 -0
  80. package/dist/browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.js.map +1 -0
  81. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.cjs +34 -0
  82. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.cjs.map +1 -0
  83. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.d.cts.map +1 -0
  84. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.d.mts.map +1 -0
  85. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.d.ts +3 -0
  86. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.d.ts.map +1 -0
  87. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.js +12 -0
  88. package/dist/browser/lib/rating/criteria/scoring/lib/toBigNumber.js.map +1 -0
  89. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.cjs +67 -0
  90. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.cjs.map +1 -0
  91. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +1 -0
  92. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +1 -0
  93. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
  94. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
  95. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.js +28 -0
  96. package/dist/browser/lib/rating/criteria/scoring/metadata/animationUrl.js.map +1 -0
  97. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.cjs +103 -0
  98. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.cjs.map +1 -0
  99. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +1 -0
  100. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +1 -0
  101. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
  102. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
  103. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.js +81 -0
  104. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.js.map +1 -0
  105. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.cjs +105 -0
  106. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.cjs.map +1 -0
  107. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.cts.map +1 -0
  108. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +1 -0
  109. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
  110. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
  111. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.js +2 -0
  112. package/dist/browser/lib/rating/criteria/scoring/metadata/attributes/index.js.map +1 -0
  113. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.cjs +44 -0
  114. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.cjs.map +1 -0
  115. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +1 -0
  116. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +1 -0
  117. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
  118. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
  119. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.js +22 -0
  120. package/dist/browser/lib/rating/criteria/scoring/metadata/backgroundColor.js.map +1 -0
  121. package/dist/browser/lib/rating/criteria/scoring/metadata/description.cjs +37 -0
  122. package/dist/browser/lib/rating/criteria/scoring/metadata/description.cjs.map +1 -0
  123. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.cts.map +1 -0
  124. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.mts.map +1 -0
  125. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
  126. package/dist/browser/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
  127. package/dist/browser/lib/rating/criteria/scoring/metadata/description.js +15 -0
  128. package/dist/browser/lib/rating/criteria/scoring/metadata/description.js.map +1 -0
  129. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.cjs +58 -0
  130. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.cjs.map +1 -0
  131. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +1 -0
  132. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +1 -0
  133. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
  134. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
  135. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.js +19 -0
  136. package/dist/browser/lib/rating/criteria/scoring/metadata/externalUrl.js.map +1 -0
  137. package/dist/browser/lib/rating/criteria/scoring/metadata/image.cjs +67 -0
  138. package/dist/browser/lib/rating/criteria/scoring/metadata/image.cjs.map +1 -0
  139. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.cts.map +1 -0
  140. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.mts.map +1 -0
  141. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
  142. package/dist/browser/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
  143. package/dist/browser/lib/rating/criteria/scoring/metadata/image.js +28 -0
  144. package/dist/browser/lib/rating/criteria/scoring/metadata/image.js.map +1 -0
  145. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.cjs +50 -0
  146. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.cjs.map +1 -0
  147. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +1 -0
  148. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +1 -0
  149. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
  150. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
  151. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.js +28 -0
  152. package/dist/browser/lib/rating/criteria/scoring/metadata/imageData.js.map +1 -0
  153. package/dist/browser/lib/rating/criteria/scoring/metadata/index.cjs +287 -0
  154. package/dist/browser/lib/rating/criteria/scoring/metadata/index.cjs.map +1 -0
  155. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.cts.map +1 -0
  156. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.mts.map +1 -0
  157. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
  158. package/dist/browser/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
  159. package/dist/browser/lib/rating/criteria/scoring/metadata/index.js +10 -0
  160. package/dist/browser/lib/rating/criteria/scoring/metadata/index.js.map +1 -0
  161. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.cjs +48 -0
  162. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.cjs.map +1 -0
  163. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.cts.map +1 -0
  164. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +1 -0
  165. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
  166. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
  167. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.js +2 -0
  168. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/index.js.map +1 -0
  169. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.cjs +46 -0
  170. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.cjs.map +1 -0
  171. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts.map +1 -0
  172. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +1 -0
  173. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +8 -0
  174. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
  175. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.js +24 -0
  176. package/dist/browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.js.map +1 -0
  177. package/dist/browser/lib/rating/criteria/scoring/metadata/name.cjs +37 -0
  178. package/dist/browser/lib/rating/criteria/scoring/metadata/name.cjs.map +1 -0
  179. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.cts.map +1 -0
  180. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.mts.map +1 -0
  181. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
  182. package/dist/browser/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
  183. package/dist/browser/lib/rating/criteria/scoring/metadata/name.js +15 -0
  184. package/dist/browser/lib/rating/criteria/scoring/metadata/name.js.map +1 -0
  185. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.cjs +60 -0
  186. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.cjs.map +1 -0
  187. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +1 -0
  188. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +1 -0
  189. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
  190. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
  191. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.js +21 -0
  192. package/dist/browser/lib/rating/criteria/scoring/metadata/youtubeUrl.js.map +1 -0
  193. package/dist/browser/lib/rating/criteria/scoring/supply.cjs +56 -0
  194. package/dist/browser/lib/rating/criteria/scoring/supply.cjs.map +1 -0
  195. package/dist/browser/lib/rating/criteria/scoring/supply.d.cts.map +1 -0
  196. package/dist/browser/lib/rating/criteria/scoring/supply.d.mts.map +1 -0
  197. package/dist/browser/lib/rating/criteria/scoring/supply.d.ts +4 -0
  198. package/dist/browser/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
  199. package/dist/browser/lib/rating/criteria/scoring/supply.js +17 -0
  200. package/dist/browser/lib/rating/criteria/scoring/supply.js.map +1 -0
  201. package/dist/browser/lib/rating/criteria/scoring/tokenId.cjs +56 -0
  202. package/dist/browser/lib/rating/criteria/scoring/tokenId.cjs.map +1 -0
  203. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.cts.map +1 -0
  204. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.mts.map +1 -0
  205. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts +10 -0
  206. package/dist/browser/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
  207. package/dist/browser/lib/rating/criteria/scoring/tokenId.js +17 -0
  208. package/dist/browser/lib/rating/criteria/scoring/tokenId.js.map +1 -0
  209. package/dist/browser/lib/rating/criteria/scoring/type.cjs +37 -0
  210. package/dist/browser/lib/rating/criteria/scoring/type.cjs.map +1 -0
  211. package/dist/browser/lib/rating/criteria/scoring/type.d.cts.map +1 -0
  212. package/dist/browser/lib/rating/criteria/scoring/type.d.mts.map +1 -0
  213. package/dist/browser/lib/rating/criteria/scoring/type.d.ts +4 -0
  214. package/dist/browser/lib/rating/criteria/scoring/type.d.ts.map +1 -0
  215. package/dist/browser/lib/rating/criteria/scoring/type.js +15 -0
  216. package/dist/browser/lib/rating/criteria/scoring/type.js.map +1 -0
  217. package/dist/browser/lib/rating/criteria/scoringCriteria.cjs +364 -0
  218. package/dist/browser/lib/rating/criteria/scoringCriteria.cjs.map +1 -0
  219. package/dist/browser/lib/rating/criteria/scoringCriteria.d.cts.map +1 -0
  220. package/dist/browser/lib/rating/criteria/scoringCriteria.d.mts.map +1 -0
  221. package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts +55 -0
  222. package/dist/browser/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
  223. package/dist/browser/lib/rating/criteria/scoringCriteria.js +40 -0
  224. package/dist/browser/lib/rating/criteria/scoringCriteria.js.map +1 -0
  225. package/dist/browser/lib/rating/index.cjs +378 -0
  226. package/dist/browser/lib/rating/index.cjs.map +1 -0
  227. package/dist/browser/lib/rating/index.d.cts.map +1 -0
  228. package/dist/browser/lib/rating/index.d.mts.map +1 -0
  229. package/dist/browser/lib/rating/index.d.ts +2 -0
  230. package/dist/browser/lib/rating/index.d.ts.map +1 -0
  231. package/dist/browser/lib/rating/index.js +2 -0
  232. package/dist/browser/lib/rating/index.js.map +1 -0
  233. package/dist/docs.json +533 -533
  234. package/dist/node/Diviner.d.cts +14 -0
  235. package/dist/node/Diviner.d.cts.map +1 -0
  236. package/dist/node/Diviner.d.mts +14 -0
  237. package/dist/node/Diviner.d.mts.map +1 -0
  238. package/dist/node/Diviner.d.ts +14 -0
  239. package/dist/node/Diviner.d.ts.map +1 -0
  240. package/dist/node/Diviner.js +429 -0
  241. package/dist/node/Diviner.js.map +1 -0
  242. package/dist/node/Diviner.mjs +407 -0
  243. package/dist/node/Diviner.mjs.map +1 -0
  244. package/dist/node/Plugin.d.cts +50 -0
  245. package/dist/node/Plugin.d.cts.map +1 -0
  246. package/dist/node/Plugin.d.mts +50 -0
  247. package/dist/node/Plugin.d.mts.map +1 -0
  248. package/dist/node/Plugin.d.ts +50 -0
  249. package/dist/node/Plugin.d.ts.map +1 -0
  250. package/dist/node/Plugin.js +442 -0
  251. package/dist/node/Plugin.js.map +1 -0
  252. package/dist/node/Plugin.mjs +421 -0
  253. package/dist/node/Plugin.mjs.map +1 -0
  254. package/dist/node/index.d.cts +6 -0
  255. package/dist/node/index.d.cts.map +1 -0
  256. package/dist/node/index.d.mts +6 -0
  257. package/dist/node/index.d.mts.map +1 -0
  258. package/dist/node/index.d.ts +6 -0
  259. package/dist/node/index.d.ts.map +1 -0
  260. package/dist/node/index.js +455 -0
  261. package/dist/node/index.js.map +1 -0
  262. package/dist/{index.mjs → node/index.mjs} +41 -24
  263. package/dist/node/index.mjs.map +1 -0
  264. package/dist/node/lib/index.d.cts +2 -0
  265. package/dist/node/lib/index.d.cts.map +1 -0
  266. package/dist/node/lib/index.d.mts +2 -0
  267. package/dist/node/lib/index.d.mts.map +1 -0
  268. package/dist/node/lib/index.d.ts +2 -0
  269. package/dist/node/lib/index.d.ts.map +1 -0
  270. package/dist/node/lib/index.js +399 -0
  271. package/dist/node/lib/index.js.map +1 -0
  272. package/dist/node/lib/index.mjs +372 -0
  273. package/dist/node/lib/index.mjs.map +1 -0
  274. package/dist/node/lib/rating/analyzeNft.d.cts +9 -0
  275. package/dist/node/lib/rating/analyzeNft.d.cts.map +1 -0
  276. package/dist/node/lib/rating/analyzeNft.d.mts +9 -0
  277. package/dist/node/lib/rating/analyzeNft.d.mts.map +1 -0
  278. package/dist/node/lib/rating/analyzeNft.d.ts +9 -0
  279. package/dist/node/lib/rating/analyzeNft.d.ts.map +1 -0
  280. package/dist/node/lib/rating/analyzeNft.js +399 -0
  281. package/dist/node/lib/rating/analyzeNft.js.map +1 -0
  282. package/dist/node/lib/rating/analyzeNft.mjs +372 -0
  283. package/dist/node/lib/rating/analyzeNft.mjs.map +1 -0
  284. package/dist/node/lib/rating/criteria/index.d.cts +2 -0
  285. package/dist/node/lib/rating/criteria/index.d.cts.map +1 -0
  286. package/dist/node/lib/rating/criteria/index.d.mts +2 -0
  287. package/dist/node/lib/rating/criteria/index.d.mts.map +1 -0
  288. package/dist/node/lib/rating/criteria/index.d.ts +2 -0
  289. package/dist/node/lib/rating/criteria/index.d.ts.map +1 -0
  290. package/dist/node/lib/rating/criteria/index.js +385 -0
  291. package/dist/node/lib/rating/criteria/index.js.map +1 -0
  292. package/dist/node/lib/rating/criteria/index.mjs +358 -0
  293. package/dist/node/lib/rating/criteria/index.mjs.map +1 -0
  294. package/dist/node/lib/rating/criteria/scoring/contract.d.cts +4 -0
  295. package/dist/node/lib/rating/criteria/scoring/contract.d.cts.map +1 -0
  296. package/dist/node/lib/rating/criteria/scoring/contract.d.mts +4 -0
  297. package/dist/node/lib/rating/criteria/scoring/contract.d.mts.map +1 -0
  298. package/dist/node/lib/rating/criteria/scoring/contract.d.ts +4 -0
  299. package/dist/node/lib/rating/criteria/scoring/contract.d.ts.map +1 -0
  300. package/dist/node/lib/rating/criteria/scoring/contract.js +41 -0
  301. package/dist/node/lib/rating/criteria/scoring/contract.js.map +1 -0
  302. package/dist/node/lib/rating/criteria/scoring/contract.mjs +16 -0
  303. package/dist/node/lib/rating/criteria/scoring/contract.mjs.map +1 -0
  304. package/dist/node/lib/rating/criteria/scoring/index.d.cts +6 -0
  305. package/dist/node/lib/rating/criteria/scoring/index.d.cts.map +1 -0
  306. package/dist/node/lib/rating/criteria/scoring/index.d.mts +6 -0
  307. package/dist/node/lib/rating/criteria/scoring/index.d.mts.map +1 -0
  308. package/dist/node/lib/rating/criteria/scoring/index.d.ts +6 -0
  309. package/dist/node/lib/rating/criteria/scoring/index.d.ts.map +1 -0
  310. package/dist/node/lib/rating/criteria/scoring/index.js +406 -0
  311. package/dist/node/lib/rating/criteria/scoring/index.js.map +1 -0
  312. package/dist/node/lib/rating/criteria/scoring/index.mjs +357 -0
  313. package/dist/node/lib/rating/criteria/scoring/index.mjs.map +1 -0
  314. package/dist/node/lib/rating/criteria/scoring/lib/index.d.cts +3 -0
  315. package/dist/node/lib/rating/criteria/scoring/lib/index.d.cts.map +1 -0
  316. package/dist/node/lib/rating/criteria/scoring/lib/index.d.mts +3 -0
  317. package/dist/node/lib/rating/criteria/scoring/lib/index.d.mts.map +1 -0
  318. package/dist/node/lib/rating/criteria/scoring/lib/index.d.ts +3 -0
  319. package/dist/node/lib/rating/criteria/scoring/lib/index.d.ts.map +1 -0
  320. package/dist/node/lib/rating/criteria/scoring/lib/index.js +48 -0
  321. package/dist/node/lib/rating/criteria/scoring/lib/index.js.map +1 -0
  322. package/dist/node/lib/rating/criteria/scoring/lib/index.mjs +20 -0
  323. package/dist/node/lib/rating/criteria/scoring/lib/index.mjs.map +1 -0
  324. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.cts +2 -0
  325. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.cts.map +1 -0
  326. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts +2 -0
  327. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts.map +1 -0
  328. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts +2 -0
  329. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts.map +1 -0
  330. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.js +46 -0
  331. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.js.map +1 -0
  332. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.mjs +19 -0
  333. package/dist/node/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.mjs.map +1 -0
  334. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.cts +3 -0
  335. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.cts.map +1 -0
  336. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.mts +3 -0
  337. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.mts.map +1 -0
  338. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.ts +3 -0
  339. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.d.ts.map +1 -0
  340. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.js +38 -0
  341. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.js.map +1 -0
  342. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.mjs +13 -0
  343. package/dist/node/lib/rating/criteria/scoring/lib/toBigNumber.mjs.map +1 -0
  344. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.cts +5 -0
  345. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.cts.map +1 -0
  346. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.mts +5 -0
  347. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +1 -0
  348. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts +5 -0
  349. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +1 -0
  350. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.js +79 -0
  351. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.js.map +1 -0
  352. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.mjs +53 -0
  353. package/dist/node/lib/rating/criteria/scoring/metadata/animationUrl.mjs.map +1 -0
  354. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts +6 -0
  355. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts.map +1 -0
  356. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts +6 -0
  357. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +1 -0
  358. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts +6 -0
  359. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +1 -0
  360. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.js +112 -0
  361. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.js.map +1 -0
  362. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.mjs +85 -0
  363. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.mjs.map +1 -0
  364. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.cts +2 -0
  365. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.cts.map +1 -0
  366. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.mts +2 -0
  367. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +1 -0
  368. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts +2 -0
  369. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +1 -0
  370. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.js +114 -0
  371. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.js.map +1 -0
  372. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.mjs +85 -0
  373. package/dist/node/lib/rating/criteria/scoring/metadata/attributes/index.mjs.map +1 -0
  374. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts +5 -0
  375. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts.map +1 -0
  376. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts +5 -0
  377. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +1 -0
  378. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts +5 -0
  379. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +1 -0
  380. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.js +50 -0
  381. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.js.map +1 -0
  382. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.mjs +24 -0
  383. package/dist/node/lib/rating/criteria/scoring/metadata/backgroundColor.mjs.map +1 -0
  384. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.cts +5 -0
  385. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.cts.map +1 -0
  386. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.mts +5 -0
  387. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.mts.map +1 -0
  388. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts +5 -0
  389. package/dist/node/lib/rating/criteria/scoring/metadata/description.d.ts.map +1 -0
  390. package/dist/node/lib/rating/criteria/scoring/metadata/description.js +43 -0
  391. package/dist/node/lib/rating/criteria/scoring/metadata/description.js.map +1 -0
  392. package/dist/node/lib/rating/criteria/scoring/metadata/description.mjs +17 -0
  393. package/dist/node/lib/rating/criteria/scoring/metadata/description.mjs.map +1 -0
  394. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.cts +5 -0
  395. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.cts.map +1 -0
  396. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.mts +5 -0
  397. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +1 -0
  398. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts +5 -0
  399. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +1 -0
  400. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.js +70 -0
  401. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.js.map +1 -0
  402. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.mjs +44 -0
  403. package/dist/node/lib/rating/criteria/scoring/metadata/externalUrl.mjs.map +1 -0
  404. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.cts +5 -0
  405. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.cts.map +1 -0
  406. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.mts +5 -0
  407. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.mts.map +1 -0
  408. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts +5 -0
  409. package/dist/node/lib/rating/criteria/scoring/metadata/image.d.ts.map +1 -0
  410. package/dist/node/lib/rating/criteria/scoring/metadata/image.js +79 -0
  411. package/dist/node/lib/rating/criteria/scoring/metadata/image.js.map +1 -0
  412. package/dist/node/lib/rating/criteria/scoring/metadata/image.mjs +53 -0
  413. package/dist/node/lib/rating/criteria/scoring/metadata/image.mjs.map +1 -0
  414. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.cts +5 -0
  415. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.cts.map +1 -0
  416. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.mts +5 -0
  417. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +1 -0
  418. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts +5 -0
  419. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +1 -0
  420. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.js +56 -0
  421. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.js.map +1 -0
  422. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.mjs +30 -0
  423. package/dist/node/lib/rating/criteria/scoring/metadata/imageData.mjs.map +1 -0
  424. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.cts +10 -0
  425. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.cts.map +1 -0
  426. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.mts +10 -0
  427. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.mts.map +1 -0
  428. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts +10 -0
  429. package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
  430. package/dist/node/lib/rating/criteria/scoring/metadata/index.js +326 -0
  431. package/dist/node/lib/rating/criteria/scoring/metadata/index.js.map +1 -0
  432. package/dist/node/lib/rating/criteria/scoring/metadata/index.mjs +281 -0
  433. package/dist/node/lib/rating/criteria/scoring/metadata/index.mjs.map +1 -0
  434. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.cts +2 -0
  435. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.cts.map +1 -0
  436. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.mts +2 -0
  437. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +1 -0
  438. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts +2 -0
  439. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +1 -0
  440. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.js +63 -0
  441. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.js.map +1 -0
  442. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.mjs +31 -0
  443. package/dist/node/lib/rating/criteria/scoring/metadata/lib/index.mjs.map +1 -0
  444. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts +8 -0
  445. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts.map +1 -0
  446. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts +8 -0
  447. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +1 -0
  448. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts +8 -0
  449. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +1 -0
  450. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.js +61 -0
  451. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.js.map +1 -0
  452. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.mjs +31 -0
  453. package/dist/node/lib/rating/criteria/scoring/metadata/lib/urlHelpers.mjs.map +1 -0
  454. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.cts +5 -0
  455. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.cts.map +1 -0
  456. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.mts +5 -0
  457. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.mts.map +1 -0
  458. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts +5 -0
  459. package/dist/node/lib/rating/criteria/scoring/metadata/name.d.ts.map +1 -0
  460. package/dist/node/lib/rating/criteria/scoring/metadata/name.js +43 -0
  461. package/dist/node/lib/rating/criteria/scoring/metadata/name.js.map +1 -0
  462. package/dist/node/lib/rating/criteria/scoring/metadata/name.mjs +17 -0
  463. package/dist/node/lib/rating/criteria/scoring/metadata/name.mjs.map +1 -0
  464. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts +5 -0
  465. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts.map +1 -0
  466. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts +5 -0
  467. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +1 -0
  468. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts +5 -0
  469. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +1 -0
  470. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.js +72 -0
  471. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.js.map +1 -0
  472. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.mjs +46 -0
  473. package/dist/node/lib/rating/criteria/scoring/metadata/youtubeUrl.mjs.map +1 -0
  474. package/dist/node/lib/rating/criteria/scoring/supply.d.cts +4 -0
  475. package/dist/node/lib/rating/criteria/scoring/supply.d.cts.map +1 -0
  476. package/dist/node/lib/rating/criteria/scoring/supply.d.mts +4 -0
  477. package/dist/node/lib/rating/criteria/scoring/supply.d.mts.map +1 -0
  478. package/dist/node/lib/rating/criteria/scoring/supply.d.ts +4 -0
  479. package/dist/node/lib/rating/criteria/scoring/supply.d.ts.map +1 -0
  480. package/dist/node/lib/rating/criteria/scoring/supply.js +60 -0
  481. package/dist/node/lib/rating/criteria/scoring/supply.js.map +1 -0
  482. package/dist/node/lib/rating/criteria/scoring/supply.mjs +35 -0
  483. package/dist/node/lib/rating/criteria/scoring/supply.mjs.map +1 -0
  484. package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts +10 -0
  485. package/dist/node/lib/rating/criteria/scoring/tokenId.d.cts.map +1 -0
  486. package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts +10 -0
  487. package/dist/node/lib/rating/criteria/scoring/tokenId.d.mts.map +1 -0
  488. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts +10 -0
  489. package/dist/node/lib/rating/criteria/scoring/tokenId.d.ts.map +1 -0
  490. package/dist/node/lib/rating/criteria/scoring/tokenId.js +60 -0
  491. package/dist/node/lib/rating/criteria/scoring/tokenId.js.map +1 -0
  492. package/dist/node/lib/rating/criteria/scoring/tokenId.mjs +35 -0
  493. package/dist/node/lib/rating/criteria/scoring/tokenId.mjs.map +1 -0
  494. package/dist/node/lib/rating/criteria/scoring/type.d.cts +4 -0
  495. package/dist/node/lib/rating/criteria/scoring/type.d.cts.map +1 -0
  496. package/dist/node/lib/rating/criteria/scoring/type.d.mts +4 -0
  497. package/dist/node/lib/rating/criteria/scoring/type.d.mts.map +1 -0
  498. package/dist/node/lib/rating/criteria/scoring/type.d.ts +4 -0
  499. package/dist/node/lib/rating/criteria/scoring/type.d.ts.map +1 -0
  500. package/dist/node/lib/rating/criteria/scoring/type.js +41 -0
  501. package/dist/node/lib/rating/criteria/scoring/type.js.map +1 -0
  502. package/dist/node/lib/rating/criteria/scoring/type.mjs +16 -0
  503. package/dist/node/lib/rating/criteria/scoring/type.mjs.map +1 -0
  504. package/dist/node/lib/rating/criteria/scoringCriteria.d.cts +55 -0
  505. package/dist/node/lib/rating/criteria/scoringCriteria.d.cts.map +1 -0
  506. package/dist/node/lib/rating/criteria/scoringCriteria.d.mts +55 -0
  507. package/dist/node/lib/rating/criteria/scoringCriteria.d.mts.map +1 -0
  508. package/dist/node/lib/rating/criteria/scoringCriteria.d.ts +55 -0
  509. package/dist/node/lib/rating/criteria/scoringCriteria.d.ts.map +1 -0
  510. package/dist/node/lib/rating/criteria/scoringCriteria.js +385 -0
  511. package/dist/node/lib/rating/criteria/scoringCriteria.js.map +1 -0
  512. package/dist/node/lib/rating/criteria/scoringCriteria.mjs +358 -0
  513. package/dist/node/lib/rating/criteria/scoringCriteria.mjs.map +1 -0
  514. package/dist/node/lib/rating/index.d.cts +2 -0
  515. package/dist/node/lib/rating/index.d.cts.map +1 -0
  516. package/dist/node/lib/rating/index.d.mts +2 -0
  517. package/dist/node/lib/rating/index.d.mts.map +1 -0
  518. package/dist/node/lib/rating/index.d.ts +2 -0
  519. package/dist/node/lib/rating/index.d.ts.map +1 -0
  520. package/dist/node/lib/rating/index.js +399 -0
  521. package/dist/node/lib/rating/index.js.map +1 -0
  522. package/dist/node/lib/rating/index.mjs +372 -0
  523. package/dist/node/lib/rating/index.mjs.map +1 -0
  524. package/package.json +36 -33
  525. package/dist/Diviner.d.mts.map +0 -1
  526. package/dist/Diviner.d.ts.map +0 -1
  527. package/dist/Plugin.d.mts.map +0 -1
  528. package/dist/Plugin.d.ts.map +0 -1
  529. package/dist/index.d.mts.map +0 -1
  530. package/dist/index.d.ts.map +0 -1
  531. package/dist/index.js.map +0 -1
  532. package/dist/index.mjs.map +0 -1
  533. package/dist/lib/index.d.mts.map +0 -1
  534. package/dist/lib/index.d.ts.map +0 -1
  535. package/dist/lib/rating/analyzeNft.d.mts.map +0 -1
  536. package/dist/lib/rating/analyzeNft.d.ts.map +0 -1
  537. package/dist/lib/rating/criteria/index.d.mts.map +0 -1
  538. package/dist/lib/rating/criteria/index.d.ts.map +0 -1
  539. package/dist/lib/rating/criteria/scoring/contract.d.mts.map +0 -1
  540. package/dist/lib/rating/criteria/scoring/contract.d.ts.map +0 -1
  541. package/dist/lib/rating/criteria/scoring/index.d.mts.map +0 -1
  542. package/dist/lib/rating/criteria/scoring/index.d.ts.map +0 -1
  543. package/dist/lib/rating/criteria/scoring/lib/index.d.mts.map +0 -1
  544. package/dist/lib/rating/criteria/scoring/lib/index.d.ts.map +0 -1
  545. package/dist/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts.map +0 -1
  546. package/dist/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts.map +0 -1
  547. package/dist/lib/rating/criteria/scoring/lib/toBigNumber.d.mts.map +0 -1
  548. package/dist/lib/rating/criteria/scoring/lib/toBigNumber.d.ts.map +0 -1
  549. package/dist/lib/rating/criteria/scoring/metadata/animationUrl.d.mts.map +0 -1
  550. package/dist/lib/rating/criteria/scoring/metadata/animationUrl.d.ts.map +0 -1
  551. package/dist/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts.map +0 -1
  552. package/dist/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts.map +0 -1
  553. package/dist/lib/rating/criteria/scoring/metadata/attributes/index.d.mts.map +0 -1
  554. package/dist/lib/rating/criteria/scoring/metadata/attributes/index.d.ts.map +0 -1
  555. package/dist/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts.map +0 -1
  556. package/dist/lib/rating/criteria/scoring/metadata/backgroundColor.d.ts.map +0 -1
  557. package/dist/lib/rating/criteria/scoring/metadata/description.d.mts.map +0 -1
  558. package/dist/lib/rating/criteria/scoring/metadata/description.d.ts.map +0 -1
  559. package/dist/lib/rating/criteria/scoring/metadata/externalUrl.d.mts.map +0 -1
  560. package/dist/lib/rating/criteria/scoring/metadata/externalUrl.d.ts.map +0 -1
  561. package/dist/lib/rating/criteria/scoring/metadata/image.d.mts.map +0 -1
  562. package/dist/lib/rating/criteria/scoring/metadata/image.d.ts.map +0 -1
  563. package/dist/lib/rating/criteria/scoring/metadata/imageData.d.mts.map +0 -1
  564. package/dist/lib/rating/criteria/scoring/metadata/imageData.d.ts.map +0 -1
  565. package/dist/lib/rating/criteria/scoring/metadata/index.d.mts.map +0 -1
  566. package/dist/lib/rating/criteria/scoring/metadata/index.d.ts.map +0 -1
  567. package/dist/lib/rating/criteria/scoring/metadata/lib/index.d.mts.map +0 -1
  568. package/dist/lib/rating/criteria/scoring/metadata/lib/index.d.ts.map +0 -1
  569. package/dist/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts.map +0 -1
  570. package/dist/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts.map +0 -1
  571. package/dist/lib/rating/criteria/scoring/metadata/name.d.mts.map +0 -1
  572. package/dist/lib/rating/criteria/scoring/metadata/name.d.ts.map +0 -1
  573. package/dist/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts.map +0 -1
  574. package/dist/lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts.map +0 -1
  575. package/dist/lib/rating/criteria/scoring/supply.d.mts.map +0 -1
  576. package/dist/lib/rating/criteria/scoring/supply.d.ts.map +0 -1
  577. package/dist/lib/rating/criteria/scoring/tokenId.d.mts.map +0 -1
  578. package/dist/lib/rating/criteria/scoring/tokenId.d.ts.map +0 -1
  579. package/dist/lib/rating/criteria/scoring/type.d.mts.map +0 -1
  580. package/dist/lib/rating/criteria/scoring/type.d.ts.map +0 -1
  581. package/dist/lib/rating/criteria/scoringCriteria.d.mts.map +0 -1
  582. package/dist/lib/rating/criteria/scoringCriteria.d.ts.map +0 -1
  583. package/dist/lib/rating/index.d.mts.map +0 -1
  584. package/dist/lib/rating/index.d.ts.map +0 -1
  585. /package/dist/{Diviner.d.mts → browser/Diviner.d.cts} +0 -0
  586. /package/dist/{Diviner.d.ts → browser/Diviner.d.mts} +0 -0
  587. /package/dist/{Plugin.d.mts → browser/Plugin.d.cts} +0 -0
  588. /package/dist/{Plugin.d.ts → browser/Plugin.d.mts} +0 -0
  589. /package/dist/{index.d.mts → browser/index.d.cts} +0 -0
  590. /package/dist/{index.d.ts → browser/index.d.mts} +0 -0
  591. /package/dist/{lib/index.d.mts → browser/lib/index.d.cts} +0 -0
  592. /package/dist/{lib/index.d.ts → browser/lib/index.d.mts} +0 -0
  593. /package/dist/{lib/rating/analyzeNft.d.mts → browser/lib/rating/analyzeNft.d.cts} +0 -0
  594. /package/dist/{lib/rating/analyzeNft.d.ts → browser/lib/rating/analyzeNft.d.mts} +0 -0
  595. /package/dist/{lib/rating/criteria/index.d.mts → browser/lib/rating/criteria/index.d.cts} +0 -0
  596. /package/dist/{lib/rating/criteria/index.d.ts → browser/lib/rating/criteria/index.d.mts} +0 -0
  597. /package/dist/{lib/rating/criteria/scoring/contract.d.mts → browser/lib/rating/criteria/scoring/contract.d.cts} +0 -0
  598. /package/dist/{lib/rating/criteria/scoring/contract.d.ts → browser/lib/rating/criteria/scoring/contract.d.mts} +0 -0
  599. /package/dist/{lib/rating/criteria/scoring/index.d.mts → browser/lib/rating/criteria/scoring/index.d.cts} +0 -0
  600. /package/dist/{lib/rating/criteria/scoring/index.d.ts → browser/lib/rating/criteria/scoring/index.d.mts} +0 -0
  601. /package/dist/{lib/rating/criteria/scoring/lib/index.d.mts → browser/lib/rating/criteria/scoring/lib/index.d.cts} +0 -0
  602. /package/dist/{lib/rating/criteria/scoring/lib/index.d.ts → browser/lib/rating/criteria/scoring/lib/index.d.mts} +0 -0
  603. /package/dist/{lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts → browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.cts} +0 -0
  604. /package/dist/{lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.ts → browser/lib/rating/criteria/scoring/lib/isValidPositiveBigNumber.d.mts} +0 -0
  605. /package/dist/{lib/rating/criteria/scoring/lib/toBigNumber.d.mts → browser/lib/rating/criteria/scoring/lib/toBigNumber.d.cts} +0 -0
  606. /package/dist/{lib/rating/criteria/scoring/lib/toBigNumber.d.ts → browser/lib/rating/criteria/scoring/lib/toBigNumber.d.mts} +0 -0
  607. /package/dist/{lib/rating/criteria/scoring/metadata/animationUrl.d.mts → browser/lib/rating/criteria/scoring/metadata/animationUrl.d.cts} +0 -0
  608. /package/dist/{lib/rating/criteria/scoring/metadata/animationUrl.d.ts → browser/lib/rating/criteria/scoring/metadata/animationUrl.d.mts} +0 -0
  609. /package/dist/{lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts → browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.cts} +0 -0
  610. /package/dist/{lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.ts → browser/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.d.mts} +0 -0
  611. /package/dist/{lib/rating/criteria/scoring/metadata/attributes/index.d.mts → browser/lib/rating/criteria/scoring/metadata/attributes/index.d.cts} +0 -0
  612. /package/dist/{lib/rating/criteria/scoring/metadata/attributes/index.d.ts → browser/lib/rating/criteria/scoring/metadata/attributes/index.d.mts} +0 -0
  613. /package/dist/{lib/rating/criteria/scoring/metadata/backgroundColor.d.mts → browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.cts} +0 -0
  614. /package/dist/{lib/rating/criteria/scoring/metadata/backgroundColor.d.ts → browser/lib/rating/criteria/scoring/metadata/backgroundColor.d.mts} +0 -0
  615. /package/dist/{lib/rating/criteria/scoring/metadata/description.d.mts → browser/lib/rating/criteria/scoring/metadata/description.d.cts} +0 -0
  616. /package/dist/{lib/rating/criteria/scoring/metadata/description.d.ts → browser/lib/rating/criteria/scoring/metadata/description.d.mts} +0 -0
  617. /package/dist/{lib/rating/criteria/scoring/metadata/externalUrl.d.mts → browser/lib/rating/criteria/scoring/metadata/externalUrl.d.cts} +0 -0
  618. /package/dist/{lib/rating/criteria/scoring/metadata/externalUrl.d.ts → browser/lib/rating/criteria/scoring/metadata/externalUrl.d.mts} +0 -0
  619. /package/dist/{lib/rating/criteria/scoring/metadata/image.d.mts → browser/lib/rating/criteria/scoring/metadata/image.d.cts} +0 -0
  620. /package/dist/{lib/rating/criteria/scoring/metadata/image.d.ts → browser/lib/rating/criteria/scoring/metadata/image.d.mts} +0 -0
  621. /package/dist/{lib/rating/criteria/scoring/metadata/imageData.d.mts → browser/lib/rating/criteria/scoring/metadata/imageData.d.cts} +0 -0
  622. /package/dist/{lib/rating/criteria/scoring/metadata/imageData.d.ts → browser/lib/rating/criteria/scoring/metadata/imageData.d.mts} +0 -0
  623. /package/dist/{lib/rating/criteria/scoring/metadata/index.d.mts → browser/lib/rating/criteria/scoring/metadata/index.d.cts} +0 -0
  624. /package/dist/{lib/rating/criteria/scoring/metadata/index.d.ts → browser/lib/rating/criteria/scoring/metadata/index.d.mts} +0 -0
  625. /package/dist/{lib/rating/criteria/scoring/metadata/lib/index.d.mts → browser/lib/rating/criteria/scoring/metadata/lib/index.d.cts} +0 -0
  626. /package/dist/{lib/rating/criteria/scoring/metadata/lib/index.d.ts → browser/lib/rating/criteria/scoring/metadata/lib/index.d.mts} +0 -0
  627. /package/dist/{lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts → browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.cts} +0 -0
  628. /package/dist/{lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.ts → browser/lib/rating/criteria/scoring/metadata/lib/urlHelpers.d.mts} +0 -0
  629. /package/dist/{lib/rating/criteria/scoring/metadata/name.d.mts → browser/lib/rating/criteria/scoring/metadata/name.d.cts} +0 -0
  630. /package/dist/{lib/rating/criteria/scoring/metadata/name.d.ts → browser/lib/rating/criteria/scoring/metadata/name.d.mts} +0 -0
  631. /package/dist/{lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts → browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.cts} +0 -0
  632. /package/dist/{lib/rating/criteria/scoring/metadata/youtubeUrl.d.ts → browser/lib/rating/criteria/scoring/metadata/youtubeUrl.d.mts} +0 -0
  633. /package/dist/{lib/rating/criteria/scoring/supply.d.mts → browser/lib/rating/criteria/scoring/supply.d.cts} +0 -0
  634. /package/dist/{lib/rating/criteria/scoring/supply.d.ts → browser/lib/rating/criteria/scoring/supply.d.mts} +0 -0
  635. /package/dist/{lib/rating/criteria/scoring/tokenId.d.mts → browser/lib/rating/criteria/scoring/tokenId.d.cts} +0 -0
  636. /package/dist/{lib/rating/criteria/scoring/tokenId.d.ts → browser/lib/rating/criteria/scoring/tokenId.d.mts} +0 -0
  637. /package/dist/{lib/rating/criteria/scoring/type.d.mts → browser/lib/rating/criteria/scoring/type.d.cts} +0 -0
  638. /package/dist/{lib/rating/criteria/scoring/type.d.ts → browser/lib/rating/criteria/scoring/type.d.mts} +0 -0
  639. /package/dist/{lib/rating/criteria/scoringCriteria.d.mts → browser/lib/rating/criteria/scoringCriteria.d.cts} +0 -0
  640. /package/dist/{lib/rating/criteria/scoringCriteria.d.ts → browser/lib/rating/criteria/scoringCriteria.d.mts} +0 -0
  641. /package/dist/{lib/rating/index.d.mts → browser/lib/rating/index.d.cts} +0 -0
  642. /package/dist/{lib/rating/index.d.ts → browser/lib/rating/index.d.mts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/index.ts","../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"sourcesContent":["export * from './evaluateAttributes'\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 (error) {\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 ? [0, 1] : evaluateAttributes(nft?.metadata?.attributes)\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,oCAA0F;AAE1F,IAAM,SAAS,CAAC,UAAkC;AAChD,MAAI,SAAS,KAAK,GAAG;AACnB,QAAI;AACF,UAAI,KAAK,KAAK;AACd,aAAO;AAAA,IACT,SAAS,OAAO;AACd,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAM,WAAW,CAAC,UAAoC,OAAO,UAAU;AAEvE,IAAM,eAAe,CAAC,UAA4B,SAAS,KAAK,KAAK,SAAS,KAAK,SAAS;AAE5F,IAAM,mBAAmB,CAAC,UAAoC,OAAO,UAAU,YAAY,MAAM,SAAS;AAE1G,IAAM,2BAA2B,CAAC,UAA6C,UAAU,YAAY,iBAAiB,KAAK;AAEpH,IAAM,wBAAwB,CAAC,QAAwD;AAvB9F;AAwBE,YAAC,gCAAK,aAAL,mBAAe,cAAa,CAAC,GAAG,CAAC,IAAI,oBAAmB,gCAAK,aAAL,mBAAe,UAAU;AAAA;AAE7E,IAAM,qBAAqB,CAAC,eAA8E;AAC/G,MAAI,CAAC,cAAc,CAAC,MAAM,QAAQ,UAAU,KAAK,WAAW,WAAW;AAAG,WAAO,CAAC,GAAG,CAAC;AACtF,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,aAAW,aAAa,YAAY;AAClC,UAAM,CAAC,gBAAgB,iBAAiB,IAAI,kBAAkB,SAAS;AACvE,iEAA0B,OAAO,gBAAgB,iBAAiB;AAAA,EACpE;AACA,SAAO,CAAC,GAAG,CAAC;AACd;AAEO,IAAM,oBAAoB,CAAC,cAAgD;AAChF,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,QAAM,YAAY,uCAAW;AAC7B,QAAM,aAAa,uCAAW;AAC9B,QAAM,QAAQ,uCAAW;AAGzB,MAAI,CAAC,aAAa,OAAO,cAAc,YAAY,CAAC,iBAAiB,UAAU,KAAK,CAAC,yBAAyB,KAAK;AAAG,WAAO;AAC7H,oDAAe,KAAK;AAGpB,uDAAkB,KAAK;AACvB,MAAI,iBAAiB,SAAS;AAAG,sDAAe,KAAK;AAGrD,MAAI,cAAc,QAAW;AAC3B,yDAAkB,KAAK;AACvB,QAAI,SAAS,SAAS,KAAK,SAAS,KAAK,KAAK,SAAS;AAAW,wDAAe,KAAK;AAAA,EACxF;AAEA,SAAO;AACT;AAEA,IAAM,mBAAmB,CAAC,cAA4C;AACpE,UAAQ,uCAAW,cAAc;AAAA,IAC/B,KAAK;AAAA,IACL,KAAK,gBAAgB;AACnB,UAAI,SAAS,uCAAW,KAAK;AAAG,eAAO;AACvC;AAAA,IACF;AAAA,IACA,KAAK,oBAAoB;AACvB,UAAI,aAAa,uCAAW,KAAK;AAAG,eAAO;AAC3C;AAAA,IACF;AAAA,IACA,KAAK,QAAQ;AACX,UAAI,OAAO,uCAAW,KAAK;AAAG,eAAO;AACrC;AAAA,IACF;AAAA,IACA,KAAK;AAAA,IACL,KAAK,QAAW;AACd,UAAI,iBAAiB,uCAAW,KAAK;AAAG,eAAO;AAC/C;AAAA,IACF;AAAA,IACA,SAAS;AACP;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
@@ -0,0 +1,85 @@
1
+ // src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts
2
+ import { incrementPossible, incrementTotal, incrementTotalAndPossible } from "@xyo-network/crypto-nft-score-model";
3
+ var isDate = (value) => {
4
+ if (isNumber(value)) {
5
+ try {
6
+ new Date(value);
7
+ return true;
8
+ } catch (error) {
9
+ return false;
10
+ }
11
+ }
12
+ return false;
13
+ };
14
+ var isNumber = (value) => typeof value === "number";
15
+ var isPercentage = (value) => isNumber(value) && value >= 0 && value <= 100;
16
+ var isNonEmptyString = (value) => typeof value === "string" && value.length > 0;
17
+ var isNonEmptyStringOrNumber = (value) => value === "number" || isNonEmptyString(value);
18
+ var evaluateNftAttributes = (nft) => {
19
+ var _a, _b;
20
+ return !((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.attributes) ? [0, 1] : evaluateAttributes((_b = nft == null ? void 0 : nft.metadata) == null ? void 0 : _b.attributes);
21
+ };
22
+ var evaluateAttributes = (attributes) => {
23
+ if (!attributes || !Array.isArray(attributes) || attributes.length === 0)
24
+ return [0, 1];
25
+ const score = [0, 0];
26
+ for (const attribute of attributes) {
27
+ const [attributeTotal, attributePossible] = evaluateAttribute(attribute);
28
+ incrementTotalAndPossible(score, attributeTotal, attributePossible);
29
+ }
30
+ return [1, 1];
31
+ };
32
+ var evaluateAttribute = (attribute) => {
33
+ const score = [0, 1];
34
+ const max_value = attribute == null ? void 0 : attribute.max_value;
35
+ const trait_type = attribute == null ? void 0 : attribute.trait_type;
36
+ const value = attribute == null ? void 0 : attribute.value;
37
+ if (!attribute || typeof attribute !== "object" || !isNonEmptyString(trait_type) || !isNonEmptyStringOrNumber(value))
38
+ return score;
39
+ incrementTotal(score);
40
+ incrementPossible(score);
41
+ if (validDisplayType(attribute))
42
+ incrementTotal(score);
43
+ if (max_value !== void 0) {
44
+ incrementPossible(score);
45
+ if (isNumber(max_value) && isNumber(value) && value <= max_value)
46
+ incrementTotal(score);
47
+ }
48
+ return score;
49
+ };
50
+ var validDisplayType = (attribute) => {
51
+ switch (attribute == null ? void 0 : attribute.display_type) {
52
+ case "number":
53
+ case "boost_number": {
54
+ if (isNumber(attribute == null ? void 0 : attribute.value))
55
+ return true;
56
+ break;
57
+ }
58
+ case "boost_percentage": {
59
+ if (isPercentage(attribute == null ? void 0 : attribute.value))
60
+ return true;
61
+ break;
62
+ }
63
+ case "date": {
64
+ if (isDate(attribute == null ? void 0 : attribute.value))
65
+ return true;
66
+ break;
67
+ }
68
+ case "string":
69
+ case void 0: {
70
+ if (isNonEmptyString(attribute == null ? void 0 : attribute.value))
71
+ return true;
72
+ break;
73
+ }
74
+ default: {
75
+ break;
76
+ }
77
+ }
78
+ return false;
79
+ };
80
+ export {
81
+ evaluateAttribute,
82
+ evaluateAttributes,
83
+ evaluateNftAttributes
84
+ };
85
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/attributes/evaluateAttributes.ts"],"sourcesContent":["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 (error) {\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 ? [0, 1] : evaluateAttributes(nft?.metadata?.attributes)\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"],"mappings":";AACA,SAAS,mBAAmB,gBAAgB,iCAA8C;AAE1F,IAAM,SAAS,CAAC,UAAkC;AAChD,MAAI,SAAS,KAAK,GAAG;AACnB,QAAI;AACF,UAAI,KAAK,KAAK;AACd,aAAO;AAAA,IACT,SAAS,OAAO;AACd,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAM,WAAW,CAAC,UAAoC,OAAO,UAAU;AAEvE,IAAM,eAAe,CAAC,UAA4B,SAAS,KAAK,KAAK,SAAS,KAAK,SAAS;AAE5F,IAAM,mBAAmB,CAAC,UAAoC,OAAO,UAAU,YAAY,MAAM,SAAS;AAE1G,IAAM,2BAA2B,CAAC,UAA6C,UAAU,YAAY,iBAAiB,KAAK;AAEpH,IAAM,wBAAwB,CAAC,QAAwD;AAvB9F;AAwBE,YAAC,gCAAK,aAAL,mBAAe,cAAa,CAAC,GAAG,CAAC,IAAI,oBAAmB,gCAAK,aAAL,mBAAe,UAAU;AAAA;AAE7E,IAAM,qBAAqB,CAAC,eAA8E;AAC/G,MAAI,CAAC,cAAc,CAAC,MAAM,QAAQ,UAAU,KAAK,WAAW,WAAW;AAAG,WAAO,CAAC,GAAG,CAAC;AACtF,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,aAAW,aAAa,YAAY;AAClC,UAAM,CAAC,gBAAgB,iBAAiB,IAAI,kBAAkB,SAAS;AACvE,8BAA0B,OAAO,gBAAgB,iBAAiB;AAAA,EACpE;AACA,SAAO,CAAC,GAAG,CAAC;AACd;AAEO,IAAM,oBAAoB,CAAC,cAAgD;AAChF,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,QAAM,YAAY,uCAAW;AAC7B,QAAM,aAAa,uCAAW;AAC9B,QAAM,QAAQ,uCAAW;AAGzB,MAAI,CAAC,aAAa,OAAO,cAAc,YAAY,CAAC,iBAAiB,UAAU,KAAK,CAAC,yBAAyB,KAAK;AAAG,WAAO;AAC7H,iBAAe,KAAK;AAGpB,oBAAkB,KAAK;AACvB,MAAI,iBAAiB,SAAS;AAAG,mBAAe,KAAK;AAGrD,MAAI,cAAc,QAAW;AAC3B,sBAAkB,KAAK;AACvB,QAAI,SAAS,SAAS,KAAK,SAAS,KAAK,KAAK,SAAS;AAAW,qBAAe,KAAK;AAAA,EACxF;AAEA,SAAO;AACT;AAEA,IAAM,mBAAmB,CAAC,cAA4C;AACpE,UAAQ,uCAAW,cAAc;AAAA,IAC/B,KAAK;AAAA,IACL,KAAK,gBAAgB;AACnB,UAAI,SAAS,uCAAW,KAAK;AAAG,eAAO;AACvC;AAAA,IACF;AAAA,IACA,KAAK,oBAAoB;AACvB,UAAI,aAAa,uCAAW,KAAK;AAAG,eAAO;AAC3C;AAAA,IACF;AAAA,IACA,KAAK,QAAQ;AACX,UAAI,OAAO,uCAAW,KAAK;AAAG,eAAO;AACrC;AAAA,IACF;AAAA,IACA,KAAK;AAAA,IACL,KAAK,QAAW;AACd,UAAI,iBAAiB,uCAAW,KAAK;AAAG,eAAO;AAC/C;AAAA,IACF;AAAA,IACA,SAAS;AACP;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftBackgroundColor: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreBackgroundColor: (background_color: unknown) => ScaledScore;
5
+ //# sourceMappingURL=backgroundColor.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftBackgroundColor: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreBackgroundColor: (background_color: unknown) => ScaledScore;
5
+ //# sourceMappingURL=backgroundColor.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftBackgroundColor: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreBackgroundColor: (background_color: unknown) => ScaledScore;
5
+ //# sourceMappingURL=backgroundColor.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/rating/criteria/scoring/metadata/backgroundColor.ts
21
+ var backgroundColor_exports = {};
22
+ __export(backgroundColor_exports, {
23
+ scoreBackgroundColor: () => scoreBackgroundColor,
24
+ scoreNftBackgroundColor: () => scoreNftBackgroundColor
25
+ });
26
+ module.exports = __toCommonJS(backgroundColor_exports);
27
+ var import_crypto_nft_score_model = require("@xyo-network/crypto-nft-score-model");
28
+ var isHexColor = /^[0-9A-F]{6}$/i;
29
+ var scoreNftBackgroundColor = (nft) => {
30
+ var _a;
31
+ return scoreBackgroundColor((_a = nft.metadata) == null ? void 0 : _a.background_color);
32
+ };
33
+ var scoreBackgroundColor = (background_color) => {
34
+ const score = [0, 0];
35
+ if (background_color === void 0 || background_color === null)
36
+ return import_crypto_nft_score_model.PASS;
37
+ (0, import_crypto_nft_score_model.incrementPossible)(score);
38
+ if (typeof background_color !== "string")
39
+ return score;
40
+ (0, import_crypto_nft_score_model.incrementTotalAndPossible)(score);
41
+ if (!background_color.toUpperCase().match(isHexColor))
42
+ return score;
43
+ return (0, import_crypto_nft_score_model.incrementTotal)(score);
44
+ };
45
+ // Annotate the CommonJS export names for ESM import in node:
46
+ 0 && (module.exports = {
47
+ scoreBackgroundColor,
48
+ scoreNftBackgroundColor
49
+ });
50
+ //# sourceMappingURL=backgroundColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"sourcesContent":["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 = /^[0-9A-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 (!background_color.toUpperCase().match(isHexColor)) return score\n return incrementTotal(score)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oCAAgG;AAEhG,IAAM,aAAa;AAEZ,IAAM,0BAA0B,CAAC,QAA2D;AALnG;AAME,SAAO,sBAAqB,SAAI,aAAJ,mBAAc,gBAAgB;AAC5D;AAEO,IAAM,uBAAuB,CAAC,qBAA2C;AAC9E,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,qBAAqB,UAAa,qBAAqB;AAAM,WAAO;AACxE,uDAAkB,KAAK;AACvB,MAAI,OAAO,qBAAqB;AAAU,WAAO;AACjD,+DAA0B,KAAK;AAC/B,MAAI,CAAC,iBAAiB,YAAY,EAAE,MAAM,UAAU;AAAG,WAAO;AAC9D,aAAO,8CAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,24 @@
1
+ // src/lib/rating/criteria/scoring/metadata/backgroundColor.ts
2
+ import { incrementPossible, incrementTotal, incrementTotalAndPossible, PASS } from "@xyo-network/crypto-nft-score-model";
3
+ var isHexColor = /^[0-9A-F]{6}$/i;
4
+ var scoreNftBackgroundColor = (nft) => {
5
+ var _a;
6
+ return scoreBackgroundColor((_a = nft.metadata) == null ? void 0 : _a.background_color);
7
+ };
8
+ var scoreBackgroundColor = (background_color) => {
9
+ const score = [0, 0];
10
+ if (background_color === void 0 || background_color === null)
11
+ return PASS;
12
+ incrementPossible(score);
13
+ if (typeof background_color !== "string")
14
+ return score;
15
+ incrementTotalAndPossible(score);
16
+ if (!background_color.toUpperCase().match(isHexColor))
17
+ return score;
18
+ return incrementTotal(score);
19
+ };
20
+ export {
21
+ scoreBackgroundColor,
22
+ scoreNftBackgroundColor
23
+ };
24
+ //# sourceMappingURL=backgroundColor.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/backgroundColor.ts"],"sourcesContent":["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 = /^[0-9A-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 (!background_color.toUpperCase().match(isHexColor)) return score\n return incrementTotal(score)\n}\n"],"mappings":";AACA,SAAS,mBAAmB,gBAAgB,2BAA2B,YAAyB;AAEhG,IAAM,aAAa;AAEZ,IAAM,0BAA0B,CAAC,QAA2D;AALnG;AAME,SAAO,sBAAqB,SAAI,aAAJ,mBAAc,gBAAgB;AAC5D;AAEO,IAAM,uBAAuB,CAAC,qBAA2C;AAC9E,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,qBAAqB,UAAa,qBAAqB;AAAM,WAAO;AACxE,oBAAkB,KAAK;AACvB,MAAI,OAAO,qBAAqB;AAAU,WAAO;AACjD,4BAA0B,KAAK;AAC/B,MAAI,CAAC,iBAAiB,YAAY,EAAE,MAAM,UAAU;AAAG,WAAO;AAC9D,SAAO,eAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftDescription: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreDescription: (description: unknown) => ScaledScore;
5
+ //# sourceMappingURL=description.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftDescription: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreDescription: (description: unknown) => ScaledScore;
5
+ //# sourceMappingURL=description.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftDescription: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreDescription: (description: unknown) => ScaledScore;
5
+ //# sourceMappingURL=description.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/rating/criteria/scoring/metadata/description.ts
21
+ var description_exports = {};
22
+ __export(description_exports, {
23
+ scoreDescription: () => scoreDescription,
24
+ scoreNftDescription: () => scoreNftDescription
25
+ });
26
+ module.exports = __toCommonJS(description_exports);
27
+ var import_crypto_nft_score_model = require("@xyo-network/crypto-nft-score-model");
28
+ var scoreNftDescription = (nft) => {
29
+ var _a;
30
+ return scoreDescription((_a = nft.metadata) == null ? void 0 : _a.description);
31
+ };
32
+ var scoreDescription = (description) => {
33
+ const score = [0, 1];
34
+ if (!description || typeof description !== "string")
35
+ return score;
36
+ return (0, import_crypto_nft_score_model.incrementTotal)(score);
37
+ };
38
+ // Annotate the CommonJS export names for ESM import in node:
39
+ 0 && (module.exports = {
40
+ scoreDescription,
41
+ scoreNftDescription
42
+ });
43
+ //# sourceMappingURL=description.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"sourcesContent":["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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oCAA4C;AAErC,IAAM,sBAAsB,CAAC,QAA2D;AAH/F;AAIE,SAAO,kBAAiB,SAAI,aAAJ,mBAAc,WAAW;AACnD;AAEO,IAAM,mBAAmB,CAAC,gBAAsC;AACrE,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,CAAC,eAAe,OAAO,gBAAgB;AAAU,WAAO;AAC5D,aAAO,8CAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,17 @@
1
+ // src/lib/rating/criteria/scoring/metadata/description.ts
2
+ import { incrementTotal } from "@xyo-network/crypto-nft-score-model";
3
+ var scoreNftDescription = (nft) => {
4
+ var _a;
5
+ return scoreDescription((_a = nft.metadata) == null ? void 0 : _a.description);
6
+ };
7
+ var scoreDescription = (description) => {
8
+ const score = [0, 1];
9
+ if (!description || typeof description !== "string")
10
+ return score;
11
+ return incrementTotal(score);
12
+ };
13
+ export {
14
+ scoreDescription,
15
+ scoreNftDescription
16
+ };
17
+ //# sourceMappingURL=description.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/description.ts"],"sourcesContent":["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"],"mappings":";AACA,SAAS,sBAAmC;AAErC,IAAM,sBAAsB,CAAC,QAA2D;AAH/F;AAIE,SAAO,kBAAiB,SAAI,aAAJ,mBAAc,WAAW;AACnD;AAEO,IAAM,mBAAmB,CAAC,gBAAsC;AACrE,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,CAAC,eAAe,OAAO,gBAAgB;AAAU,WAAO;AAC5D,SAAO,eAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const 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,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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const 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,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"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const 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,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"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/rating/criteria/scoring/metadata/externalUrl.ts
21
+ var externalUrl_exports = {};
22
+ __export(externalUrl_exports, {
23
+ scoreExternalUrl: () => scoreExternalUrl,
24
+ scoreNftExternalUrl: () => scoreNftExternalUrl
25
+ });
26
+ module.exports = __toCommonJS(externalUrl_exports);
27
+ var import_crypto_nft_score_model = require("@xyo-network/crypto-nft-score-model");
28
+
29
+ // src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts
30
+ var import_url = require("@xylabs/url");
31
+ var web3Protocols = ["ipfs:", "ar:"];
32
+ var toUrl = (url) => {
33
+ if (!url)
34
+ return void 0;
35
+ try {
36
+ return new import_url.URL(url);
37
+ } catch (e) {
38
+ return void 0;
39
+ }
40
+ };
41
+ var isValidUrl = (url) => toUrl(url) !== void 0;
42
+ var isWeb3 = (url) => web3Protocols.some((protocol) => {
43
+ var _a;
44
+ return protocol === ((_a = toUrl(url)) == null ? void 0 : _a.protocol);
45
+ });
46
+ var isSecure = (url) => {
47
+ var _a;
48
+ return isWeb3(url) || ((_a = toUrl(url)) == null ? void 0 : _a.protocol) === "https:";
49
+ };
50
+
51
+ // src/lib/rating/criteria/scoring/metadata/externalUrl.ts
52
+ var scoreNftExternalUrl = (nft) => {
53
+ var _a;
54
+ return scoreExternalUrl((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.external_url);
55
+ };
56
+ var scoreExternalUrl = (external_url) => {
57
+ const score = [0, 2];
58
+ if (external_url === void 0 || external_url === null || typeof external_url !== "string" || !isValidUrl(external_url))
59
+ return score;
60
+ (0, import_crypto_nft_score_model.incrementTotal)(score);
61
+ if (!isSecure(external_url))
62
+ return score;
63
+ return (0, import_crypto_nft_score_model.incrementTotal)(score);
64
+ };
65
+ // Annotate the CommonJS export names for ESM import in node:
66
+ 0 && (module.exports = {
67
+ scoreExternalUrl,
68
+ scoreNftExternalUrl
69
+ });
70
+ //# sourceMappingURL=externalUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts","../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts"],"sourcesContent":["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 { 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 (e) {\n return undefined\n }\n}\n\nexport const isValidUrl = (url?: string | null): boolean => toUrl(url) !== undefined\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oCAA4C;;;ACD5C,iBAAoB;AAEb,IAAM,gBAAgB,CAAC,SAAS,KAAK;AAErC,IAAM,QAAQ,CAAC,QAAyC;AAC7D,MAAI,CAAC;AAAK,WAAO;AACjB,MAAI;AACF,WAAO,IAAI,eAAI,GAAG;AAAA,EACpB,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACF;AAEO,IAAM,aAAa,CAAC,QAAiC,MAAM,GAAG,MAAM;AACpE,IAAM,SAAS,CAAC,QAAiC,cAAc,KAAK,CAAC,aAAU;AAdtF;AAcyF,wBAAa,WAAM,GAAG,MAAT,mBAAY;AAAA,CAAQ;AAEnH,IAAM,WAAW,CAAC,QAA8B;AAhBvD;AAgB0D,gBAAO,GAAG,OAAK,WAAM,GAAG,MAAT,mBAAY,cAAa;AAAA;;;ADX3F,IAAM,sBAAsB,CAAC,QAA2D;AAL/F;AAME,SAAO,kBAAiB,gCAAK,aAAL,mBAAe,YAAY;AACrD;AACO,IAAM,mBAAmB,CAAC,iBAAuC;AACtE,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,iBAAiB,UAAa,iBAAiB,QAAQ,OAAO,iBAAiB,YAAY,CAAC,WAAW,YAAY;AAAG,WAAO;AACjI,oDAAe,KAAK;AACpB,MAAI,CAAC,SAAS,YAAY;AAAG,WAAO;AACpC,aAAO,8CAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,44 @@
1
+ // src/lib/rating/criteria/scoring/metadata/externalUrl.ts
2
+ import { incrementTotal } from "@xyo-network/crypto-nft-score-model";
3
+
4
+ // src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts
5
+ import { URL } from "@xylabs/url";
6
+ var web3Protocols = ["ipfs:", "ar:"];
7
+ var toUrl = (url) => {
8
+ if (!url)
9
+ return void 0;
10
+ try {
11
+ return new URL(url);
12
+ } catch (e) {
13
+ return void 0;
14
+ }
15
+ };
16
+ var isValidUrl = (url) => toUrl(url) !== void 0;
17
+ var isWeb3 = (url) => web3Protocols.some((protocol) => {
18
+ var _a;
19
+ return protocol === ((_a = toUrl(url)) == null ? void 0 : _a.protocol);
20
+ });
21
+ var isSecure = (url) => {
22
+ var _a;
23
+ return isWeb3(url) || ((_a = toUrl(url)) == null ? void 0 : _a.protocol) === "https:";
24
+ };
25
+
26
+ // src/lib/rating/criteria/scoring/metadata/externalUrl.ts
27
+ var scoreNftExternalUrl = (nft) => {
28
+ var _a;
29
+ return scoreExternalUrl((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.external_url);
30
+ };
31
+ var scoreExternalUrl = (external_url) => {
32
+ const score = [0, 2];
33
+ if (external_url === void 0 || external_url === null || typeof external_url !== "string" || !isValidUrl(external_url))
34
+ return score;
35
+ incrementTotal(score);
36
+ if (!isSecure(external_url))
37
+ return score;
38
+ return incrementTotal(score);
39
+ };
40
+ export {
41
+ scoreExternalUrl,
42
+ scoreNftExternalUrl
43
+ };
44
+ //# sourceMappingURL=externalUrl.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/externalUrl.ts","../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts"],"sourcesContent":["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 { 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 (e) {\n return undefined\n }\n}\n\nexport const isValidUrl = (url?: string | null): boolean => toUrl(url) !== undefined\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"],"mappings":";AACA,SAAS,sBAAmC;;;ACD5C,SAAS,WAAW;AAEb,IAAM,gBAAgB,CAAC,SAAS,KAAK;AAErC,IAAM,QAAQ,CAAC,QAAyC;AAC7D,MAAI,CAAC;AAAK,WAAO;AACjB,MAAI;AACF,WAAO,IAAI,IAAI,GAAG;AAAA,EACpB,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACF;AAEO,IAAM,aAAa,CAAC,QAAiC,MAAM,GAAG,MAAM;AACpE,IAAM,SAAS,CAAC,QAAiC,cAAc,KAAK,CAAC,aAAU;AAdtF;AAcyF,wBAAa,WAAM,GAAG,MAAT,mBAAY;AAAA,CAAQ;AAEnH,IAAM,WAAW,CAAC,QAA8B;AAhBvD;AAgB0D,gBAAO,GAAG,OAAK,WAAM,GAAG,MAAT,mBAAY,cAAa;AAAA;;;ADX3F,IAAM,sBAAsB,CAAC,QAA2D;AAL/F;AAME,SAAO,kBAAiB,gCAAK,aAAL,mBAAe,YAAY;AACrD;AACO,IAAM,mBAAmB,CAAC,iBAAuC;AACtE,QAAM,QAAqB,CAAC,GAAG,CAAC;AAChC,MAAI,iBAAiB,UAAa,iBAAiB,QAAQ,OAAO,iBAAiB,YAAY,CAAC,WAAW,YAAY;AAAG,WAAO;AACjI,iBAAe,KAAK;AACpB,MAAI,CAAC,SAAS,YAAY;AAAG,WAAO;AACpC,SAAO,eAAe,KAAK;AAC7B;","names":[]}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftImage: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreImage: (image: unknown) => ScaledScore;
5
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftImage: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreImage: (image: unknown) => ScaledScore;
5
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { NftInfoFields, OpenSeaNftInfoFields } from '@xyo-network/crypto-nft-payload-plugin';
2
+ import { ScaledScore } from '@xyo-network/crypto-nft-score-model';
3
+ export declare const scoreNftImage: (nft: NftInfoFields | OpenSeaNftInfoFields) => ScaledScore;
4
+ export declare const scoreImage: (image: unknown) => ScaledScore;
5
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAwB,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAMvF,eAAO,MAAM,aAAa,QAAS,aAAa,GAAG,oBAAoB,gBAQtE,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,OAAO,gBASxC,CAAA"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/rating/criteria/scoring/metadata/image.ts
21
+ var image_exports = {};
22
+ __export(image_exports, {
23
+ scoreImage: () => scoreImage,
24
+ scoreNftImage: () => scoreNftImage
25
+ });
26
+ module.exports = __toCommonJS(image_exports);
27
+ var import_crypto_nft_score_model = require("@xyo-network/crypto-nft-score-model");
28
+
29
+ // src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts
30
+ var import_url = require("@xylabs/url");
31
+ var web3Protocols = ["ipfs:", "ar:"];
32
+ var toUrl = (url) => {
33
+ if (!url)
34
+ return void 0;
35
+ try {
36
+ return new import_url.URL(url);
37
+ } catch (e) {
38
+ return void 0;
39
+ }
40
+ };
41
+ var isValidUrl = (url) => toUrl(url) !== void 0;
42
+ var isWeb3 = (url) => web3Protocols.some((protocol) => {
43
+ var _a;
44
+ return protocol === ((_a = toUrl(url)) == null ? void 0 : _a.protocol);
45
+ });
46
+ var isSecure = (url) => {
47
+ var _a;
48
+ return isWeb3(url) || ((_a = toUrl(url)) == null ? void 0 : _a.protocol) === "https:";
49
+ };
50
+
51
+ // src/lib/rating/criteria/scoring/metadata/image.ts
52
+ var MaxPossibleImageScore = 3;
53
+ var scoreNftImage = (nft) => {
54
+ var _a, _b, _c;
55
+ if (!((_a = nft == null ? void 0 : nft.metadata) == null ? void 0 : _a.image)) {
56
+ return ((_b = nft.metadata) == null ? void 0 : _b.image_data) ? import_crypto_nft_score_model.PASS : [0, MaxPossibleImageScore];
57
+ } else {
58
+ return scoreImage((_c = nft.metadata) == null ? void 0 : _c.image);
59
+ }
60
+ };
61
+ var scoreImage = (image) => {
62
+ const score = [0, MaxPossibleImageScore];
63
+ if (!image || typeof image !== "string" || !isValidUrl(image))
64
+ return score;
65
+ (0, import_crypto_nft_score_model.incrementTotal)(score);
66
+ if (!isSecure(image))
67
+ return score;
68
+ (0, import_crypto_nft_score_model.incrementTotal)(score);
69
+ if (!isWeb3(image))
70
+ return score;
71
+ (0, import_crypto_nft_score_model.incrementTotal)(score);
72
+ return score;
73
+ };
74
+ // Annotate the CommonJS export names for ESM import in node:
75
+ 0 && (module.exports = {
76
+ scoreImage,
77
+ scoreNftImage
78
+ });
79
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/image.ts","../../../../../../../src/lib/rating/criteria/scoring/metadata/lib/urlHelpers.ts"],"sourcesContent":["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 // but there is image data, skip this scoring criteria, otherwise fail it completely\n return nft.metadata?.image_data ? PASS : [0, MaxPossibleImageScore]\n } else {\n return scoreImage(nft.metadata?.image)\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 { 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 (e) {\n return undefined\n }\n}\n\nexport const isValidUrl = (url?: string | null): boolean => toUrl(url) !== undefined\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oCAAkD;;;ACDlD,iBAAoB;AAEb,IAAM,gBAAgB,CAAC,SAAS,KAAK;AAErC,IAAM,QAAQ,CAAC,QAAyC;AAC7D,MAAI,CAAC;AAAK,WAAO;AACjB,MAAI;AACF,WAAO,IAAI,eAAI,GAAG;AAAA,EACpB,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACF;AAEO,IAAM,aAAa,CAAC,QAAiC,MAAM,GAAG,MAAM;AACpE,IAAM,SAAS,CAAC,QAAiC,cAAc,KAAK,CAAC,aAAU;AAdtF;AAcyF,wBAAa,WAAM,GAAG,MAAT,mBAAY;AAAA,CAAQ;AAEnH,IAAM,WAAW,CAAC,QAA8B;AAhBvD;AAgB0D,gBAAO,GAAG,OAAK,WAAM,GAAG,MAAT,mBAAY,cAAa;AAAA;;;ADXlG,IAAM,wBAAwB;AAEvB,IAAM,gBAAgB,CAAC,QAA2D;AAPzF;AASE,MAAI,GAAC,gCAAK,aAAL,mBAAe,QAAO;AAEzB,aAAO,SAAI,aAAJ,mBAAc,cAAa,qCAAO,CAAC,GAAG,qBAAqB;AAAA,EACpE,OAAO;AACL,WAAO,YAAW,SAAI,aAAJ,mBAAc,KAAK;AAAA,EACvC;AACF;AAEO,IAAM,aAAa,CAAC,UAAgC;AACzD,QAAM,QAAqB,CAAC,GAAG,qBAAqB;AACpD,MAAI,CAAC,SAAS,OAAO,UAAU,YAAY,CAAC,WAAW,KAAK;AAAG,WAAO;AACtE,oDAAe,KAAK;AACpB,MAAI,CAAC,SAAS,KAAK;AAAG,WAAO;AAC7B,oDAAe,KAAK;AACpB,MAAI,CAAC,OAAO,KAAK;AAAG,WAAO;AAC3B,oDAAe,KAAK;AACpB,SAAO;AACT;","names":[]}