@forge/cli 6.6.0-next.9-experimental-3fb944e → 6.7.0-next.4

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/CHANGELOG.md CHANGED
@@ -1,39 +1,164 @@
1
1
  # @forge/cli
2
2
 
3
- ## 6.6.0-next.9-experimental-3fb944e
3
+ ## 6.7.0-next.4
4
+
5
+ ### Patch Changes
6
+
7
+ - @forge/bundler@4.6.2-next.4
8
+ - @forge/tunnel@3.3.1-next.4
9
+
10
+ ## 6.7.0-next.3
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [0fc09ac]
15
+ - @forge/manifest@4.9.0-next.1
16
+ - @forge/cli-shared@3.9.0-next.2
17
+ - @forge/lint@3.2.18-next.2
18
+ - @forge/tunnel@3.3.1-next.3
19
+ - @forge/bundler@4.6.2-next.3
20
+
21
+ ## 6.7.0-next.2
22
+
23
+ ### Patch Changes
24
+
25
+ - 1fe0ee9: Bumping dependencies via Renovate:
26
+
27
+ - case
28
+
29
+ - Updated dependencies [1fe0ee9]
30
+ - Updated dependencies [a302f62]
31
+ - @forge/cli-shared@3.9.0-next.1
32
+ - @forge/manifest@4.8.1-next.0
33
+ - @forge/bundler@4.6.2-next.2
34
+ - @forge/lint@3.2.18-next.1
35
+ - @forge/tunnel@3.3.1-next.2
36
+
37
+ ## 6.7.0-next.1
38
+
39
+ ### Patch Changes
40
+
41
+ - @forge/bundler@4.6.2-next.1
42
+ - @forge/tunnel@3.3.1-next.1
43
+
44
+ ## 6.7.0-next.0
45
+
46
+ ### Minor Changes
47
+
48
+ - d1c1588: Enable rowspan on table
49
+
50
+ ### Patch Changes
51
+
52
+ - Updated dependencies [d1c1588]
53
+ - @forge/cli-shared@3.9.0-next.0
54
+ - @forge/bundler@4.6.2-next.0
55
+ - @forge/lint@3.2.18-next.0
56
+ - @forge/tunnel@3.3.1-next.0
57
+
58
+ ## 6.6.0
4
59
 
5
60
  ### Minor Changes
6
61
 
7
62
  - db2615bd: Allow custom environment names
8
- - acc35d7: Introduced command to list custom entities indexes
63
+ - 149ebb5: Introduced command to list custom entities indexes
9
64
  - dc0e198: Added 'forge environment list' command
65
+ - 9614f64: Add warning to Forge linter for scopes that require interactive user consent
10
66
 
11
67
  ### Patch Changes
12
68
 
69
+ - aa2a898: Updated test for improved warning text
13
70
  - d4a2423: Bumping dependencies via Renovate:
14
71
 
15
72
  - didyoumean
16
73
 
74
+ - 8db8d54: Don't try bundling optional packages with native extensions
17
75
  - 13b570b: Fix error handling reporting on Node runtime
18
76
  - 081aaa9: Bumping dependencies via Renovate:
19
77
 
20
78
  - cli-table3
21
79
 
80
+ - Updated dependencies [0d36e72]
81
+ - Updated dependencies [8db8d54]
82
+ - Updated dependencies [7100287]
22
83
  - Updated dependencies [d9ebc65]
23
84
  - Updated dependencies [db2615bd]
24
- - Updated dependencies [acc35d7]
85
+ - Updated dependencies [149ebb5]
25
86
  - Updated dependencies [dc0e198]
26
87
  - Updated dependencies [47a05cd]
27
88
  - Updated dependencies [081aaa9]
89
+ - Updated dependencies [9614f64]
28
90
  - Updated dependencies [32ca02f]
29
91
  - Updated dependencies [6f454d7]
30
92
  - Updated dependencies [4d594e7]
31
- - @forge/bundler@4.6.1-next.8-experimental-3fb944e
32
- - @forge/cli-shared@3.8.0-next.3-experimental-3fb944e
33
- - @forge/tunnel@3.3.0-next.8-experimental-3fb944e
34
- - @forge/manifest@4.8.0-next.1-experimental-3fb944e
35
- - @forge/runtime@4.3.1-next.0-experimental-3fb944e
36
- - @forge/lint@3.2.17-next.3-experimental-3fb944e
93
+ - @forge/cli-shared@3.8.0
94
+ - @forge/bundler@4.6.1
95
+ - @forge/tunnel@3.3.0
96
+ - @forge/util@1.2.2
97
+ - @forge/manifest@4.8.0
98
+ - @forge/runtime@4.3.1
99
+ - @forge/lint@3.2.17
100
+
101
+ ## 6.6.0-next.14
102
+
103
+ ### Minor Changes
104
+
105
+ - 9614f64: Add warning to Forge linter for scopes that require interactive user consent
106
+
107
+ ### Patch Changes
108
+
109
+ - Updated dependencies [9614f64]
110
+ - @forge/cli-shared@3.8.0-next.7
111
+ - @forge/manifest@4.8.0-next.3
112
+ - @forge/bundler@4.6.1-next.13
113
+ - @forge/lint@3.2.17-next.7
114
+ - @forge/tunnel@3.3.0-next.13
115
+
116
+ ## 6.6.0-next.13
117
+
118
+ ### Minor Changes
119
+
120
+ - 149ebb5: Introduced command to list custom entities indexes
121
+
122
+ ### Patch Changes
123
+
124
+ - Updated dependencies [149ebb5]
125
+ - @forge/cli-shared@3.8.0-next.6
126
+ - @forge/bundler@4.6.1-next.12
127
+ - @forge/lint@3.2.17-next.6
128
+ - @forge/tunnel@3.3.0-next.12
129
+
130
+ ## 6.6.0-next.12
131
+
132
+ ### Patch Changes
133
+
134
+ - 8db8d54: Don't try bundling optional packages with native extensions
135
+ - Updated dependencies [8db8d54]
136
+ - @forge/bundler@4.6.1-next.11
137
+ - @forge/tunnel@3.3.0-next.11
138
+
139
+ ## 6.6.0-next.11
140
+
141
+ ### Patch Changes
142
+
143
+ - aa2a898b: Updated test for improved warning text
144
+ - Updated dependencies [0d36e724]
145
+ - @forge/cli-shared@3.8.0-next.5
146
+ - @forge/bundler@4.6.1-next.10
147
+ - @forge/lint@3.2.17-next.5
148
+ - @forge/tunnel@3.3.0-next.10
149
+
150
+ ## 6.6.0-next.10
151
+
152
+ ### Patch Changes
153
+
154
+ - Updated dependencies [71002871]
155
+ - @forge/util@1.2.2-next.0
156
+ - @forge/bundler@4.6.1-next.9
157
+ - @forge/cli-shared@3.8.0-next.4
158
+ - @forge/manifest@4.8.0-next.2
159
+ - @forge/runtime@4.3.1-next.1
160
+ - @forge/tunnel@3.3.0-next.9
161
+ - @forge/lint@3.2.17-next.4
37
162
 
38
163
  ## 6.6.0-next.9
39
164
 
@@ -1,27 +1,27 @@
1
1
  {
2
2
  "name": "@forge/cli",
3
- "version": "6.6.0-next.9-experimental-3fb944e",
3
+ "version": "6.7.0-next.4",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@forge/cli",
9
- "version": "6.6.0-next.9-experimental-3fb944e",
9
+ "version": "6.7.0-next.4",
10
10
  "hasInstallScript": true,
11
11
  "license": "UNLICENSED",
12
12
  "dependencies": {
13
- "@forge/bundler": "4.6.1-next.8-experimental-3fb944e",
14
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
13
+ "@forge/bundler": "4.6.2-next.4",
14
+ "@forge/cli-shared": "3.9.0-next.2",
15
15
  "@forge/egress": "1.1.2",
16
- "@forge/lint": "3.2.17-next.3-experimental-3fb944e",
17
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
18
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
19
- "@forge/tunnel": "3.3.0-next.8-experimental-3fb944e",
20
- "@forge/util": "1.2.1",
16
+ "@forge/lint": "3.2.18-next.2",
17
+ "@forge/manifest": "4.9.0-next.1",
18
+ "@forge/runtime": "4.3.1",
19
+ "@forge/tunnel": "3.3.1-next.4",
20
+ "@forge/util": "1.2.2",
21
21
  "@sentry/node": "^7.29.0",
22
22
  "ajv": "^6.12.6",
23
23
  "archiver": "^5.2.0",
24
- "case": "^1.6.2",
24
+ "case": "^1.6.3",
25
25
  "chalk": "^2.4.2",
26
26
  "cheerio": "^0.22.0",
27
27
  "cli-table3": "^0.6.3",
@@ -666,9 +666,9 @@
666
666
  "integrity": "sha512-kBvxvnVcFHq0Tz8NV5LhAeO0Gt0fg6Vt2AxE803ro9MHJ6S/ca7BqRDPnKnROoKZ0gAV2ymr27XvBMEq55wv6g=="
667
667
  },
668
668
  "node_modules/@forge/bundler": {
669
- "version": "4.6.1-next.8-experimental-3fb944e",
670
- "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.6.1-next.8-experimental-3fb944e.tgz",
671
- "integrity": "sha512-Yxo7fgYhl/g4g6KCh3JvTBKIPHYZWtKyfCKIRlkyj3eMOkumcuGY9X85Lx3JzeoMog7hgF6MPoZMSmYsdcDloA==",
669
+ "version": "4.6.2-next.4",
670
+ "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.6.2-next.4.tgz",
671
+ "integrity": "sha512-qKqDjDGEpK5NqTf1F/QPI8OJvqpqSoyRZVA3gtM77AqDFMqtxhg9//rZH5prsjCrUp9i2SlhotbkXS9VxC2TJA==",
672
672
  "dependencies": {
673
673
  "@babel/core": "^7.16.7",
674
674
  "@babel/plugin-proposal-class-properties": "^7.16.7",
@@ -676,12 +676,12 @@
676
676
  "@babel/plugin-proposal-optional-chaining": "^7.16.7",
677
677
  "@babel/plugin-transform-react-jsx": "^7.16.7",
678
678
  "@babel/preset-typescript": "^7.16.7",
679
- "@forge/api": "2.13.0-next.1-experimental-3fb944e",
679
+ "@forge/api": "2.14.0-next.1",
680
680
  "@forge/babel-plugin-transform-ui": "1.1.1",
681
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
682
- "@forge/lint": "3.2.17-next.3-experimental-3fb944e",
683
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
684
- "@forge/util": "1.2.1",
681
+ "@forge/cli-shared": "3.9.0-next.2",
682
+ "@forge/lint": "3.2.18-next.2",
683
+ "@forge/runtime": "4.3.1",
684
+ "@forge/util": "1.2.2",
685
685
  "assert": "^1.1.1",
686
686
  "babel-loader": "^8.2.3",
687
687
  "browserify-zlib": "^0.2.0",
@@ -716,32 +716,27 @@
716
716
  }
717
717
  },
718
718
  "node_modules/@forge/bundler/node_modules/@forge/api": {
719
- "version": "2.13.0-next.1-experimental-3fb944e",
720
- "resolved": "https://registry.npmjs.org/@forge/api/-/api-2.13.0-next.1-experimental-3fb944e.tgz",
721
- "integrity": "sha512-Zk3ozo8CHn15o+g689p4pnNXR1ZNYiX8TTCUMxYZe8eo5ryLlHhlHvojG0GSp98SSEZ3odfkqb2iP3E15+sesw==",
719
+ "version": "2.14.0-next.1",
720
+ "resolved": "https://registry.npmjs.org/@forge/api/-/api-2.14.0-next.1.tgz",
721
+ "integrity": "sha512-Oe7fCAvxYDQHgiDuY0UhTDJX3sI5TMCr5w+WHwKvbT5a+PLNMrGMQwK5xDq9WLmXWrnU3++QKZ1C75nDbYOeeg==",
722
722
  "dependencies": {
723
723
  "@forge/auth": "0.0.1",
724
724
  "@forge/egress": "1.1.2",
725
- "@forge/storage": "1.4.0-next.0-experimental-3fb944e",
725
+ "@forge/storage": "1.4.0",
726
726
  "@types/node-fetch": "^2.5.7",
727
727
  "node-fetch": "2.6.7"
728
728
  }
729
729
  },
730
- "node_modules/@forge/bundler/node_modules/@forge/storage": {
731
- "version": "1.4.0-next.0-experimental-3fb944e",
732
- "resolved": "https://registry.npmjs.org/@forge/storage/-/storage-1.4.0-next.0-experimental-3fb944e.tgz",
733
- "integrity": "sha512-1jCCaWOCXatPVdO5Ex0SIeeyKbW2dZg4ZL3PjX8qo54devB51yAl8M2O5erXQx5grzuTujfGknUqlBhE9QWPIg=="
734
- },
735
730
  "node_modules/@forge/cli-shared": {
736
- "version": "3.8.0-next.3-experimental-3fb944e",
737
- "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-3.8.0-next.3-experimental-3fb944e.tgz",
738
- "integrity": "sha512-rNcw1qyet4fZbooujbMiqZf3EAbPBLJSrgNaCuAAJq8CDQPi1kwsnhHxZFZang7RB+46yiyrvy96045Vm4+AsQ==",
731
+ "version": "3.9.0-next.2",
732
+ "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-3.9.0-next.2.tgz",
733
+ "integrity": "sha512-mzJWQqfTtB4WN4p6GrXqd5HG8sOPk0X+Q8UVEYHFisDWVxn/scGVBudhSYntYfmP9Oo5kYQpw+CSD7/ASe0k/g==",
739
734
  "dependencies": {
740
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
741
- "@forge/util": "1.2.1",
735
+ "@forge/manifest": "4.9.0-next.1",
736
+ "@forge/util": "1.2.2",
742
737
  "@sentry/node": "^7.29.0",
743
738
  "array.prototype.flatmap": "^1.2.3",
744
- "case": "^1.6.2",
739
+ "case": "^1.6.3",
745
740
  "chalk": "^2.4.2",
746
741
  "cheerio": "^0.22.0",
747
742
  "cli-table3": "^0.6.3",
@@ -771,9 +766,9 @@
771
766
  }
772
767
  },
773
768
  "node_modules/@forge/csp": {
774
- "version": "2.1.1-experimental-3fb944e",
775
- "resolved": "https://registry.npmjs.org/@forge/csp/-/csp-2.1.1-experimental-3fb944e.tgz",
776
- "integrity": "sha512-kJBRtt1z1c8y1etqD89LKVyAURh9t9cxcTJ1CZzLejGRjQR+tyRtLjU0ANKqg0qOVETH5mBt5lIlTvuAPHZhPw==",
769
+ "version": "2.1.1",
770
+ "resolved": "https://registry.npmjs.org/@forge/csp/-/csp-2.1.1.tgz",
771
+ "integrity": "sha512-Af69CNaZwVSGSlO0lm1Z737QFB9K5NOT6AQxfv4pTx+KeAIGTmP8AgYhKpgDx82IQb2EZeV0IJa9UbiXap8M3A==",
777
772
  "dependencies": {
778
773
  "cheerio": "^0.22.0",
779
774
  "content-security-policy-parser": "^0.3.0"
@@ -788,13 +783,13 @@
788
783
  }
789
784
  },
790
785
  "node_modules/@forge/lint": {
791
- "version": "3.2.17-next.3-experimental-3fb944e",
792
- "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-3.2.17-next.3-experimental-3fb944e.tgz",
793
- "integrity": "sha512-NHierjWd2pBCqI/RRNmnPJSFY3q4YvbeSqwfScra+XHyHVoSymHX4nQRGtVKJZhJO6h2AeJmevAzvZryBhHk/Q==",
786
+ "version": "3.2.18-next.2",
787
+ "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-3.2.18-next.2.tgz",
788
+ "integrity": "sha512-NT4dbdMLdk8pty3J62qcsrsa7XHyGdZVnwnoYoLDDwzRJ3joWpEcApBbKKEqM/WNBvS+ndnqYIn6SKcmddRl2Q==",
794
789
  "dependencies": {
795
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
790
+ "@forge/cli-shared": "3.9.0-next.2",
796
791
  "@forge/egress": "1.1.2",
797
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
792
+ "@forge/manifest": "4.9.0-next.1",
798
793
  "@typescript-eslint/typescript-estree": "^5.40.0",
799
794
  "atlassian-openapi": "^1.0.13",
800
795
  "cross-spawn": "^7.0.3",
@@ -802,11 +797,11 @@
802
797
  }
803
798
  },
804
799
  "node_modules/@forge/manifest": {
805
- "version": "4.8.0-next.1-experimental-3fb944e",
806
- "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-4.8.0-next.1-experimental-3fb944e.tgz",
807
- "integrity": "sha512-9DEiX6LZqAMmV4E0mVgSNv63hbQIRcwjGqkcQ6aVsnRNrIda5LHxMZZzzc6ZCPneJdneTHEd0Sy9fobUHSjAHQ==",
800
+ "version": "4.9.0-next.1",
801
+ "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-4.9.0-next.1.tgz",
802
+ "integrity": "sha512-J3k5nyV6UGKdcVLGBTslcicMO78psXYJqljHgA8hc3g4aeMKWRcSRgyaxiGtwqZCCQZhogn2UPSPghxdZqOQJw==",
808
803
  "dependencies": {
809
- "@forge/util": "1.2.1",
804
+ "@forge/util": "1.2.2",
810
805
  "ajv": "^6.12.6",
811
806
  "cheerio": "^0.22.0",
812
807
  "js-yaml": "^3.13.1",
@@ -817,11 +812,11 @@
817
812
  }
818
813
  },
819
814
  "node_modules/@forge/runtime": {
820
- "version": "4.3.1-next.0-experimental-3fb944e",
821
- "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-4.3.1-next.0-experimental-3fb944e.tgz",
822
- "integrity": "sha512-Ff7V0a14c695/fKncjtvvcfvHZQlYJGr0anu96j34ItlMROBPuyS/2+x9kjxssjd5SuU0yT1jbNZhmnn+KEyWg==",
815
+ "version": "4.3.1",
816
+ "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-4.3.1.tgz",
817
+ "integrity": "sha512-oHhEdEfqbnsFPWDESz81FnVV/WBkcAMhAI8wejgx7ElZzqHloXJocKgRDYY1cR/pvz6tbmhzUIpUC7Ixgq2UEg==",
823
818
  "dependencies": {
824
- "@forge/util": "1.2.1",
819
+ "@forge/util": "1.2.2",
825
820
  "fp-ts": "^2.0.1",
826
821
  "io-ts": "^2.0.6",
827
822
  "io-ts-reporters": "^1.0.0",
@@ -835,15 +830,20 @@
835
830
  "node": "^14 || ^16 || ^18"
836
831
  }
837
832
  },
833
+ "node_modules/@forge/storage": {
834
+ "version": "1.4.0",
835
+ "resolved": "https://registry.npmjs.org/@forge/storage/-/storage-1.4.0.tgz",
836
+ "integrity": "sha512-laGaSMzgyHfL1rGoz9l3g0u5DZTzavKp97zp6I0ZigAnZuFupGEopkL/vGdEG0npMhu6PfM/b8mi98zyqfB+rg=="
837
+ },
838
838
  "node_modules/@forge/tunnel": {
839
- "version": "3.3.0-next.8-experimental-3fb944e",
840
- "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-3.3.0-next.8-experimental-3fb944e.tgz",
841
- "integrity": "sha512-aV0TQuuU8zNQAzNYAry+gVdqnG4VWjlXZrsQnafEz2KBU4MbmNoGU0tXq0lJs3A7ppQMXVYj0TDJOgzXV5ZlNQ==",
842
- "dependencies": {
843
- "@forge/bundler": "4.6.1-next.8-experimental-3fb944e",
844
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
845
- "@forge/csp": "2.1.1-experimental-3fb944e",
846
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
839
+ "version": "3.3.1-next.4",
840
+ "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-3.3.1-next.4.tgz",
841
+ "integrity": "sha512-Y5euE9/Eq22ZvBKBYJMLuOxztPJTj04LoY+qfOTSpGSFjCx4swkNhInroz1y412AlsebSWM4JdyVFIimBPc4Qw==",
842
+ "dependencies": {
843
+ "@forge/bundler": "4.6.2-next.4",
844
+ "@forge/cli-shared": "3.9.0-next.2",
845
+ "@forge/csp": "2.1.1",
846
+ "@forge/runtime": "4.3.1",
847
847
  "express": "^4.17.1",
848
848
  "express-intercept": "^0.8.10",
849
849
  "http-proxy-middleware": "^1.0.6",
@@ -856,9 +856,9 @@
856
856
  }
857
857
  },
858
858
  "node_modules/@forge/util": {
859
- "version": "1.2.1",
860
- "resolved": "https://registry.npmjs.org/@forge/util/-/util-1.2.1.tgz",
861
- "integrity": "sha512-/ADu8DznWoa3MuIdeGlcBlOX6FjaixD3cJl7PWKD2xdn9+jKaxBDTk7mHvMH6kheKDMEDMLFVosNK0mTiXqvxA==",
859
+ "version": "1.2.2",
860
+ "resolved": "https://registry.npmjs.org/@forge/util/-/util-1.2.2.tgz",
861
+ "integrity": "sha512-IvT6uGp7l4ES3jhrk0wUl+sncdTcnb3YcHA8kIXV7V/TEV++Bx/swiuzSIxJDBBJXMjkPGJS7LN1KSmJLUV66A==",
862
862
  "dependencies": {
863
863
  "webpack": "5.75.0",
864
864
  "webpack-cli": "^4.9.1"
@@ -9944,9 +9944,9 @@
9944
9944
  "integrity": "sha512-kBvxvnVcFHq0Tz8NV5LhAeO0Gt0fg6Vt2AxE803ro9MHJ6S/ca7BqRDPnKnROoKZ0gAV2ymr27XvBMEq55wv6g=="
9945
9945
  },
9946
9946
  "@forge/bundler": {
9947
- "version": "4.6.1-next.8-experimental-3fb944e",
9948
- "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.6.1-next.8-experimental-3fb944e.tgz",
9949
- "integrity": "sha512-Yxo7fgYhl/g4g6KCh3JvTBKIPHYZWtKyfCKIRlkyj3eMOkumcuGY9X85Lx3JzeoMog7hgF6MPoZMSmYsdcDloA==",
9947
+ "version": "4.6.2-next.4",
9948
+ "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.6.2-next.4.tgz",
9949
+ "integrity": "sha512-qKqDjDGEpK5NqTf1F/QPI8OJvqpqSoyRZVA3gtM77AqDFMqtxhg9//rZH5prsjCrUp9i2SlhotbkXS9VxC2TJA==",
9950
9950
  "requires": {
9951
9951
  "@babel/core": "^7.16.7",
9952
9952
  "@babel/plugin-proposal-class-properties": "^7.16.7",
@@ -9954,12 +9954,12 @@
9954
9954
  "@babel/plugin-proposal-optional-chaining": "^7.16.7",
9955
9955
  "@babel/plugin-transform-react-jsx": "^7.16.7",
9956
9956
  "@babel/preset-typescript": "^7.16.7",
9957
- "@forge/api": "2.13.0-next.1-experimental-3fb944e",
9957
+ "@forge/api": "2.14.0-next.1",
9958
9958
  "@forge/babel-plugin-transform-ui": "1.1.1",
9959
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
9960
- "@forge/lint": "3.2.17-next.3-experimental-3fb944e",
9961
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
9962
- "@forge/util": "1.2.1",
9959
+ "@forge/cli-shared": "3.9.0-next.2",
9960
+ "@forge/lint": "3.2.18-next.2",
9961
+ "@forge/runtime": "4.3.1",
9962
+ "@forge/util": "1.2.2",
9963
9963
  "assert": "^1.1.1",
9964
9964
  "babel-loader": "^8.2.3",
9965
9965
  "browserify-zlib": "^0.2.0",
@@ -9991,34 +9991,29 @@
9991
9991
  },
9992
9992
  "dependencies": {
9993
9993
  "@forge/api": {
9994
- "version": "2.13.0-next.1-experimental-3fb944e",
9995
- "resolved": "https://registry.npmjs.org/@forge/api/-/api-2.13.0-next.1-experimental-3fb944e.tgz",
9996
- "integrity": "sha512-Zk3ozo8CHn15o+g689p4pnNXR1ZNYiX8TTCUMxYZe8eo5ryLlHhlHvojG0GSp98SSEZ3odfkqb2iP3E15+sesw==",
9994
+ "version": "2.14.0-next.1",
9995
+ "resolved": "https://registry.npmjs.org/@forge/api/-/api-2.14.0-next.1.tgz",
9996
+ "integrity": "sha512-Oe7fCAvxYDQHgiDuY0UhTDJX3sI5TMCr5w+WHwKvbT5a+PLNMrGMQwK5xDq9WLmXWrnU3++QKZ1C75nDbYOeeg==",
9997
9997
  "requires": {
9998
9998
  "@forge/auth": "0.0.1",
9999
9999
  "@forge/egress": "1.1.2",
10000
- "@forge/storage": "1.4.0-next.0-experimental-3fb944e",
10000
+ "@forge/storage": "1.4.0",
10001
10001
  "@types/node-fetch": "^2.5.7",
10002
10002
  "node-fetch": "2.6.7"
10003
10003
  }
10004
- },
10005
- "@forge/storage": {
10006
- "version": "1.4.0-next.0-experimental-3fb944e",
10007
- "resolved": "https://registry.npmjs.org/@forge/storage/-/storage-1.4.0-next.0-experimental-3fb944e.tgz",
10008
- "integrity": "sha512-1jCCaWOCXatPVdO5Ex0SIeeyKbW2dZg4ZL3PjX8qo54devB51yAl8M2O5erXQx5grzuTujfGknUqlBhE9QWPIg=="
10009
10004
  }
10010
10005
  }
10011
10006
  },
10012
10007
  "@forge/cli-shared": {
10013
- "version": "3.8.0-next.3-experimental-3fb944e",
10014
- "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-3.8.0-next.3-experimental-3fb944e.tgz",
10015
- "integrity": "sha512-rNcw1qyet4fZbooujbMiqZf3EAbPBLJSrgNaCuAAJq8CDQPi1kwsnhHxZFZang7RB+46yiyrvy96045Vm4+AsQ==",
10008
+ "version": "3.9.0-next.2",
10009
+ "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-3.9.0-next.2.tgz",
10010
+ "integrity": "sha512-mzJWQqfTtB4WN4p6GrXqd5HG8sOPk0X+Q8UVEYHFisDWVxn/scGVBudhSYntYfmP9Oo5kYQpw+CSD7/ASe0k/g==",
10016
10011
  "requires": {
10017
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
10018
- "@forge/util": "1.2.1",
10012
+ "@forge/manifest": "4.9.0-next.1",
10013
+ "@forge/util": "1.2.2",
10019
10014
  "@sentry/node": "^7.29.0",
10020
10015
  "array.prototype.flatmap": "^1.2.3",
10021
- "case": "^1.6.2",
10016
+ "case": "^1.6.3",
10022
10017
  "chalk": "^2.4.2",
10023
10018
  "cheerio": "^0.22.0",
10024
10019
  "cli-table3": "^0.6.3",
@@ -10048,9 +10043,9 @@
10048
10043
  }
10049
10044
  },
10050
10045
  "@forge/csp": {
10051
- "version": "2.1.1-experimental-3fb944e",
10052
- "resolved": "https://registry.npmjs.org/@forge/csp/-/csp-2.1.1-experimental-3fb944e.tgz",
10053
- "integrity": "sha512-kJBRtt1z1c8y1etqD89LKVyAURh9t9cxcTJ1CZzLejGRjQR+tyRtLjU0ANKqg0qOVETH5mBt5lIlTvuAPHZhPw==",
10046
+ "version": "2.1.1",
10047
+ "resolved": "https://registry.npmjs.org/@forge/csp/-/csp-2.1.1.tgz",
10048
+ "integrity": "sha512-Af69CNaZwVSGSlO0lm1Z737QFB9K5NOT6AQxfv4pTx+KeAIGTmP8AgYhKpgDx82IQb2EZeV0IJa9UbiXap8M3A==",
10054
10049
  "requires": {
10055
10050
  "cheerio": "^0.22.0",
10056
10051
  "content-security-policy-parser": "^0.3.0"
@@ -10065,13 +10060,13 @@
10065
10060
  }
10066
10061
  },
10067
10062
  "@forge/lint": {
10068
- "version": "3.2.17-next.3-experimental-3fb944e",
10069
- "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-3.2.17-next.3-experimental-3fb944e.tgz",
10070
- "integrity": "sha512-NHierjWd2pBCqI/RRNmnPJSFY3q4YvbeSqwfScra+XHyHVoSymHX4nQRGtVKJZhJO6h2AeJmevAzvZryBhHk/Q==",
10063
+ "version": "3.2.18-next.2",
10064
+ "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-3.2.18-next.2.tgz",
10065
+ "integrity": "sha512-NT4dbdMLdk8pty3J62qcsrsa7XHyGdZVnwnoYoLDDwzRJ3joWpEcApBbKKEqM/WNBvS+ndnqYIn6SKcmddRl2Q==",
10071
10066
  "requires": {
10072
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
10067
+ "@forge/cli-shared": "3.9.0-next.2",
10073
10068
  "@forge/egress": "1.1.2",
10074
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
10069
+ "@forge/manifest": "4.9.0-next.1",
10075
10070
  "@typescript-eslint/typescript-estree": "^5.40.0",
10076
10071
  "atlassian-openapi": "^1.0.13",
10077
10072
  "cross-spawn": "^7.0.3",
@@ -10079,11 +10074,11 @@
10079
10074
  }
10080
10075
  },
10081
10076
  "@forge/manifest": {
10082
- "version": "4.8.0-next.1-experimental-3fb944e",
10083
- "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-4.8.0-next.1-experimental-3fb944e.tgz",
10084
- "integrity": "sha512-9DEiX6LZqAMmV4E0mVgSNv63hbQIRcwjGqkcQ6aVsnRNrIda5LHxMZZzzc6ZCPneJdneTHEd0Sy9fobUHSjAHQ==",
10077
+ "version": "4.9.0-next.1",
10078
+ "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-4.9.0-next.1.tgz",
10079
+ "integrity": "sha512-J3k5nyV6UGKdcVLGBTslcicMO78psXYJqljHgA8hc3g4aeMKWRcSRgyaxiGtwqZCCQZhogn2UPSPghxdZqOQJw==",
10085
10080
  "requires": {
10086
- "@forge/util": "1.2.1",
10081
+ "@forge/util": "1.2.2",
10087
10082
  "ajv": "^6.12.6",
10088
10083
  "cheerio": "^0.22.0",
10089
10084
  "js-yaml": "^3.13.1",
@@ -10094,11 +10089,11 @@
10094
10089
  }
10095
10090
  },
10096
10091
  "@forge/runtime": {
10097
- "version": "4.3.1-next.0-experimental-3fb944e",
10098
- "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-4.3.1-next.0-experimental-3fb944e.tgz",
10099
- "integrity": "sha512-Ff7V0a14c695/fKncjtvvcfvHZQlYJGr0anu96j34ItlMROBPuyS/2+x9kjxssjd5SuU0yT1jbNZhmnn+KEyWg==",
10092
+ "version": "4.3.1",
10093
+ "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-4.3.1.tgz",
10094
+ "integrity": "sha512-oHhEdEfqbnsFPWDESz81FnVV/WBkcAMhAI8wejgx7ElZzqHloXJocKgRDYY1cR/pvz6tbmhzUIpUC7Ixgq2UEg==",
10100
10095
  "requires": {
10101
- "@forge/util": "1.2.1",
10096
+ "@forge/util": "1.2.2",
10102
10097
  "fp-ts": "^2.0.1",
10103
10098
  "io-ts": "^2.0.6",
10104
10099
  "io-ts-reporters": "^1.0.0",
@@ -10109,15 +10104,20 @@
10109
10104
  "ws": "^7.1.0"
10110
10105
  }
10111
10106
  },
10107
+ "@forge/storage": {
10108
+ "version": "1.4.0",
10109
+ "resolved": "https://registry.npmjs.org/@forge/storage/-/storage-1.4.0.tgz",
10110
+ "integrity": "sha512-laGaSMzgyHfL1rGoz9l3g0u5DZTzavKp97zp6I0ZigAnZuFupGEopkL/vGdEG0npMhu6PfM/b8mi98zyqfB+rg=="
10111
+ },
10112
10112
  "@forge/tunnel": {
10113
- "version": "3.3.0-next.8-experimental-3fb944e",
10114
- "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-3.3.0-next.8-experimental-3fb944e.tgz",
10115
- "integrity": "sha512-aV0TQuuU8zNQAzNYAry+gVdqnG4VWjlXZrsQnafEz2KBU4MbmNoGU0tXq0lJs3A7ppQMXVYj0TDJOgzXV5ZlNQ==",
10116
- "requires": {
10117
- "@forge/bundler": "4.6.1-next.8-experimental-3fb944e",
10118
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
10119
- "@forge/csp": "2.1.1-experimental-3fb944e",
10120
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
10113
+ "version": "3.3.1-next.4",
10114
+ "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-3.3.1-next.4.tgz",
10115
+ "integrity": "sha512-Y5euE9/Eq22ZvBKBYJMLuOxztPJTj04LoY+qfOTSpGSFjCx4swkNhInroz1y412AlsebSWM4JdyVFIimBPc4Qw==",
10116
+ "requires": {
10117
+ "@forge/bundler": "4.6.2-next.4",
10118
+ "@forge/cli-shared": "3.9.0-next.2",
10119
+ "@forge/csp": "2.1.1",
10120
+ "@forge/runtime": "4.3.1",
10121
10121
  "express": "^4.17.1",
10122
10122
  "express-intercept": "^0.8.10",
10123
10123
  "http-proxy-middleware": "^1.0.6",
@@ -10130,9 +10130,9 @@
10130
10130
  }
10131
10131
  },
10132
10132
  "@forge/util": {
10133
- "version": "1.2.1",
10134
- "resolved": "https://registry.npmjs.org/@forge/util/-/util-1.2.1.tgz",
10135
- "integrity": "sha512-/ADu8DznWoa3MuIdeGlcBlOX6FjaixD3cJl7PWKD2xdn9+jKaxBDTk7mHvMH6kheKDMEDMLFVosNK0mTiXqvxA==",
10133
+ "version": "1.2.2",
10134
+ "resolved": "https://registry.npmjs.org/@forge/util/-/util-1.2.2.tgz",
10135
+ "integrity": "sha512-IvT6uGp7l4ES3jhrk0wUl+sncdTcnb3YcHA8kIXV7V/TEV++Bx/swiuzSIxJDBBJXMjkPGJS7LN1KSmJLUV66A==",
10136
10136
  "requires": {
10137
10137
  "webpack": "5.75.0",
10138
10138
  "webpack-cli": "^4.9.1"
@@ -31,6 +31,7 @@ export declare class InstallController {
31
31
  private promptForUpgrade;
32
32
  private getUniqueInstallationProductsFromScopes;
33
33
  run({ environment, site, product, upgrade, confirmScopes, nonInteractive }: InstallViewProps): Promise<void>;
34
+ private extractAddedScopes;
34
35
  }
35
36
  export {};
36
37
  //# sourceMappingURL=install-controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/install-controller.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EAEjB,UAAU,EAEV,EAAE,EAUF,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB;AAsBD,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,WAAW,EAAE,MAAM;CAGhC;AASD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,EAAE,EACN,qBAAqB,EAAE,qBAAqB,EAC5C,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,iBAAiB;YAGpC,cAAc;YAmBd,gBAAgB;YAuChB,gBAAgB;YAKhB,aAAa;YAeb,gBAAgB;IAqB9B,OAAO,CAAC,uCAAuC;IAalC,GAAG,CAAC,EACf,WAAW,EACX,IAAI,EACJ,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CA8GpC"}
1
+ {"version":3,"file":"install-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/install-controller.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,iBAAiB,EAEjB,UAAU,EAEV,EAAE,EAUF,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAA6B,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB;AAsBD,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,WAAW,EAAE,MAAM;CAGhC;AASD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,EAAE,EACN,qBAAqB,EAAE,qBAAqB,EAC5C,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,iBAAiB;YAGpC,cAAc;YAmBd,gBAAgB;YAuChB,gBAAgB;YAKhB,aAAa;YAeb,gBAAgB;IAqB9B,OAAO,CAAC,uCAAuC;IAalC,GAAG,CAAC,EACf,WAAW,EACX,IAAI,EACJ,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;YAmHrB,kBAAkB;CAYjC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InstallController = exports.NoDeploymentError = void 0;
4
4
  const cli_shared_1 = require("@forge/cli-shared");
5
+ const manifest_1 = require("@forge/manifest");
5
6
  class NoDeploymentError extends Error {
6
7
  constructor(environment) {
7
8
  super(cli_shared_1.Text.install.error.noDeploymentFound((0, cli_shared_1.environmentToOption)(environment)));
@@ -101,7 +102,7 @@ class InstallController {
101
102
  return products.size > 0 ? Array.from(products) : undefined;
102
103
  }
103
104
  async run({ environment, site, product, upgrade, confirmScopes, nonInteractive }) {
104
- var _a;
105
+ var _a, _b;
105
106
  const { id } = await this.appConfigProvider();
106
107
  const text = upgrade ? cli_shared_1.Text.upgrade : cli_shared_1.Text.install;
107
108
  if (upgrade && (!site || !product)) {
@@ -119,8 +120,7 @@ class InstallController {
119
120
  const hasDefaultReadMeScope = await this.featureFlags.readMeScopeAddedByXLS();
120
121
  this.ui.debug(`appId ${id} has read:me scope added by default?: ${hasDefaultReadMeScope}`);
121
122
  const environmentPermissions = await this.installationService.getAppEnvironmentPermissions(id, environment);
122
- if (!environmentPermissions ||
123
- (hasDefaultReadMeScope && (!(environmentPermissions === null || environmentPermissions === void 0 ? void 0 : environmentPermissions.scopes) || environmentPermissions.scopes.length === 0))) {
123
+ if (!environmentPermissions || (hasDefaultReadMeScope && !((_a = environmentPermissions.scopes) === null || _a === void 0 ? void 0 : _a.length))) {
124
124
  this.ui.error(new NoDeploymentError(environment), { pad: false });
125
125
  return;
126
126
  }
@@ -133,8 +133,12 @@ class InstallController {
133
133
  this.configFile.getEgressPermissions()
134
134
  ]);
135
135
  const manifestEgressAddresses = (0, cli_shared_1.flatMap)(manifestEgressEntries, ({ domains }) => domains !== null && domains !== void 0 ? domains : []);
136
- const manifestScopes = (_a = permissions === null || permissions === void 0 ? void 0 : permissions.scopes) !== null && _a !== void 0 ? _a : [];
137
- const scopesConfirmationResult = await this.installView.promptForPermissionsConfirmation(environmentPermissions, manifestScopes, manifestEgressAddresses, environment, confirmScopes, !!nonInteractive, text);
136
+ const manifestScopes = new Set((_b = permissions === null || permissions === void 0 ? void 0 : permissions.scopes) !== null && _b !== void 0 ? _b : []);
137
+ if (hasDefaultReadMeScope) {
138
+ manifestScopes.add('read:me');
139
+ }
140
+ const addedScopes = await this.extractAddedScopes(environmentPermissions);
141
+ const scopesConfirmationResult = await this.installView.promptForPermissionsConfirmation(environmentPermissions, addedScopes, [...manifestScopes], manifestEgressAddresses, environment, confirmScopes, !!nonInteractive, text);
138
142
  if (!scopesConfirmationResult)
139
143
  return;
140
144
  const isAlreadyUpdated = await this.installOrUpgrade(upgrade, environment, environmentType, site, product, id, text);
@@ -161,5 +165,13 @@ class InstallController {
161
165
  this.ui.warn(cli_shared_1.Text.install.multiProductScopesDetected(productsToInstall, productsToUpgrade, site.host, environment, cli_shared_1.environmentToOption));
162
166
  }
163
167
  }
168
+ async extractAddedScopes({ addedScopes }) {
169
+ const isAutoConsentAllowed = await this.featureFlags.isAutoConsentAllowed();
170
+ const scopesWithInteractiveConsent = (0, manifest_1.getScopesWithInteractiveConsent)();
171
+ return addedScopes.map((scope) => ({
172
+ name: scope,
173
+ requiresInteractiveConsent: isAutoConsentAllowed ? scopesWithInteractiveConsent.has(scope) : undefined
174
+ }));
175
+ }
164
176
  }
165
177
  exports.InstallController = InstallController;
@@ -155,7 +155,7 @@ const getDependencies = async (cliDetails) => {
155
155
  const getWebTriggerURLCommand = new get_webtrigger_url_1.GetWebTriggerURLCommand(assertiveAppConfigReader, installationsClient, appEnvironmentClient, webTriggerGraphqlClient);
156
156
  const autocompleteController = new autocomplete_controller_1.AutocompleteController(ui);
157
157
  const installationsService = new installation_service_1.InstallationService(assertiveAppConfigReader, installationsClient, installationsClient);
158
- const installView = new install_view_1.InstallView(ui, featureFlagService);
158
+ const installView = new install_view_1.InstallView(ui);
159
159
  const installController = new install_controller_1.InstallController(assertiveAppConfigReader, configFile, ui, installAppSiteCommand, installationsService, installView, featureFlagService);
160
160
  const feedbackController = new feedback_controller_1.FeedbackController(credentialStore, feedbackPostClient);
161
161
  const lintService = new lint_service_1.LintService(configFile, fileReader);
@@ -2,7 +2,7 @@ import { UI } from '@forge/cli-shared';
2
2
  import { Dependencies } from './dependency-injection';
3
3
  import { CreateEnvironmentCommand } from '../environment/create-environment';
4
4
  import { ListEnvironmentCommand } from '../environment/list-environment';
5
- export declare const createEnvironmentHandler: (ui: UI, createEnvironmentCommand: CreateEnvironmentCommand, listEnvironmentCommand: ListEnvironmentCommand, environmentKey?: string) => Promise<void>;
5
+ export declare const createEnvironmentHandler: (ui: UI, createEnvironmentCommand: CreateEnvironmentCommand, environmentKey?: string) => Promise<void>;
6
6
  export declare const listEnvironmentHandler: (ui: UI, listEnvironmentCommand: ListEnvironmentCommand) => Promise<void>;
7
7
  export declare const registerCommands: (deps: Dependencies) => void;
8
8
  //# sourceMappingURL=register-environment-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-environment-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-environment-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAQ,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAIzE,eAAO,MAAM,wBAAwB,OAC/B,EAAE,4BACoB,wBAAwB,0BAC1B,sBAAsB,mBAC7B,MAAM,kBAmBxB,CAAC;AAEF,eAAO,MAAM,sBAAsB,OAAc,EAAE,0BAA0B,sBAAsB,kBA8BlG,CAAC;AA8BF,eAAO,MAAM,gBAAgB,SAAU,YAAY,KAAG,IAMrD,CAAC"}
1
+ {"version":3,"file":"register-environment-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-environment-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAQ,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAIzE,eAAO,MAAM,wBAAwB,OAC/B,EAAE,4BACoB,wBAAwB,mBACjC,MAAM,kBAmBxB,CAAC;AAEF,eAAO,MAAM,sBAAsB,OAAc,EAAE,0BAA0B,sBAAsB,kBAiClG,CAAC;AA8BF,eAAO,MAAM,gBAAgB,SAAU,YAAY,KAAG,IAMrD,CAAC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerCommands = exports.listEnvironmentHandler = exports.createEnvironmentHandler = void 0;
4
4
  const cli_shared_1 = require("@forge/cli-shared");
5
5
  const COMMAND_NAME = 'environment';
6
- const createEnvironmentHandler = async (ui, createEnvironmentCommand, listEnvironmentCommand, environmentKey) => {
6
+ const createEnvironmentHandler = async (ui, createEnvironmentCommand, environmentKey) => {
7
7
  ui.info(cli_shared_1.Text.createEnvironment.overview);
8
8
  ui.emptyLine();
9
9
  if (!environmentKey) {
@@ -37,11 +37,14 @@ const listEnvironmentHandler = async (ui, listEnvironmentCommand) => {
37
37
  preMessage: cli_shared_1.Text.listEnvironment.overview,
38
38
  format: {
39
39
  lastDeployedAt: (value) => new Date(Number(value)).toISOString()
40
+ },
41
+ groupRows: {
42
+ type: true
40
43
  }
41
44
  });
42
45
  };
43
46
  exports.listEnvironmentHandler = listEnvironmentHandler;
44
- const registerCreateEnvironmentCommand = (parent, { ui, commands: { createEnvironmentCommand, listEnvironmentCommand } }) => {
47
+ const registerCreateEnvironmentCommand = (parent, { ui, commands: { createEnvironmentCommand } }) => {
45
48
  parent
46
49
  .command('create')
47
50
  .requireAppId()
@@ -49,7 +52,7 @@ const registerCreateEnvironmentCommand = (parent, { ui, commands: { createEnviro
49
52
  .option('-e, --environment [environment]', cli_shared_1.Text.createEnvironment.optionEnvironmentKey)
50
53
  .nonInteractiveOption('--environment')
51
54
  .action(async ({ environment }) => {
52
- await (0, exports.createEnvironmentHandler)(ui, createEnvironmentCommand, listEnvironmentCommand, environment);
55
+ await (0, exports.createEnvironmentHandler)(ui, createEnvironmentCommand, environment);
53
56
  });
54
57
  };
55
58
  const registerListEnvironmentCommand = (parent, { ui, commands: { listEnvironmentCommand } }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"register-storage-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-storage-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA6B,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,UAAU;;GAG/D;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,YAAY,iBAgB/D;AAqBD,eAAO,MAAM,gBAAgB,SAAU,YAAY,KAAG,IAOrD,CAAC"}
1
+ {"version":3,"file":"register-storage-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-storage-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA6B,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,UAAU;;GAG/D;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,YAAY,iBAoB/D;AAqBD,eAAO,MAAM,gBAAgB,SAAU,YAAY,KAAG,IAOrD,CAAC"}
@@ -11,6 +11,9 @@ async function getManifestEntities(configFile) {
11
11
  exports.getManifestEntities = getManifestEntities;
12
12
  async function listIndexes(data, configFile, { ui, commands: { listEntitiesIndexesCommand } }) {
13
13
  const { entities } = await getManifestEntities(configFile);
14
+ if (!entities.length) {
15
+ throw new Error(cli_shared_1.Text.entitiesIndexesList.missingEntities);
16
+ }
14
17
  const result = await listEntitiesIndexesCommand.execute((0, cli_shared_1.optionToEnvironment)(data.environment || 'development'), entities);
15
18
  ui.table([
16
19
  ['entityName', 'Entity name'],
@@ -1,18 +1,15 @@
1
- import { UI, FeatureFlagReader, UserError } from '@forge/cli-shared';
1
+ import { UI, AddedScope } from '@forge/cli-shared';
2
2
  import { AppEnvironmentPermissions, Installation } from '../../service/installation-service';
3
3
  interface InstallOrUpgradeCommandText {
4
- listScopes: (scopes: string[]) => string;
4
+ listScopes: (scopes: AddedScope[]) => string;
5
5
  listEgressAddresses: (egressAddresses: string[]) => string;
6
6
  permissionsMismatch: (environment: string) => string;
7
7
  promptForPermissionsConfirmation: (permissionsMismatchInDevelopment: boolean) => string;
8
8
  }
9
- export declare class NoScopesError extends UserError {
10
- }
11
9
  export declare class InstallView {
12
10
  private readonly ui;
13
- private readonly featureFlags;
14
- constructor(ui: UI, featureFlags: FeatureFlagReader);
15
- promptForPermissionsConfirmation({ scopes, egressAddresses, addedScopes }: AppEnvironmentPermissions, manifestScopes: string[], manifestEgressAddresses: string[], environment: string, confirmScopes: boolean, nonInteractive: boolean, text: InstallOrUpgradeCommandText): Promise<boolean>;
11
+ constructor(ui: UI);
12
+ promptForPermissionsConfirmation({ scopes, egressAddresses }: AppEnvironmentPermissions, addedScopes: AddedScope[], manifestScopes: string[], manifestEgressAddresses: string[], environment: string, confirmScopes: boolean, nonInteractive: boolean, text: InstallOrUpgradeCommandText): Promise<boolean>;
16
13
  promptForUpgrade(installations: Installation[]): Promise<Installation>;
17
14
  }
18
15
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"install-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/install-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,EAAE,EAEF,iBAAiB,EACjB,SAAS,EACV,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAE7F,UAAU,2BAA2B;IACnC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IACzC,mBAAmB,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IAC3D,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,gCAAgC,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,MAAM,CAAC;CACzF;AAED,qBAAa,aAAc,SAAQ,SAAS;CAAG;AAE/C,qBAAa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAM,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAArC,EAAE,EAAE,EAAE,EAAmB,YAAY,EAAE,iBAAiB;IAExE,gCAAgC,CAC3C,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,yBAAyB,EACnE,cAAc,EAAE,MAAM,EAAE,EACxB,uBAAuB,EAAE,MAAM,EAAE,EACjC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,OAAO,EACtB,cAAc,EAAE,OAAO,EACvB,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,OAAO,CAAC;IA2CN,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;CAqBpF"}
1
+ {"version":3,"file":"install-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/install-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,EAAE,EAEF,UAAU,EACX,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAE7F,UAAU,2BAA2B;IACnC,UAAU,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,MAAM,CAAC;IAC7C,mBAAmB,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IAC3D,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,gCAAgC,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,MAAM,CAAC;CACzF;AAED,qBAAa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,EAAE;IAEtB,gCAAgC,CAC3C,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,yBAAyB,EACtD,WAAW,EAAE,UAAU,EAAE,EACzB,cAAc,EAAE,MAAM,EAAE,EACxB,uBAAuB,EAAE,MAAM,EAAE,EACjC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,OAAO,EACtB,cAAc,EAAE,OAAO,EACvB,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,OAAO,CAAC;IA+BN,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;CAqBpF"}
@@ -1,35 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InstallView = exports.NoScopesError = void 0;
3
+ exports.InstallView = void 0;
4
4
  const cli_shared_1 = require("@forge/cli-shared");
5
5
  const egress_1 = require("@forge/egress");
6
6
  const lodash_1 = require("lodash");
7
- class NoScopesError extends cli_shared_1.UserError {
8
- }
9
- exports.NoScopesError = NoScopesError;
10
7
  class InstallView {
11
- constructor(ui, featureFlags) {
8
+ constructor(ui) {
12
9
  this.ui = ui;
13
- this.featureFlags = featureFlags;
14
10
  }
15
- async promptForPermissionsConfirmation({ scopes, egressAddresses, addedScopes }, manifestScopes, manifestEgressAddresses, environment, confirmScopes, nonInteractive, text) {
16
- const hasDefaultReadMeScope = await this.featureFlags.readMeScopeAddedByXLS();
17
- if (hasDefaultReadMeScope && scopes.length === 0) {
18
- throw new NoScopesError();
19
- }
11
+ async promptForPermissionsConfirmation({ scopes, egressAddresses }, addedScopes, manifestScopes, manifestEgressAddresses, environment, confirmScopes, nonInteractive, text) {
20
12
  if (addedScopes.length)
21
13
  this.ui.info(text.listScopes(addedScopes));
22
14
  if (egressAddresses.length)
23
15
  this.ui.info(text.listEgressAddresses(egressAddresses));
24
- const manifestScopesSet = new Set(manifestScopes);
25
- if (hasDefaultReadMeScope) {
26
- manifestScopesSet.add('read:me');
27
- }
28
- const cleanedManifestScopes = [...manifestScopesSet];
29
16
  const groupedManifestEgressAddresses = (0, egress_1.sortAndGroupEgressPermissionsByDomain)(manifestEgressAddresses);
30
17
  let permissionsMismatchWithManifest = false;
31
18
  if ((0, cli_shared_1.environmentToOption)(environment) === cli_shared_1.DEFAULT_ENVIRONMENT_OPTION) {
32
- const scopesMismatch = !(0, lodash_1.isEqual)([...cleanedManifestScopes].sort(), [...scopes].sort());
19
+ const scopesMismatch = !(0, lodash_1.isEqual)([...manifestScopes].sort(), [...scopes].sort());
33
20
  const egressAddressesMismatch = !(0, lodash_1.isEqual)([...groupedManifestEgressAddresses].sort(), [...egressAddresses].sort());
34
21
  permissionsMismatchWithManifest = scopesMismatch || egressAddressesMismatch;
35
22
  if (permissionsMismatchWithManifest) {
@@ -16,7 +16,7 @@ class NativeUIBundler {
16
16
  if (entryPoints.length > 0) {
17
17
  let bundlerOutputs;
18
18
  try {
19
- bundlerOutputs = await Promise.all(entryPoints.map((entrypoint) => this.bundler([entrypoint])));
19
+ bundlerOutputs = await Promise.all(entryPoints.map((entrypoint) => this.bundler(this.logger, [entrypoint])));
20
20
  }
21
21
  catch (e) {
22
22
  throw new packager_1.BundlerError(e.message);
@@ -21,7 +21,7 @@ class RuntimeBundler {
21
21
  if (entryPoints.length > 0) {
22
22
  let bundlerResponse;
23
23
  try {
24
- bundlerResponse = await this.bundler(process.cwd(), entryPoints);
24
+ bundlerResponse = await this.bundler(this.logger, process.cwd(), entryPoints);
25
25
  }
26
26
  catch (e) {
27
27
  throw new packager_1.BundlerError(e.message);
@@ -1 +1 @@
1
- {"version":3,"file":"list-indexes.d.ts","sourceRoot":"","sources":["../../src/entities/list-indexes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,oBAAY,uBAAuB;IACjC,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CACnF;AAED,qBAAa,0BAA0B;IAEnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAFrB,YAAY,EAAE,iBAAiB,EAC/B,cAAc,EAAE,sBAAsB,EACtC,qBAAqB,EAAE,cAAc;IAG3C,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,wBAAwB,CAAC;CA2CjG"}
1
+ {"version":3,"file":"list-indexes.d.ts","sourceRoot":"","sources":["../../src/entities/list-indexes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,oBAAY,uBAAuB;IACjC,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CACnF;AAED,qBAAa,0BAA0B;IAEnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAFrB,YAAY,EAAE,iBAAiB,EAC/B,cAAc,EAAE,sBAAsB,EACtC,qBAAqB,EAAE,cAAc;IAG3C,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,wBAAwB,CAAC;CA+CjG"}
@@ -18,14 +18,17 @@ class ListEntitiesIndexesCommand {
18
18
  const { environmentId, oauthClientId } = await this.appOauthClient.getAppOauthClientIdDetails(appId, environment);
19
19
  const results = await this.entitiesGraphqlClient.getEntitiesDefinitions(oauthClientId, entities);
20
20
  const transformedIndexes = [];
21
+ const indexesToExclude = ['by-contextAri'];
21
22
  for (const entity of results) {
22
23
  const [, , , ...entityName] = entity.name.split('_');
23
24
  for (const index of (_a = entity.indexes) !== null && _a !== void 0 ? _a : []) {
24
- transformedIndexes.push({
25
- entityName: entityName.join('_'),
26
- indexName: index.name,
27
- indexStatus: index.status
28
- });
25
+ if (indexesToExclude.indexOf(index.name) < 0) {
26
+ transformedIndexes.push({
27
+ entityName: entityName.join('_'),
28
+ indexName: index.name,
29
+ indexStatus: index.status
30
+ });
31
+ }
29
32
  }
30
33
  }
31
34
  transformedIndexes.sort((index1, index2) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/cli",
3
- "version": "6.6.0-next.9-experimental-3fb944e",
3
+ "version": "6.7.0-next.4",
4
4
  "description": "A command line interface for managing Atlassian-hosted apps",
5
5
  "author": "Atlassian",
6
6
  "license": "UNLICENSED",
@@ -18,18 +18,18 @@
18
18
  "postinstall": "node -e \"process.exitCode = fs.existsSync('./out/bin/postinstall.js')\" || node ./out/bin/postinstall.js"
19
19
  },
20
20
  "dependencies": {
21
- "@forge/bundler": "4.6.1-next.8-experimental-3fb944e",
22
- "@forge/cli-shared": "3.8.0-next.3-experimental-3fb944e",
21
+ "@forge/bundler": "4.6.2-next.4",
22
+ "@forge/cli-shared": "3.9.0-next.2",
23
23
  "@forge/egress": "1.1.2",
24
- "@forge/lint": "3.2.17-next.3-experimental-3fb944e",
25
- "@forge/manifest": "4.8.0-next.1-experimental-3fb944e",
26
- "@forge/runtime": "4.3.1-next.0-experimental-3fb944e",
27
- "@forge/tunnel": "3.3.0-next.8-experimental-3fb944e",
28
- "@forge/util": "1.2.1",
24
+ "@forge/lint": "3.2.18-next.2",
25
+ "@forge/manifest": "4.9.0-next.1",
26
+ "@forge/runtime": "4.3.1",
27
+ "@forge/tunnel": "3.3.1-next.4",
28
+ "@forge/util": "1.2.2",
29
29
  "@sentry/node": "^7.29.0",
30
30
  "ajv": "^6.12.6",
31
31
  "archiver": "^5.2.0",
32
- "case": "^1.6.2",
32
+ "case": "^1.6.3",
33
33
  "chalk": "^2.4.2",
34
34
  "cheerio": "^0.22.0",
35
35
  "cli-table3": "^0.6.3",