npm package diff

Package: @forge/manifest

Versions: 7.7.2-next.1 - 7.8.0-next.2

File: package/out/validators/modules-validators/jira/validate-timetrackingprovider-module.js

Index: package/out/validators/modules-validators/jira/validate-timetrackingprovider-module.js
===================================================================
--- package/out/validators/modules-validators/jira/validate-timetrackingprovider-module.js
+++ package/out/validators/modules-validators/jira/validate-timetrackingprovider-module.js
@@ -0,0 +1,37 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.validateJiraTimeTrackingModule = void 0;
+const text_1 = require("../../../text");
+const utils_1 = require("../../../utils");
+const validateModuleLink = ({ key, modulesOfValidType, referencedModuleKey, yamlContentByLine, validReferencedModuleType }) => {
+    if (modulesOfValidType.find((m) => referencedModuleKey === m.key)) {
+        return [];
+    }
+    return [
+        {
+            message: `Module with key ${referencedModuleKey} does not exist or is not of the allowed type ${validReferencedModuleType}`,
+            reference: text_1.References.Modules,
+            level: 'error',
+            ...(0, utils_1.findPosition)(key, yamlContentByLine)
+        }
+    ];
+};
+const validateJiraTimeTrackingModule = (modules, yamlContentByLine) => {
+    const validationErrors = [];
+    modules['jira:timeTrackingProvider']?.forEach((module) => {
+        const adminPage = module?.adminPage;
+        if (adminPage) {
+            const expectedType = 'jira:adminPage';
+            const modulesOfValidType = modules[expectedType]?.map((mod) => ({ key: mod.key })) || [];
+            validationErrors.push(...validateModuleLink({
+                key: module.key,
+                modulesOfValidType,
+                referencedModuleKey: adminPage,
+                validReferencedModuleType: expectedType,
+                yamlContentByLine
+            }));
+        }
+    });
+    return validationErrors;
+};
+exports.validateJiraTimeTrackingModule = validateJiraTimeTrackingModule;