@vannizhang/living-atlas-content-validator 1.5.19-beta.2 → 1.5.19-beta.3

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 (183) hide show
  1. package/README.md +338 -55
  2. package/dist/configureSettings.js.map +1 -1
  3. package/dist/index.d.ts +7 -3
  4. package/dist/index.js +10 -2
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/accessInformation/isValidAccessInformation.js +6 -9
  7. package/dist/lib/accessInformation/isValidAccessInformation.js.map +1 -1
  8. package/dist/lib/accessInformation/scoringConfig.d.ts +1 -1
  9. package/dist/lib/accessInformation/scoringConfig.js +1 -1
  10. package/dist/lib/accessInformation/scoringConfig.js.map +1 -1
  11. package/dist/lib/checkProfanities/checkProfanities.js.map +1 -1
  12. package/dist/lib/checkTitleAndSnippetSearchability/checkTitleAndSnippetSearchability.js +7 -7
  13. package/dist/lib/checkTitleAndSnippetSearchability/checkTitleAndSnippetSearchability.js.map +1 -1
  14. package/dist/lib/checkTitleAndSnippetSearchability/helpers.js.map +1 -1
  15. package/dist/lib/checkTitleAndSnippetSearchability/matchDateTimeInfo.js.map +1 -1
  16. package/dist/lib/checkTitleAndSnippetSearchability/matchLocationInfo.js.map +1 -1
  17. package/dist/lib/checkTitleAndSnippetSearchability/matchSourceInfo.js.map +1 -1
  18. package/dist/lib/checkTitleAndSnippetSearchability/matchTopicInfo.js.map +1 -1
  19. package/dist/lib/checkTitleAndSnippetSearchability/scoringConfig.d.ts +1 -1
  20. package/dist/lib/checkTitleAndSnippetSearchability/scoringConfig.js +1 -1
  21. package/dist/lib/checkTitleAndSnippetSearchability/scoringConfig.js.map +1 -1
  22. package/dist/lib/deleteProtection/isDeleteProtectionEnabled.js +8 -8
  23. package/dist/lib/deleteProtection/isDeleteProtectionEnabled.js.map +1 -1
  24. package/dist/lib/deleteProtection/scoringConfig.d.ts +1 -1
  25. package/dist/lib/deleteProtection/scoringConfig.js +1 -1
  26. package/dist/lib/deleteProtection/scoringConfig.js.map +1 -1
  27. package/dist/lib/deprecated/isDeprecated.js +8 -9
  28. package/dist/lib/deprecated/isDeprecated.js.map +1 -1
  29. package/dist/lib/deprecated/scoringConfig.d.ts +1 -1
  30. package/dist/lib/deprecated/scoringConfig.js +1 -1
  31. package/dist/lib/deprecated/scoringConfig.js.map +1 -1
  32. package/dist/lib/description/findDataSource.js.map +1 -1
  33. package/dist/lib/description/isValidDescription.js +23 -41
  34. package/dist/lib/description/isValidDescription.js.map +1 -1
  35. package/dist/lib/description/scoringConfig.d.ts +1 -1
  36. package/dist/lib/description/scoringConfig.js +1 -1
  37. package/dist/lib/description/scoringConfig.js.map +1 -1
  38. package/dist/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.d.ts +22 -0
  39. package/dist/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.js +87 -0
  40. package/dist/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.js.map +1 -0
  41. package/dist/lib/featureServiceFieldAliases/scoringConfig.d.ts +8 -0
  42. package/dist/lib/featureServiceFieldAliases/scoringConfig.js +13 -0
  43. package/dist/lib/featureServiceFieldAliases/scoringConfig.js.map +1 -0
  44. package/dist/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.d.ts +21 -0
  45. package/dist/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.js +89 -0
  46. package/dist/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.js.map +1 -0
  47. package/dist/lib/featureServiceFieldDescriptions/scoringConfig.d.ts +8 -0
  48. package/dist/lib/featureServiceFieldDescriptions/scoringConfig.js +13 -0
  49. package/dist/lib/featureServiceFieldDescriptions/scoringConfig.js.map +1 -0
  50. package/dist/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.d.ts +18 -0
  51. package/dist/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.js +86 -0
  52. package/dist/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.js.map +1 -0
  53. package/dist/lib/featureServiceFieldValueTypes/scoringConfig.d.ts +8 -0
  54. package/dist/lib/featureServiceFieldValueTypes/scoringConfig.js +13 -0
  55. package/dist/lib/featureServiceFieldValueTypes/scoringConfig.js.map +1 -0
  56. package/dist/lib/licenseInfo/isValidLicenseInfo.js +16 -23
  57. package/dist/lib/licenseInfo/isValidLicenseInfo.js.map +1 -1
  58. package/dist/lib/licenseInfo/scoringConfig.d.ts +1 -1
  59. package/dist/lib/licenseInfo/scoringConfig.js +1 -1
  60. package/dist/lib/licenseInfo/scoringConfig.js.map +1 -1
  61. package/dist/lib/sharing/isValidAccess.js +13 -14
  62. package/dist/lib/sharing/isValidAccess.js.map +1 -1
  63. package/dist/lib/sharing/scoringConfig.d.ts +1 -1
  64. package/dist/lib/sharing/scoringConfig.js +1 -1
  65. package/dist/lib/sharing/scoringConfig.js.map +1 -1
  66. package/dist/lib/ssl/isValidSSL.js +12 -12
  67. package/dist/lib/ssl/isValidSSL.js.map +1 -1
  68. package/dist/lib/ssl/scoringConfig.d.ts +1 -1
  69. package/dist/lib/ssl/scoringConfig.js +1 -1
  70. package/dist/lib/ssl/scoringConfig.js.map +1 -1
  71. package/dist/lib/summary/isValidSummary.js +32 -31
  72. package/dist/lib/summary/isValidSummary.js.map +1 -1
  73. package/dist/lib/summary/scoringConfig.d.ts +1 -1
  74. package/dist/lib/summary/scoringConfig.js +1 -1
  75. package/dist/lib/summary/scoringConfig.js.map +1 -1
  76. package/dist/lib/tags/isValidTags.js +15 -21
  77. package/dist/lib/tags/isValidTags.js.map +1 -1
  78. package/dist/lib/tags/scoringConfig.d.ts +1 -1
  79. package/dist/lib/tags/scoringConfig.js +1 -1
  80. package/dist/lib/tags/scoringConfig.js.map +1 -1
  81. package/dist/lib/thumbnail/isValidThumbnail.js +16 -34
  82. package/dist/lib/thumbnail/isValidThumbnail.js.map +1 -1
  83. package/dist/lib/thumbnail/scoringConfig.d.ts +1 -1
  84. package/dist/lib/thumbnail/scoringConfig.js +1 -1
  85. package/dist/lib/thumbnail/scoringConfig.js.map +1 -1
  86. package/dist/lib/title/isValidTitle.js +34 -34
  87. package/dist/lib/title/isValidTitle.js.map +1 -1
  88. package/dist/lib/title/scoringConfig.d.ts +1 -1
  89. package/dist/lib/title/scoringConfig.js +1 -1
  90. package/dist/lib/title/scoringConfig.js.map +1 -1
  91. package/dist/lib/userProfileDescription/isValidUserProfileDescription.js +31 -32
  92. package/dist/lib/userProfileDescription/isValidUserProfileDescription.js.map +1 -1
  93. package/dist/lib/userProfileDescription/scoringConfig.d.ts +1 -1
  94. package/dist/lib/userProfileDescription/scoringConfig.js +1 -1
  95. package/dist/lib/userProfileDescription/scoringConfig.js.map +1 -1
  96. package/dist/lib/userProfileName/isValidUserProfileName.js +14 -14
  97. package/dist/lib/userProfileName/isValidUserProfileName.js.map +1 -1
  98. package/dist/lib/userProfileName/scoringConfig.d.ts +1 -1
  99. package/dist/lib/userProfileName/scoringConfig.js +1 -1
  100. package/dist/lib/userProfileName/scoringConfig.js.map +1 -1
  101. package/dist/lib/userProfileThumbnail/isValidUserProfileThumbnail.js +10 -10
  102. package/dist/lib/userProfileThumbnail/isValidUserProfileThumbnail.js.map +1 -1
  103. package/dist/lib/userProfileThumbnail/scoringConfig.d.ts +1 -1
  104. package/dist/lib/userProfileThumbnail/scoringConfig.js +1 -1
  105. package/dist/lib/userProfileThumbnail/scoringConfig.js.map +1 -1
  106. package/dist/lib/util/containsNonEnglishCharacters.js.map +1 -1
  107. package/dist/lib/util/countSentences.js.map +1 -1
  108. package/dist/lib/util/createWordBoundaryRegex.js.map +1 -1
  109. package/dist/lib/util/escapeSpecialCharacters.js.map +1 -1
  110. package/dist/lib/util/getAllValidationRuleIds.d.ts +6 -0
  111. package/dist/lib/util/getAllValidationRuleIds.js +13 -0
  112. package/dist/lib/util/getAllValidationRuleIds.js.map +1 -0
  113. package/dist/lib/util/getLivingAtlasSupportedItemTypes.js.map +1 -1
  114. package/dist/lib/util/getNumberOfWords.js.map +1 -1
  115. package/dist/lib/util/getRelevantFeatureLayerFields.d.ts +13 -0
  116. package/dist/lib/util/getRelevantFeatureLayerFields.js +45 -0
  117. package/dist/lib/util/getRelevantFeatureLayerFields.js.map +1 -0
  118. package/dist/lib/util/getScoringRules.js.map +1 -1
  119. package/dist/lib/util/getThumbnailFileName.js.map +1 -1
  120. package/dist/lib/util/isArcGISDomain.js.map +1 -1
  121. package/dist/lib/util/isEmpty.js.map +1 -1
  122. package/dist/lib/util/isFeatureCollection.js +1 -1
  123. package/dist/lib/util/isFeatureCollection.js.map +1 -1
  124. package/dist/lib/util/isFeatureService.d.ts +8 -0
  125. package/dist/lib/util/isFeatureService.js +21 -0
  126. package/dist/lib/util/isFeatureService.js.map +1 -0
  127. package/dist/lib/util/isHosted.js.map +1 -1
  128. package/dist/lib/util/isSecureProtocol.js.map +1 -1
  129. package/dist/lib/util/isUppercase.js.map +1 -1
  130. package/dist/lib/util/isUrl.js.map +1 -1
  131. package/dist/lib/util/isValidRegexPattern.js.map +1 -1
  132. package/dist/lib/util/matches.js.map +1 -1
  133. package/dist/lib/util/round.js +1 -2
  134. package/dist/lib/util/round.js.map +1 -1
  135. package/dist/lib/util/sanitizeTags.js.map +1 -1
  136. package/dist/lib/util/shouldValidateByBetaRules.js.map +1 -1
  137. package/dist/lib/util/toString.js.map +1 -1
  138. package/dist/lib/validate/validate.d.ts +7 -2
  139. package/dist/lib/validate/validate.js +10 -1
  140. package/dist/lib/validate/validate.js.map +1 -1
  141. package/dist/lib/validate/validateHelpers.js +2 -2
  142. package/dist/lib/validate/validateHelpers.js.map +1 -1
  143. package/dist/locale/de.json +27 -0
  144. package/dist/locale/en.json +27 -0
  145. package/dist/locale/es.json +27 -0
  146. package/dist/locale/fr.json +27 -0
  147. package/dist/locale/ja.json +27 -0
  148. package/dist/locale/pt-br.json +27 -0
  149. package/dist/package-info.json +1 -1
  150. package/dist/services/content-validator-assets/fetchAdditonalPatterns4TitleAndSnippetSearchability.js +1 -1
  151. package/dist/services/content-validator-assets/fetchAdditonalPatterns4TitleAndSnippetSearchability.js.map +1 -1
  152. package/dist/services/content-validator-assets/fetchProfanitiesData.js +1 -1
  153. package/dist/services/content-validator-assets/fetchProfanitiesData.js.map +1 -1
  154. package/dist/services/content-validator-assets/helpers.js.map +1 -1
  155. package/dist/services/custom-terms/config.js +1 -1
  156. package/dist/services/custom-terms/config.js.map +1 -1
  157. package/dist/services/custom-terms/customTerms.js +10 -10
  158. package/dist/services/custom-terms/customTerms.js.map +1 -1
  159. package/dist/services/custom-terms/helpers.js.map +1 -1
  160. package/dist/services/custom-terms-review-results/config.js +1 -1
  161. package/dist/services/custom-terms-review-results/config.js.map +1 -1
  162. package/dist/services/custom-terms-review-results/customTermsReviewResults.js +4 -4
  163. package/dist/services/custom-terms-review-results/customTermsReviewResults.js.map +1 -1
  164. package/dist/services/custom-terms-review-results/helpers.js.map +1 -1
  165. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.d.ts +9 -0
  166. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.js +49 -0
  167. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.js.map +1 -0
  168. package/dist/services/shared/addFeatures.js +4 -4
  169. package/dist/services/shared/addFeatures.js.map +1 -1
  170. package/dist/services/shared/applyEdits.js +4 -4
  171. package/dist/services/shared/applyEdits.js.map +1 -1
  172. package/dist/services/shared/getItemInfo.js +1 -1
  173. package/dist/services/shared/getItemInfo.js.map +1 -1
  174. package/dist/types/index.d.ts +168 -29
  175. package/dist/types/index.js +21 -0
  176. package/dist/types/index.js.map +1 -1
  177. package/package.json +5 -4
  178. package/dist/lib/accessInformation/scoringRulesConfig.d.ts +0 -0
  179. package/dist/lib/accessInformation/scoringRulesConfig.js +0 -36
  180. package/dist/lib/accessInformation/scoringRulesConfig.js.map +0 -1
  181. package/dist/lib/layers/scoringRulesConfig.d.ts +0 -0
  182. package/dist/lib/layers/scoringRulesConfig.js +0 -48
  183. package/dist/lib/layers/scoringRulesConfig.js.map +0 -1
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkFeatureServiceFieldAliases = void 0;
4
+ const getRelevantFeatureLayerFields_1 = require("../util/getRelevantFeatureLayerFields");
5
+ const isFeatureService_1 = require("../util/isFeatureService");
6
+ const stringsConfig_1 = require("../util/stringsConfig");
7
+ const scoringConfig_1 = require("./scoringConfig");
8
+ /**
9
+ * Validates that feature layer fields have appropriate aliases.
10
+ *
11
+ * This function checks if the given item is a feature service and evaluates the presence of field aliases
12
+ * for relevant fields within the provided feature layers.
13
+ *
14
+ * It returns a `ValidationInfo` object containing the validation result, messages, and scoring information.
15
+ *
16
+ * The scoring logic is as follows:
17
+ * - If the item is not a feature layer, the rule does not contribute to the final score.
18
+ * - If there are no feature layers, a message is added and the result is returned.
19
+ * - If there are no relevant fields to check, the rule receives full score.
20
+ * - If none of the relevant fields have aliases, a message is added to prompt adding aliases.
21
+ * - If less than 80% of relevant fields have aliases, a message is added to prompt improvement and half score is given.
22
+ * - If at least 80% of relevant fields have aliases, the rule receives full score.
23
+ *
24
+ * @param item - The item to validate, typically representing a feature layer item.
25
+ * @param featureLayers - An array of JSON objects representing the feature layers published to this feature service to check for field aliases.
26
+ * @returns A `ValidationInfo` object containing the validation result, messages, and scoring.
27
+ */
28
+ const checkFeatureServiceFieldAliases = (item, featureLayers) => {
29
+ const strings = (0, stringsConfig_1.getStringsConfig)();
30
+ const scoringFactors = scoringConfig_1.scoringConfig.scoringFactors.DEFAULT;
31
+ const validationResult = {
32
+ validationRuleId: 'feature-service-field-aliases',
33
+ label: strings.featureLayerFieldAliases.LABEL,
34
+ title: strings.featureLayerFieldAliases.TITLE,
35
+ maxScore: 0,
36
+ score: 0,
37
+ messages: [],
38
+ weight: scoringConfig_1.scoringConfig.weight,
39
+ scoringFactor: 0,
40
+ status: 'unknown',
41
+ isBinaryCheck: false,
42
+ };
43
+ // Return the validationResult with a weight of 0 (so this rule does not contribute to the final score)
44
+ // if the item is not a feature layer.
45
+ if (!(0, isFeatureService_1.isFeatureService)(item)) {
46
+ return Object.assign(Object.assign({}, validationResult), { weight: 0 });
47
+ }
48
+ if (!Array.isArray(featureLayers) || (featureLayers === null || featureLayers === void 0 ? void 0 : featureLayers.length) === 0) {
49
+ validationResult.messages.push({
50
+ message: strings.featureLayerFieldAliases.NO_FEATURE_LAYER,
51
+ });
52
+ return validationResult;
53
+ }
54
+ const relevantFields = (0, getRelevantFeatureLayerFields_1.getRelevantFeatureLayerFields)(featureLayers || []);
55
+ // should receive full score since there is no relevant field that needs to be checked
56
+ if (relevantFields.length === 0) {
57
+ validationResult.scoringFactor = scoringFactors.CONTAINS_FIELD_ALIASES;
58
+ return validationResult;
59
+ }
60
+ // get the count of fields with aliases
61
+ const countOfFieldsWithAlias = relevantFields.filter((field) => field.alias).length;
62
+ const percentWithAlias = countOfFieldsWithAlias / relevantFields.length;
63
+ // if percentWithAlias is 0, then there are no fields with aliases
64
+ // it should receive a score of 0 and a message to add field aliases
65
+ if (percentWithAlias === 0) {
66
+ validationResult.messages.push({
67
+ message: strings.featureLayerFieldAliases.ADD_FIELD_ALIAS,
68
+ });
69
+ return validationResult;
70
+ }
71
+ // if percentWithAlias is less than 0.8, then there are some fields with aliases
72
+ // it should receive half of score and a message to improve field aliases
73
+ if (percentWithAlias < 0.8) {
74
+ validationResult.messages.push({
75
+ message: strings.featureLayerFieldAliases.IMPROVE_FIELD_ALIAS,
76
+ });
77
+ validationResult.scoringFactor =
78
+ scoringFactors.CONTAINS_FIELD_ALIASES / 2;
79
+ return validationResult;
80
+ }
81
+ // if percentWithAlias is greater than 0.8, then there are most fields with aliases
82
+ // it should receive full score
83
+ validationResult.scoringFactor = 1;
84
+ return validationResult;
85
+ };
86
+ exports.checkFeatureServiceFieldAliases = checkFeatureServiceFieldAliases;
87
+ //# sourceMappingURL=checkFeatureServiceFieldAliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFeatureServiceFieldAliases.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.ts"],"names":[],"mappings":";;;AACA,yFAAsF;AACtF,+DAA4D;AAC5D,yDAAyD;AACzD,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;GAmBG;AACI,MAAM,+BAA+B,GAAG,CAC3C,IAAW,EACX,aAAiC,EACnB,EAAE;IAChB,MAAM,OAAO,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEnC,MAAM,cAAc,GAAG,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC;IAE5D,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,+BAA+B;QACjD,KAAK,EAAE,OAAO,CAAC,wBAAwB,CAAC,KAAK;QAC7C,KAAK,EAAE,OAAO,CAAC,wBAAwB,CAAC,KAAK;QAC7C,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;KACvB,CAAC;IAEF,uGAAuG;IACvG,sCAAsC;IACtC,IAAI,CAAC,IAAA,mCAAgB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,uCACO,gBAAgB,KACnB,MAAM,EAAE,CAAC,IACX;IACN,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,MAAK,CAAC,EAAE,CAAC;QAC/D,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,gBAAgB;SAC7D,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,6DAA6B,EAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAE1E,sFAAsF;IACtF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,gBAAgB,CAAC,aAAa,GAAG,cAAc,CAAC,sBAAsB,CAAC;QACvE,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,uCAAuC;IACvC,MAAM,sBAAsB,GAAG,cAAc,CAAC,MAAM,CAChD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CACzB,CAAC,MAAM,CAAC;IAET,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,cAAc,CAAC,MAAM,CAAC;IAExE,kEAAkE;IAClE,oEAAoE;IACpE,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QACzB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,eAAe;SAC5D,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,gFAAgF;IAChF,yEAAyE;IACzE,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QACzB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,mBAAmB;SAChE,CAAC,CAAC;QACH,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAC9C,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,mFAAmF;IACnF,+BAA+B;IAC/B,gBAAgB,CAAC,aAAa,GAAG,CAAC,CAAC;IAEnC,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AA7EW,QAAA,+BAA+B,mCA6E1C"}
@@ -0,0 +1,8 @@
1
+ export declare const scoringConfig: {
2
+ weight: number;
3
+ scoringFactors: {
4
+ DEFAULT: {
5
+ CONTAINS_FIELD_ALIASES: number;
6
+ };
7
+ };
8
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ // import { ScoringConfig } from '../../types';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.scoringConfig = void 0;
5
+ exports.scoringConfig = {
6
+ weight: 1,
7
+ scoringFactors: {
8
+ DEFAULT: {
9
+ CONTAINS_FIELD_ALIASES: 1,
10
+ },
11
+ },
12
+ };
13
+ //# sourceMappingURL=scoringConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldAliases/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,sBAAsB,EAAE,CAAC;SAC5B;KACJ;CACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { FeatureLayerJSON, IItem, ValidationInfo } from '../../types';
2
+ /**
3
+ * Validates that relevant fields in the provided feature layers have descriptions.
4
+ *
5
+ * This function checks if the given item is a feature service and evaluates the presence of field descriptions
6
+ * for relevant fields within the provided feature layers. It returns a `ValidationInfo` object containing
7
+ * the validation result, score, messages, and scoring factors based on the percentage of fields with descriptions.
8
+ *
9
+ * Scoring logic:
10
+ * - If the item is not a feature layer, the rule does not contribute to the final score.
11
+ * - If there are no feature layers, a message is added and the result is returned.
12
+ * - If there are no relevant fields, full score is given.
13
+ * - If no relevant fields have descriptions, a message is added and score is zero.
14
+ * - If less than 80% of relevant fields have descriptions, a message is added and half score is given.
15
+ * - If at least 80% of relevant fields have descriptions, full score is given.
16
+ *
17
+ * @param item - The item to validate, expected to be a feature layer item.
18
+ * @param featureLayers - An array of JSON objects representing the feature layers published to this feature service to check for field descriptions.
19
+ * @returns A `ValidationInfo` object containing the validation result, score, messages, and scoring factors.
20
+ */
21
+ export declare const checkFeatureServiceFieldDescriptions: (item: IItem, featureLayers: FeatureLayerJSON[]) => ValidationInfo;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkFeatureServiceFieldDescriptions = void 0;
4
+ const getRelevantFeatureLayerFields_1 = require("../util/getRelevantFeatureLayerFields");
5
+ const isFeatureService_1 = require("../util/isFeatureService");
6
+ const stringsConfig_1 = require("../util/stringsConfig");
7
+ const scoringConfig_1 = require("./scoringConfig");
8
+ /**
9
+ * Validates that relevant fields in the provided feature layers have descriptions.
10
+ *
11
+ * This function checks if the given item is a feature service and evaluates the presence of field descriptions
12
+ * for relevant fields within the provided feature layers. It returns a `ValidationInfo` object containing
13
+ * the validation result, score, messages, and scoring factors based on the percentage of fields with descriptions.
14
+ *
15
+ * Scoring logic:
16
+ * - If the item is not a feature layer, the rule does not contribute to the final score.
17
+ * - If there are no feature layers, a message is added and the result is returned.
18
+ * - If there are no relevant fields, full score is given.
19
+ * - If no relevant fields have descriptions, a message is added and score is zero.
20
+ * - If less than 80% of relevant fields have descriptions, a message is added and half score is given.
21
+ * - If at least 80% of relevant fields have descriptions, full score is given.
22
+ *
23
+ * @param item - The item to validate, expected to be a feature layer item.
24
+ * @param featureLayers - An array of JSON objects representing the feature layers published to this feature service to check for field descriptions.
25
+ * @returns A `ValidationInfo` object containing the validation result, score, messages, and scoring factors.
26
+ */
27
+ const checkFeatureServiceFieldDescriptions = (item, featureLayers) => {
28
+ const strings = (0, stringsConfig_1.getStringsConfig)();
29
+ const scoringFactors = scoringConfig_1.scoringConfig.scoringFactors.DEFAULT;
30
+ const validationResult = {
31
+ validationRuleId: 'feature-service-field-descriptions',
32
+ label: strings.featureLayerFieldDescriptions.LABEL,
33
+ title: strings.featureLayerFieldDescriptions.TITLE,
34
+ maxScore: 0,
35
+ score: 0,
36
+ messages: [],
37
+ weight: scoringConfig_1.scoringConfig.weight,
38
+ scoringFactor: 0,
39
+ status: 'unknown',
40
+ isBinaryCheck: false,
41
+ };
42
+ // Return the validationResult with a weight of 0 (so this rule does not contribute to the final score)
43
+ // if the item is not a feature layer.
44
+ if (!(0, isFeatureService_1.isFeatureService)(item)) {
45
+ return Object.assign(Object.assign({}, validationResult), { weight: 0 });
46
+ }
47
+ if (!Array.isArray(featureLayers) || !featureLayers.length) {
48
+ validationResult.messages.push({
49
+ message: strings.featureLayerFieldDescriptions.NO_FEATURE_LAYER,
50
+ });
51
+ return validationResult;
52
+ }
53
+ const relevantFields = (0, getRelevantFeatureLayerFields_1.getRelevantFeatureLayerFields)(featureLayers || []);
54
+ // should receive full score since there is no relevant field that needs to be checked
55
+ if (relevantFields.length === 0) {
56
+ validationResult.scoringFactor =
57
+ scoringFactors.CONTAINS_FIELD_DESCRIPTIONS;
58
+ return validationResult;
59
+ }
60
+ // get the count of fields with descriptions provided
61
+ const countOfFieldsWithDescription = relevantFields
62
+ .filter((field) => field.description)
63
+ .filter((field) => { var _a; return (_a = field.description) === null || _a === void 0 ? void 0 : _a.value; }).length;
64
+ const percentWithDescription = countOfFieldsWithDescription / relevantFields.length;
65
+ // if percentWithDescription is 0, then there are no fields with aliases
66
+ // it should receive a score of 0 and a message to add field aliases
67
+ if (percentWithDescription === 0) {
68
+ validationResult.messages.push({
69
+ message: strings.featureLayerFieldDescriptions.ADD_FIELD_DESCRIPTION,
70
+ });
71
+ return validationResult;
72
+ }
73
+ // if percentWithDescription is less than 0.8, then there are some fields with aliases
74
+ // it should receive half of score and a message to improve field aliases
75
+ if (percentWithDescription < 0.8) {
76
+ validationResult.messages.push({
77
+ message: strings.featureLayerFieldDescriptions.IMRPOVE_FIELD_DESCRIPTION,
78
+ });
79
+ validationResult.scoringFactor =
80
+ scoringFactors.CONTAINS_FIELD_DESCRIPTIONS / 2;
81
+ return validationResult;
82
+ }
83
+ // if percentWithDescription is greater than 0.8, then there are most fields with aliases
84
+ // it should receive full score
85
+ validationResult.scoringFactor = 1;
86
+ return validationResult;
87
+ };
88
+ exports.checkFeatureServiceFieldDescriptions = checkFeatureServiceFieldDescriptions;
89
+ //# sourceMappingURL=checkFeatureServiceFieldDescriptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFeatureServiceFieldDescriptions.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.ts"],"names":[],"mappings":";;;AACA,yFAAsF;AACtF,+DAA4D;AAC5D,yDAAyD;AACzD,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,oCAAoC,GAAG,CAChD,IAAW,EACX,aAAiC,EACnB,EAAE;IAChB,MAAM,OAAO,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEnC,MAAM,cAAc,GAAG,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC;IAE5D,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,oCAAoC;QACtD,KAAK,EAAE,OAAO,CAAC,6BAA6B,CAAC,KAAK;QAClD,KAAK,EAAE,OAAO,CAAC,6BAA6B,CAAC,KAAK;QAClD,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;KACvB,CAAC;IAEF,uGAAuG;IACvG,sCAAsC;IACtC,IAAI,CAAC,IAAA,mCAAgB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,uCACO,gBAAgB,KACnB,MAAM,EAAE,CAAC,IACX;IACN,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,6BAA6B,CAAC,gBAAgB;SAClE,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,6DAA6B,EAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAE1E,sFAAsF;IACtF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,2BAA2B,CAAC;QAC/C,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,qDAAqD;IACrD,MAAM,4BAA4B,GAAG,cAAc;SAC9C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;SACpC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,WAAW,0CAAE,KAAK,CAAA,EAAA,CAAC,CAAC,MAAM,CAAC;IAExD,MAAM,sBAAsB,GACxB,4BAA4B,GAAG,cAAc,CAAC,MAAM,CAAC;IAEzD,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,sBAAsB,KAAK,CAAC,EAAE,CAAC;QAC/B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EACH,OAAO,CAAC,6BAA6B,CAAC,qBAAqB;SAClE,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,sFAAsF;IACtF,yEAAyE;IACzE,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QAC/B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EACH,OAAO,CAAC,6BAA6B,CAAC,yBAAyB;SACtE,CAAC,CAAC;QACH,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,2BAA2B,GAAG,CAAC,CAAC;QACnD,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,yFAAyF;IACzF,+BAA+B;IAC/B,gBAAgB,CAAC,aAAa,GAAG,CAAC,CAAC;IAEnC,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AAjFW,QAAA,oCAAoC,wCAiF/C"}
@@ -0,0 +1,8 @@
1
+ export declare const scoringConfig: {
2
+ weight: number;
3
+ scoringFactors: {
4
+ DEFAULT: {
5
+ CONTAINS_FIELD_DESCRIPTIONS: number;
6
+ };
7
+ };
8
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ // import { ScoringConfig } from '../../types';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.scoringConfig = void 0;
5
+ exports.scoringConfig = {
6
+ weight: 1,
7
+ scoringFactors: {
8
+ DEFAULT: {
9
+ CONTAINS_FIELD_DESCRIPTIONS: 1,
10
+ },
11
+ },
12
+ };
13
+ //# sourceMappingURL=scoringConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldDescriptions/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,2BAA2B,EAAE,CAAC;SACjC;KACJ;CACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { FeatureLayerJSON, IItem, ValidationInfo } from '../../types';
2
+ /**
3
+ * Validates the presence and completeness of `fieldValueType` descriptions for relevant fields
4
+ * in the provided feature layers of an ArcGIS item. The validation assigns a scoring factor based
5
+ * on the proportion of relevant fields that have a `fieldValueType` defined in their field description.
6
+ *
7
+ * - If the item is not a feature layer, the rule is skipped (weight 0).
8
+ * - If there are no feature layers, a message is added and the rule is considered incomplete.
9
+ * - If there are no relevant fields to check, the rule is considered fully satisfied.
10
+ * - If none of the relevant fields have a `fieldValueType`, a message is added and the score is 0.
11
+ * - If less than 80% of relevant fields have a `fieldValueType`, a message is added and the score is halved.
12
+ * - If at least 80% of relevant fields have a `fieldValueType`, the rule is considered fully satisfied.
13
+ *
14
+ * @param item - The ArcGIS item to validate.
15
+ * @param featureLayers - The feature layers associated with the item.
16
+ * @returns ValidationInfo object containing the validation result, messages, and scoring factor.
17
+ */
18
+ export declare const checkFeatureServiceFieldValueTypes: (item: IItem, featureLayers: FeatureLayerJSON[]) => ValidationInfo;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkFeatureServiceFieldValueTypes = void 0;
4
+ const getRelevantFeatureLayerFields_1 = require("../util/getRelevantFeatureLayerFields");
5
+ const isFeatureService_1 = require("../util/isFeatureService");
6
+ const stringsConfig_1 = require("../util/stringsConfig");
7
+ const scoringConfig_1 = require("./scoringConfig");
8
+ /**
9
+ * Validates the presence and completeness of `fieldValueType` descriptions for relevant fields
10
+ * in the provided feature layers of an ArcGIS item. The validation assigns a scoring factor based
11
+ * on the proportion of relevant fields that have a `fieldValueType` defined in their field description.
12
+ *
13
+ * - If the item is not a feature layer, the rule is skipped (weight 0).
14
+ * - If there are no feature layers, a message is added and the rule is considered incomplete.
15
+ * - If there are no relevant fields to check, the rule is considered fully satisfied.
16
+ * - If none of the relevant fields have a `fieldValueType`, a message is added and the score is 0.
17
+ * - If less than 80% of relevant fields have a `fieldValueType`, a message is added and the score is halved.
18
+ * - If at least 80% of relevant fields have a `fieldValueType`, the rule is considered fully satisfied.
19
+ *
20
+ * @param item - The ArcGIS item to validate.
21
+ * @param featureLayers - The feature layers associated with the item.
22
+ * @returns ValidationInfo object containing the validation result, messages, and scoring factor.
23
+ */
24
+ const checkFeatureServiceFieldValueTypes = (item, featureLayers) => {
25
+ const strings = (0, stringsConfig_1.getStringsConfig)();
26
+ const scoringFactors = scoringConfig_1.scoringConfig.scoringFactors.DEFAULT;
27
+ const validationResult = {
28
+ validationRuleId: 'feature-service-field-value-types',
29
+ label: strings.featureLayerFieldTypes.LABEL,
30
+ title: strings.featureLayerFieldTypes.TITLE,
31
+ maxScore: 0,
32
+ score: 0,
33
+ messages: [],
34
+ weight: scoringConfig_1.scoringConfig.weight,
35
+ scoringFactor: 0,
36
+ status: 'unknown',
37
+ isBinaryCheck: false,
38
+ };
39
+ // Return the validationResult with a weight of 0 (so this rule does not contribute to the final score)
40
+ // if the item is not a feature layer.
41
+ if (!(0, isFeatureService_1.isFeatureService)(item)) {
42
+ return Object.assign(Object.assign({}, validationResult), { weight: 0 });
43
+ }
44
+ if (!Array.isArray(featureLayers) || !featureLayers.length) {
45
+ validationResult.messages.push({
46
+ message: strings.featureLayerFieldTypes.NO_FEATURE_LAYER,
47
+ });
48
+ return validationResult;
49
+ }
50
+ const relevantFields = (0, getRelevantFeatureLayerFields_1.getRelevantFeatureLayerFields)(featureLayers || []);
51
+ // should receive full score since there is no relevant field that needs to be checked
52
+ if (relevantFields.length === 0) {
53
+ validationResult.scoringFactor =
54
+ scoringFactors.CONTAINS_FIELD_VALUE_TYPES;
55
+ return validationResult;
56
+ }
57
+ // get the count of fields with descriptions provided
58
+ const countOfFieldsWithValueType = relevantFields
59
+ .filter((field) => field.description)
60
+ .filter((field) => { var _a; return (_a = field.description) === null || _a === void 0 ? void 0 : _a.fieldValueType; }).length;
61
+ const percentWithValueType = countOfFieldsWithValueType / relevantFields.length;
62
+ // if percentWithValueType is 0, then there are no fields with aliases
63
+ // it should receive a score of 0 and a message to add field aliases
64
+ if (percentWithValueType === 0) {
65
+ validationResult.messages.push({
66
+ message: strings.featureLayerFieldTypes.ADD_FIELD_TYPE,
67
+ });
68
+ return validationResult;
69
+ }
70
+ // if percentWithValueType is less than 0.8, then there are some fields with aliases
71
+ // it should receive half of score and a message to improve field aliases
72
+ if (percentWithValueType < 0.8) {
73
+ validationResult.messages.push({
74
+ message: strings.featureLayerFieldTypes.IMRPOVE_FIELD_TYPE,
75
+ });
76
+ validationResult.scoringFactor =
77
+ scoringFactors.CONTAINS_FIELD_VALUE_TYPES / 2;
78
+ return validationResult;
79
+ }
80
+ // if percentWithValueType is greater than 0.8, then there are most fields with aliases
81
+ // it should receive full score
82
+ validationResult.scoringFactor = 1;
83
+ return validationResult;
84
+ };
85
+ exports.checkFeatureServiceFieldValueTypes = checkFeatureServiceFieldValueTypes;
86
+ //# sourceMappingURL=checkFeatureServiceFieldValueTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFeatureServiceFieldValueTypes.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.ts"],"names":[],"mappings":";;;AACA,yFAAsF;AACtF,+DAA4D;AAC5D,yDAAyD;AACzD,mDAAgD;AAEhD;;;;;;;;;;;;;;;GAeG;AACI,MAAM,kCAAkC,GAAG,CAC9C,IAAW,EACX,aAAiC,EACnB,EAAE;IAChB,MAAM,OAAO,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEnC,MAAM,cAAc,GAAG,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC;IAE5D,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,mCAAmC;QACrD,KAAK,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK;QAC3C,KAAK,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK;QAC3C,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;KACvB,CAAC;IAEF,uGAAuG;IACvG,sCAAsC;IACtC,IAAI,CAAC,IAAA,mCAAgB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,uCACO,gBAAgB,KACnB,MAAM,EAAE,CAAC,IACX;IACN,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,sBAAsB,CAAC,gBAAgB;SAC3D,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,6DAA6B,EAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAE1E,sFAAsF;IACtF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,0BAA0B,CAAC;QAC9C,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,qDAAqD;IACrD,MAAM,0BAA0B,GAAG,cAAc;SAC5C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;SACpC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,WAAW,0CAAE,cAAc,CAAA,EAAA,CAAC,CAAC,MAAM,CAAC;IAEjE,MAAM,oBAAoB,GACtB,0BAA0B,GAAG,cAAc,CAAC,MAAM,CAAC;IAEvD,sEAAsE;IACtE,oEAAoE;IACpE,IAAI,oBAAoB,KAAK,CAAC,EAAE,CAAC;QAC7B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,sBAAsB,CAAC,cAAc;SACzD,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,oFAAoF;IACpF,yEAAyE;IACzE,IAAI,oBAAoB,GAAG,GAAG,EAAE,CAAC;QAC7B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,sBAAsB,CAAC,kBAAkB;SAC7D,CAAC,CAAC;QACH,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,0BAA0B,GAAG,CAAC,CAAC;QAClD,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,uFAAuF;IACvF,+BAA+B;IAC/B,gBAAgB,CAAC,aAAa,GAAG,CAAC,CAAC;IAEnC,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AA/EW,QAAA,kCAAkC,sCA+E7C"}
@@ -0,0 +1,8 @@
1
+ export declare const scoringConfig: {
2
+ weight: number;
3
+ scoringFactors: {
4
+ DEFAULT: {
5
+ CONTAINS_FIELD_VALUE_TYPES: number;
6
+ };
7
+ };
8
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ // import { ScoringConfig } from '../../types';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.scoringConfig = void 0;
5
+ exports.scoringConfig = {
6
+ weight: 1,
7
+ scoringFactors: {
8
+ DEFAULT: {
9
+ CONTAINS_FIELD_VALUE_TYPES: 1,
10
+ },
11
+ },
12
+ };
13
+ //# sourceMappingURL=scoringConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldValueTypes/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,0BAA0B,EAAE,CAAC;SAChC;KACJ;CACJ,CAAC"}
@@ -48,28 +48,21 @@ const isValidLicenseInfo = (item) => {
48
48
  const { licenseInfo } = item;
49
49
  // scoring rules locale
50
50
  const locale = (0, getScoringRules_1.getScoringRulesLocale)(item.culture);
51
- const weightFactors = locale === 'en'
52
- ? scoringConfig_1.scoringConfig.weightFactors.DEFAULT
53
- : scoringConfig_1.scoringConfig.weightFactors.INTERNATIONAL;
51
+ const scoringFactors = locale === 'en'
52
+ ? scoringConfig_1.scoringConfig.scoringFactors.DEFAULT
53
+ : scoringConfig_1.scoringConfig.scoringFactors.INTERNATIONAL;
54
54
  // scoring rules
55
55
  // const SCORING = getScoringRules(item, scoringRulesConfig);
56
56
  const stringsConfig = (0, stringsConfig_1.getStringsConfig)();
57
- const issues = {
58
- // property: 'licenseInfo',
57
+ const validationOutput = {
58
+ validationRuleId: 'item-license-info',
59
59
  label: stringsConfig.licenseInfo.LABEL,
60
60
  title: stringsConfig.licenseInfo.TITLE,
61
- // maxScore:
62
- // SCORING.EMPTY_STRING_SCORE +
63
- // SCORING.MUST_EXIST_SCORE +
64
- // SCORING.MIN_LENGTH_SCORE +
65
- // SCORING.HAS_LINK_SCORE,
66
- // score: SCORING.EMPTY_STRING_SCORE,
67
61
  maxScore: 0,
68
62
  score: 0,
69
63
  messages: [],
70
- weight: scoringConfig_1.scoringConfig.weight,
71
- weightFactor: 0,
72
- // critical: false,
64
+ weight: scoringConfig_1.scoringConfig.weight, //stringsConfig.licenseInfo.WEIGHT,
65
+ scoringFactor: 0,
73
66
  // the status will be updated afterward based on the validation result
74
67
  status: 'unknown',
75
68
  isBinaryCheck: false,
@@ -83,36 +76,36 @@ const isValidLicenseInfo = (item) => {
83
76
  if (!(0, assertString_1.assertString)(licenseInfo) ||
84
77
  (0, isEmpty_1.isEmpty)(licenseInfo) ||
85
78
  (0, isEmpty_1.isEmpty)(sanitizedStr)) {
86
- // issues.score = SCORING.EMPTY_STRING_SCORE;
87
- issues.messages.push({
79
+ // validationOutput.score = SCORING.EMPTY_STRING_SCORE;
80
+ validationOutput.messages.push({
88
81
  // code: stringsConfig.licenseInfo.EMPTY_STRING_CODE,
89
82
  message: stringsConfig.licenseInfo.EMPTY_STRING_MESSAGE,
90
83
  });
91
- return issues;
84
+ return validationOutput;
92
85
  }
93
- issues.weightFactor += weightFactors.MUST_EXIST_FACTOR; //SCORING.MUST_EXIST_SCORE;
86
+ validationOutput.scoringFactor += scoringFactors.MUST_EXIST_FACTOR; //SCORING.MUST_EXIST_SCORE;
94
87
  // The search() method searches a string for a specified value, and returns the position of the match.
95
88
  // The search value can be string or a regular expression.
96
89
  // This method returns -1 if no match is found.
97
90
  if (licenseInfo.search('href') < 0) {
98
- issues.messages.push({
91
+ validationOutput.messages.push({
99
92
  // code: stringsConfig.licenseInfo.CONTAINS_NO_LINKS_CODE,
100
93
  message: stringsConfig.licenseInfo.CONTAINS_NO_LINKS_MESSAGE,
101
94
  });
102
95
  }
103
96
  else {
104
- issues.weightFactor += weightFactors.HAS_LINK_FACTOR;
97
+ validationOutput.scoringFactor += scoringFactors.HAS_LINK_FACTOR;
105
98
  }
106
99
  if (locale === 'en' && (0, getNumberOfWords_1.getNumberOfWords)(sanitizedStr) < 2) {
107
- issues.messages.push({
100
+ validationOutput.messages.push({
108
101
  // code: stringsConfig.licenseInfo.MINIMUM_WORD_COUNT_CODE,
109
102
  message: stringsConfig.licenseInfo.MINIMUM_WORD_COUNT_MESSAGE,
110
103
  });
111
104
  }
112
105
  else {
113
- issues.weightFactor += weightFactors.MIN_LENGTH_FACTOR;
106
+ validationOutput.scoringFactor += scoringFactors.MIN_LENGTH_FACTOR;
114
107
  }
115
- return issues;
108
+ return validationOutput;
116
109
  };
117
110
  exports.isValidLicenseInfo = isValidLicenseInfo;
118
111
  //# sourceMappingURL=isValidLicenseInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isValidLicenseInfo.js","sourceRoot":"","sources":["../../../src/lib/licenseInfo/isValidLicenseInfo.ts"],"names":[],"mappings":";;;;;;AAAA,kEAAyC;AACzC,yDAAyD;AACzD,6DAGiC;AAEjC,yDAAyD;AACzD,uDAAoD;AACpD,6CAA0C;AAC1C,+DAA4D;AAC5D,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAW,EAAkB,EAAE;IAC9D,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAE7B,uBAAuB;IACvB,MAAM,MAAM,GAAG,IAAA,uCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,aAAa,GACf,MAAM,KAAK,IAAI;QACX,CAAC,CAAC,6BAAa,CAAC,aAAa,CAAC,OAAO;QACrC,CAAC,CAAC,6BAAa,CAAC,aAAa,CAAC,aAAa,CAAC;IAEpD,gBAAgB;IAChB,6DAA6D;IAE7D,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,MAAM,GAAmB;QAC3B,2BAA2B;QAC3B,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK;QACtC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK;QACtC,YAAY;QACZ,mCAAmC;QACnC,iCAAiC;QACjC,iCAAiC;QACjC,8BAA8B;QAC9B,qCAAqC;QACrC,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,YAAY,EAAE,CAAC;QACf,mBAAmB;QACnB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;KACvB,CAAC;IAEF,mBAAmB;IACnB,MAAM,YAAY,GAAG,IAAA,uBAAY,EAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,EAAE;KAClB,CAAC,CAAC;IAEH,0DAA0D;IAC1D,oDAAoD;IACpD,IACI,CAAC,IAAA,2BAAY,EAAC,WAAW,CAAC;QAC1B,IAAA,iBAAO,EAAC,WAAW,CAAC;QACpB,IAAA,iBAAO,EAAC,YAAY,CAAC,EACvB;QACE,6CAA6C;QAC7C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,qDAAqD;YACrD,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,oBAAoB;SAC1D,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;KACjB;IAED,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC,2BAA2B;IAEnF,sGAAsG;IACtG,0DAA0D;IAC1D,+CAA+C;IAC/C,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,0DAA0D;YAC1D,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,yBAAyB;SAC/D,CAAC,CAAC;KACN;SAAM;QACH,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC,eAAe,CAAC;KACxD;IAED,IAAI,MAAM,KAAK,IAAI,IAAI,IAAA,mCAAgB,EAAC,YAAY,CAAC,GAAG,CAAC,EAAE;QACvD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,2DAA2D;YAC3D,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,0BAA0B;SAChE,CAAC,CAAC;KACN;SAAM;QACH,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC,iBAAiB,CAAC;KAC1D;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAlFW,QAAA,kBAAkB,sBAkF7B"}
1
+ {"version":3,"file":"isValidLicenseInfo.js","sourceRoot":"","sources":["../../../src/lib/licenseInfo/isValidLicenseInfo.ts"],"names":[],"mappings":";;;;;;AAAA,kEAAyC;AACzC,yDAAyD;AACzD,6DAGiC;AAEjC,yDAAyD;AACzD,uDAAoD;AACpD,6CAA0C;AAC1C,+DAA4D;AAC5D,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAW,EAAkB,EAAE;IAC9D,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAE7B,uBAAuB;IACvB,MAAM,MAAM,GAAG,IAAA,uCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,cAAc,GAChB,MAAM,KAAK,IAAI;QACX,CAAC,CAAC,6BAAa,CAAC,cAAc,CAAC,OAAO;QACtC,CAAC,CAAC,6BAAa,CAAC,cAAc,CAAC,aAAa,CAAC;IAErD,gBAAgB;IAChB,6DAA6D;IAE7D,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,mBAAmB;QACrC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK;QACtC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK;QACtC,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM,EAAE,mCAAmC;QACjE,aAAa,EAAE,CAAC;QAChB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;KACvB,CAAC;IAEF,mBAAmB;IACnB,MAAM,YAAY,GAAG,IAAA,uBAAY,EAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,EAAE;KAClB,CAAC,CAAC;IAEH,0DAA0D;IAC1D,oDAAoD;IACpD,IACI,CAAC,IAAA,2BAAY,EAAC,WAAW,CAAC;QAC1B,IAAA,iBAAO,EAAC,WAAW,CAAC;QACpB,IAAA,iBAAO,EAAC,YAAY,CAAC,EACvB,CAAC;QACC,uDAAuD;QACvD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,qDAAqD;YACrD,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,oBAAoB;SAC1D,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,gBAAgB,CAAC,aAAa,IAAI,cAAc,CAAC,iBAAiB,CAAC,CAAC,2BAA2B;IAE/F,sGAAsG;IACtG,0DAA0D;IAC1D,+CAA+C;IAC/C,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,0DAA0D;YAC1D,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,yBAAyB;SAC/D,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,gBAAgB,CAAC,aAAa,IAAI,cAAc,CAAC,eAAe,CAAC;IACrE,CAAC;IAED,IAAI,MAAM,KAAK,IAAI,IAAI,IAAA,mCAAgB,EAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACxD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,2DAA2D;YAC3D,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,0BAA0B;SAChE,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,gBAAgB,CAAC,aAAa,IAAI,cAAc,CAAC,iBAAiB,CAAC;IACvE,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AA3EW,QAAA,kBAAkB,sBA2E7B"}
@@ -1,6 +1,6 @@
1
1
  export declare const scoringConfig: {
2
2
  weight: number;
3
- weightFactors: {
3
+ scoringFactors: {
4
4
  DEFAULT: {
5
5
  MUST_EXIST_FACTOR: number;
6
6
  MIN_LENGTH_FACTOR: number;
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.scoringConfig = void 0;
5
5
  exports.scoringConfig = {
6
6
  weight: 8,
7
- weightFactors: {
7
+ scoringFactors: {
8
8
  DEFAULT: {
9
9
  MUST_EXIST_FACTOR: 0.25,
10
10
  MIN_LENGTH_FACTOR: 0.5,
@@ -1 +1 @@
1
- {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/licenseInfo/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,aAAa,EAAE;QACX,OAAO,EAAE;YACL,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,GAAG;YACtB,eAAe,EAAE,IAAI;SACxB;QACD,aAAa,EAAE;YACX,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,CAAC;YACpB,eAAe,EAAE,IAAI;SACxB;KACJ;CACJ,CAAC"}
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/licenseInfo/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,GAAG;YACtB,eAAe,EAAE,IAAI;SACxB;QACD,aAAa,EAAE;YACX,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,CAAC;YACpB,eAAe,EAAE,IAAI;SACxB;KACJ;CACJ,CAAC"}
@@ -26,52 +26,51 @@ const scoringConfig_1 = require("./scoringConfig");
26
26
  */
27
27
  const isValidAccess = (item) => {
28
28
  const { access } = item;
29
- // scoring rules
30
- // const SCORING = getScoringRules(item, scoringRulesConfig);
31
29
  const stringsConfig = (0, stringsConfig_1.getStringsConfig)();
32
- const issues = {
33
- // property: 'access',
30
+ const validationOutput = {
31
+ validationRuleId: 'item-sharing-level',
34
32
  label: stringsConfig.sharing.LABEL,
35
33
  title: stringsConfig.sharing.TITLE,
36
- maxScore: 0,
37
- score: 0,
34
+ maxScore: 0, //SCORING.EMPTY_STRING_SCORE + SCORING.PUBLIC_SCORE,
35
+ score: 0, // SCORING.EMPTY_STRING_SCORE,
38
36
  messages: [],
39
37
  weight: scoringConfig_1.scoringConfig.weight,
40
- weightFactor: 0,
38
+ scoringFactor: 0,
41
39
  // critical: true,
42
40
  // the status will be updated afterward based on the validation result
43
41
  status: 'unknown',
44
42
  isBinaryCheck: true,
45
43
  };
46
44
  if ((0, isEmpty_1.isEmpty)(access)) {
47
- issues.messages.push({
45
+ validationOutput.messages.push({
48
46
  // code: stringsConfig.sharing.EMPTY_STRING_CODE,
49
47
  message: stringsConfig.sharing.EMPTY_STRING_MESSAGE,
50
48
  });
51
- return issues;
49
+ return validationOutput;
52
50
  }
53
51
  if (access === 'private') {
54
- issues.messages.push({
52
+ validationOutput.messages.push({
55
53
  // code: stringsConfig.sharing.PRIVATE_CODE,
56
54
  message: stringsConfig.sharing.PRIVATE_MESSAGE,
57
55
  });
58
56
  }
59
57
  if (access === 'org') {
60
- issues.messages.push({
58
+ validationOutput.messages.push({
61
59
  // code: stringsConfig.sharing.ORG_CODE,
62
60
  message: stringsConfig.sharing.ORG_MESSAGE,
63
61
  });
64
62
  }
65
63
  if (access === 'shared') {
66
- issues.messages.push({
64
+ validationOutput.messages.push({
67
65
  // code: stringsConfig.sharing.ORG_CODE,
68
66
  message: stringsConfig.sharing.ORG_MESSAGE,
69
67
  });
70
68
  }
71
69
  if (access === 'public') {
72
- issues.weightFactor = scoringConfig_1.scoringConfig.weightFactors.DEFAULT.PUBLIC_FACTOR;
70
+ validationOutput.scoringFactor =
71
+ scoringConfig_1.scoringConfig.scoringFactors.DEFAULT.PUBLIC_FACTOR;
73
72
  }
74
- return issues;
73
+ return validationOutput;
75
74
  };
76
75
  exports.isValidAccess = isValidAccess;
77
76
  //# sourceMappingURL=isValidAccess.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isValidAccess.js","sourceRoot":"","sources":["../../../src/lib/sharing/isValidAccess.ts"],"names":[],"mappings":";;;AAGA,yDAAyD;AACzD,6CAA0C;AAC1C,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;GAmBG;AACI,MAAM,aAAa,GAAG,CAAC,IAAW,EAAkB,EAAE;IACzD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,gBAAgB;IAChB,6DAA6D;IAE7D,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,MAAM,GAAmB;QAC3B,sBAAsB;QACtB,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,YAAY,EAAE,CAAC;QACf,kBAAkB;QAClB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,IAAI;KACtB,CAAC;IAEF,IAAI,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE;QACjB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,iDAAiD;YACjD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,oBAAoB;SACtD,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;KACjB;IAED,IAAI,MAAM,KAAK,SAAS,EAAE;QACtB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,4CAA4C;YAC5C,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,eAAe;SACjD,CAAC,CAAC;KACN;IAED,IAAI,MAAM,KAAK,KAAK,EAAE;QAClB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,wCAAwC;YACxC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW;SAC7C,CAAC,CAAC;KACN;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,wCAAwC;YACxC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW;SAC7C,CAAC,CAAC;KACN;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE;QACrB,MAAM,CAAC,YAAY,GAAG,6BAAa,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;KAC3E;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AA1DW,QAAA,aAAa,iBA0DxB"}
1
+ {"version":3,"file":"isValidAccess.js","sourceRoot":"","sources":["../../../src/lib/sharing/isValidAccess.ts"],"names":[],"mappings":";;;AAGA,yDAAyD;AACzD,6CAA0C;AAC1C,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;GAmBG;AACI,MAAM,aAAa,GAAG,CAAC,IAAW,EAAkB,EAAE;IACzD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,oBAAoB;QACtC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,QAAQ,EAAE,CAAC,EAAE,oDAAoD;QACjE,KAAK,EAAE,CAAC,EAAE,8BAA8B;QACxC,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EAAE,CAAC;QAChB,kBAAkB;QAClB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,IAAI;KACtB,CAAC;IAEF,IAAI,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE,CAAC;QAClB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,iDAAiD;YACjD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,oBAAoB;SACtD,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,4CAA4C;YAC5C,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,eAAe;SACjD,CAAC,CAAC;IACP,CAAC;IAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACnB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,wCAAwC;YACxC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW;SAC7C,CAAC,CAAC;IACP,CAAC;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,wCAAwC;YACxC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW;SAC7C,CAAC,CAAC;IACP,CAAC;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtB,gBAAgB,CAAC,aAAa;YAC1B,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;IAC3D,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AAxDW,QAAA,aAAa,iBAwDxB"}
@@ -1,6 +1,6 @@
1
1
  export declare const scoringConfig: {
2
2
  weight: number;
3
- weightFactors: {
3
+ scoringFactors: {
4
4
  DEFAULT: {
5
5
  PUBLIC_FACTOR: number;
6
6
  };
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.scoringConfig = void 0;
5
5
  exports.scoringConfig = {
6
6
  weight: 1,
7
- weightFactors: {
7
+ scoringFactors: {
8
8
  DEFAULT: {
9
9
  PUBLIC_FACTOR: 1,
10
10
  },
@@ -1 +1 @@
1
- {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/sharing/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,aAAa,EAAE;QACX,OAAO,EAAE;YACL,aAAa,EAAE,CAAC;SACnB;KACJ;CACJ,CAAC"}
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/sharing/scoringConfig.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAElC,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,aAAa,EAAE,CAAC;SACnB;KACJ;CACJ,CAAC"}