@vannizhang/living-atlas-content-validator 1.5.19-beta.9 → 1.5.20-beta.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 (119) hide show
  1. package/README.md +416 -209
  2. package/dist/configureSettings.d.ts +14 -26
  3. package/dist/configureSettings.js +26 -21
  4. package/dist/configureSettings.js.map +1 -1
  5. package/dist/index.d.ts +20 -3
  6. package/dist/index.js +39 -2
  7. package/dist/index.js.map +1 -1
  8. package/dist/lib/accessInformation/isValidAccessInformation.js +1 -0
  9. package/dist/lib/accessInformation/isValidAccessInformation.js.map +1 -1
  10. package/dist/lib/checkTitleAndSnippetSearchability/checkTitleAndSnippetSearchability.js +1 -0
  11. package/dist/lib/checkTitleAndSnippetSearchability/checkTitleAndSnippetSearchability.js.map +1 -1
  12. package/dist/lib/config.d.ts +6 -1
  13. package/dist/lib/config.js +43 -1
  14. package/dist/lib/config.js.map +1 -1
  15. package/dist/lib/deleteProtection/isDeleteProtectionEnabled.js +1 -0
  16. package/dist/lib/deleteProtection/isDeleteProtectionEnabled.js.map +1 -1
  17. package/dist/lib/deprecated/isDeprecated.js +1 -0
  18. package/dist/lib/deprecated/isDeprecated.js.map +1 -1
  19. package/dist/lib/description/isValidDescription.js +1 -0
  20. package/dist/lib/description/isValidDescription.js.map +1 -1
  21. package/dist/lib/featureServiceCDNSetting/checkFeatureServiceCDNSetting.d.ts +10 -0
  22. package/dist/lib/featureServiceCDNSetting/checkFeatureServiceCDNSetting.js +52 -0
  23. package/dist/lib/featureServiceCDNSetting/checkFeatureServiceCDNSetting.js.map +1 -0
  24. package/dist/lib/featureServiceExportDataSetting/checkFeatureServiceExportSetting.d.ts +8 -0
  25. package/dist/lib/featureServiceExportDataSetting/checkFeatureServiceExportSetting.js +54 -0
  26. package/dist/lib/featureServiceExportDataSetting/checkFeatureServiceExportSetting.js.map +1 -0
  27. package/dist/lib/featureServiceExtents/checkFeatureServiceExtents.d.ts +16 -0
  28. package/dist/lib/featureServiceExtents/checkFeatureServiceExtents.js +83 -0
  29. package/dist/lib/featureServiceExtents/checkFeatureServiceExtents.js.map +1 -0
  30. package/dist/lib/featureServiceExtents/checkFeatureServiceExtentsHelpers.d.ts +17 -0
  31. package/dist/lib/featureServiceExtents/checkFeatureServiceExtentsHelpers.js +33 -0
  32. package/dist/lib/featureServiceExtents/checkFeatureServiceExtentsHelpers.js.map +1 -0
  33. package/dist/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.js +18 -13
  34. package/dist/lib/featureServiceFieldAliases/checkFeatureServiceFieldAliases.js.map +1 -1
  35. package/dist/lib/featureServiceFieldAliases/helpers.d.ts +19 -0
  36. package/dist/lib/featureServiceFieldAliases/helpers.js +48 -0
  37. package/dist/lib/featureServiceFieldAliases/helpers.js.map +1 -0
  38. package/dist/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.js +31 -15
  39. package/dist/lib/featureServiceFieldDescriptions/checkFeatureServiceFieldDescriptions.js.map +1 -1
  40. package/dist/lib/featureServiceFieldDescriptions/helpers.d.ts +20 -0
  41. package/dist/lib/featureServiceFieldDescriptions/helpers.js +53 -0
  42. package/dist/lib/featureServiceFieldDescriptions/helpers.js.map +1 -0
  43. package/dist/lib/featureServiceFieldDescriptions/scoringConfig.js +1 -1
  44. package/dist/lib/featureServiceFieldIndexes/checkFeatureServiceFieldIndexes.d.ts +10 -0
  45. package/dist/lib/featureServiceFieldIndexes/checkFeatureServiceFieldIndexes.js +53 -0
  46. package/dist/lib/featureServiceFieldIndexes/checkFeatureServiceFieldIndexes.js.map +1 -0
  47. package/dist/lib/featureServiceFieldIndexes/featureServiceFieldIndexesHelpers.d.ts +7 -0
  48. package/dist/lib/featureServiceFieldIndexes/featureServiceFieldIndexesHelpers.js +27 -0
  49. package/dist/lib/featureServiceFieldIndexes/featureServiceFieldIndexesHelpers.js.map +1 -0
  50. package/dist/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.js +19 -15
  51. package/dist/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.js.map +1 -1
  52. package/dist/lib/featureServiceFieldValueTypes/helpers.d.ts +16 -0
  53. package/dist/lib/featureServiceFieldValueTypes/helpers.js +35 -0
  54. package/dist/lib/featureServiceFieldValueTypes/helpers.js.map +1 -0
  55. package/dist/lib/featureServiceFieldValueTypes/scoringConfig.js +1 -1
  56. package/dist/lib/itemExtent/checkItemExtent.d.ts +27 -0
  57. package/dist/lib/itemExtent/checkItemExtent.js +102 -0
  58. package/dist/lib/itemExtent/checkItemExtent.js.map +1 -0
  59. package/dist/lib/itemExtent/checkItemExtentHelpers.d.ts +38 -0
  60. package/dist/lib/itemExtent/checkItemExtentHelpers.js +132 -0
  61. package/dist/lib/itemExtent/checkItemExtentHelpers.js.map +1 -0
  62. package/dist/lib/itemExtent/scoringConfig.d.ts +9 -0
  63. package/dist/lib/itemExtent/scoringConfig.js +13 -0
  64. package/dist/lib/itemExtent/scoringConfig.js.map +1 -0
  65. package/dist/lib/licenseInfo/isValidLicenseInfo.js +1 -0
  66. package/dist/lib/licenseInfo/isValidLicenseInfo.js.map +1 -1
  67. package/dist/lib/sharing/isValidAccess.js +1 -0
  68. package/dist/lib/sharing/isValidAccess.js.map +1 -1
  69. package/dist/lib/ssl/isValidSSL.js +6 -1
  70. package/dist/lib/ssl/isValidSSL.js.map +1 -1
  71. package/dist/lib/summary/isValidSummary.js +1 -0
  72. package/dist/lib/summary/isValidSummary.js.map +1 -1
  73. package/dist/lib/tags/isValidTags.js +1 -0
  74. package/dist/lib/tags/isValidTags.js.map +1 -1
  75. package/dist/lib/thumbnail/isValidThumbnail.js +1 -0
  76. package/dist/lib/thumbnail/isValidThumbnail.js.map +1 -1
  77. package/dist/lib/title/isValidTitle.js +1 -0
  78. package/dist/lib/title/isValidTitle.js.map +1 -1
  79. package/dist/lib/userProfileDescription/isValidUserProfileDescription.js +1 -0
  80. package/dist/lib/userProfileDescription/isValidUserProfileDescription.js.map +1 -1
  81. package/dist/lib/userProfileName/isValidUserProfileName.js +1 -0
  82. package/dist/lib/userProfileName/isValidUserProfileName.js.map +1 -1
  83. package/dist/lib/userProfileThumbnail/isValidUserProfileThumbnail.js +1 -0
  84. package/dist/lib/userProfileThumbnail/isValidUserProfileThumbnail.js.map +1 -1
  85. package/dist/lib/util/isFeatureService.d.ts +6 -0
  86. package/dist/lib/util/isFeatureService.js +21 -1
  87. package/dist/lib/util/isFeatureService.js.map +1 -1
  88. package/dist/lib/util/shouldValidateByBetaRules.d.ts +0 -1
  89. package/dist/lib/util/shouldValidateByBetaRules.js +27 -26
  90. package/dist/lib/util/shouldValidateByBetaRules.js.map +1 -1
  91. package/dist/lib/util/stringsConfig.d.ts +5 -1
  92. package/dist/lib/util/stringsConfig.js +60 -22
  93. package/dist/lib/util/stringsConfig.js.map +1 -1
  94. package/dist/lib/validate/validate.d.ts +14 -2
  95. package/dist/lib/validate/validate.js +28 -1
  96. package/dist/lib/validate/validate.js.map +1 -1
  97. package/dist/locale/en.json +50 -10
  98. package/dist/package-info.json +1 -1
  99. package/dist/services/feature-service/fetchFeatureServiceAdminJSON.d.ts +14 -0
  100. package/dist/services/feature-service/fetchFeatureServiceAdminJSON.js +57 -0
  101. package/dist/services/feature-service/fetchFeatureServiceAdminJSON.js.map +1 -0
  102. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.d.ts +11 -6
  103. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.js +56 -16
  104. package/dist/services/feature-service/fetchFeatureServiceLayersAndTables.js.map +1 -1
  105. package/dist/services/feature-service/fetchFeatureServiceRootJSON.d.ts +16 -0
  106. package/dist/services/feature-service/fetchFeatureServiceRootJSON.js +84 -0
  107. package/dist/services/feature-service/fetchFeatureServiceRootJSON.js.map +1 -0
  108. package/dist/services/feature-service/getFeatureServerURL.d.ts +12 -0
  109. package/dist/services/feature-service/getFeatureServerURL.js +37 -0
  110. package/dist/services/feature-service/getFeatureServerURL.js.map +1 -0
  111. package/dist/types/index.d.ts +180 -2
  112. package/dist/types/index.js +5 -0
  113. package/dist/types/index.js.map +1 -1
  114. package/package.json +2 -2
  115. package/dist/locale/de.json +0 -204
  116. package/dist/locale/es.json +0 -204
  117. package/dist/locale/fr.json +0 -204
  118. package/dist/locale/ja.json +0 -204
  119. package/dist/locale/pt-br.json +0 -204
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getNonSystemAttributeFieldIndexes = void 0;
4
+ /**
5
+ * This function filters out system field indexes from the provided array of field indexes.
6
+ * @param fieldIndexes Field indexes array from Feature Layer JSON
7
+ * @returns Non-system field indexes
8
+ */
9
+ const getNonSystemAttributeFieldIndexes = (fieldIndexes) => {
10
+ if (!Array.isArray(fieldIndexes) || fieldIndexes.length === 0) {
11
+ return [];
12
+ }
13
+ // filter out system indexes
14
+ const nonSystemIndexes = fieldIndexes.filter((index) => {
15
+ const { indexType, fields } = index;
16
+ const fieldsUpperCase = fields.toUpperCase();
17
+ return (indexType === 'Attribute' &&
18
+ !fieldsUpperCase.includes('OBJECTID') &&
19
+ !fieldsUpperCase.includes('SHAPE') &&
20
+ !fieldsUpperCase.includes('GLOBALID') &&
21
+ !fieldsUpperCase.includes('SHAPE__AREA') &&
22
+ !fieldsUpperCase.includes('SHAPE__LENGTH'));
23
+ });
24
+ return nonSystemIndexes;
25
+ };
26
+ exports.getNonSystemAttributeFieldIndexes = getNonSystemAttributeFieldIndexes;
27
+ //# sourceMappingURL=featureServiceFieldIndexesHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"featureServiceFieldIndexesHelpers.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldIndexes/featureServiceFieldIndexesHelpers.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACI,MAAM,iCAAiC,GAAG,CAC7C,YAAsC,EACd,EAAE;IAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,CAAC;IACd,CAAC;IAED,4BAA4B;IAC5B,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACnD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QAEpC,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAE7C,OAAO,CACH,SAAS,KAAK,WAAW;YACzB,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrC,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC;YAClC,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrC,CAAC,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC;YACxC,CAAC,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,CAC7C,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AAxBW,QAAA,iCAAiC,qCAwB5C"}
@@ -4,6 +4,7 @@ exports.checkFeatureServiceFieldValueTypes = exports.FIELD_VALUE_TYPES_REQUIRED_
4
4
  const getRelevantFeatureLayerFields_1 = require("../util/getRelevantFeatureLayerFields");
5
5
  const isFeatureService_1 = require("../util/isFeatureService");
6
6
  const stringsConfig_1 = require("../util/stringsConfig");
7
+ const helpers_1 = require("./helpers");
7
8
  const scoringConfig_1 = require("./scoringConfig");
8
9
  /**
9
10
  * requires 90% of field value types to be present to receive a full score
@@ -39,6 +40,7 @@ const checkFeatureServiceFieldValueTypes = (item, featureLayers) => {
39
40
  scoringFactor: 0,
40
41
  status: 'unknown',
41
42
  isBinaryCheck: false,
43
+ isAdvisory: false,
42
44
  };
43
45
  // Return the validationResult with a weight of 0 (so this rule does not contribute to the final score)
44
46
  // if the item is not a feature layer.
@@ -58,27 +60,29 @@ const checkFeatureServiceFieldValueTypes = (item, featureLayers) => {
58
60
  });
59
61
  return validationResult;
60
62
  }
61
- // get the count of fields with descriptions provided
62
- const countOfFieldsWithValueType = relevantFields
63
- .filter((field) => field.description)
64
- .filter((field) => { var _a; return (_a = field.description) === null || _a === void 0 ? void 0 : _a.fieldValueType; }).length;
65
- const percentWithValueType = countOfFieldsWithValueType / relevantFields.length;
66
- // if percentWithValueType is 0, then there are no fields with aliases
67
- // it should receive a score of 0 and a message to add field aliases
68
- if (percentWithValueType === 0) {
69
- validationResult.messages.push({
70
- message: strings.featureLayerFieldTypes.ADD_FIELD_TYPE,
71
- });
72
- return validationResult;
73
- }
63
+ // // get the count of fields with descriptions provided
64
+ // const countOfFieldsWithValueType = relevantFields
65
+ // .filter((field) => field.description)
66
+ // .filter((field) => field.description?.fieldValueType).length;
67
+ // const percentWithValueType =
68
+ // countOfFieldsWithValueType / relevantFields.length;
69
+ const percentWithValueType = (0, helpers_1.getPercentFieldsWithValueType)(relevantFields);
70
+ // // if percentWithValueType is 0, then there are no fields with aliases
71
+ // // it should receive a score of 0 and a message to add field aliases
72
+ // if (percentWithValueType === 0) {
73
+ // validationResult.messages.push({
74
+ // message: strings.featureLayerFieldTypes.ADD_FIELD_TYPE,
75
+ // });
76
+ // return validationResult;
77
+ // }
74
78
  // if percentWithValueType is less than 0.9, then there are some fields with aliases
75
79
  // it should receive half of score and a message to improve field aliases
76
80
  if (percentWithValueType < exports.FIELD_VALUE_TYPES_REQUIRED_PERCENT) {
77
81
  validationResult.messages.push({
78
82
  message: strings.featureLayerFieldTypes.IMRPOVE_FIELD_TYPE,
79
83
  });
80
- validationResult.scoringFactor =
81
- scoringFactors.CONTAINS_FIELD_VALUE_TYPES / 2;
84
+ validationResult.scoringFactor = 0;
85
+ // scoringFactors.CONTAINS_FIELD_VALUE_TYPES / 2;
82
86
  return validationResult;
83
87
  }
84
88
  // if percentWithValueType is greater than 0.8, then there are most fields with aliases
@@ -1 +1 @@
1
- {"version":3,"file":"checkFeatureServiceFieldValueTypes.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkFeatureServiceFieldValueTypes.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldValueTypes/checkFeatureServiceFieldValueTypes.ts"],"names":[],"mappings":";;;AACA,yFAAsF;AACtF,+DAA4D;AAC5D,yDAAyD;AACzD,uCAA0D;AAC1D,mDAAgD;AAEhD;;GAEG;AACU,QAAA,kCAAkC,GAAG,GAAG,CAAC;AAEtD;;;;;;;;;;;;;;;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;QACpB,UAAU,EAAE,KAAK;KACpB,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,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,6BAA6B,CAAC,iBAAiB;SACnE,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,wDAAwD;IACxD,oDAAoD;IACpD,4CAA4C;IAC5C,oEAAoE;IAEpE,+BAA+B;IAC/B,0DAA0D;IAE1D,MAAM,oBAAoB,GAAG,IAAA,uCAA6B,EAAC,cAAc,CAAC,CAAC;IAE3E,yEAAyE;IACzE,uEAAuE;IACvE,oCAAoC;IACpC,uCAAuC;IACvC,kEAAkE;IAClE,UAAU;IACV,+BAA+B;IAC/B,IAAI;IAEJ,oFAAoF;IACpF,yEAAyE;IACzE,IAAI,oBAAoB,GAAG,0CAAkC,EAAE,CAAC;QAC5D,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,sBAAsB,CAAC,kBAAkB;SAC7D,CAAC,CAAC;QACH,gBAAgB,CAAC,aAAa,GAAG,CAAC,CAAC;QACnC,iDAAiD;QACjD,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;AAlFW,QAAA,kCAAkC,sCAkF7C"}
@@ -0,0 +1,16 @@
1
+ import { FeatureLayerFieldFormatted } from '../../types';
2
+ /**
3
+ * Checks if the provided field information object has a valid field value type.
4
+ *
5
+ * @param fieldInfo - The field information object to validate.
6
+ * @returns `true` if the field information contains a valid `fieldValueType` in its description; otherwise, `false`.
7
+ */
8
+ export declare const isValidFieldValueType: (fieldInfo: FeatureLayerFieldFormatted) => boolean;
9
+ /**
10
+ * Calculates the proportion of fields in the provided array that have a valid field value type assigned.
11
+ *
12
+ * @param fields - An array of `FeatureLayerFieldFormatted` objects to be evaluated.
13
+ * @returns The proportion (between 0 and 1) of fields that have a valid value type.
14
+ * Returns 0 if the input array is empty, not an array, or undefined.
15
+ */
16
+ export declare const getPercentFieldsWithValueType: (fields: FeatureLayerFieldFormatted[]) => number;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPercentFieldsWithValueType = exports.isValidFieldValueType = void 0;
4
+ /**
5
+ * Checks if the provided field information object has a valid field value type.
6
+ *
7
+ * @param fieldInfo - The field information object to validate.
8
+ * @returns `true` if the field information contains a valid `fieldValueType` in its description; otherwise, `false`.
9
+ */
10
+ const isValidFieldValueType = (fieldInfo) => {
11
+ var _a;
12
+ if (!fieldInfo ||
13
+ !(fieldInfo === null || fieldInfo === void 0 ? void 0 : fieldInfo.description) ||
14
+ !((_a = fieldInfo === null || fieldInfo === void 0 ? void 0 : fieldInfo.description) === null || _a === void 0 ? void 0 : _a.fieldValueType)) {
15
+ return false; // Invalid field or missing value type
16
+ }
17
+ return true; // Valid field with a value type
18
+ };
19
+ exports.isValidFieldValueType = isValidFieldValueType;
20
+ /**
21
+ * Calculates the proportion of fields in the provided array that have a valid field value type assigned.
22
+ *
23
+ * @param fields - An array of `FeatureLayerFieldFormatted` objects to be evaluated.
24
+ * @returns The proportion (between 0 and 1) of fields that have a valid value type.
25
+ * Returns 0 if the input array is empty, not an array, or undefined.
26
+ */
27
+ const getPercentFieldsWithValueType = (fields) => {
28
+ if (!fields || !Array.isArray(fields) || fields.length === 0) {
29
+ return 0;
30
+ }
31
+ const countOfFieldsWithValueType = fields.filter((field) => (0, exports.isValidFieldValueType)(field)).length;
32
+ return countOfFieldsWithValueType / fields.length;
33
+ };
34
+ exports.getPercentFieldsWithValueType = getPercentFieldsWithValueType;
35
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/lib/featureServiceFieldValueTypes/helpers.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CACjC,SAAqC,EAC9B,EAAE;;IACT,IACI,CAAC,SAAS;QACV,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,CAAA;QACvB,CAAC,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,0CAAE,cAAc,CAAA,EACzC,CAAC;QACC,OAAO,KAAK,CAAC,CAAC,sCAAsC;IACxD,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,gCAAgC;AACjD,CAAC,CAAC;AAZW,QAAA,qBAAqB,yBAYhC;AAEF;;;;;;GAMG;AACI,MAAM,6BAA6B,GAAG,CACzC,MAAoC,EAC9B,EAAE;IACR,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACvD,IAAA,6BAAqB,EAAC,KAAK,CAAC,CAC/B,CAAC,MAAM,CAAC;IAET,OAAO,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC;AACtD,CAAC,CAAC;AAZW,QAAA,6BAA6B,iCAYxC"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.scoringConfig = void 0;
5
5
  exports.scoringConfig = {
6
- weight: 8,
6
+ weight: 2,
7
7
  scoringFactors: {
8
8
  DEFAULT: {
9
9
  CONTAINS_FIELD_VALUE_TYPES: 1,
@@ -0,0 +1,27 @@
1
+ import { IItem, ValidationInfo } from '../../types';
2
+ /**
3
+ * Validation function to check if an item has a valid extent and is not set to the world extent
4
+ *
5
+ * The socring logic is as follows:
6
+ * - If the item does not have an extent or the extent is not an array of two arrays, a message is added and the it receives no score.
7
+ * - If the extent is not a valid extent object (not an array of two coordinate pairs, or coordinates are out of range), a message is added and receives no score.
8
+ * - If the extent is valid, the rule receives a scoring factor for having a valid extent.
9
+ * - If the extent is not set to the world extent, the rule receives an additional scoring factor for having an appropriate extent.
10
+ *
11
+ * @param item - item to validate
12
+ * @returns validation info object
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { validateItemExtent } from 'living-atlas-content-validator';
17
+ *
18
+ * const item = {
19
+ * extent: [[-10, -10], [10, 10]]
20
+ * };
21
+ *
22
+ * const result = validateItemExtent(item);
23
+ * console.log(result);
24
+ * ```
25
+ *
26
+ */
27
+ export declare const checkItemExtent: (item: IItem) => ValidationInfo;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkItemExtent = void 0;
4
+ const stringsConfig_1 = require("../util/stringsConfig");
5
+ const checkItemExtentHelpers_1 = require("./checkItemExtentHelpers");
6
+ const scoringConfig_1 = require("./scoringConfig");
7
+ /**
8
+ * Validation function to check if an item has a valid extent and is not set to the world extent
9
+ *
10
+ * The socring logic is as follows:
11
+ * - If the item does not have an extent or the extent is not an array of two arrays, a message is added and the it receives no score.
12
+ * - If the extent is not a valid extent object (not an array of two coordinate pairs, or coordinates are out of range), a message is added and receives no score.
13
+ * - If the extent is valid, the rule receives a scoring factor for having a valid extent.
14
+ * - If the extent is not set to the world extent, the rule receives an additional scoring factor for having an appropriate extent.
15
+ *
16
+ * @param item - item to validate
17
+ * @returns validation info object
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * import { validateItemExtent } from 'living-atlas-content-validator';
22
+ *
23
+ * const item = {
24
+ * extent: [[-10, -10], [10, 10]]
25
+ * };
26
+ *
27
+ * const result = validateItemExtent(item);
28
+ * console.log(result);
29
+ * ```
30
+ *
31
+ */
32
+ const checkItemExtent = (item) => {
33
+ const extent = item === null || item === void 0 ? void 0 : item.extent;
34
+ // Retrieve localized strings
35
+ const stringsConfig = (0, stringsConfig_1.getStringsConfig)();
36
+ const strings = stringsConfig.itemExtent;
37
+ const validationOutput = {
38
+ validationRuleId: 'item-extent',
39
+ label: strings.LABEL,
40
+ title: strings.TITLE,
41
+ maxScore: 0,
42
+ score: 0,
43
+ messages: [],
44
+ weight: scoringConfig_1.scoringConfig.weight,
45
+ scoringFactor: 0,
46
+ status: 'unknown',
47
+ isBinaryCheck: false,
48
+ isAdvisory: false,
49
+ };
50
+ if ((0, checkItemExtentHelpers_1.shouldCheckItemExtent)(item) === false) {
51
+ validationOutput.weight = 0;
52
+ return validationOutput;
53
+ }
54
+ if (!extent) {
55
+ validationOutput.messages.push({
56
+ message: strings.NO_EXTENT_MESSAGE,
57
+ });
58
+ return validationOutput;
59
+ }
60
+ // check if extent objectis is valid
61
+ if ((0, checkItemExtentHelpers_1.isValidExtentDataObject)(extent) === false) {
62
+ validationOutput.messages.push({
63
+ message: strings.INVALID_EXTENT_MESSAGE,
64
+ });
65
+ return validationOutput;
66
+ }
67
+ if ((0, checkItemExtentHelpers_1.isExtentWithinValidRange)(extent) === false) {
68
+ validationOutput.messages.push({
69
+ message: strings.EXTENT_OUT_OF_RANGE_MESSAGE,
70
+ });
71
+ return validationOutput;
72
+ }
73
+ if ((0, checkItemExtentHelpers_1.isExtentPoint)(extent) === true) {
74
+ validationOutput.messages.push({
75
+ message: strings.EXTENT_IS_POINT_MESSAGE,
76
+ });
77
+ return validationOutput;
78
+ }
79
+ if ((0, checkItemExtentHelpers_1.isExtentValidRectangle)(extent) === false) {
80
+ validationOutput.messages.push({
81
+ message: strings.EXTENT_NOT_RECTANGLE_MESSAGE,
82
+ });
83
+ return validationOutput;
84
+ }
85
+ // extent is valid so it get the first scoring factor
86
+ validationOutput.scoringFactor +=
87
+ scoringConfig_1.scoringConfig.scoringFactors.DEFAULT.HAS_VALID_EXTENT;
88
+ // check if extent is set to world
89
+ if ((0, checkItemExtentHelpers_1.isExtentSetToWorld)(item.extent)) {
90
+ validationOutput.messages.push({
91
+ message: strings.EXTENT_SET_TO_WORLD_MESSAGE,
92
+ });
93
+ }
94
+ else {
95
+ // extent is not set to world so it get the second scoring factor
96
+ validationOutput.scoringFactor +=
97
+ scoringConfig_1.scoringConfig.scoringFactors.DEFAULT.HAS_EXTENT_NOT_SET_TO_WORLD;
98
+ }
99
+ return validationOutput;
100
+ };
101
+ exports.checkItemExtent = checkItemExtent;
102
+ //# sourceMappingURL=checkItemExtent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkItemExtent.js","sourceRoot":"","sources":["../../../src/lib/itemExtent/checkItemExtent.ts"],"names":[],"mappings":";;;AACA,yDAAyD;AACzD,qEAOkC;AAClC,mDAAgD;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACI,MAAM,eAAe,GAAG,CAAC,IAAW,EAAkB,EAAE;IAC3D,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC;IAE5B,6BAA6B;IAC7B,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC;IAEzC,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,aAAa;QAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,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;QACpB,UAAU,EAAE,KAAK;KACpB,CAAC;IAEF,IAAI,IAAA,8CAAqB,EAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QACxC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5B,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,iBAAiB;SACrC,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,oCAAoC;IACpC,IAAI,IAAA,gDAAuB,EAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;QAC5C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,sBAAsB;SAC1C,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,IAAI,IAAA,iDAAwB,EAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,2BAA2B;SAC/C,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,IAAI,IAAA,sCAAa,EAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,uBAAuB;SAC3C,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,IAAI,IAAA,+CAAsB,EAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;QAC3C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,4BAA4B;SAChD,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,qDAAqD;IACrD,gBAAgB,CAAC,aAAa;QAC1B,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC;IAE1D,kCAAkC;IAClC,IAAI,IAAA,2CAAkB,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,2BAA2B;SAC/C,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,iEAAiE;QACjE,gBAAgB,CAAC,aAAa;YAC1B,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC,2BAA2B,CAAC;IACzE,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AA/EW,QAAA,eAAe,mBA+E1B"}
@@ -0,0 +1,38 @@
1
+ import { IItem } from '../../types';
2
+ /**
3
+ * Check if the extent coordinates are within valid ranges
4
+ * @param extent
5
+ * @returns boolean indicating if extent is within valid range
6
+ */
7
+ export declare const isExtentWithinValidRange: (extent: number[][]) => boolean;
8
+ /**
9
+ * Check if the extent represents a valid rectangle (min values are less than max values)
10
+ * @param extent extent to check
11
+ * @returns boolean indicating if extent is a valid rectangle
12
+ */
13
+ export declare const isExtentValidRectangle: (extent: number[][]) => boolean;
14
+ /**
15
+ * Check if the extent represents a single point (min values equal max values)
16
+ * @param extent extent to check
17
+ * @returns boolean indicating if extent is a point
18
+ */
19
+ export declare const isExtentPoint: (extent: number[][]) => boolean;
20
+ /**
21
+ * Check if the extent object is a valid extent data object
22
+ * @param extent - extent object to validate
23
+ * @returns
24
+ */
25
+ export declare const isValidExtentDataObject: (extent: number[][]) => boolean;
26
+ /**
27
+ * Check if the extent is set to the world extent
28
+ *
29
+ * @param extent - extent object to check
30
+ * @returns true if extent is set to world extent, false otherwise
31
+ */
32
+ export declare const isExtentSetToWorld: (extent: number[][]) => boolean;
33
+ /**
34
+ * Check if the item extent should be checked based on item type
35
+ * @param item - item to check
36
+ * @returns true if the item extent should be checked, false otherwise
37
+ */
38
+ export declare const shouldCheckItemExtent: (item: IItem) => boolean;
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shouldCheckItemExtent = exports.isExtentSetToWorld = exports.isValidExtentDataObject = exports.isExtentPoint = exports.isExtentValidRectangle = exports.isExtentWithinValidRange = void 0;
4
+ /**
5
+ * Threshold values to consider an extent as world extent
6
+ * These values are slightly less than the actual world extent to account for minor inaccuracies
7
+ * in the extent values that may still represent a global extent.
8
+ */
9
+ const WORLD_EXTENT_THRESHOLD = [
10
+ [-175, -85],
11
+ [175, 85],
12
+ ];
13
+ /**
14
+ * Check if the extent coordinates are within valid ranges
15
+ * @param extent
16
+ * @returns boolean indicating if extent is within valid range
17
+ */
18
+ const isExtentWithinValidRange = (extent) => {
19
+ if (!extent || extent.length !== 2) {
20
+ return false;
21
+ }
22
+ const [minPoint, maxPoint] = extent;
23
+ const [minX, minY] = minPoint;
24
+ const [maxX, maxY] = maxPoint;
25
+ return (minX >= -180 &&
26
+ minX <= 180 &&
27
+ maxX >= -180 &&
28
+ maxX <= 180 &&
29
+ minY >= -90 &&
30
+ minY <= 90 &&
31
+ maxY >= -90 &&
32
+ maxY <= 90);
33
+ };
34
+ exports.isExtentWithinValidRange = isExtentWithinValidRange;
35
+ /**
36
+ * Check if the extent represents a valid rectangle (min values are less than max values)
37
+ * @param extent extent to check
38
+ * @returns boolean indicating if extent is a valid rectangle
39
+ */
40
+ const isExtentValidRectangle = (extent) => {
41
+ if (!extent || extent.length !== 2) {
42
+ return false;
43
+ }
44
+ const [minPoint, maxPoint] = extent;
45
+ const [minX, minY] = minPoint;
46
+ const [maxX, maxY] = maxPoint;
47
+ return minX < maxX && minY < maxY;
48
+ };
49
+ exports.isExtentValidRectangle = isExtentValidRectangle;
50
+ /**
51
+ * Check if the extent represents a single point (min values equal max values)
52
+ * @param extent extent to check
53
+ * @returns boolean indicating if extent is a point
54
+ */
55
+ const isExtentPoint = (extent) => {
56
+ if (!extent || extent.length !== 2) {
57
+ return false;
58
+ }
59
+ const [minPoint, maxPoint] = extent;
60
+ const [minX, minY] = minPoint;
61
+ const [maxX, maxY] = maxPoint;
62
+ return minX === maxX && minY === maxY;
63
+ };
64
+ exports.isExtentPoint = isExtentPoint;
65
+ /**
66
+ * Check if the extent object is a valid extent data object
67
+ * @param extent - extent object to validate
68
+ * @returns
69
+ */
70
+ const isValidExtentDataObject = (extent) => {
71
+ const isValidExtentObject = extent &&
72
+ Array.isArray(extent) &&
73
+ extent.length === 2 &&
74
+ Array.isArray(extent[0]) &&
75
+ Array.isArray(extent[1]) &&
76
+ extent[0].length === 2 &&
77
+ extent[1].length === 2 &&
78
+ typeof extent[0][0] === 'number' &&
79
+ typeof extent[0][1] === 'number' &&
80
+ typeof extent[1][0] === 'number' &&
81
+ typeof extent[1][1] === 'number'
82
+ ? true
83
+ : false;
84
+ return isValidExtentObject;
85
+ };
86
+ exports.isValidExtentDataObject = isValidExtentDataObject;
87
+ /**
88
+ * Check if the extent is set to the world extent
89
+ *
90
+ * @param extent - extent object to check
91
+ * @returns true if extent is set to world extent, false otherwise
92
+ */
93
+ const isExtentSetToWorld = (extent) => {
94
+ if (!(0, exports.isValidExtentDataObject)(extent) ||
95
+ (0, exports.isExtentPoint)(extent) === true ||
96
+ (0, exports.isExtentValidRectangle)(extent) === false ||
97
+ (0, exports.isExtentWithinValidRange)(extent) === false) {
98
+ return false;
99
+ }
100
+ const [minPoint, maxPoint] = extent;
101
+ const [minX, minY] = minPoint;
102
+ const [maxX, maxY] = maxPoint;
103
+ const [worldMinPoint, worldMaxPoint] = WORLD_EXTENT_THRESHOLD;
104
+ const [worldMinX, worldMinY] = worldMinPoint;
105
+ const [worldMaxX, worldMaxY] = worldMaxPoint;
106
+ return (minX < worldMinX &&
107
+ minY < worldMinY &&
108
+ maxX > worldMaxX &&
109
+ maxY > worldMaxY);
110
+ };
111
+ exports.isExtentSetToWorld = isExtentSetToWorld;
112
+ /**
113
+ * Check if the item extent should be checked based on item type
114
+ * @param item - item to check
115
+ * @returns true if the item extent should be checked, false otherwise
116
+ */
117
+ const shouldCheckItemExtent = (item) => {
118
+ const type = item === null || item === void 0 ? void 0 : item.type;
119
+ if (type === 'Desktop Style' ||
120
+ type === 'Style' ||
121
+ type === 'Deep Learning Package' ||
122
+ type === 'Raster function template' ||
123
+ type === 'StoryMap' ||
124
+ type === 'Web Experience' ||
125
+ type === 'Web Experience Template' ||
126
+ type === 'Dashboard') {
127
+ return false;
128
+ }
129
+ return true;
130
+ };
131
+ exports.shouldCheckItemExtent = shouldCheckItemExtent;
132
+ //# sourceMappingURL=checkItemExtentHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkItemExtentHelpers.js","sourceRoot":"","sources":["../../../src/lib/itemExtent/checkItemExtentHelpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const scoringConfig: {
2
+ weight: number;
3
+ scoringFactors: {
4
+ DEFAULT: {
5
+ HAS_VALID_EXTENT: number;
6
+ HAS_EXTENT_NOT_SET_TO_WORLD: number;
7
+ };
8
+ };
9
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scoringConfig = void 0;
4
+ exports.scoringConfig = {
5
+ weight: 2,
6
+ scoringFactors: {
7
+ DEFAULT: {
8
+ HAS_VALID_EXTENT: 0.5,
9
+ HAS_EXTENT_NOT_SET_TO_WORLD: 0.5,
10
+ },
11
+ },
12
+ };
13
+ //# sourceMappingURL=scoringConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringConfig.js","sourceRoot":"","sources":["../../../src/lib/itemExtent/scoringConfig.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IACzB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE;QACZ,OAAO,EAAE;YACL,gBAAgB,EAAE,GAAG;YACrB,2BAA2B,EAAE,GAAG;SACnC;KACJ;CACJ,CAAC"}
@@ -66,6 +66,7 @@ const isValidLicenseInfo = (item) => {
66
66
  // the status will be updated afterward based on the validation result
67
67
  status: 'unknown',
68
68
  isBinaryCheck: false,
69
+ isAdvisory: false,
69
70
  };
70
71
  // remove html tags
71
72
  const sanitizedStr = (0, sanitize_html_1.default)(licenseInfo, {
@@ -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,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
+ {"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;QACpB,UAAU,EAAE,KAAK;KACpB,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;AA5EW,QAAA,kBAAkB,sBA4E7B"}
@@ -40,6 +40,7 @@ const isValidAccess = (item) => {
40
40
  // the status will be updated afterward based on the validation result
41
41
  status: 'unknown',
42
42
  isBinaryCheck: true,
43
+ isAdvisory: false,
43
44
  };
44
45
  if ((0, isEmpty_1.isEmpty)(access)) {
45
46
  validationOutput.messages.push({
@@ -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,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
+ {"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;QACnB,UAAU,EAAE,KAAK;KACpB,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;AAzDW,QAAA,aAAa,iBAyDxB"}
@@ -33,7 +33,8 @@ const isValidSSL = (item) => {
33
33
  type === 'Scene Service' ||
34
34
  type === 'Style' ||
35
35
  type === 'Desktop Style' ||
36
- type === 'Web Scene') {
36
+ type === 'Web Scene' ||
37
+ type === 'Geoprocessing Sample') {
37
38
  return {
38
39
  validationRuleId: 'item-ssl',
39
40
  label: stringsConfig.ssl.LABEL,
@@ -47,8 +48,10 @@ const isValidSSL = (item) => {
47
48
  // the status will be updated afterward based on the validation result
48
49
  status: 'unknown',
49
50
  isBinaryCheck: false,
51
+ isAdvisory: false,
50
52
  };
51
53
  }
54
+ // only check SSL for items that have a URL
52
55
  let isSSL = url ? (0, isSecureProtocol_1.isSecureProtocol)(url) || (0, isArcGISDomain_1.isArcGISDomain)(url) : true;
53
56
  if (!isSSL) {
54
57
  isSSL = (0, isHosted_1.isHosted)(item);
@@ -73,6 +76,7 @@ const isValidSSL = (item) => {
73
76
  // the status will be updated afterward based on the validation result
74
77
  status: 'unknown',
75
78
  isBinaryCheck: true,
79
+ isAdvisory: false,
76
80
  };
77
81
  }
78
82
  return {
@@ -88,6 +92,7 @@ const isValidSSL = (item) => {
88
92
  // the status will be updated afterward based on the validation result
89
93
  status: 'unknown',
90
94
  isBinaryCheck: true,
95
+ isAdvisory: false,
91
96
  };
92
97
  };
93
98
  exports.isValidSSL = isValidSSL;
@@ -1 +1 @@
1
- {"version":3,"file":"isValidSSL.js","sourceRoot":"","sources":["../../../src/lib/ssl/isValidSSL.ts"],"names":[],"mappings":";;;AAGA,yDAAyD;AACzD,iDAAiD;AACjD,+CAA4C;AAC5C,+DAA4D;AAC5D,iEAAiE;AACjE,2DAAwD;AACxD,4DAA4D;AAC5D,mDAAgD;AAGhD;;;;;;;;;;;GAWG;AACI,MAAM,UAAU,GAAG,CAAC,IAAW,EAAkB,EAAE;IACtD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAErB,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAoC,CAAC;IAEvD,2EAA2E;IAC3E,IACI,IAAI,KAAK,sBAAsB;QAC/B,IAAI,KAAK,uBAAuB;QAChC,IAAI,KAAK,0BAA0B;QACnC,IAAI,KAAK,cAAc;QACvB,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,WAAW,EACtB,CAAC;QACC,OAAO;YACH,gBAAgB,EAAE,UAAU;YAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;YACzE,KAAK,EAAE,CAAC,EAAE,gCAAgC;YAC1C,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,CAAC;YACT,aAAa,EAAE,CAAC;YAChB,kBAAkB;YAClB,sEAAsE;YACtE,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,KAAK;SACvB,CAAC;IACN,CAAC;IAED,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,IAAA,mCAAgB,EAAC,GAAG,CAAC,IAAI,IAAA,+BAAc,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEtE,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,qBAAqB;IAErB,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO;YACH,gBAAgB,EAAE,UAAU;YAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;YACzE,KAAK,EAAE,CAAC,EAAE,gCAAgC;YAC1C,QAAQ,EAAE;gBACN;oBACI,gDAAgD;oBAChD,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,uBAAuB;iBACrD;aACJ;YACD,MAAM,EAAE,6BAAa,CAAC,MAAM;YAC5B,aAAa,EAAE,CAAC;YAChB,kBAAkB;YAClB,sEAAsE;YACtE,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,IAAI;SACtB,CAAC;IACN,CAAC;IAED,OAAO;QACH,gBAAgB,EAAE,UAAU;QAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;QAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;QAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;QACzE,KAAK,EAAE,CAAC,EAAE,+BAA+B;QACzC,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EACT,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC,qBAAqB;QAC9D,kBAAkB;QAClB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,IAAI;KACtB,CAAC;AACN,CAAC,CAAC;AA/EW,QAAA,UAAU,cA+ErB"}
1
+ {"version":3,"file":"isValidSSL.js","sourceRoot":"","sources":["../../../src/lib/ssl/isValidSSL.ts"],"names":[],"mappings":";;;AAGA,yDAAyD;AACzD,iDAAiD;AACjD,+CAA4C;AAC5C,+DAA4D;AAC5D,iEAAiE;AACjE,2DAAwD;AACxD,4DAA4D;AAC5D,mDAAgD;AAGhD;;;;;;;;;;;GAWG;AACI,MAAM,UAAU,GAAG,CAAC,IAAW,EAAkB,EAAE;IACtD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAErB,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAoC,CAAC;IAEvD,2EAA2E;IAC3E,IACI,IAAI,KAAK,sBAAsB;QAC/B,IAAI,KAAK,uBAAuB;QAChC,IAAI,KAAK,0BAA0B;QACnC,IAAI,KAAK,cAAc;QACvB,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,WAAW;QACpB,IAAI,KAAK,sBAAsB,EACjC,CAAC;QACC,OAAO;YACH,gBAAgB,EAAE,UAAU;YAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;YACzE,KAAK,EAAE,CAAC,EAAE,gCAAgC;YAC1C,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,CAAC;YACT,aAAa,EAAE,CAAC;YAChB,kBAAkB;YAClB,sEAAsE;YACtE,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,KAAK;SACpB,CAAC;IACN,CAAC;IAED,2CAA2C;IAC3C,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,IAAA,mCAAgB,EAAC,GAAG,CAAC,IAAI,IAAA,+BAAc,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEtE,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,qBAAqB;IAErB,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO;YACH,gBAAgB,EAAE,UAAU;YAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;YAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;YACzE,KAAK,EAAE,CAAC,EAAE,gCAAgC;YAC1C,QAAQ,EAAE;gBACN;oBACI,gDAAgD;oBAChD,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,uBAAuB;iBACrD;aACJ;YACD,MAAM,EAAE,6BAAa,CAAC,MAAM;YAC5B,aAAa,EAAE,CAAC;YAChB,kBAAkB;YAClB,sEAAsE;YACtE,MAAM,EAAE,SAAS;YACjB,aAAa,EAAE,IAAI;YACnB,UAAU,EAAE,KAAK;SACpB,CAAC;IACN,CAAC;IAED,OAAO;QACH,gBAAgB,EAAE,UAAU;QAC5B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;QAC9B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK;QAC9B,QAAQ,EAAE,CAAC,EAAE,4DAA4D;QACzE,KAAK,EAAE,CAAC,EAAE,+BAA+B;QACzC,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EACT,6BAAa,CAAC,cAAc,CAAC,OAAO,CAAC,qBAAqB;QAC9D,kBAAkB;QAClB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,KAAK;KACpB,CAAC;AACN,CAAC,CAAC;AApFW,QAAA,UAAU,cAoFrB"}
@@ -56,6 +56,7 @@ const isValidSummary = (item, prohibitedList = config_1.PROHIBITED_LIST) => {
56
56
  // the status will be updated afterward based on the validation result
57
57
  status: 'unknown',
58
58
  isBinaryCheck: false,
59
+ isAdvisory: false,
59
60
  };
60
61
  if ((0, assertString_1.assertString)(item.snippet) === false || (0, isEmpty_1.isEmpty)(snippet)) {
61
62
  validationOutput.label = stringsConfig.summary.EMPTY_STRING_MESSAGE;
@@ -1 +1 @@
1
- {"version":3,"file":"isValidSummary.js","sourceRoot":"","sources":["../../../src/lib/summary/isValidSummary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"isValidSummary.js","sourceRoot":"","sources":["../../../src/lib/summary/isValidSummary.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AACzD,6DAGiC;AAEjC,yDAAyD;AACzD,sCAA4C;AAC5C,uDAAoD;AACpD,6CAA6C;AAC7C,6CAA0C;AAC1C,+CAA4C;AAC5C,+DAA4D;AAC5D,6CAA0C;AAC1C,mDAAgD;AAEhD;;;;;;;;;;;;;;GAcG;AACI,MAAM,cAAc,GAAG,CAC1B,IAAW,EACX,cAAc,GAAG,wBAAe,EAClB,EAAE;IAChB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAEzB,uBAAuB;IACvB,MAAM,MAAM,GAAG,IAAA,uCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,mBAAmB;IACnB,6DAA6D;IAE7D,MAAM,cAAc,GAChB,MAAM,KAAK,IAAI;QACX,CAAC,CAAC,6BAAa,CAAC,cAAc,CAAC,OAAO;QACtC,CAAC,CAAC,6BAAa,CAAC,cAAc,CAAC,aAAa,CAAC;IAErD,MAAM,aAAa,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAEzC,SAAS;IACT,MAAM,gBAAgB,GAAmB;QACrC,gBAAgB,EAAE,cAAc;QAChC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK;QAClC,QAAQ,EAAE,CAAC;QACX,+BAA+B;QAC/B,6BAA6B;QAC7B,sCAAsC;QACtC,sCAAsC;QACtC,4BAA4B;QAC5B,KAAK,EAAE,CAAC,EAAE,6BAA6B;QACvC,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,6BAAa,CAAC,MAAM;QAC5B,aAAa,EAAE,CAAC;QAChB,mBAAmB;QACnB,sEAAsE;QACtE,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,KAAK;KACpB,CAAC;IAEF,IAAI,IAAA,2BAAY,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,IAAA,iBAAO,EAAC,OAAO,CAAC,EAAE,CAAC;QAC3D,gBAAgB,CAAC,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACpE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,iDAAiD;YACjD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,oBAAoB;SACtD,CAAC,CAAC;QACH,oCAAoC;QAEpC,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,oFAAoF;IACpF,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC7B,2BAA2B;QAC3B,iCAAiC;QACjC,0CAA0C;QAC1C,0CAA0C;QAC1C,gCAAgC;QAEhC,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,iBAAiB;gBAChC,cAAc,CAAC,iBAAiB;gBAChC,cAAc,CAAC,0BAA0B;gBACzC,cAAc,CAAC,0BAA0B,CAAC;QAE9C,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,sDAAsD;IACtD,gBAAgB,CAAC,aAAa,IAAI,cAAc,CAAC,iBAAiB,CAAC;IAEnE,+EAA+E;IAC/E,IACI,IAAA,mBAAQ,EAAC,OAAO,EAAE,GAAG,CAAC;QACtB,IAAA,mBAAQ,EAAC,OAAO,EAAE,GAAG,CAAC;QACtB,IAAA,mBAAQ,EAAC,OAAO,EAAE,GAAG,CAAC,EACxB,CAAC;QACC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,qDAAqD;YACrD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,wBAAwB;SAC1D,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,+DAA+D;QAC/D,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,0BAA0B,CAAC;IAClD,CAAC;IAED,uCAAuC;IACvC,IAAI,IAAA,mCAAgB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QACjC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,uDAAuD;YACvD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,0BAA0B;SAC5D,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,sDAAsD;QACtD,gBAAgB,CAAC,aAAa,IAAI,cAAc,CAAC,iBAAiB,CAAC;IACvE,CAAC;IAED,0DAA0D;IAC1D,IAAI,wBAAwB,GAAG,KAAK,CAAC;IAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,IAAA,iBAAO,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,wBAAwB,GAAG,IAAI,CAAC;YAChC,MAAM;QACV,CAAC;IACL,CAAC;IAED,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC5B,+DAA+D;QAC/D,gBAAgB,CAAC,aAAa;YAC1B,cAAc,CAAC,0BAA0B,CAAC;IAClD,CAAC;SAAM,CAAC;QACJ,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,qDAAqD;YACrD,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,wBAAwB;SAC1D,CAAC,CAAC;IACP,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAC;AAzHW,QAAA,cAAc,kBAyHzB"}