@toolsplus/nx-forge 6.0.5 → 6.1.0-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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolsplus/nx-forge",
3
- "version": "6.0.5",
3
+ "version": "6.1.0-beta.1",
4
4
  "description": "Atlassian Forge plugin for Nx",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
@@ -4,22 +4,11 @@ exports.copyForgeAppAssets = copyForgeAppAssets;
4
4
  const fs_1 = require("fs");
5
5
  const path_1 = require("path");
6
6
  const devkit_1 = require("@nx/devkit");
7
- /**
8
- * Check if a directory exists
9
- * @param path Path to directory
10
- */
11
- function directoryExists(path) {
12
- try {
13
- return (0, fs_1.statSync)(path).isDirectory();
14
- }
15
- catch (_a) {
16
- return false;
17
- }
18
- }
7
+ const util_fs_1 = require("../../../utils/util-fs");
19
8
  function copyForgeAppAssets(options) {
20
9
  devkit_1.logger.info('Copying Forge app assets...');
21
10
  const absoluteOutputPath = (0, path_1.resolve)(options.root, options.outputPath);
22
- if (!directoryExists(absoluteOutputPath)) {
11
+ if (!(0, util_fs_1.directoryExists)(absoluteOutputPath)) {
23
12
  (0, fs_1.mkdirSync)(absoluteOutputPath, { recursive: true });
24
13
  }
25
14
  // Copies the Forge app manifest file from the project root directory into the
@@ -1 +1 @@
1
- {"version":3,"file":"copy-forge-app-assets.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/build/lib/copy-forge-app-assets.ts"],"names":[],"mappings":";;AAmBA,gDAiBC;AApCD,2BAAiE;AACjE,+BAAqC;AACrC,uCAAoC;AAGpC;;;GAGG;AACH,SAAS,eAAe,CAAC,IAAc;IACrC,IAAI,CAAC;QACH,OAAO,IAAA,aAAQ,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAID,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,eAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAE3C,MAAM,kBAAkB,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAErE,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACzC,IAAA,cAAS,EAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,8EAA8E;IAC9E,0BAA0B;IAC1B,IAAA,iBAAY,EACV,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,EACvD,IAAA,WAAI,EAAC,kBAAkB,EAAE,cAAc,CAAC,CACzC,CAAC;IAEF,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"copy-forge-app-assets.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/build/lib/copy-forge-app-assets.ts"],"names":[],"mappings":";;AAQA,gDAiBC;AAzBD,2BAA6C;AAC7C,+BAAqC;AACrC,uCAAoC;AAEpC,oDAAyD;AAIzD,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,eAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAE3C,MAAM,kBAAkB,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAErE,IAAI,CAAC,IAAA,yBAAe,EAAC,kBAAkB,CAAC,EAAE,CAAC;QACzC,IAAA,cAAS,EAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,8EAA8E;IAC9E,0BAA0B;IAC1B,IAAA,iBAAY,EACV,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,EACvD,IAAA,WAAI,EAAC,kBAAkB,EAAE,cAAc,CAAC,CACzC,CAAC;IAEF,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC"}
@@ -6,6 +6,7 @@ const fs_1 = require("fs");
6
6
  const devkit_1 = require("@nx/devkit");
7
7
  const manifest_yml_1 = require("../../../utils/forge/manifest-yml");
8
8
  const util_manifest_1 = require("../../../shared/manifest/util-manifest");
9
+ const util_fs_1 = require("../../../utils/util-fs");
9
10
  /**
10
11
  * Verifies that UI resource projects are correctly linked to the Nx Forge app
11
12
  * and copies build artifacts into the app's output directory. In particular,
@@ -24,9 +25,14 @@ async function processResourceDependencies(options, context) {
24
25
  });
25
26
  const resources = (_a = manifestSchema.resources) !== null && _a !== void 0 ? _a : [];
26
27
  const uiResources = resources.filter((0, util_manifest_1.isResourceType)(manifestSchema, ['ui-kit', 'custom-ui']));
27
- devkit_1.logger.info(`Detected the following UI resources in the manifest.yml:\n${uiResources
28
- .map((r) => ` - ${r.key}`)
29
- .join('\n')}`);
28
+ if (uiResources.length > 0) {
29
+ devkit_1.logger.info(`Detected the following UI resources in the manifest.yml:\n${uiResources
30
+ .map((r) => ` - ${r.key}`)
31
+ .join('\n')}`);
32
+ }
33
+ else {
34
+ devkit_1.logger.info(`Plugin did not detected any UI resources in the manifest.yml`);
35
+ }
30
36
  uiResources.forEach((r) => verifyAndCopyResourceDependency(r, context, options));
31
37
  return uiResources;
32
38
  }
@@ -76,7 +82,13 @@ const verifyAndCopyResourceDependency = (resource, context, options) => {
76
82
  throw new Error(`Project ${resourceProjectName} has no build artifacts in output directory '${resourceBuildTargetOutputPath}'. Make sure the project produces compatible build artifacts.`);
77
83
  }
78
84
  devkit_1.logger.info(`Copying ${resource.key} (${resourceProjectName}) resource build artifacts...`);
79
- (0, fs_extra_1.copySync)(absoluteResourceBuildTargetOutputPath, (0, devkit_1.joinPathFragments)(options.root, options.outputPath, options.resourcePath, resourceProjectName), { recursive: true });
85
+ const absoluteResourceOutputPath = (0, devkit_1.joinPathFragments)(options.root, options.outputPath, options.resourcePath, resourceProjectName);
86
+ if (!(0, util_fs_1.directoryExists)(absoluteResourceOutputPath)) {
87
+ (0, fs_1.rmSync)(absoluteResourceOutputPath, { recursive: true });
88
+ }
89
+ (0, fs_extra_1.copySync)(absoluteResourceBuildTargetOutputPath, absoluteResourceOutputPath, {
90
+ recursive: true,
91
+ });
80
92
  devkit_1.logger.info(`Done copying ${resource.key} (${resourceProjectName}) resource build artifacts.`);
81
93
  };
82
94
  //# sourceMappingURL=process-resource-dependencies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-resource-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/build/lib/process-resource-dependencies.ts"],"names":[],"mappings":";;AAgCA,kEA4BC;AA5DD,uCAAoC;AACpC,2BAA6C;AAC7C,uCAMoB;AAIpB,oEAAoE;AACpE,0EAAwE;AASxE;;;;;;;;;GASG;AACI,KAAK,UAAU,2BAA2B,CAC/C,OAAgB,EAChB,OAAwB;;IAExB,MAAM,YAAY,GAAG,IAAA,0BAAiB,EACpC,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,EACjE,cAAc,CACf,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,IAAA,8BAAe,EAAC,YAAY,EAAE;QACzD,WAAW,EAAE,KAAK;KACnB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAA,cAAc,CAAC,SAAS,mCAAI,EAAE,CAAC;IACjD,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAClC,IAAA,8BAAc,EAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CACxD,CAAC;IAEF,eAAM,CAAC,IAAI,CACT,6DAA6D,WAAW;SACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;SAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;IAEF,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACxB,+BAA+B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CACrD,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,qBAAqB,GAAG,CAC5B,OAAgB,EAChB,wBAAiD,EACjD,iBAA0B,EAC1B,EAAE;;IACF,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC;IAC/D,MAAM,uBAAuB,GAC3B,OAAO,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;IACrD,IACE,uBAAuB;QACvB,OAAO,uBAAuB,KAAK,QAAQ;QAC3C,uBAAuB,KAAK,EAAE,EAC9B,CAAC;QACD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,MAAM,gCAAgC,GACpC,MAAA,MAAA,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,0CAAE,OAAO,0CAAE,UAAU,CAAC;IACtE,IAAI,gCAAgC,EAAE,CAAC;QACrC,OAAO,gCAAgC,CAAC;IAC1C,CAAC;IAED,IAAI,qBAA6B,CAAC;IAClC,IAAI,sBAAgC,CAAC;IAErC,IAAI,CAAC;QACH,CAAC,qBAAqB,EAAE,GAAG,sBAAsB,CAAC;YAChD,IAAA,4CAAmC,EACjC;gBACE,OAAO,EAAE,mBAAmB;gBAC5B,MAAM,EAAE,OAAO;gBACf,aAAa,EAAE,iBAAiB;aACjC,EACD,EAAE,EACF,wBAAwB,CACzB,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,uDAAuD,mBAAmB,mNAAmN,mBAAmB,2CAA2C,CAC5V,CAAC;IACJ,CAAC;IAED,IAAI,qBAAqB,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,MAAM,IAAI,KAAK,CACb,qDAAqD,mBAAmB,gKAAgK,mBAAmB,2CAA2C,CACvS,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,+BAA+B,GAAG,CACtC,QAA+B,EAC/B,OAAwB,EACxB,OAAgB,EACV,EAAE;IACR,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC1C,MAAM,wBAAwB,GAC5B,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAClD,MAAM,4BAA4B,GAAG,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAE,IAAI,CAAC;IAEpE,IAAI,CAAC,wBAAwB,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CACb,qDAAqD,mBAAmB,0EAA0E,CACnJ,CAAC;IACJ,CAAC;IAED,MAAM,6BAA6B,GAAG,qBAAqB,CACzD,OAAO,EACP,wBAAwB,EACxB,OAAO,CAAC,iBAAiB,CAC1B,CAAC;IACF,MAAM,qCAAqC,GAAG,IAAA,0BAAiB,EAC7D,OAAO,CAAC,IAAI,EACZ,6BAA6B,CAC9B,CAAC;IAEF,IACE,CAAC,6BAA6B;QAC9B,CAAC,IAAA,eAAU,EAAC,qCAAqC,CAAC;QAClD,IAAA,gBAAW,EAAC,qCAAqC,CAAC,CAAC,MAAM,KAAK,CAAC,EAC/D,CAAC;QACD,MAAM,IAAI,KAAK,CACb,WAAW,mBAAmB,gDAAgD,6BAA6B,+DAA+D,CAC3K,CAAC;IACJ,CAAC;IAED,eAAM,CAAC,IAAI,CACT,WAAW,QAAQ,CAAC,GAAG,KAAK,mBAAmB,+BAA+B,CAC/E,CAAC;IACF,IAAA,mBAAQ,EACN,qCAAqC,EACrC,IAAA,0BAAiB,EACf,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,YAAY,EACpB,mBAAmB,CACpB,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;IACF,eAAM,CAAC,IAAI,CACT,gBAAgB,QAAQ,CAAC,GAAG,KAAK,mBAAmB,6BAA6B,CAClF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"process-resource-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/build/lib/process-resource-dependencies.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,22 @@
1
1
  # <%= name %>
2
2
 
3
+ For the most up-to-date Nx Forge plugin documentation refer to https://toolsplus.github.io/nx-forge/
4
+
3
5
  ## Prerequisites
4
6
 
5
7
  Before you can start using this app with Forge make sure to initially build the app using
6
8
 
7
9
  nx build <%= name %>
8
10
 
9
- After that, proceed with the initial registration of the app with the Forge platform by running the following commands from the dist directory:
11
+ and package it using
12
+
13
+ nx package <%= name %>
10
14
 
11
- forge register
12
- forge deploy
13
- forge install
15
+ After that, proceed with the initial registration of the app with the Forge platform by running the following commands (from the workspace root):
16
+
17
+ nx register <%= name %>
18
+ nx deploy <%= name %>
19
+ nx install <%= name %> --site <my-atlassian-site.atlassian.net> --product jira --no-interactive
14
20
 
15
21
  This will initially register the app with the Forge platform, deploy the code and finally install the app on any of your Atlassian applications.
16
22
 
@@ -18,9 +24,9 @@ This will initially register the app with the Forge platform, deploy the code an
18
24
 
19
25
  Before you tunnel a Forge app, make sure you have completed the prerequisites steps above. After that, run
20
26
 
21
- nx serve <%= name %>
27
+ nx tunnel <%= name %>
22
28
 
23
- This will start the `serve` target for all Custom UI projects defined in the app `manifest.yml` on their specified tunnel port. After that, it will start a build process in watch mode for the Forge app itself, before ultimately, starting the `forge tunnel` process for the Forge app.
29
+ This will start the `tunnel` target for all UI projects defined in the app `manifest.yml` on their specified tunnel port. After that, it will start a build process in watch mode for the Forge app itself, before ultimately, starting the `forge tunnel` process for the Forge app.
24
30
 
25
31
  ## Manual dev loop
26
32
 
@@ -28,12 +34,14 @@ When the app code changes, the updated code has to rebuilt by calling
28
34
 
29
35
  nx build <%= name %>
30
36
 
37
+ then re-packaged with
38
+
39
+ nx package <%= name %>
40
+
31
41
  and re-deployed to the Forge platform using
32
42
 
33
43
  nx deploy <%= name %>
34
44
 
35
45
  If the app's `manifest.yml` changed, you may have to upgrade an existing installation by running
36
46
 
37
- forge install --upgrade
38
-
39
- from within the dist directory.
47
+ nx install <%= name %> --site <my-atlassian-site.atlassian.net> --product jira --upgrade
@@ -0,0 +1,6 @@
1
+ import { PathLike } from 'fs';
2
+ /**
3
+ * Check if a directory exists
4
+ * @param path Path to directory
5
+ */
6
+ export declare const directoryExists: (path: PathLike) => boolean;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.directoryExists = void 0;
4
+ const fs_1 = require("fs");
5
+ /**
6
+ * Check if a directory exists
7
+ * @param path Path to directory
8
+ */
9
+ const directoryExists = (path) => {
10
+ try {
11
+ return (0, fs_1.statSync)(path).isDirectory();
12
+ }
13
+ catch (_a) {
14
+ return false;
15
+ }
16
+ };
17
+ exports.directoryExists = directoryExists;
18
+ //# sourceMappingURL=util-fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util-fs.js","sourceRoot":"","sources":["../../../../../packages/nx-forge/src/utils/util-fs.ts"],"names":[],"mappings":";;;AAAA,2BAAwC;AAExC;;;GAGG;AACI,MAAM,eAAe,GAAG,CAAC,IAAc,EAAW,EAAE;IACzD,IAAI,CAAC;QACH,OAAO,IAAA,aAAQ,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B"}