npm package diff
Package: @forge/cli-shared
Versions: 6.6.2-next.5 - 6.6.2-next.6
File: package/out/config/config-file.js
Index: package/out/config/config-file.js
===================================================================
--- package/out/config/config-file.js
+++ package/out/config/config-file.js
@@ -1,7 +1,7 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
-exports.ConfigFile = exports.findUIKit1Modules = exports.ResourceDefinitionMissingError = exports.InvalidManifestError = void 0;
+exports.RawConfigFile = exports.ConfigFile = exports.findUIKit1Modules = exports.InvalidConfigAppId = exports.ResourceDefinitionMissingError = exports.InvalidManifestError = void 0;
const tslib_1 = require("tslib");
const yaml_1 = require("yaml");
const ui_1 = require("../ui");
const _1 = require("./");
@@ -10,8 +10,9 @@
const manifest_1 = require("@forge/manifest");
const url_1 = require("url");
const shared_1 = require("../shared");
const runtimes_1 = require("../runtimes");
+const ari_1 = require("@forge/util/packages/ari");
class InvalidManifestError extends shared_1.ValidationError {
constructor() {
super(ui_1.Text.artifact.error.invalidYaml(_1.manifestFileName));
}
@@ -22,8 +23,14 @@
super(ui_1.Text.error.resourceDefinitionMissing(resources));
}
}
exports.ResourceDefinitionMissingError = ResourceDefinitionMissingError;
+class InvalidConfigAppId extends shared_1.UserError {
+ constructor(appId) {
+ super(ui_1.Text.config.appId.invalid(appId));
+ }
+}
+exports.InvalidConfigAppId = InvalidConfigAppId;
const isUIKit1 = (module) => {
return (typeof module === 'object' &&
module !== null &&
module.hasOwnProperty('function') &&
@@ -99,8 +106,17 @@
this.fileReader = fileReader;
this.fileWriter = fileWriter;
this.manifestParser = new manifest_1.ManifestParserBuilder().withInterpolators().build();
}
+ async readAppId() {
+ const manifestFileContents = await this.readConfig();
+ try {
+ return ari_1.EcosystemAppAri.parse(manifestFileContents.app?.id);
+ }
+ catch {
+ throw new InvalidConfigAppId(manifestFileContents.app?.id);
+ }
+ }
async getAppHandlers() {
const config = await this.readConfig();
const functions = config.modules?.function ?? [];
const handlers = Array.from(new Set(functions.map((f) => f.handler)));
@@ -285,4 +301,16 @@
return linkedModule.render === 'native' ? 'nativeUI' : 'customUI';
}
}
exports.ConfigFile = ConfigFile;
+class RawConfigFile extends ConfigFile {
+ rawFileReader;
+ constructor(fileReader, fileWriter) {
+ super(fileReader, fileWriter);
+ this.rawFileReader = fileReader;
+ }
+ async readConfig() {
+ const manifest = this.rawFileReader.readFile(_1.manifestFileName);
+ return (0, yaml_1.parse)(manifest);
+ }
+}
+exports.RawConfigFile = RawConfigFile;