npm package diff

Package: @forge/api

Versions: 6.3.0 - 6.4.0-next.0

Modified: package/out/api/permissions.js

Index: package/out/api/permissions.js
===================================================================
--- package/out/api/permissions.js
+++ package/out/api/permissions.js
@@ -3,8 +3,9 @@
 exports.permissions = exports.canLoadResource = exports.canFetchFrom = exports.hasScope = exports.hasPermission = exports.extractUrlString = void 0;
 const runtime_1 = require("./runtime");
 const errors_1 = require("./errors");
 const minimatch_1 = require("minimatch");
+const egress_1 = require("@forge/egress");
 function extractUrlString(url) {
     if (typeof url === 'string') {
         return url;
     }
@@ -13,8 +14,12 @@
     }
     return url.remote;
 }
 exports.extractUrlString = extractUrlString;
+function normalizeUrl(url) {
+    const { protocol, hostname } = (0, egress_1.parseUrl)(url);
+    return `${protocol}//${hostname}`;
+}
 function wrapInSyncMetrics(options, cb) {
     const metrics = (0, runtime_1.__getRuntime)().metrics;
     metrics.counter(options.name, options.tags).incr();
     return cb();
@@ -33,9 +38,13 @@
     return undefined;
 };
 const getMissingUrls = (requiredUrls, currentlyGrantedUrls) => {
     const missingUrls = requiredUrls.filter((requiredUrl) => {
-        const isUrlAlreadyGranted = currentlyGrantedUrls.some((currentGrantedUrl) => (0, minimatch_1.minimatch)(extractUrlString(requiredUrl), extractUrlString(currentGrantedUrl)));
+        const normalizedRequiredUrl = normalizeUrl(extractUrlString(requiredUrl));
+        const isUrlAlreadyGranted = currentlyGrantedUrls.some((currentGrantedUrl) => {
+            const normalizedGrantedUrl = normalizeUrl(extractUrlString(currentGrantedUrl));
+            return (0, minimatch_1.minimatch)(normalizedRequiredUrl, normalizedGrantedUrl);
+        });
         return !isUrlAlreadyGranted;
     });
     return missingUrls;
 };

Modified: package/package.json

Index: package/package.json
===================================================================
--- package/package.json
+++ package/package.json
@@ -1,7 +1,7 @@
 {
   "name": "@forge/api",
-  "version": "6.3.0",
+  "version": "6.4.0-next.0",
   "description": "Forge API methods",
   "author": "Atlassian",
   "license": "SEE LICENSE IN LICENSE.txt",
   "main": "out/index.js",
@@ -25,9 +25,9 @@
     "nock": "13.5.6"
   },
   "dependencies": {
     "@forge/auth": "0.0.9",
-    "@forge/egress": "2.2.0",
+    "@forge/egress": "2.3.0-next.0",
     "@forge/i18n": "0.0.7",
     "@forge/manifest": "^11.1.0",
     "@forge/storage": "2.0.3",
     "headers-utils": "^3.0.2",

Modified: package/out/api/permissions.d.ts.map

Index: package/out/api/permissions.d.ts.map
===================================================================
--- package/out/api/permissions.d.ts.map
+++ package/out/api/permissions.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/api/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,sBAAsB,EAAE,kBAAkB,EAAgB,MAAM,WAAW,CAAC;AAGpG,OAAO,EAAU,QAAQ,EAAS,MAAM,iBAAiB,CAAC;AAK1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQ/F;AAeD,YAAY,EAAE,sBAAsB,EAAE,CAAC;AAKvC,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAOnC,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAkID,eAAO,MAAM,aAAa,iBAAkB,QAAQ,sBAAsB,CAAC,KAAG,gBAE7E,CAAC;AA8DF,eAAO,MAAM,QAAQ,UAAW,MAAM,KAAG,OAKxC,CAAC;AAyBF,eAAO,MAAM,YAAY,SAAU,SAAS,GAAG,QAAQ,OAAO,MAAM,KAAG,OAKtE,CAAC;AAyBF,eAAO,MAAM,eAAe,SAAU,QAAQ,MAAM,QAAQ,EAAE,OAAO,CAAC,OAAO,MAAM,KAAG,OAKrF,CAAC;AAKF,eAAO,MAAM,WAAW;kCAtIoB,QAAQ,sBAAsB,CAAC,KAAG,gBAAgB;sBAgE9D,MAAM,KAAG,OAAO;yBA8Bb,SAAS,GAAG,QAAQ,OAAO,MAAM,KAAG,OAAO;4BA8BxC,QAAQ,MAAM,QAAQ,EAAE,OAAO,CAAC,OAAO,MAAM,KAAG,OAAO;CAe5F,CAAC"}
\ No newline at end of file
+{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/api/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,sBAAsB,EAAE,kBAAkB,EAAgB,MAAM,WAAW,CAAC;AAGpG,OAAO,EAAU,QAAQ,EAAS,MAAM,iBAAiB,CAAC;AAM1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQ/F;AA8BD,YAAY,EAAE,sBAAsB,EAAE,CAAC;AAKvC,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAOnC,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAqID,eAAO,MAAM,aAAa,iBAAkB,QAAQ,sBAAsB,CAAC,KAAG,gBAE7E,CAAC;AA8DF,eAAO,MAAM,QAAQ,UAAW,MAAM,KAAG,OAKxC,CAAC;AAyBF,eAAO,MAAM,YAAY,SAAU,SAAS,GAAG,QAAQ,OAAO,MAAM,KAAG,OAKtE,CAAC;AAyBF,eAAO,MAAM,eAAe,SAAU,QAAQ,MAAM,QAAQ,EAAE,OAAO,CAAC,OAAO,MAAM,KAAG,OAKrF,CAAC;AAKF,eAAO,MAAM,WAAW;kCAtIoB,QAAQ,sBAAsB,CAAC,KAAG,gBAAgB;sBAgE9D,MAAM,KAAG,OAAO;yBA8Bb,SAAS,GAAG,QAAQ,OAAO,MAAM,KAAG,OAAO;4BA8BxC,QAAQ,MAAM,QAAQ,EAAE,OAAO,CAAC,OAAO,MAAM,KAAG,OAAO;CAe5F,CAAC"}
\ No newline at end of file

Modified: package/CHANGELOG.md

Index: package/CHANGELOG.md
===================================================================
--- package/CHANGELOG.md
+++ package/CHANGELOG.md
@@ -1,6 +1,17 @@
 # @forge/api
 
+## 6.4.0-next.0
+
+### Minor Changes
+
+- 5e160b1: Fixed a bug where protocols were not accounted for in egresses
+
+### Patch Changes
+
+- Updated dependencies [5e160b1]
+  - @forge/[email protected]
+
 ## 6.3.0
 
 ### Minor Changes