@everipedia/iq-utils 0.4.4 → 1.0.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.
Files changed (32) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/main/data/constants.d.ts +18 -0
  3. package/build/main/data/constants.js +20 -2
  4. package/build/main/index.d.ts +1 -0
  5. package/build/main/index.js +2 -1
  6. package/build/main/lib/checkWikiValidity.d.ts +1 -1
  7. package/build/main/lib/checkWikiValidity.js +12 -9
  8. package/build/main/lib/helpers/wiki.helpers.d.ts +32 -0
  9. package/build/main/lib/helpers/wiki.helpers.js +86 -0
  10. package/build/main/lib/wikiScore.d.ts +1 -1
  11. package/build/main/lib/wikiScore.js +34 -49
  12. package/build/main/schema/wiki.schema.d.ts +798 -0
  13. package/build/main/schema/wiki.schema.js +289 -0
  14. package/build/main/types/wiki.d.ts +5 -205
  15. package/build/main/types/wiki.js +10 -172
  16. package/build/main/types/wikiBuilder.d.ts +1 -1
  17. package/build/module/data/constants.d.ts +18 -0
  18. package/build/module/data/constants.js +19 -1
  19. package/build/module/index.d.ts +1 -0
  20. package/build/module/index.js +2 -1
  21. package/build/module/lib/checkWikiValidity.d.ts +1 -1
  22. package/build/module/lib/checkWikiValidity.js +13 -13
  23. package/build/module/lib/helpers/wiki.helpers.d.ts +32 -0
  24. package/build/module/lib/helpers/wiki.helpers.js +75 -0
  25. package/build/module/lib/wikiScore.d.ts +1 -1
  26. package/build/module/lib/wikiScore.js +4 -19
  27. package/build/module/schema/wiki.schema.d.ts +798 -0
  28. package/build/module/schema/wiki.schema.js +286 -0
  29. package/build/module/types/wiki.d.ts +5 -205
  30. package/build/module/types/wiki.js +9 -171
  31. package/build/module/types/wikiBuilder.d.ts +1 -1
  32. package/package.json +52 -51
@@ -1,176 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.whiteListedLinkNames = exports.whiteListedDomains = exports.EventAction = exports.EventType = exports.LinkedWikiKey = exports.Languages = exports.LanguagesISOEnum = exports.EditSpecificMetaIds = exports.ValidatorCodes = exports.WikiPossibleSocialsList = exports.CommonMetaIds = exports.CreateNewWikiSlug = exports.EditorContentOverride = exports.MediaSource = exports.MediaType = void 0;
4
- var MediaType;
5
- (function (MediaType) {
6
- MediaType["GALLERY"] = "GALLERY";
7
- MediaType["ICON"] = "ICON";
8
- })(MediaType = exports.MediaType || (exports.MediaType = {}));
9
- var MediaSource;
10
- (function (MediaSource) {
11
- MediaSource["IPFS_IMG"] = "IPFS_IMG";
12
- MediaSource["VIMEO"] = "VIMEO";
13
- MediaSource["YOUTUBE"] = "YOUTUBE";
14
- MediaSource["IPFS_VID"] = "IPFS_VID";
15
- })(MediaSource = exports.MediaSource || (exports.MediaSource = {}));
16
- exports.EditorContentOverride = '%OVERRIDE@EDITOR@MARKDOWN%';
17
- exports.CreateNewWikiSlug = '/*CREATE+NEW+WIKI*/';
18
- var CommonMetaIds;
19
- (function (CommonMetaIds) {
20
- CommonMetaIds["REFERENCES"] = "references";
21
- // other info
22
- CommonMetaIds["WEBSITE"] = "website";
23
- CommonMetaIds["CONTRACT_URL"] = "contract_url";
24
- CommonMetaIds["LOCATION"] = "location";
25
- // social Links
26
- CommonMetaIds["EMAIL_URL"] = "email_url";
27
- CommonMetaIds["FACEBOOK_PROFILE"] = "facebook_profile";
28
- CommonMetaIds["INSTAGRAM_PROFILE"] = "instagram_profile";
29
- CommonMetaIds["TWITTER_PROFILE"] = "twitter_profile";
30
- CommonMetaIds["LINKEDIN_PROFILE"] = "linkedin_profile";
31
- CommonMetaIds["YOUTUBE_PROFILE"] = "youtube_profile";
32
- CommonMetaIds["DISCORD_PROFILE"] = "discord_profile";
33
- CommonMetaIds["REDDIT_URL"] = "reddit_profile";
34
- CommonMetaIds["TELEGRAM_URL"] = "telegram_profile";
35
- CommonMetaIds["GITHUB_URL"] = "github_profile";
36
- CommonMetaIds["COIN_MARKET_CAP"] = "coinmarketcap_url";
37
- CommonMetaIds["COINGECKO_PROFILE"] = "coingecko_profile";
38
- CommonMetaIds["OPENSEA_PROFILE"] = "opensea_profile";
39
- CommonMetaIds["MEDIUM_PROFILE"] = "medium_profile";
40
- CommonMetaIds["MIRROR_PROFILE"] = "mirror_profile";
41
- CommonMetaIds["TIKTOK_PROFILE"] = "tiktok_profile";
42
- // Explorers
43
- CommonMetaIds["ETHERSCAN_PROFILE"] = "etherscan_profile";
44
- CommonMetaIds["ARBISCAN_PROFILE"] = "arbiscan_profile";
45
- CommonMetaIds["POLYGONSCAN_PROFILE"] = "polygonscan_profile";
46
- CommonMetaIds["BSCSCAN_PROFILE"] = "bscscan_profile";
47
- CommonMetaIds["OPTIMISTIC_ETHERSCAN_PROFILE"] = "optimistic_etherscan_profile";
48
- CommonMetaIds["BASESCAN_PROFILE"] = "basescan_profile";
49
- CommonMetaIds["FTMSCAN_PROFILE"] = "ftmscan_profile";
50
- CommonMetaIds["SOLSCAN_PROFILE"] = "solscan_profile";
51
- CommonMetaIds["AVASCAN_PROFILE"] = "avascan_profile";
52
- CommonMetaIds["NEARBLOCKS_PROFILE"] = "nearblocks_profile";
53
- CommonMetaIds["TROSCAN_PROFILE"] = "troscan_profile";
54
- CommonMetaIds["XRPSCAN_PROFILE"] = "xrpscan_profile";
55
- CommonMetaIds["KAVASCAN_PROFILE"] = "kavascan_profile";
56
- CommonMetaIds["TONSCAN_PROFILE"] = "tonscan_profile";
57
- CommonMetaIds["CELOSCAN_PROFILE"] = "celoscan_profile";
58
- CommonMetaIds["CRONOSCAN_PROFILE"] = "cronoscan_profile";
59
- CommonMetaIds["ZKSCAN_PROFILE"] = "zkscan_profile";
60
- CommonMetaIds["EXPLORER_INJECTIVE"] = "explorer_injective_profile";
61
- CommonMetaIds["BLASTSCAN_PROFILE"] = "blastscan_profile";
62
- })(CommonMetaIds = exports.CommonMetaIds || (exports.CommonMetaIds = {}));
63
- exports.WikiPossibleSocialsList = [
64
- // other info
65
- CommonMetaIds.WEBSITE,
66
- CommonMetaIds.CONTRACT_URL,
67
- // social Links
68
- CommonMetaIds.EMAIL_URL,
69
- CommonMetaIds.FACEBOOK_PROFILE,
70
- CommonMetaIds.INSTAGRAM_PROFILE,
71
- CommonMetaIds.TWITTER_PROFILE,
72
- CommonMetaIds.LINKEDIN_PROFILE,
73
- CommonMetaIds.YOUTUBE_PROFILE,
74
- CommonMetaIds.REDDIT_URL,
75
- CommonMetaIds.TELEGRAM_URL,
76
- CommonMetaIds.DISCORD_PROFILE,
77
- CommonMetaIds.GITHUB_URL,
78
- CommonMetaIds.COIN_MARKET_CAP,
79
- CommonMetaIds.COINGECKO_PROFILE,
80
- CommonMetaIds.OPENSEA_PROFILE,
81
- CommonMetaIds.MEDIUM_PROFILE,
82
- CommonMetaIds.TIKTOK_PROFILE,
83
- // Explorers
84
- CommonMetaIds.ETHERSCAN_PROFILE,
85
- CommonMetaIds.ARBISCAN_PROFILE,
86
- CommonMetaIds.POLYGONSCAN_PROFILE,
87
- CommonMetaIds.BSCSCAN_PROFILE,
88
- CommonMetaIds.OPTIMISTIC_ETHERSCAN_PROFILE,
89
- CommonMetaIds.BASESCAN_PROFILE,
90
- CommonMetaIds.FTMSCAN_PROFILE,
91
- CommonMetaIds.XRPSCAN_PROFILE,
92
- CommonMetaIds.KAVASCAN_PROFILE,
93
- CommonMetaIds.TONSCAN_PROFILE,
94
- CommonMetaIds.CELOSCAN_PROFILE,
95
- CommonMetaIds.CRONOSCAN_PROFILE,
96
- CommonMetaIds.ZKSCAN_PROFILE,
97
- CommonMetaIds.EXPLORER_INJECTIVE,
98
- CommonMetaIds.BLASTSCAN_PROFILE,
99
- ];
100
- var ValidatorCodes;
101
- (function (ValidatorCodes) {
102
- ValidatorCodes["VALID_WIKI"] = "VALID_WIKI";
103
- ValidatorCodes["ID"] = "ID_ERROR";
104
- ValidatorCodes["LANGUAGE"] = "LANGUAGE_ERROR";
105
- ValidatorCodes["USER"] = "USER_ERROR";
106
- ValidatorCodes["WORDS"] = "WORD_COUNT_ERROR";
107
- ValidatorCodes["CATEGORY"] = "CATEGORY_ERROR";
108
- ValidatorCodes["SUMMARY"] = "SUMMARY_ERROR";
109
- ValidatorCodes["IMAGE"] = "IMAGE_ERROR";
110
- ValidatorCodes["TAG"] = "TAG_ERROR";
111
- ValidatorCodes["URL"] = "EXTERNAL_URL_ERROR";
112
- ValidatorCodes["METADATA"] = "METADATA_ERROR";
113
- ValidatorCodes["MEDIA"] = "MEDIA_ERROR";
114
- ValidatorCodes["GLOBAL_RATE_LIMIT"] = "GLOBAL_RATE_LIMIT";
115
- ValidatorCodes["ID_ERROR"] = "ID_ERROR";
116
- ValidatorCodes["LINKED_WIKIS"] = "LINKED_WIKIS";
117
- ValidatorCodes["EVENTS"] = "EVENTS_ERROR";
118
- })(ValidatorCodes = exports.ValidatorCodes || (exports.ValidatorCodes = {}));
119
- var EditSpecificMetaIds;
120
- (function (EditSpecificMetaIds) {
121
- EditSpecificMetaIds["PREVIOUS_CID"] = "previous_cid";
122
- EditSpecificMetaIds["COMMIT_MESSAGE"] = "commit-message";
123
- EditSpecificMetaIds["WORDS_CHANGED"] = "words-changed";
124
- EditSpecificMetaIds["PERCENT_CHANGED"] = "percent-changed";
125
- EditSpecificMetaIds["BLOCKS_CHANGED"] = "blocks-changed";
126
- EditSpecificMetaIds["WIKI_SCORE"] = "wiki-score";
127
- })(EditSpecificMetaIds = exports.EditSpecificMetaIds || (exports.EditSpecificMetaIds = {}));
128
- var LanguagesValuesEnum;
129
- (function (LanguagesValuesEnum) {
130
- LanguagesValuesEnum["SPANISH"] = "Espa\u00F1ol";
131
- LanguagesValuesEnum["ENGLISH"] = "English";
132
- LanguagesValuesEnum["CHINESE"] = "\u4E2D\u6587";
133
- LanguagesValuesEnum["KOREAN"] = "\uD55C\uAD6D\uC5B4";
134
- })(LanguagesValuesEnum || (LanguagesValuesEnum = {}));
135
- var LanguagesISOEnum;
136
- (function (LanguagesISOEnum) {
137
- LanguagesISOEnum["EN"] = "en";
138
- LanguagesISOEnum["ES"] = "es";
139
- LanguagesISOEnum["ZH"] = "zh";
140
- LanguagesISOEnum["KO"] = "ko";
141
- })(LanguagesISOEnum = exports.LanguagesISOEnum || (exports.LanguagesISOEnum = {}));
142
- exports.Languages = {
143
- en: LanguagesValuesEnum.ENGLISH,
144
- es: LanguagesValuesEnum.SPANISH,
145
- zh: LanguagesValuesEnum.CHINESE,
146
- ko: LanguagesValuesEnum.KOREAN,
147
- };
148
- var LinkedWikiKey;
149
- (function (LinkedWikiKey) {
150
- LinkedWikiKey["FOUNDER"] = "founders";
151
- LinkedWikiKey["BLOCKCHAIN"] = "blockchains";
152
- LinkedWikiKey["SPEAKERS"] = "speakers";
153
- })(LinkedWikiKey = exports.LinkedWikiKey || (exports.LinkedWikiKey = {}));
154
- var EventType;
155
- (function (EventType) {
156
- EventType["CREATED"] = "CREATED";
157
- EventType["DEFAULT"] = "DEFAULT";
158
- EventType["MULTIDATE"] = "MULTIDATE";
159
- })(EventType = exports.EventType || (exports.EventType = {}));
160
- var EventAction;
161
- (function (EventAction) {
162
- EventAction["DELETE"] = "DELETE";
163
- EventAction["EDIT"] = "EDIT";
164
- EventAction["CREATE"] = "CREATE";
165
- })(EventAction = exports.EventAction || (exports.EventAction = {}));
3
+ exports.whiteListedLinkNames = exports.whiteListedDomains = void 0;
166
4
  exports.whiteListedDomains = [
167
- 'youtube.com/watch',
168
- 'youtu.be',
169
- 'vimeo.com',
170
- 'alpha.everipedia.org/wiki',
171
- 'beta.everipedia.org/wiki',
172
- 'iq.wiki/wiki',
173
- 'ipfs.everipedia.org/ipfs',
5
+ "youtube.com/watch",
6
+ "youtu.be",
7
+ "vimeo.com",
8
+ "alpha.everipedia.org/wiki",
9
+ "beta.everipedia.org/wiki",
10
+ "iq.wiki/wiki",
11
+ "ipfs.everipedia.org/ipfs",
174
12
  ];
175
- exports.whiteListedLinkNames = ['YOUTUBE@VID', 'DUNE@EMBED'];
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZCQSxJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsZ0NBQW1CLENBQUE7SUFDbkIsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUdwQjtBQUVELElBQVksV0FLWDtBQUxELFdBQVksV0FBVztJQUNyQixvQ0FBcUIsQ0FBQTtJQUNyQiw4QkFBZSxDQUFBO0lBQ2Ysa0NBQW1CLENBQUE7SUFDbkIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUxXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBS3RCO0FBWVksUUFBQSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNyRCxRQUFBLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDO0FBRXZELElBQVksYUE4Q1g7QUE5Q0QsV0FBWSxhQUFhO0lBQ3ZCLDBDQUF5QixDQUFBO0lBRXpCLGFBQWE7SUFDYixvQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBNkIsQ0FBQTtJQUM3QixzQ0FBcUIsQ0FBQTtJQUVyQixlQUFlO0lBQ2Ysd0NBQXVCLENBQUE7SUFDdkIsc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsc0RBQXFDLENBQUE7SUFDckMsb0RBQW1DLENBQUE7SUFDbkMsb0RBQW1DLENBQUE7SUFDbkMsOENBQTZCLENBQUE7SUFDN0Isa0RBQWlDLENBQUE7SUFDakMsOENBQTZCLENBQUE7SUFDN0Isc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsa0RBQWlDLENBQUE7SUFDakMsa0RBQWlDLENBQUE7SUFDakMsa0RBQWlDLENBQUE7SUFFakMsWUFBWTtJQUNaLHdEQUF1QyxDQUFBO0lBQ3ZDLHNEQUFxQyxD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
13
+ exports.whiteListedLinkNames = ["YOUTUBE@VID", "DUNE@EMBED"];
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZCYSxRQUFBLGtCQUFrQixHQUFHO0lBQ2pDLG1CQUFtQjtJQUNuQixVQUFVO0lBQ1YsV0FBVztJQUNYLDJCQUEyQjtJQUMzQiwwQkFBMEI7SUFDMUIsY0FBYztJQUNkLDBCQUEwQjtDQUMxQixDQUFDO0FBRVcsUUFBQSxvQkFBb0IsR0FBRyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQyJ9
@@ -1,4 +1,4 @@
1
- import type { Wiki } from './wiki';
1
+ import type { Wiki } from "../schema/wiki.schema";
2
2
  type DeepPartial<T> = {
3
3
  [P in keyof T]?: DeepPartial<T[P]>;
4
4
  };
@@ -4,3 +4,21 @@ export declare const WIKI_TITLE_MAX_LENGTH = 60;
4
4
  export declare const MEDIA_UPLOAD_PENDING_SUFFIX = "default";
5
5
  export declare const MAX_MEDIA_COUNT = 25;
6
6
  export declare const IPFS_HASH_LENGTH = 46;
7
+ export declare const EditorContentOverride = "%OVERRIDE@EDITOR@MARKDOWN%";
8
+ export declare const CreateNewWikiSlug = "/*CREATE+NEW+WIKI*/";
9
+ export declare const MIN_CONTENT_WORD_COUNT = 10;
10
+ export declare const GOOD_CONTENT_WORD_COUNT = 500;
11
+ export declare const IDEAL_CONTENT_WORD_COUNT = 1500;
12
+ export declare const CONTENT_SCORE_WEIGHT = 0.8;
13
+ export declare const INTERNAL_LINKS_SCORE_WEIGHT = 0.5;
14
+ export declare const CITATIONS_SCORE_WEIGHT = 0.5;
15
+ export declare const MEDIA_SCORE_WEIGHT = 0.3;
16
+ export declare const TAGS_SCORE_WEIGHT = 0.3;
17
+ export declare const SUMMARY_SCORE_WEIGHT = 0.5;
18
+ export declare const SOCIAL_SCORE_WEIGHT = 0.5;
19
+ export declare const IDEAL_INTERNAL_LINKS_COUNT = 10;
20
+ export declare const IDEAL_CITATIONS_COUNT = 10;
21
+ export declare const IDEAL_MEDIA_COUNT = 5;
22
+ export declare const IDEAL_TAGS_COUNT = 3;
23
+ export declare const IDEAL_SUMMARY_LENGTH = 100;
24
+ export declare const IDEAL_SOCIAL_MEDIA_COUNT = 4;
@@ -4,4 +4,22 @@ export const WIKI_TITLE_MAX_LENGTH = 60;
4
4
  export const MEDIA_UPLOAD_PENDING_SUFFIX = "default";
5
5
  export const MAX_MEDIA_COUNT = 25;
6
6
  export const IPFS_HASH_LENGTH = 46;
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RhdGEvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLEdBQUcsQ0FBQztBQUMzQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDMUMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxDQUFDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyJ9
7
+ export const EditorContentOverride = "%OVERRIDE@EDITOR@MARKDOWN%";
8
+ export const CreateNewWikiSlug = "/*CREATE+NEW+WIKI*/";
9
+ export const MIN_CONTENT_WORD_COUNT = 10;
10
+ export const GOOD_CONTENT_WORD_COUNT = 500;
11
+ export const IDEAL_CONTENT_WORD_COUNT = 1500;
12
+ export const CONTENT_SCORE_WEIGHT = 0.8;
13
+ export const INTERNAL_LINKS_SCORE_WEIGHT = 0.5;
14
+ export const CITATIONS_SCORE_WEIGHT = 0.5;
15
+ export const MEDIA_SCORE_WEIGHT = 0.3;
16
+ export const TAGS_SCORE_WEIGHT = 0.3;
17
+ export const SUMMARY_SCORE_WEIGHT = 0.5;
18
+ export const SOCIAL_SCORE_WEIGHT = 0.5;
19
+ export const IDEAL_INTERNAL_LINKS_COUNT = 10;
20
+ export const IDEAL_CITATIONS_COUNT = 10;
21
+ export const IDEAL_MEDIA_COUNT = 5;
22
+ export const IDEAL_TAGS_COUNT = 3;
23
+ export const IDEAL_SUMMARY_LENGTH = 100;
24
+ export const IDEAL_SOCIAL_MEDIA_COUNT = 4;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RhdGEvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLEdBQUcsQ0FBQztBQUMzQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDMUMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxDQUFDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFNBQVMsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQUNuQyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQUV2RCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxFQUFFLENBQUM7QUFDekMsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxDQUFDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksQ0FBQztBQUU3QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsR0FBRyxDQUFDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEdBQUcsQ0FBQztBQUMxQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7QUFDdEMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDO0FBQ3JDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFFdkMsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsRUFBRSxDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLEVBQUUsQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLENBQUMifQ==
@@ -4,3 +4,4 @@ export * from "./lib/checkWikiValidity";
4
4
  export * from "./types/wiki";
5
5
  export * from "./types/wikiBuilder";
6
6
  export * from "./data/constants";
7
+ export * from "./schema/wiki.schema";
@@ -4,4 +4,5 @@ export * from "./lib/checkWikiValidity";
4
4
  export * from "./types/wiki";
5
5
  export * from "./types/wikiBuilder";
6
6
  export * from "./data/constants";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIn0=
7
+ export * from "./schema/wiki.schema";
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsc0JBQXNCLENBQUEifQ==
@@ -1,4 +1,4 @@
1
- import { type Wiki } from "../types/wiki";
1
+ import { type Wiki } from "../schema/wiki.schema";
2
2
  /**
3
3
  * Counts the number of words in a given string.
4
4
  * @param text - The input string to count words from.
@@ -1,7 +1,6 @@
1
1
  import { IPFS_HASH_LENGTH, MAX_MEDIA_COUNT, MEDIA_UPLOAD_PENDING_SUFFIX, WIKI_CONTENT_MIN_WORDS, WIKI_SUMMARY_MAX_LENGTH, WIKI_TITLE_MAX_LENGTH, } from "../data/constants";
2
- import { CommonMetaIds, MediaSource, MediaType,
3
- // eslint-disable-next-line sort-imports
4
- whiteListedDomains, whiteListedLinkNames, } from "../types/wiki";
2
+ import { CommonMetaIdsEnum, MediaSourceEnum, MediaTypeEnum, } from "../schema/wiki.schema";
3
+ import { whiteListedDomains, whiteListedLinkNames } from "../types/wiki";
5
4
  /**
6
5
  * Counts the number of words in a given string.
7
6
  * @param text - The input string to count words from.
@@ -52,21 +51,23 @@ export const isMediaValid = (wiki) => {
52
51
  if (!wiki.media)
53
52
  return true;
54
53
  const isMediaContentValid = wiki.media.every((media) => {
55
- if (media.source === MediaSource.IPFS_IMG ||
56
- media.source === MediaSource.IPFS_VID) {
54
+ if (media.source === MediaSourceEnum.Enum.IPFS_IMG ||
55
+ media.source === MediaSourceEnum.Enum.IPFS_VID) {
57
56
  return media.id.length === IPFS_HASH_LENGTH;
58
57
  }
59
- if (media.source === MediaSource.YOUTUBE) {
58
+ if (media.source === MediaSourceEnum.Enum.YOUTUBE) {
60
59
  const youtubePattern = /^.*(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/|watch\?v=)([^#&?]*).*/;
61
60
  return (media.id === `https://www.youtube.com/watch?v=${media.name}` &&
62
61
  youtubePattern.test(media.id));
63
62
  }
64
- if (media.source === MediaSource.VIMEO) {
63
+ if (media.source === MediaSourceEnum.Enum.VIMEO) {
65
64
  return media.id === `https://vimeo.com/${media.name}`;
66
65
  }
67
- return media.type ? Object.values(MediaType).includes(media.type) : true;
66
+ return media.type
67
+ ? Object.values(MediaTypeEnum).includes(media.type)
68
+ : true;
68
69
  });
69
- const iconMediaCount = wiki.media.filter((media) => media.type === MediaType.ICON).length;
70
+ const iconMediaCount = wiki.media.filter((media) => media.type === MediaTypeEnum.Enum.ICON).length;
70
71
  return (wiki.media.length <= MAX_MEDIA_COUNT &&
71
72
  isMediaContentValid &&
72
73
  iconMediaCount <= 1);
@@ -85,8 +86,7 @@ export const isAnyMediaUploading = (wiki) => wiki.media?.some((media) => media.i
85
86
  */
86
87
  export const isEventUrlMissing = (wiki) => {
87
88
  if (wiki.tags.some((tag) => tag.id === "Events")) {
88
- const referencesData = wiki.metadata.find((meta) => meta.id === CommonMetaIds.REFERENCES)
89
- ?.value || "[]";
89
+ const referencesData = wiki.metadata.find((meta) => meta.id === CommonMetaIdsEnum.Enum.references)?.value || "[]";
90
90
  const references = JSON.parse(referencesData);
91
91
  return !references.some((item) => item.description.toLowerCase() === "event link");
92
92
  }
@@ -110,7 +110,7 @@ export const isSummaryTooLong = (wiki) => !!(wiki.summary && wiki.summary.length
110
110
  * @returns True if there are no citations, false otherwise.
111
111
  */
112
112
  export const hasNoCitations = (wiki) => {
113
- const references = wiki.metadata.find((meta) => meta.id === CommonMetaIds.REFERENCES);
113
+ const references = wiki.metadata.find((meta) => meta.id === CommonMetaIdsEnum.Enum.references);
114
114
  return !references?.value || references.value.length === 0;
115
115
  };
116
116
  /**
@@ -188,4 +188,4 @@ export const validateWiki = (wiki) => {
188
188
  }
189
189
  return { isValid: true };
190
190
  };
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tXaWtpVmFsaWRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NoZWNrV2lraVZhbGlkaXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHFCQUFxQixHQUNyQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFDTixhQUFhLEVBQ2IsV0FBVyxFQUNYLFNBQVM7QUFFVCx3Q0FBd0M7QUFDeEMsa0JBQWtCLEVBQ2xCLG9CQUFvQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2Qjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7QUFFdEQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtJQUMvQyxJQUFJO1FBQ0gsT0FBTyxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztLQUNuQztJQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ1osT0FBTyxLQUFLLENBQUM7S0FDYjtBQUNGLENBQUMsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO0lBQzFELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRCxPQUFPLENBQ04sYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQzdCLE1B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
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tXaWtpVmFsaWRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NoZWNrV2lraVZhbGlkaXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHFCQUFxQixHQUNyQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFDTixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLGFBQWEsR0FFYixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7QUFFdEQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtJQUMvQyxJQUFJO1FBQ0gsT0FBTyxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztLQUNuQztJQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ1osT0FBTyxLQUFLLENBQUM7S0FDYjtBQUNGLENBQUMsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO0lBQzFELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRCxPQUFPLENBQ04sYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDLElB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
@@ -0,0 +1,32 @@
1
+ import type { z } from "zod";
2
+ import { type Media, type TagEnum } from "../../schema/wiki.schema";
3
+ /**
4
+ * Counts the number of words in a given string.
5
+ * @param text - The input string to count words from.
6
+ * @returns The number of words in the string.
7
+ */
8
+ export declare const countWords: (text: string) => number;
9
+ /**
10
+ * Checks if a given string is a valid URL.
11
+ * @param urlString - The string to check.
12
+ * @returns True if the string is a valid URL, false otherwise.
13
+ */
14
+ export declare const isValidUrl: (urlString: string) => boolean;
15
+ export declare const validateMediaContent: (media: Media[]) => boolean;
16
+ export declare const validateMediaCount: (media: Media[]) => boolean;
17
+ export declare const validateEventWiki: (wiki: {
18
+ tags: {
19
+ id: z.infer<typeof TagEnum>;
20
+ }[];
21
+ metadata: {
22
+ id: string;
23
+ value?: string;
24
+ }[];
25
+ events?: unknown[];
26
+ }) => boolean;
27
+ /**
28
+ * Checks if all content links in the given text are verified.
29
+ * @param content - The content to check for links.
30
+ * @returns True if all links are verified, false otherwise.
31
+ */
32
+ export declare const areContentLinksVerified: (content: string) => boolean;
@@ -0,0 +1,75 @@
1
+ import { IPFS_HASH_LENGTH, MAX_MEDIA_COUNT } from "../../data/constants";
2
+ import { CommonMetaIdsEnum, MediaSourceEnum, MediaTypeEnum, } from "../../schema/wiki.schema";
3
+ import { whiteListedDomains, whiteListedLinkNames } from "../../types/wiki";
4
+ /**
5
+ * Counts the number of words in a given string.
6
+ * @param text - The input string to count words from.
7
+ * @returns The number of words in the string.
8
+ */
9
+ export const countWords = (text) => text.split(" ").filter((word) => word !== "").length;
10
+ /**
11
+ * Checks if a given string is a valid URL.
12
+ * @param urlString - The string to check.
13
+ * @returns True if the string is a valid URL, false otherwise.
14
+ */
15
+ export const isValidUrl = (urlString) => {
16
+ try {
17
+ return Boolean(new URL(urlString));
18
+ }
19
+ catch (_e) {
20
+ return false;
21
+ }
22
+ };
23
+ export const validateMediaContent = (media) => {
24
+ return media.every((item) => {
25
+ if (item.source === MediaSourceEnum.Enum.IPFS_IMG ||
26
+ item.source === MediaSourceEnum.Enum.IPFS_VID) {
27
+ return item.id.length === IPFS_HASH_LENGTH;
28
+ }
29
+ if (item.source === MediaSourceEnum.Enum.YOUTUBE) {
30
+ const youtubePattern = /^.*(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/|watch\?v=)([^#&?]*).*/;
31
+ return (item.id === `https://www.youtube.com/watch?v=${item.name}` &&
32
+ youtubePattern.test(item.id));
33
+ }
34
+ if (item.source === MediaSourceEnum.Enum.VIMEO) {
35
+ return item.id === `https://vimeo.com/${item.name}`;
36
+ }
37
+ return item.type ? item.type in MediaTypeEnum : true;
38
+ });
39
+ };
40
+ export const validateMediaCount = (media) => {
41
+ const iconMediaCount = media.filter((item) => item.type === MediaTypeEnum.Enum.ICON).length;
42
+ return media.length <= MAX_MEDIA_COUNT && iconMediaCount <= 1;
43
+ };
44
+ export const validateEventWiki = (wiki) => {
45
+ if (wiki.tags.some((tag) => tag.id === "Events")) {
46
+ const referencesData = wiki.metadata.find((meta) => meta.id === CommonMetaIdsEnum.Enum.references)?.value || "[]";
47
+ const references = JSON.parse(referencesData);
48
+ const hasEventLink = references.some((item) => item.description.toLowerCase() === "event link");
49
+ return hasEventLink && Array.isArray(wiki.events) && wiki.events.length > 0;
50
+ }
51
+ return true;
52
+ };
53
+ /**
54
+ * Checks if all content links in the given text are verified.
55
+ * @param content - The content to check for links.
56
+ * @returns True if all links are verified, false otherwise.
57
+ */
58
+ export const areContentLinksVerified = (content) => {
59
+ const markdownLinks = content.match(/\[(.*?)\]\((.*?)\)/g);
60
+ return (markdownLinks?.every((link) => {
61
+ const [, linkText, linkUrl] = RegExp(/\[(.*?)\]\((.*?)\)/).exec(link) || [];
62
+ if (linkText &&
63
+ linkUrl &&
64
+ whiteListedLinkNames.includes(linkText) &&
65
+ !isValidUrl(linkUrl)) {
66
+ return true;
67
+ }
68
+ if (linkUrl && !linkUrl.startsWith("#")) {
69
+ const validDomainPattern = new RegExp(`^https?://(www\\.)?(${whiteListedDomains.join("|")})`);
70
+ return validDomainPattern.test(linkUrl);
71
+ }
72
+ return true;
73
+ }) ?? true);
74
+ };
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9oZWxwZXJzL3dpa2kuaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUNOLGlCQUFpQixFQUVqQixlQUFlLEVBQ2YsYUFBYSxHQUViLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUU7Ozs7R0FJRztBQUVILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFLENBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO0FBRXREOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQUU7SUFDL0MsSUFBSTtRQUNILE9BQU8sT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7S0FDbkM7SUFBQyxPQUFPLEVBQUUsRUFBRTtRQUNaLE9BQU8sS0FBSyxDQUFDO0tBQ2I7QUFDRixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLEtBQWMsRUFBRSxFQUFFO0lBQ3RELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQzNCLElBQ0MsSUFBSSxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDN0MsSUFBSSxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFDNUM7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
@@ -1,2 +1,2 @@
1
- import { type Wiki } from "../types/wiki";
1
+ import { type Wiki } from "../schema/wiki.schema";
2
2
  export declare const calculateWikiScore: (wiki: Wiki) => number;
@@ -1,20 +1,5 @@
1
- import { CommonMetaIds, WikiPossibleSocialsList, } from "../types/wiki";
2
- const MIN_CONTENT_WORD_COUNT = 10;
3
- const GOOD_CONTENT_WORD_COUNT = 500;
4
- const IDEAL_CONTENT_WORD_COUNT = 1500;
5
- const CONTENT_SCORE_WEIGHT = 0.8;
6
- const INTERNAL_LINKS_SCORE_WEIGHT = 0.5;
7
- const CITATIONS_SCORE_WEIGHT = 0.5;
8
- const MEDIA_SCORE_WEIGHT = 0.3;
9
- const TAGS_SCORE_WEIGHT = 0.3;
10
- const SUMMARY_SCORE_WEIGHT = 0.5;
11
- const SOCIAL_SCORE_WEIGHT = 0.5;
12
- const IDEAL_INTERNAL_LINKS_COUNT = 10;
13
- const IDEAL_CITATIONS_COUNT = 10;
14
- const IDEAL_MEDIA_COUNT = 5;
15
- const IDEAL_TAGS_COUNT = 3;
16
- const IDEAL_SUMMARY_LENGTH = 100;
17
- const IDEAL_SOCIAL_MEDIA_COUNT = 4;
1
+ import { CITATIONS_SCORE_WEIGHT, CONTENT_SCORE_WEIGHT, GOOD_CONTENT_WORD_COUNT, IDEAL_CITATIONS_COUNT, IDEAL_CONTENT_WORD_COUNT, IDEAL_INTERNAL_LINKS_COUNT, IDEAL_MEDIA_COUNT, IDEAL_SOCIAL_MEDIA_COUNT, IDEAL_SUMMARY_LENGTH, IDEAL_TAGS_COUNT, INTERNAL_LINKS_SCORE_WEIGHT, MEDIA_SCORE_WEIGHT, MIN_CONTENT_WORD_COUNT, SOCIAL_SCORE_WEIGHT, SUMMARY_SCORE_WEIGHT, TAGS_SCORE_WEIGHT, } from "../data/constants";
2
+ import { CommonMetaIdsEnum, WikiPossibleSocialsList, } from "../schema/wiki.schema";
18
3
  const contentQuality = (wordCount) => {
19
4
  const scoreMin = 0.0;
20
5
  const scoreMax = 1.0;
@@ -81,7 +66,7 @@ const getWikiInternalLinks = (content) => {
81
66
  return internalLinksCount;
82
67
  };
83
68
  const getWikiCitationLinks = (wiki) => {
84
- const rawWikiReferences = wiki.metadata.find((m) => m.id === CommonMetaIds.REFERENCES)?.value;
69
+ const rawWikiReferences = wiki.metadata.find((m) => m.id === CommonMetaIdsEnum.Enum.references)?.value;
85
70
  if (rawWikiReferences === undefined ||
86
71
  rawWikiReferences?.trim().length === 0) {
87
72
  return 0;
@@ -133,4 +118,4 @@ export const calculateWikiScore = (wiki) => {
133
118
  const percentScore = Math.floor(score * 100);
134
119
  return percentScore;
135
120
  };
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraVNjb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi93aWtpU2NvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLGFBQWEsRUFFYix1QkFBdUIsR0FDdkIsTUFBTSxlQUFlLENBQUM7QUFFdkIsTUFBTSxzQkFBc0IsR0FBRyxFQUFFLENBQUM7QUFDbEMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUM7QUFDcEMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLENBQUM7QUFFdEMsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFDakMsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLENBQUM7QUFDeEMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDbkMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7QUFDL0IsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7QUFDOUIsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFDakMsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFFaEMsTUFBTSwwQkFBMEIsR0FBRyxFQUFFLENBQUM7QUFDdEMsTUFBTSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7QUFDakMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUM7QUFDNUIsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7QUFDM0IsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFDakMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLENBQUM7QUFFbkMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxTQUFpQixFQUFVLEVBQUU7SUFDcEQsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0lBQ3JCLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQztJQUVyQixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7SUFFZCxJQUFJLFNBQVMsR0FBRyxzQkFBc0IsRUFBRTtRQUN2QyxPQUFPLFFBQVEsQ0FBQztLQUNoQjtJQUVELElB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
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraVNjb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi93aWtpU2NvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIsdUJBQXVCLEVBQ3ZCLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFDM0Isa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGlCQUFpQixHQUNqQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFDTixpQkFBaUIsRUFFakIsdUJBQXVCLEdBQ3ZCLE1BQU0sdUJBQXVCLENBQUM7QUFFL0IsTUFBTSxjQUFjLEdBQUcsQ0FBQyxTQUFpQixFQUFVLEVBQUU7SUFDcEQsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0lBQ3JCLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQztJQUVyQixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7SUFFZCxJQUFJLFNBQVMsR0FBRyxzQkFBc0IsRUFBRTtRQUN2QyxPQUFPLFFBQVEsQ0FBQztLQUNoQjtJQUVELElBQ0MsU0FBUyxJQUFJLHNCQUFzQjtRQUNuQyxTQUFTLElBQUksdUJBQXVCLEVBQ25DO1FBQ0QsS0FBSyxHQUFHLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQztRQUM1QyxLQUFLLElBQUksR0FBRyxDQUFDO0tBQ2I7SUFFRCxJQUNDLFNBQVMsR0FBRyx1QkFBdUI7UUFDbkMsU0FBUyxHQUFHLHdCQUF3QixFQUNuQztRQUNELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQztRQUN0QixNQUFNLGtCQUFrQixHQUFHLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQztRQUMvRCxNQUFNLGdCQUFnQixHQUNyQixrQkFBa0IsR0FB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