@xyo-network/crypto-nft-collection-diviner-score-plugin 4.0.0 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.d.ts +33 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map +1 -0
- package/dist/browser/lib/rating/criteria/scoring/spec/total.spec.d.ts +2 -0
- package/dist/browser/lib/rating/criteria/scoring/spec/total.spec.d.ts.map +1 -0
- package/dist/browser/lib/rating/spec/analyzeNftCollection.spec.d.ts +2 -0
- package/dist/browser/lib/rating/spec/analyzeNftCollection.spec.d.ts.map +1 -0
- package/dist/browser/spec/Diviner.spec.d.ts +2 -0
- package/dist/browser/spec/Diviner.spec.d.ts.map +1 -0
- package/dist/browser/spec/Plugin.spec.d.ts +2 -0
- package/dist/browser/spec/Plugin.spec.d.ts.map +1 -0
- package/dist/neutral/Diviner.d.ts +12 -0
- package/dist/neutral/Diviner.d.ts.map +1 -0
- package/dist/neutral/Plugin.d.ts +3 -0
- package/dist/neutral/Plugin.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +33 -0
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/lib/index.d.ts +2 -0
- package/dist/neutral/lib/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/analyzeNftCollection.d.ts +13 -0
- package/dist/neutral/lib/rating/analyzeNftCollection.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/index.d.ts +6 -0
- package/dist/neutral/lib/rating/criteria/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts +3 -0
- package/dist/neutral/lib/rating/criteria/scoring/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/metadata.d.ts +9 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/metadata.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts +4 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts +24 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/spec/total.spec.d.ts +2 -0
- package/dist/neutral/lib/rating/criteria/scoring/spec/total.spec.d.ts.map +1 -0
- package/dist/neutral/lib/rating/criteria/scoring/total.d.ts +16 -0
- package/dist/neutral/lib/rating/criteria/scoring/total.d.ts.map +1 -0
- package/dist/neutral/lib/rating/index.d.ts +3 -0
- package/dist/neutral/lib/rating/index.d.ts.map +1 -0
- package/dist/neutral/lib/rating/spec/analyzeNftCollection.spec.d.ts +2 -0
- package/dist/neutral/lib/rating/spec/analyzeNftCollection.spec.d.ts.map +1 -0
- package/dist/neutral/spec/Diviner.spec.d.ts +2 -0
- package/dist/neutral/spec/Diviner.spec.d.ts.map +1 -0
- package/dist/neutral/spec/Plugin.spec.d.ts +2 -0
- package/dist/neutral/spec/Plugin.spec.d.ts.map +1 -0
- package/dist/node/Diviner.d.ts +12 -0
- package/dist/node/Diviner.d.ts.map +1 -0
- package/dist/node/Plugin.d.ts +3 -0
- package/dist/node/Plugin.d.ts.map +1 -0
- package/dist/node/index.d.ts +33 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/lib/index.d.ts +2 -0
- package/dist/node/lib/index.d.ts.map +1 -0
- package/dist/node/lib/rating/analyzeNftCollection.d.ts +13 -0
- package/dist/node/lib/rating/analyzeNftCollection.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/index.d.ts +6 -0
- package/dist/node/lib/rating/criteria/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/index.d.ts +3 -0
- package/dist/node/lib/rating/criteria/scoring/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/index.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/metadata.d.ts +9 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/metadata.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts +4 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts +24 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/spec/total.spec.d.ts +2 -0
- package/dist/node/lib/rating/criteria/scoring/spec/total.spec.d.ts.map +1 -0
- package/dist/node/lib/rating/criteria/scoring/total.d.ts +16 -0
- package/dist/node/lib/rating/criteria/scoring/total.d.ts.map +1 -0
- package/dist/node/lib/rating/index.d.ts +3 -0
- package/dist/node/lib/rating/index.d.ts.map +1 -0
- package/dist/node/lib/rating/spec/analyzeNftCollection.spec.d.ts +2 -0
- package/dist/node/lib/rating/spec/analyzeNftCollection.spec.d.ts.map +1 -0
- package/dist/node/spec/Diviner.spec.d.ts +2 -0
- package/dist/node/spec/Diviner.spec.d.ts.map +1 -0
- package/dist/node/spec/Plugin.spec.d.ts +2 -0
- package/dist/node/spec/Plugin.spec.d.ts.map +1 -0
- package/package.json +18 -18
- package/dist/types/index.d.ts +0 -4
- /package/dist/{types → browser}/Diviner.d.ts +0 -0
- /package/dist/{types → browser}/Diviner.d.ts.map +0 -0
- /package/dist/{types → browser}/Plugin.d.ts +0 -0
- /package/dist/{types → browser}/Plugin.d.ts.map +0 -0
- /package/dist/{types → browser}/index.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/index.d.ts +0 -0
- /package/dist/{types → browser}/lib/index.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/analyzeNftCollection.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/analyzeNftCollection.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/index.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/index.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/index.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/index.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/index.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/index.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/metadata.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/metadata.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/total.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/criteria/scoring/total.d.ts.map +0 -0
- /package/dist/{types → browser}/lib/rating/index.d.ts +0 -0
- /package/dist/{types → browser}/lib/rating/index.d.ts.map +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { NftCollectionScoreDivinerConfig, NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
3
|
+
import { DivinerParams } from '@xyo-network/diviner-model';
|
|
4
|
+
import { AnyConfigSchema } from '@xyo-network/module-model';
|
|
5
|
+
import { Schema, Payload } from '@xyo-network/payload-model';
|
|
6
|
+
import { WeightedScoringCriteria, Score } from '@xyo-network/crypto-nft-score-model';
|
|
7
|
+
import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
|
|
8
|
+
|
|
9
|
+
type NftCollectionScoreDivinerParams = DivinerParams<AnyConfigSchema<NftCollectionScoreDivinerConfig>>;
|
|
10
|
+
declare class NftCollectionScoreDiviner<TParams extends NftCollectionScoreDivinerParams = NftCollectionScoreDivinerParams> extends AbstractDiviner<TParams> {
|
|
11
|
+
static readonly configSchemas: Schema[];
|
|
12
|
+
static readonly defaultConfigSchema: Schema;
|
|
13
|
+
protected divineHandler: (payloads?: Payload[]) => Promise<Payload[]>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare const scoringCriteria: {
|
|
17
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
21
|
+
type NftCollectionAnalysis = {
|
|
22
|
+
[key in ScoringCriteriaKey]: Score;
|
|
23
|
+
};
|
|
24
|
+
declare const analyzeNftCollection: (
|
|
25
|
+
/**
|
|
26
|
+
* The NFT to evaluate
|
|
27
|
+
*/
|
|
28
|
+
nft: NftCollectionInfo) => Promise<NftCollectionAnalysis>;
|
|
29
|
+
|
|
30
|
+
declare const NftCollectionScoreDivinerPlugin: () => _xyo_network_payloadset_plugin.PayloadSetDivinerPlugin<NftCollectionScoreDiviner<NftCollectionScoreDivinerParams>>;
|
|
31
|
+
|
|
32
|
+
export { NftCollectionScoreDiviner, NftCollectionScoreDivinerPlugin, analyzeNftCollection, NftCollectionScoreDivinerPlugin as default, scoringCriteria };
|
|
33
|
+
export type { NftCollectionAnalysis, NftCollectionScoreDivinerParams, ScoringCriteriaKey };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreIndividualAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
package/dist/browser/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreTotalAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"total.spec.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/spec/total.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzeNftCollection.spec.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/spec/analyzeNftCollection.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Diviner.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Plugin.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { NftCollectionScoreDivinerConfig } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
3
|
+
import type { DivinerParams } from '@xyo-network/diviner-model';
|
|
4
|
+
import type { AnyConfigSchema } from '@xyo-network/module-model';
|
|
5
|
+
import type { Payload, Schema } from '@xyo-network/payload-model';
|
|
6
|
+
export type NftCollectionScoreDivinerParams = DivinerParams<AnyConfigSchema<NftCollectionScoreDivinerConfig>>;
|
|
7
|
+
export declare class NftCollectionScoreDiviner<TParams extends NftCollectionScoreDivinerParams = NftCollectionScoreDivinerParams> extends AbstractDiviner<TParams> {
|
|
8
|
+
static readonly configSchemas: Schema[];
|
|
9
|
+
static readonly defaultConfigSchema: Schema;
|
|
10
|
+
protected divineHandler: (payloads?: Payload[]) => Promise<Payload[]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,+BAA+B,EAChC,MAAM,mDAAmD,CAAA;AAM1D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAKjE,MAAM,MAAM,+BAA+B,GAAG,aAAa,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC,CAAA;AAc7G,qBAAa,yBAAyB,CACpC,OAAO,SAAS,+BAA+B,GAAG,+BAA+B,CACjF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAkE;IAClH,gBAAyB,mBAAmB,EAAE,MAAM,CAAwC;IAE5F,UAAmB,aAAa,GAAU,WAAW,OAAO,EAAE,KAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAgBlF;CACF"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { NftCollectionScoreDiviner } from './Diviner.ts';
|
|
2
|
+
export declare const NftCollectionScoreDivinerPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDivinerPlugin<NftCollectionScoreDiviner<import("./Diviner.ts").NftCollectionScoreDivinerParams>>;
|
|
3
|
+
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAExD,eAAO,MAAM,+BAA+B,2JASzC,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { NftCollectionScoreDivinerConfig, NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
3
|
+
import { DivinerParams } from '@xyo-network/diviner-model';
|
|
4
|
+
import { AnyConfigSchema } from '@xyo-network/module-model';
|
|
5
|
+
import { Schema, Payload } from '@xyo-network/payload-model';
|
|
6
|
+
import { WeightedScoringCriteria, Score } from '@xyo-network/crypto-nft-score-model';
|
|
7
|
+
import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
|
|
8
|
+
|
|
9
|
+
type NftCollectionScoreDivinerParams = DivinerParams<AnyConfigSchema<NftCollectionScoreDivinerConfig>>;
|
|
10
|
+
declare class NftCollectionScoreDiviner<TParams extends NftCollectionScoreDivinerParams = NftCollectionScoreDivinerParams> extends AbstractDiviner<TParams> {
|
|
11
|
+
static readonly configSchemas: Schema[];
|
|
12
|
+
static readonly defaultConfigSchema: Schema;
|
|
13
|
+
protected divineHandler: (payloads?: Payload[]) => Promise<Payload[]>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare const scoringCriteria: {
|
|
17
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
21
|
+
type NftCollectionAnalysis = {
|
|
22
|
+
[key in ScoringCriteriaKey]: Score;
|
|
23
|
+
};
|
|
24
|
+
declare const analyzeNftCollection: (
|
|
25
|
+
/**
|
|
26
|
+
* The NFT to evaluate
|
|
27
|
+
*/
|
|
28
|
+
nft: NftCollectionInfo) => Promise<NftCollectionAnalysis>;
|
|
29
|
+
|
|
30
|
+
declare const NftCollectionScoreDivinerPlugin: () => _xyo_network_payloadset_plugin.PayloadSetDivinerPlugin<NftCollectionScoreDiviner<NftCollectionScoreDivinerParams>>;
|
|
31
|
+
|
|
32
|
+
export { NftCollectionScoreDiviner, NftCollectionScoreDivinerPlugin, analyzeNftCollection, NftCollectionScoreDivinerPlugin as default, scoringCriteria };
|
|
33
|
+
export type { NftCollectionAnalysis, NftCollectionScoreDivinerParams, ScoringCriteriaKey };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,IAAI,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
import { scoringCriteria } from './criteria/index.ts';
|
|
4
|
+
export type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
5
|
+
export type NftCollectionAnalysis = {
|
|
6
|
+
[key in ScoringCriteriaKey]: Score;
|
|
7
|
+
};
|
|
8
|
+
export declare const analyzeNftCollection: (
|
|
9
|
+
/**
|
|
10
|
+
* The NFT to evaluate
|
|
11
|
+
*/
|
|
12
|
+
nft: NftCollectionInfo) => Promise<NftCollectionAnalysis>;
|
|
13
|
+
//# sourceMappingURL=analyzeNftCollection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzeNftCollection.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/analyzeNftCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,eAAe,GAAG,WAAW,CAAA;AAE3E,MAAM,MAAM,qBAAqB,GAAG;KACjC,GAAG,IAAI,kBAAkB,GAAG,KAAK;CACnC,CAAA;AAED,eAAO,MAAM,oBAAoB;AAC/B;;GAEG;AACH,KAAK,iBAAiB,KACrB,OAAO,CAAC,qBAAqB,CAW/B,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { WeightedScoringCriteria } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoringCriteria: {
|
|
4
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/criteria/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAIlF,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAGxF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { WeightedScoringCriteria } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const attributeScoringCriteria: {
|
|
4
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
5
|
+
};
|
|
6
|
+
export declare const scoreMetadata: {
|
|
7
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAKlF,eAAO,MAAM,wBAAwB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAGjG,CAAA;AAED,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAAoC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { NftCollectionAttributeMetrics } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreIndividualAttributes: (info: NftCollectionAttributeMetrics) => Score;
|
|
4
|
+
//# sourceMappingURL=scoreIndividualAttributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreIndividualAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACtG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAKhE,eAAO,MAAM,yBAAyB,GAAI,MAAM,6BAA6B,KAAG,KAa/E,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { NftCollectionAttributeMetrics } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
/**
|
|
4
|
+
* We're working on some assumptions here:
|
|
5
|
+
*
|
|
6
|
+
* - If you have a 100% chance of getting a trait, everyone get's a trophy
|
|
7
|
+
* - If you have a 50% chance of getting a trait, it's not rare
|
|
8
|
+
* - If you have a 0% chance of getting a trait, it's not fun
|
|
9
|
+
*
|
|
10
|
+
* So we're looking for something Pareto-ish (somewhere between
|
|
11
|
+
* 80/20 or 90/10) as that's a good & sustainable model for the
|
|
12
|
+
* distribution of many traits in real life.
|
|
13
|
+
* However, we also don't want to maximally reward collections
|
|
14
|
+
* that have a lot of single attributes distributed uniformly
|
|
15
|
+
* (basically a 0% trait probably) as that's perfectly entropic
|
|
16
|
+
* but not very interesting (some overlap is desirable).
|
|
17
|
+
* So we're using a Gaussian distribution to model the
|
|
18
|
+
* probability density of the joint probability of all traits
|
|
19
|
+
* centered around 15%.
|
|
20
|
+
* @param info
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export declare const scoreTotalAttributes: (info: NftCollectionAttributeMetrics) => Score;
|
|
24
|
+
//# sourceMappingURL=scoreTotalAttributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreTotalAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACtG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAkChE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAM,6BAA6B,KAAG,KAU1E,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreIndividualAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
package/dist/neutral/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreTotalAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"total.spec.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/spec/total.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { NftCollectionCount } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
/**
|
|
4
|
+
* We're working on some assumptions here:
|
|
5
|
+
* - If there's < 1000 NFTs in your collection it starts becoming too niche
|
|
6
|
+
* - If there's > 20,000 NFTs in your collection it starts becoming too broad
|
|
7
|
+
* So there's a sweet spot somewhere between 2000 and 10,000
|
|
8
|
+
* where a collection has enough NFTs to be interesting, but
|
|
9
|
+
* not so many that it's teetering on a diluted money grab.
|
|
10
|
+
* To model that we're using a log-normal distribution optimized
|
|
11
|
+
* to maximally reward collections in the aforementioned range
|
|
12
|
+
* @param nft
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
export declare const scoreTotal: (nft: NftCollectionCount) => Score;
|
|
16
|
+
//# sourceMappingURL=total.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"total.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/total.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAA;AAC3F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAgChE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,kBAAkB,KAAG,KAIpD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzeNftCollection.spec.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/spec/analyzeNftCollection.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Diviner.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Plugin.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { NftCollectionScoreDivinerConfig } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
3
|
+
import type { DivinerParams } from '@xyo-network/diviner-model';
|
|
4
|
+
import type { AnyConfigSchema } from '@xyo-network/module-model';
|
|
5
|
+
import type { Payload, Schema } from '@xyo-network/payload-model';
|
|
6
|
+
export type NftCollectionScoreDivinerParams = DivinerParams<AnyConfigSchema<NftCollectionScoreDivinerConfig>>;
|
|
7
|
+
export declare class NftCollectionScoreDiviner<TParams extends NftCollectionScoreDivinerParams = NftCollectionScoreDivinerParams> extends AbstractDiviner<TParams> {
|
|
8
|
+
static readonly configSchemas: Schema[];
|
|
9
|
+
static readonly defaultConfigSchema: Schema;
|
|
10
|
+
protected divineHandler: (payloads?: Payload[]) => Promise<Payload[]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,+BAA+B,EAChC,MAAM,mDAAmD,CAAA;AAM1D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAKjE,MAAM,MAAM,+BAA+B,GAAG,aAAa,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC,CAAA;AAc7G,qBAAa,yBAAyB,CACpC,OAAO,SAAS,+BAA+B,GAAG,+BAA+B,CACjF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAkE;IAClH,gBAAyB,mBAAmB,EAAE,MAAM,CAAwC;IAE5F,UAAmB,aAAa,GAAU,WAAW,OAAO,EAAE,KAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAgBlF;CACF"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { NftCollectionScoreDiviner } from './Diviner.ts';
|
|
2
|
+
export declare const NftCollectionScoreDivinerPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDivinerPlugin<NftCollectionScoreDiviner<import("./Diviner.ts").NftCollectionScoreDivinerParams>>;
|
|
3
|
+
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAExD,eAAO,MAAM,+BAA+B,2JASzC,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { NftCollectionScoreDivinerConfig, NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
3
|
+
import { DivinerParams } from '@xyo-network/diviner-model';
|
|
4
|
+
import { AnyConfigSchema } from '@xyo-network/module-model';
|
|
5
|
+
import { Schema, Payload } from '@xyo-network/payload-model';
|
|
6
|
+
import { WeightedScoringCriteria, Score } from '@xyo-network/crypto-nft-score-model';
|
|
7
|
+
import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
|
|
8
|
+
|
|
9
|
+
type NftCollectionScoreDivinerParams = DivinerParams<AnyConfigSchema<NftCollectionScoreDivinerConfig>>;
|
|
10
|
+
declare class NftCollectionScoreDiviner<TParams extends NftCollectionScoreDivinerParams = NftCollectionScoreDivinerParams> extends AbstractDiviner<TParams> {
|
|
11
|
+
static readonly configSchemas: Schema[];
|
|
12
|
+
static readonly defaultConfigSchema: Schema;
|
|
13
|
+
protected divineHandler: (payloads?: Payload[]) => Promise<Payload[]>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare const scoringCriteria: {
|
|
17
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
21
|
+
type NftCollectionAnalysis = {
|
|
22
|
+
[key in ScoringCriteriaKey]: Score;
|
|
23
|
+
};
|
|
24
|
+
declare const analyzeNftCollection: (
|
|
25
|
+
/**
|
|
26
|
+
* The NFT to evaluate
|
|
27
|
+
*/
|
|
28
|
+
nft: NftCollectionInfo) => Promise<NftCollectionAnalysis>;
|
|
29
|
+
|
|
30
|
+
declare const NftCollectionScoreDivinerPlugin: () => _xyo_network_payloadset_plugin.PayloadSetDivinerPlugin<NftCollectionScoreDiviner<NftCollectionScoreDivinerParams>>;
|
|
31
|
+
|
|
32
|
+
export { NftCollectionScoreDiviner, NftCollectionScoreDivinerPlugin, analyzeNftCollection, NftCollectionScoreDivinerPlugin as default, scoringCriteria };
|
|
33
|
+
export type { NftCollectionAnalysis, NftCollectionScoreDivinerParams, ScoringCriteriaKey };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,IAAI,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
import { scoringCriteria } from './criteria/index.ts';
|
|
4
|
+
export type ScoringCriteriaKey = keyof typeof scoringCriteria & PropertyKey;
|
|
5
|
+
export type NftCollectionAnalysis = {
|
|
6
|
+
[key in ScoringCriteriaKey]: Score;
|
|
7
|
+
};
|
|
8
|
+
export declare const analyzeNftCollection: (
|
|
9
|
+
/**
|
|
10
|
+
* The NFT to evaluate
|
|
11
|
+
*/
|
|
12
|
+
nft: NftCollectionInfo) => Promise<NftCollectionAnalysis>;
|
|
13
|
+
//# sourceMappingURL=analyzeNftCollection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzeNftCollection.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/analyzeNftCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,eAAe,GAAG,WAAW,CAAA;AAE3E,MAAM,MAAM,qBAAqB,GAAG;KACjC,GAAG,IAAI,kBAAkB,GAAG,KAAK;CACnC,CAAA;AAED,eAAO,MAAM,oBAAoB;AAC/B;;GAEG;AACH,KAAK,iBAAiB,KACrB,OAAO,CAAC,qBAAqB,CAW/B,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { WeightedScoringCriteria } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoringCriteria: {
|
|
4
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/criteria/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAIlF,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAGxF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { NftCollectionInfo } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { WeightedScoringCriteria } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const attributeScoringCriteria: {
|
|
4
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
5
|
+
};
|
|
6
|
+
export declare const scoreMetadata: {
|
|
7
|
+
[key: string]: WeightedScoringCriteria<NftCollectionInfo>;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAKlF,eAAO,MAAM,wBAAwB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAGjG,CAAA;AAED,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;CAAoC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { NftCollectionAttributeMetrics } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
export declare const scoreIndividualAttributes: (info: NftCollectionAttributeMetrics) => Score;
|
|
4
|
+
//# sourceMappingURL=scoreIndividualAttributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreIndividualAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACtG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAKhE,eAAO,MAAM,yBAAyB,GAAI,MAAM,6BAA6B,KAAG,KAa/E,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { NftCollectionAttributeMetrics } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
/**
|
|
4
|
+
* We're working on some assumptions here:
|
|
5
|
+
*
|
|
6
|
+
* - If you have a 100% chance of getting a trait, everyone get's a trophy
|
|
7
|
+
* - If you have a 50% chance of getting a trait, it's not rare
|
|
8
|
+
* - If you have a 0% chance of getting a trait, it's not fun
|
|
9
|
+
*
|
|
10
|
+
* So we're looking for something Pareto-ish (somewhere between
|
|
11
|
+
* 80/20 or 90/10) as that's a good & sustainable model for the
|
|
12
|
+
* distribution of many traits in real life.
|
|
13
|
+
* However, we also don't want to maximally reward collections
|
|
14
|
+
* that have a lot of single attributes distributed uniformly
|
|
15
|
+
* (basically a 0% trait probably) as that's perfectly entropic
|
|
16
|
+
* but not very interesting (some overlap is desirable).
|
|
17
|
+
* So we're using a Gaussian distribution to model the
|
|
18
|
+
* probability density of the joint probability of all traits
|
|
19
|
+
* centered around 15%.
|
|
20
|
+
* @param info
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export declare const scoreTotalAttributes: (info: NftCollectionAttributeMetrics) => Score;
|
|
24
|
+
//# sourceMappingURL=scoreTotalAttributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreTotalAttributes.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACtG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAkChE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAM,6BAA6B,KAAG,KAU1E,CAAA"}
|
package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreIndividualAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreIndividualAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
package/dist/node/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreTotalAttributes.spec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/rating/criteria/scoring/metadata/spec/scoreTotalAttributes.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"total.spec.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/rating/criteria/scoring/spec/total.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { NftCollectionCount } from '@xyo-network/crypto-nft-collection-payload-plugin';
|
|
2
|
+
import type { Score } from '@xyo-network/crypto-nft-score-model';
|
|
3
|
+
/**
|
|
4
|
+
* We're working on some assumptions here:
|
|
5
|
+
* - If there's < 1000 NFTs in your collection it starts becoming too niche
|
|
6
|
+
* - If there's > 20,000 NFTs in your collection it starts becoming too broad
|
|
7
|
+
* So there's a sweet spot somewhere between 2000 and 10,000
|
|
8
|
+
* where a collection has enough NFTs to be interesting, but
|
|
9
|
+
* not so many that it's teetering on a diluted money grab.
|
|
10
|
+
* To model that we're using a log-normal distribution optimized
|
|
11
|
+
* to maximally reward collections in the aforementioned range
|
|
12
|
+
* @param nft
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
export declare const scoreTotal: (nft: NftCollectionCount) => Score;
|
|
16
|
+
//# sourceMappingURL=total.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"total.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/rating/criteria/scoring/total.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAA;AAC3F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAA;AAgChE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,kBAAkB,KAAG,KAIpD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/rating/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzeNftCollection.spec.d.ts","sourceRoot":"","sources":["../../../../../src/lib/rating/spec/analyzeNftCollection.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Diviner.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/Plugin.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/crypto-nft-collection-diviner-score-plugin",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.1.1",
|
|
4
4
|
"description": "Typescript/Javascript Plugins for XYO Platform",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -21,32 +21,32 @@
|
|
|
21
21
|
"type": "module",
|
|
22
22
|
"exports": {
|
|
23
23
|
".": {
|
|
24
|
-
"types": "./dist/
|
|
24
|
+
"types": "./dist/neutral/index.d.ts",
|
|
25
25
|
"default": "./dist/neutral/index.mjs"
|
|
26
26
|
},
|
|
27
27
|
"./package.json": "./package.json"
|
|
28
28
|
},
|
|
29
29
|
"module": "dist/neutral/index.mjs",
|
|
30
|
-
"types": "dist/
|
|
30
|
+
"types": "dist/neutral/index.d.ts",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@xyo-network/crypto-nft-collection-payload-plugin": "^4.
|
|
33
|
-
"@xyo-network/crypto-nft-payload-plugin": "^4.
|
|
34
|
-
"@xyo-network/crypto-nft-score-model": "^4.
|
|
35
|
-
"@xyo-network/diviner-abstract": "^4.
|
|
36
|
-
"@xyo-network/diviner-model": "^4.
|
|
37
|
-
"@xyo-network/module-model": "^4.
|
|
38
|
-
"@xyo-network/payload-builder": "^4.
|
|
39
|
-
"@xyo-network/payload-model": "^4.
|
|
40
|
-
"@xyo-network/payloadset-plugin": "^4.
|
|
32
|
+
"@xyo-network/crypto-nft-collection-payload-plugin": "^4.1.1",
|
|
33
|
+
"@xyo-network/crypto-nft-payload-plugin": "^4.1.1",
|
|
34
|
+
"@xyo-network/crypto-nft-score-model": "^4.1.1",
|
|
35
|
+
"@xyo-network/diviner-abstract": "^4.1.7",
|
|
36
|
+
"@xyo-network/diviner-model": "^4.1.7",
|
|
37
|
+
"@xyo-network/module-model": "^4.1.7",
|
|
38
|
+
"@xyo-network/payload-builder": "^4.1.7",
|
|
39
|
+
"@xyo-network/payload-model": "^4.1.7",
|
|
40
|
+
"@xyo-network/payloadset-plugin": "^4.1.7"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@xylabs/ts-scripts-yarn3": "^
|
|
44
|
-
"@xylabs/tsconfig": "^
|
|
45
|
-
"@xylabs/vitest-extended": "^4.
|
|
46
|
-
"@xyo-network/account": "^4.
|
|
47
|
-
"@xyo-network/payload-wrapper": "^4.
|
|
43
|
+
"@xylabs/ts-scripts-yarn3": "^7.0.0-rc.24",
|
|
44
|
+
"@xylabs/tsconfig": "^7.0.0-rc.24",
|
|
45
|
+
"@xylabs/vitest-extended": "^4.13.23",
|
|
46
|
+
"@xyo-network/account": "^4.1.7",
|
|
47
|
+
"@xyo-network/payload-wrapper": "^4.1.7",
|
|
48
48
|
"ethers": "^6.15.0",
|
|
49
|
-
"knip": "^5.
|
|
49
|
+
"knip": "^5.62.0",
|
|
50
50
|
"typescript": "^5.8.3",
|
|
51
51
|
"vitest": "^3.2.4"
|
|
52
52
|
},
|
package/dist/types/index.d.ts
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreIndividualAttributes.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
/package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts
RENAMED
|
File without changes
|
/package/dist/{types → browser}/lib/rating/criteria/scoring/metadata/scoreTotalAttributes.d.ts.map
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|