mirror of
				https://gitea.com/actions/setup-node.git
				synced 2025-10-29 15:52:42 +08:00 
			
		
		
		
	Compare commits
	
		
			8 Commits
		
	
	
		
			v4.2.0
			...
			releases/v
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 49933ea528 | ||
|  | e3ce749e20 | ||
|  | 40337cb8f7 | ||
|  | 1ccdddc9b8 | ||
|  | cdca7365b2 | ||
|  | 22c0e7494f | ||
|  | a7c2d9473e | ||
|  | 802632921f | 
							
								
								
									
										2
									
								
								.github/eslint-compact.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/eslint-compact.json
									
									
									
									
										vendored
									
									
								
							| @@ -4,7 +4,7 @@ | ||||
|             "owner": "eslint-compact", | ||||
|             "pattern": [ | ||||
|                 { | ||||
|                     "regexp": "^(.+):\\sline\\s(\\d+),\\scol\\s(\\d+),\\s(Error|Warning|Info)\\s-\\s(.+)\\s\\((.+)\\)$", | ||||
|                     "regexp": "^(.+):\\sline\\s(\\d+),\\scol\\s(\\d+),\\s([Ee]rror|[Ww]arning|[Ii]nfo)\\s-\\s(.+)\\s\\((.+)\\)$", | ||||
|                     "file": 1, | ||||
|                     "line": 2, | ||||
|                     "column": 3, | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/eslint-stylish.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/eslint-stylish.json
									
									
									
									
										vendored
									
									
								
							| @@ -4,7 +4,7 @@ | ||||
|             "owner": "eslint-stylish", | ||||
|             "pattern": [ | ||||
|                 { | ||||
|                     "regexp": "^([^\\s].*)$", | ||||
|                     "regexp": "^\\s*([^\\s].*)$", | ||||
|                     "file": 1 | ||||
|                 }, | ||||
|                 { | ||||
|   | ||||
							
								
								
									
										3
									
								
								.github/workflows/versions.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/workflows/versions.yml
									
									
									
									
										vendored
									
									
								
							| @@ -82,8 +82,7 @@ jobs: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||
|         node-version: | ||||
|           [20.11.0-nightly202312211a0be537da, 21-nightly, 18.0.0-nightly] | ||||
|         node-version: [20-nightly, 21-nightly, 18.0.0-nightly] | ||||
|     steps: | ||||
|       - uses: actions/checkout@v4 | ||||
|       - name: Setup Node | ||||
|   | ||||
							
								
								
									
										2
									
								
								.licenses/npm/@actions/cache.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@actions/cache.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@actions/cache" | ||||
| version: 4.0.0 | ||||
| version: 4.0.3 | ||||
| type: npm | ||||
| summary: Actions cache lib | ||||
| homepage: https://github.com/actions/toolkit/tree/main/packages/cache | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@actions/glob" | ||||
| version: 0.4.0 | ||||
| version: 0.5.0 | ||||
| type: npm | ||||
| summary: Actions glob lib | ||||
| homepage: https://github.com/actions/toolkit/tree/main/packages/glob | ||||
							
								
								
									
										2
									
								
								.licenses/npm/@actions/tool-cache.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@actions/tool-cache.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@actions/tool-cache" | ||||
| version: 2.0.1 | ||||
| version: 2.0.2 | ||||
| type: npm | ||||
| summary: Actions tool-cache lib | ||||
| homepage: https://github.com/actions/toolkit/tree/main/packages/tool-cache | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@protobuf-ts/plugin-framework" | ||||
| version: 2.9.4 | ||||
| version: 2.9.5 | ||||
| type: npm | ||||
| summary: framework to create protoc plugins | ||||
| homepage: https://github.com/timostamm/protobuf-ts | ||||
|   | ||||
							
								
								
									
										2
									
								
								.licenses/npm/@protobuf-ts/plugin.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@protobuf-ts/plugin.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@protobuf-ts/plugin" | ||||
| version: 2.9.4 | ||||
| version: 2.9.5 | ||||
| type: npm | ||||
| summary: The protocol buffer compiler plugin "protobuf-ts" generates TypeScript, gRPC-web, | ||||
|   Twirp, and more. | ||||
|   | ||||
							
								
								
									
										32
									
								
								.licenses/npm/@protobuf-ts/protoc.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/@protobuf-ts/protoc.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,12 +1,12 @@ | ||||
| --- | ||||
| name: "@protobuf-ts/protoc" | ||||
| version: 2.9.4 | ||||
| version: 2.9.5 | ||||
| type: npm | ||||
| summary: Installs the protocol buffer compiler "protoc" for you. | ||||
| homepage: https://github.com/timostamm/protobuf-ts | ||||
| license: apache-2.0 | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
| - sources: Auto-generated Apache-2.0 license text | ||||
|   text: |2 | ||||
|                                      Apache License | ||||
|                                Version 2.0, January 2004 | ||||
| @@ -44,7 +44,6 @@ licenses: | ||||
| 
 | ||||
|           "Work" shall mean the work of authorship, whether in Source or | ||||
|           Object form, made available under the License, as indicated by a | ||||
|           copyright notice that is included in or attached to the work | ||||
|           (an example is provided in the Appendix below). | ||||
| 
 | ||||
|           "Derivative Works" shall mean any work, whether in Source or Object | ||||
| @@ -76,7 +75,6 @@ licenses: | ||||
|        2. Grant of Copyright License. Subject to the terms and conditions of | ||||
|           this License, each Contributor hereby grants to You a perpetual, | ||||
|           worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||||
|           copyright license to reproduce, prepare Derivative Works of, | ||||
|           publicly display, publicly perform, sublicense, and distribute the | ||||
|           Work and such Derivative Works in Source or Object form. | ||||
| 
 | ||||
| @@ -107,7 +105,6 @@ licenses: | ||||
|           (b) You must cause any modified files to carry prominent notices | ||||
|               stating that You changed the files; and | ||||
| 
 | ||||
|           (c) You must retain, in the Source form of any Derivative Works | ||||
|               that You distribute, all copyright, patent, trademark, and | ||||
|               attribution notices from the Source form of the Work, | ||||
|               excluding those notices that do not pertain to any part of | ||||
| @@ -182,4 +179,29 @@ licenses: | ||||
|           defend, and hold each Contributor harmless for any liability | ||||
|           incurred by, or claims asserted against, such Contributor by reason | ||||
|           of your accepting any such warranty or additional liability. | ||||
| 
 | ||||
|        END OF TERMS AND CONDITIONS | ||||
| 
 | ||||
|        APPENDIX: How to apply the Apache License to your work. | ||||
| 
 | ||||
|           To apply the Apache License to your work, attach the following | ||||
|           boilerplate notice, with the fields enclosed by brackets "[]" | ||||
|           replaced with your own identifying information. (Don't include | ||||
|           the brackets!)  The text should be enclosed in the appropriate | ||||
|           comment syntax for the file format. We also recommend that a | ||||
|           file or class name and description of purpose be included on the | ||||
|           same "printed page" as the copyright notice for easier | ||||
|           identification within third-party archives. | ||||
| 
 | ||||
|        Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|        you may not use this file except in compliance with the License. | ||||
|        You may obtain a copy of the License at | ||||
| 
 | ||||
|            http://www.apache.org/licenses/LICENSE-2.0 | ||||
| 
 | ||||
|        Unless required by applicable law or agreed to in writing, software | ||||
|        distributed under the License is distributed on an "AS IS" BASIS, | ||||
|        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
|        See the License for the specific language governing permissions and | ||||
|        limitations under the License. | ||||
| notices: [] | ||||
|   | ||||
							
								
								
									
										2
									
								
								.licenses/npm/@protobuf-ts/runtime-rpc.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@protobuf-ts/runtime-rpc.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@protobuf-ts/runtime-rpc" | ||||
| version: 2.9.4 | ||||
| version: 2.9.5 | ||||
| type: npm | ||||
| summary: Runtime library for RPC clients generated by the protoc plugin "protobuf-ts" | ||||
| homepage: https://github.com/timostamm/protobuf-ts | ||||
|   | ||||
							
								
								
									
										2
									
								
								.licenses/npm/@protobuf-ts/runtime.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@protobuf-ts/runtime.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: "@protobuf-ts/runtime" | ||||
| version: 2.9.4 | ||||
| version: 2.9.5 | ||||
| type: npm | ||||
| summary: Runtime library for code generated by the protoc plugin "protobuf-ts" | ||||
| homepage: https://github.com/timostamm/protobuf-ts | ||||
|   | ||||
							
								
								
									
										42
									
								
								.licenses/npm/camel-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										42
									
								
								.licenses/npm/camel-case.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,42 +0,0 @@ | ||||
| --- | ||||
| name: camel-case | ||||
| version: 4.1.2 | ||||
| type: npm | ||||
| summary: Transform into a string with the separator denoted by the next word capitalized | ||||
| homepage: https://github.com/blakeembrey/change-case/tree/master/packages/camel-case#readme | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: README.md | ||||
|   text: |- | ||||
|     MIT | ||||
| 
 | ||||
|     [npm-image]: https://img.shields.io/npm/v/camel-case.svg?style=flat | ||||
|     [npm-url]: https://npmjs.org/package/camel-case | ||||
|     [downloads-image]: https://img.shields.io/npm/dm/camel-case.svg?style=flat | ||||
|     [downloads-url]: https://npmjs.org/package/camel-case | ||||
|     [bundlephobia-image]: https://img.shields.io/bundlephobia/minzip/camel-case.svg | ||||
|     [bundlephobia-url]: https://bundlephobia.com/result?p=camel-case | ||||
| notices: [] | ||||
							
								
								
									
										33
									
								
								.licenses/npm/commander.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										33
									
								
								.licenses/npm/commander.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,33 +0,0 @@ | ||||
| --- | ||||
| name: commander | ||||
| version: 6.2.1 | ||||
| type: npm | ||||
| summary: the complete solution for node.js command-line programs | ||||
| homepage: | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     (The MIT License) | ||||
| 
 | ||||
|     Copyright (c) 2011 TJ Holowaychuk <tj@vision-media.ca> | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining | ||||
|     a copy of this software and associated documentation files (the | ||||
|     'Software'), to deal in the Software without restriction, including | ||||
|     without limitation the rights to use, copy, modify, merge, publish, | ||||
|     distribute, sublicense, and/or sell copies of the Software, and to | ||||
|     permit persons to whom the Software is furnished to do so, subject to | ||||
|     the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be | ||||
|     included in all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, | ||||
|     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||||
|     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | ||||
|     IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY | ||||
|     CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||||
|     TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||||
|     SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||||
| notices: [] | ||||
							
								
								
									
										32
									
								
								.licenses/npm/dot-object.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/dot-object.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,32 +0,0 @@ | ||||
| --- | ||||
| name: dot-object | ||||
| version: 2.1.5 | ||||
| type: npm | ||||
| summary: dot-object makes it possible to transform and read (JSON) objects using dot | ||||
|   notation. | ||||
| homepage: | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: MIT-LICENSE | ||||
|   text: | | ||||
|     Copyright (c) 2013 Rob Halff | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining | ||||
|     a copy of this software and associated documentation files (the | ||||
|     "Software"), to deal in the Software without restriction, including | ||||
|     without limitation the rights to use, copy, modify, merge, publish, | ||||
|     distribute, sublicense, and/or sell copies of the Software, and to | ||||
|     permit persons to whom the Software is furnished to do so, subject to | ||||
|     the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be | ||||
|     included in all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||||
|     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||||
|     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||||
|     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE | ||||
|     LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION | ||||
|     OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | ||||
|     WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||||
| notices: [] | ||||
							
								
								
									
										55
									
								
								.licenses/npm/fs.realpath.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										55
									
								
								.licenses/npm/fs.realpath.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,55 +0,0 @@ | ||||
| --- | ||||
| name: fs.realpath | ||||
| version: 1.0.0 | ||||
| type: npm | ||||
| summary: Use node's fs.realpath, but fall back to the JS implementation if the native | ||||
|   one fails | ||||
| homepage: | ||||
| license: isc | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The ISC License | ||||
| 
 | ||||
|     Copyright (c) Isaac Z. Schlueter and Contributors | ||||
| 
 | ||||
|     Permission to use, copy, modify, and/or distribute this software for any | ||||
|     purpose with or without fee is hereby granted, provided that the above | ||||
|     copyright notice and this permission notice appear in all copies. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||
|     WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||
|     MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||
|     ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||
|     WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||
|     ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||||
|     IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||
| 
 | ||||
|     ---- | ||||
| 
 | ||||
|     This library bundles a version of the `fs.realpath` and `fs.realpathSync` | ||||
|     methods from Node.js v0.10 under the terms of the Node.js MIT license. | ||||
| 
 | ||||
|     Node's license follows, also included at the header of `old.js` which contains | ||||
|     the licensed code: | ||||
| 
 | ||||
|       Copyright Joyent, Inc. and other Node contributors. | ||||
| 
 | ||||
|       Permission is hereby granted, free of charge, to any person obtaining a | ||||
|       copy of this software and associated documentation files (the "Software"), | ||||
|       to deal in the Software without restriction, including without limitation | ||||
|       the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||||
|       and/or sell copies of the Software, and to permit persons to whom the | ||||
|       Software is furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|       The above copyright notice and this permission notice shall be included in | ||||
|       all copies or substantial portions of the Software. | ||||
| 
 | ||||
|       THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|       IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|       FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|       AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|       LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||||
|       FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | ||||
|       DEALINGS IN THE SOFTWARE. | ||||
| notices: [] | ||||
							
								
								
									
										32
									
								
								.licenses/npm/glob.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/glob.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,32 +0,0 @@ | ||||
| --- | ||||
| name: glob | ||||
| version: 7.2.3 | ||||
| type: npm | ||||
| summary: a little globber | ||||
| homepage: | ||||
| license: isc | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The ISC License | ||||
| 
 | ||||
|     Copyright (c) Isaac Z. Schlueter and Contributors | ||||
| 
 | ||||
|     Permission to use, copy, modify, and/or distribute this software for any | ||||
|     purpose with or without fee is hereby granted, provided that the above | ||||
|     copyright notice and this permission notice appear in all copies. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||
|     WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||
|     MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||
|     ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||
|     WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||
|     ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||||
|     IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||
| 
 | ||||
|     ## Glob Logo | ||||
| 
 | ||||
|     Glob's logo created by Tanya Brassie <http://tanyabrassie.com/>, licensed | ||||
|     under a Creative Commons Attribution-ShareAlike 4.0 International License | ||||
|     https://creativecommons.org/licenses/by-sa/4.0/ | ||||
| notices: [] | ||||
							
								
								
									
										26
									
								
								.licenses/npm/inflight.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										26
									
								
								.licenses/npm/inflight.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,26 +0,0 @@ | ||||
| --- | ||||
| name: inflight | ||||
| version: 1.0.6 | ||||
| type: npm | ||||
| summary: Add callbacks to requests in flight to avoid async duplication | ||||
| homepage: https://github.com/isaacs/inflight | ||||
| license: isc | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The ISC License | ||||
| 
 | ||||
|     Copyright (c) Isaac Z. Schlueter | ||||
| 
 | ||||
|     Permission to use, copy, modify, and/or distribute this software for any | ||||
|     purpose with or without fee is hereby granted, provided that the above | ||||
|     copyright notice and this permission notice appear in all copies. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||
|     WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||
|     MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||
|     ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||
|     WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||
|     ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||||
|     IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||
| notices: [] | ||||
							
								
								
									
										28
									
								
								.licenses/npm/inherits.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										28
									
								
								.licenses/npm/inherits.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,28 +0,0 @@ | ||||
| --- | ||||
| name: inherits | ||||
| version: 2.0.4 | ||||
| type: npm | ||||
| summary: Browser-friendly inheritance fully compatible with standard node.js inherits() | ||||
| homepage: | ||||
| license: isc | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: |+ | ||||
|     The ISC License | ||||
| 
 | ||||
|     Copyright (c) Isaac Z. Schlueter | ||||
| 
 | ||||
|     Permission to use, copy, modify, and/or distribute this software for any | ||||
|     purpose with or without fee is hereby granted, provided that the above | ||||
|     copyright notice and this permission notice appear in all copies. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||||
|     REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||
|     FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||||
|     INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||||
|     LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR | ||||
|     OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||||
|     PERFORMANCE OF THIS SOFTWARE. | ||||
| 
 | ||||
| notices: [] | ||||
| ... | ||||
							
								
								
									
										58
									
								
								.licenses/npm/lodash.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										58
									
								
								.licenses/npm/lodash.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,58 +0,0 @@ | ||||
| --- | ||||
| name: lodash | ||||
| version: 4.17.21 | ||||
| type: npm | ||||
| summary: Lodash modular utilities. | ||||
| homepage: https://lodash.com/ | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     Copyright OpenJS Foundation and other contributors <https://openjsf.org/> | ||||
| 
 | ||||
|     Based on Underscore.js, copyright Jeremy Ashkenas, | ||||
|     DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/> | ||||
| 
 | ||||
|     This software consists of voluntary contributions made by many | ||||
|     individuals. For exact contribution history, see the revision history | ||||
|     available at https://github.com/lodash/lodash | ||||
| 
 | ||||
|     The following license applies to all parts of this software except as | ||||
|     documented below: | ||||
| 
 | ||||
|     ==== | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining | ||||
|     a copy of this software and associated documentation files (the | ||||
|     "Software"), to deal in the Software without restriction, including | ||||
|     without limitation the rights to use, copy, modify, merge, publish, | ||||
|     distribute, sublicense, and/or sell copies of the Software, and to | ||||
|     permit persons to whom the Software is furnished to do so, subject to | ||||
|     the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be | ||||
|     included in all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||||
|     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||||
|     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||||
|     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE | ||||
|     LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION | ||||
|     OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | ||||
|     WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||||
| 
 | ||||
|     ==== | ||||
| 
 | ||||
|     Copyright and related rights for sample code are waived via CC0. Sample | ||||
|     code is defined as all source code displayed within the prose of the | ||||
|     documentation. | ||||
| 
 | ||||
|     CC0: http://creativecommons.org/publicdomain/zero/1.0/ | ||||
| 
 | ||||
|     ==== | ||||
| 
 | ||||
|     Files located in the node_modules and vendor directories are externally | ||||
|     maintained libraries used by this software which have their own | ||||
|     licenses; we recommend you read them, as their terms may differ from the | ||||
|     terms above. | ||||
| notices: [] | ||||
							
								
								
									
										42
									
								
								.licenses/npm/lower-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										42
									
								
								.licenses/npm/lower-case.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,42 +0,0 @@ | ||||
| --- | ||||
| name: lower-case | ||||
| version: 2.0.2 | ||||
| type: npm | ||||
| summary: Transforms the string to lower case | ||||
| homepage: https://github.com/blakeembrey/change-case/tree/master/packages/lower-case#readme | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: README.md | ||||
|   text: |- | ||||
|     MIT | ||||
| 
 | ||||
|     [npm-image]: https://img.shields.io/npm/v/lower-case.svg?style=flat | ||||
|     [npm-url]: https://npmjs.org/package/lower-case | ||||
|     [downloads-image]: https://img.shields.io/npm/dm/lower-case.svg?style=flat | ||||
|     [downloads-url]: https://npmjs.org/package/lower-case | ||||
|     [bundlephobia-image]: https://img.shields.io/bundlephobia/minzip/lower-case.svg | ||||
|     [bundlephobia-url]: https://bundlephobia.com/result?p=lower-case | ||||
| notices: [] | ||||
							
								
								
									
										42
									
								
								.licenses/npm/no-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										42
									
								
								.licenses/npm/no-case.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,42 +0,0 @@ | ||||
| --- | ||||
| name: no-case | ||||
| version: 3.0.4 | ||||
| type: npm | ||||
| summary: Transform into a lower cased string with spaces between words | ||||
| homepage: https://github.com/blakeembrey/change-case/tree/master/packages/no-case#readme | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: README.md | ||||
|   text: |- | ||||
|     MIT | ||||
| 
 | ||||
|     [npm-image]: https://img.shields.io/npm/v/no-case.svg?style=flat | ||||
|     [npm-url]: https://npmjs.org/package/no-case | ||||
|     [downloads-image]: https://img.shields.io/npm/dm/no-case.svg?style=flat | ||||
|     [downloads-url]: https://npmjs.org/package/no-case | ||||
|     [bundlephobia-image]: https://img.shields.io/bundlephobia/minzip/no-case.svg | ||||
|     [bundlephobia-url]: https://bundlephobia.com/result?p=no-case | ||||
| notices: [] | ||||
							
								
								
									
										42
									
								
								.licenses/npm/pascal-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										42
									
								
								.licenses/npm/pascal-case.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,42 +0,0 @@ | ||||
| --- | ||||
| name: pascal-case | ||||
| version: 3.1.2 | ||||
| type: npm | ||||
| summary: Transform into a string of capitalized words without separators | ||||
| homepage: https://github.com/blakeembrey/change-case/tree/master/packages/pascal-case#readme | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: README.md | ||||
|   text: |- | ||||
|     MIT | ||||
| 
 | ||||
|     [npm-image]: https://img.shields.io/npm/v/pascal-case.svg?style=flat | ||||
|     [npm-url]: https://npmjs.org/package/pascal-case | ||||
|     [downloads-image]: https://img.shields.io/npm/dm/pascal-case.svg?style=flat | ||||
|     [downloads-url]: https://npmjs.org/package/pascal-case | ||||
|     [bundlephobia-image]: https://img.shields.io/bundlephobia/minzip/pascal-case.svg | ||||
|     [bundlephobia-url]: https://bundlephobia.com/result?p=pascal-case | ||||
| notices: [] | ||||
							
								
								
									
										34
									
								
								.licenses/npm/path-is-absolute.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										34
									
								
								.licenses/npm/path-is-absolute.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,34 +0,0 @@ | ||||
| --- | ||||
| name: path-is-absolute | ||||
| version: 1.0.1 | ||||
| type: npm | ||||
| summary: Node.js 0.12 path.isAbsolute() ponyfill | ||||
| homepage: | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: license | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: readme.md | ||||
|   text: MIT © [Sindre Sorhus](https://sindresorhus.com) | ||||
| notices: [] | ||||
							
								
								
									
										46
									
								
								.licenses/npm/path-to-regexp.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										46
									
								
								.licenses/npm/path-to-regexp.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,46 +0,0 @@ | ||||
| --- | ||||
| name: path-to-regexp | ||||
| version: 6.3.0 | ||||
| type: npm | ||||
| summary: Express style path to RegExp utility | ||||
| homepage: | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in | ||||
|     all copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||
|     THE SOFTWARE. | ||||
| - sources: Readme.md | ||||
|   text: |- | ||||
|     MIT | ||||
| 
 | ||||
|     [npm-image]: https://img.shields.io/npm/v/path-to-regexp | ||||
|     [npm-url]: https://npmjs.org/package/path-to-regexp | ||||
|     [downloads-image]: https://img.shields.io/npm/dm/path-to-regexp | ||||
|     [downloads-url]: https://npmjs.org/package/path-to-regexp | ||||
|     [build-image]: https://img.shields.io/github/actions/workflow/status/pillarjs/path-to-regexp/ci.yml?branch=master | ||||
|     [build-url]: https://github.com/pillarjs/path-to-regexp/actions/workflows/ci.yml?query=branch%3Amaster | ||||
|     [coverage-image]: https://img.shields.io/codecov/c/gh/pillarjs/path-to-regexp | ||||
|     [coverage-url]: https://codecov.io/gh/pillarjs/path-to-regexp | ||||
|     [license-image]: http://img.shields.io/npm/l/path-to-regexp.svg?style=flat | ||||
|     [license-url]: LICENSE.md | ||||
| notices: [] | ||||
							
								
								
									
										3585
									
								
								.licenses/npm/prettier.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										3585
									
								
								.licenses/npm/prettier.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										216
									
								
								.licenses/npm/ts-poet.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										216
									
								
								.licenses/npm/ts-poet.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,216 +0,0 @@ | ||||
| --- | ||||
| name: ts-poet | ||||
| version: 4.15.0 | ||||
| type: npm | ||||
| summary: code generation DSL for TypeScript | ||||
| homepage: | ||||
| license: apache-2.0 | ||||
| licenses: | ||||
| - sources: LICENSE.txt | ||||
|   text: |2+ | ||||
| 
 | ||||
| 
 | ||||
|                                      Apache License | ||||
|                                Version 2.0, January 2004 | ||||
|                             http://www.apache.org/licenses/ | ||||
| 
 | ||||
|        TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION | ||||
| 
 | ||||
|        1. Definitions. | ||||
| 
 | ||||
|           "License" shall mean the terms and conditions for use, reproduction, | ||||
|           and distribution as defined by Sections 1 through 9 of this document. | ||||
| 
 | ||||
|           "Licensor" shall mean the copyright owner or entity authorized by | ||||
|           the copyright owner that is granting the License. | ||||
| 
 | ||||
|           "Legal Entity" shall mean the union of the acting entity and all | ||||
|           other entities that control, are controlled by, or are under common | ||||
|           control with that entity. For the purposes of this definition, | ||||
|           "control" means (i) the power, direct or indirect, to cause the | ||||
|           direction or management of such entity, whether by contract or | ||||
|           otherwise, or (ii) ownership of fifty percent (50%) or more of the | ||||
|           outstanding shares, or (iii) beneficial ownership of such entity. | ||||
| 
 | ||||
|           "You" (or "Your") shall mean an individual or Legal Entity | ||||
|           exercising permissions granted by this License. | ||||
| 
 | ||||
|           "Source" form shall mean the preferred form for making modifications, | ||||
|           including but not limited to software source code, documentation | ||||
|           source, and configuration files. | ||||
| 
 | ||||
|           "Object" form shall mean any form resulting from mechanical | ||||
|           transformation or translation of a Source form, including but | ||||
|           not limited to compiled object code, generated documentation, | ||||
|           and conversions to other media types. | ||||
| 
 | ||||
|           "Work" shall mean the work of authorship, whether in Source or | ||||
|           Object form, made available under the License, as indicated by a | ||||
|           copyright notice that is included in or attached to the work | ||||
|           (an example is provided in the Appendix below). | ||||
| 
 | ||||
|           "Derivative Works" shall mean any work, whether in Source or Object | ||||
|           form, that is based on (or derived from) the Work and for which the | ||||
|           editorial revisions, annotations, elaborations, or other modifications | ||||
|           represent, as a whole, an original work of authorship. For the purposes | ||||
|           of this License, Derivative Works shall not include works that remain | ||||
|           separable from, or merely link (or bind by name) to the interfaces of, | ||||
|           the Work and Derivative Works thereof. | ||||
| 
 | ||||
|           "Contribution" shall mean any work of authorship, including | ||||
|           the original version of the Work and any modifications or additions | ||||
|           to that Work or Derivative Works thereof, that is intentionally | ||||
|           submitted to Licensor for inclusion in the Work by the copyright owner | ||||
|           or by an individual or Legal Entity authorized to submit on behalf of | ||||
|           the copyright owner. For the purposes of this definition, "submitted" | ||||
|           means any form of electronic, verbal, or written communication sent | ||||
|           to the Licensor or its representatives, including but not limited to | ||||
|           communication on electronic mailing lists, source code control systems, | ||||
|           and issue tracking systems that are managed by, or on behalf of, the | ||||
|           Licensor for the purpose of discussing and improving the Work, but | ||||
|           excluding communication that is conspicuously marked or otherwise | ||||
|           designated in writing by the copyright owner as "Not a Contribution." | ||||
| 
 | ||||
|           "Contributor" shall mean Licensor and any individual or Legal Entity | ||||
|           on behalf of whom a Contribution has been received by Licensor and | ||||
|           subsequently incorporated within the Work. | ||||
| 
 | ||||
|        2. Grant of Copyright License. Subject to the terms and conditions of | ||||
|           this License, each Contributor hereby grants to You a perpetual, | ||||
|           worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||||
|           copyright license to reproduce, prepare Derivative Works of, | ||||
|           publicly display, publicly perform, sublicense, and distribute the | ||||
|           Work and such Derivative Works in Source or Object form. | ||||
| 
 | ||||
|        3. Grant of Patent License. Subject to the terms and conditions of | ||||
|           this License, each Contributor hereby grants to You a perpetual, | ||||
|           worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||||
|           (except as stated in this section) patent license to make, have made, | ||||
|           use, offer to sell, sell, import, and otherwise transfer the Work, | ||||
|           where such license applies only to those patent claims licensable | ||||
|           by such Contributor that are necessarily infringed by their | ||||
|           Contribution(s) alone or by combination of their Contribution(s) | ||||
|           with the Work to which such Contribution(s) was submitted. If You | ||||
|           institute patent litigation against any entity (including a | ||||
|           cross-claim or counterclaim in a lawsuit) alleging that the Work | ||||
|           or a Contribution incorporated within the Work constitutes direct | ||||
|           or contributory patent infringement, then any patent licenses | ||||
|           granted to You under this License for that Work shall terminate | ||||
|           as of the date such litigation is filed. | ||||
| 
 | ||||
|        4. Redistribution. You may reproduce and distribute copies of the | ||||
|           Work or Derivative Works thereof in any medium, with or without | ||||
|           modifications, and in Source or Object form, provided that You | ||||
|           meet the following conditions: | ||||
| 
 | ||||
|           (a) You must give any other recipients of the Work or | ||||
|               Derivative Works a copy of this License; and | ||||
| 
 | ||||
|           (b) You must cause any modified files to carry prominent notices | ||||
|               stating that You changed the files; and | ||||
| 
 | ||||
|           (c) You must retain, in the Source form of any Derivative Works | ||||
|               that You distribute, all copyright, patent, trademark, and | ||||
|               attribution notices from the Source form of the Work, | ||||
|               excluding those notices that do not pertain to any part of | ||||
|               the Derivative Works; and | ||||
| 
 | ||||
|           (d) If the Work includes a "NOTICE" text file as part of its | ||||
|               distribution, then any Derivative Works that You distribute must | ||||
|               include a readable copy of the attribution notices contained | ||||
|               within such NOTICE file, excluding those notices that do not | ||||
|               pertain to any part of the Derivative Works, in at least one | ||||
|               of the following places: within a NOTICE text file distributed | ||||
|               as part of the Derivative Works; within the Source form or | ||||
|               documentation, if provided along with the Derivative Works; or, | ||||
|               within a display generated by the Derivative Works, if and | ||||
|               wherever such third-party notices normally appear. The contents | ||||
|               of the NOTICE file are for informational purposes only and | ||||
|               do not modify the License. You may add Your own attribution | ||||
|               notices within Derivative Works that You distribute, alongside | ||||
|               or as an addendum to the NOTICE text from the Work, provided | ||||
|               that such additional attribution notices cannot be construed | ||||
|               as modifying the License. | ||||
| 
 | ||||
|           You may add Your own copyright statement to Your modifications and | ||||
|           may provide additional or different license terms and conditions | ||||
|           for use, reproduction, or distribution of Your modifications, or | ||||
|           for any such Derivative Works as a whole, provided Your use, | ||||
|           reproduction, and distribution of the Work otherwise complies with | ||||
|           the conditions stated in this License. | ||||
| 
 | ||||
|        5. Submission of Contributions. Unless You explicitly state otherwise, | ||||
|           any Contribution intentionally submitted for inclusion in the Work | ||||
|           by You to the Licensor shall be under the terms and conditions of | ||||
|           this License, without any additional terms or conditions. | ||||
|           Notwithstanding the above, nothing herein shall supersede or modify | ||||
|           the terms of any separate license agreement you may have executed | ||||
|           with Licensor regarding such Contributions. | ||||
| 
 | ||||
|        6. Trademarks. This License does not grant permission to use the trade | ||||
|           names, trademarks, service marks, or product names of the Licensor, | ||||
|           except as required for reasonable and customary use in describing the | ||||
|           origin of the Work and reproducing the content of the NOTICE file. | ||||
| 
 | ||||
|        7. Disclaimer of Warranty. Unless required by applicable law or | ||||
|           agreed to in writing, Licensor provides the Work (and each | ||||
|           Contributor provides its Contributions) on an "AS IS" BASIS, | ||||
|           WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | ||||
|           implied, including, without limitation, any warranties or conditions | ||||
|           of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A | ||||
|           PARTICULAR PURPOSE. You are solely responsible for determining the | ||||
|           appropriateness of using or redistributing the Work and assume any | ||||
|           risks associated with Your exercise of permissions under this License. | ||||
| 
 | ||||
|        8. Limitation of Liability. In no event and under no legal theory, | ||||
|           whether in tort (including negligence), contract, or otherwise, | ||||
|           unless required by applicable law (such as deliberate and grossly | ||||
|           negligent acts) or agreed to in writing, shall any Contributor be | ||||
|           liable to You for damages, including any direct, indirect, special, | ||||
|           incidental, or consequential damages of any character arising as a | ||||
|           result of this License or out of the use or inability to use the | ||||
|           Work (including but not limited to damages for loss of goodwill, | ||||
|           work stoppage, computer failure or malfunction, or any and all | ||||
|           other commercial damages or losses), even if such Contributor | ||||
|           has been advised of the possibility of such damages. | ||||
| 
 | ||||
|        9. Accepting Warranty or Additional Liability. While redistributing | ||||
|           the Work or Derivative Works thereof, You may choose to offer, | ||||
|           and charge a fee for, acceptance of support, warranty, indemnity, | ||||
|           or other liability obligations and/or rights consistent with this | ||||
|           License. However, in accepting such obligations, You may act only | ||||
|           on Your own behalf and on Your sole responsibility, not on behalf | ||||
|           of any other Contributor, and only if You agree to indemnify, | ||||
|           defend, and hold each Contributor harmless for any liability | ||||
|           incurred by, or claims asserted against, such Contributor by reason | ||||
|           of your accepting any such warranty or additional liability. | ||||
| 
 | ||||
|        END OF TERMS AND CONDITIONS | ||||
| 
 | ||||
|        APPENDIX: How to apply the Apache License to your work. | ||||
| 
 | ||||
|           To apply the Apache License to your work, attach the following | ||||
|           boilerplate notice, with the fields enclosed by brackets "[]" | ||||
|           replaced with your own identifying information. (Don't include | ||||
|           the brackets!)  The text should be enclosed in the appropriate | ||||
|           comment syntax for the file format. We also recommend that a | ||||
|           file or class name and description of purpose be included on the | ||||
|           same "printed page" as the copyright notice for easier | ||||
|           identification within third-party archives. | ||||
| 
 | ||||
|        Copyright [yyyy] [name of copyright owner] | ||||
| 
 | ||||
|        Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|        you may not use this file except in compliance with the License. | ||||
|        You may obtain a copy of the License at | ||||
| 
 | ||||
|            http://www.apache.org/licenses/LICENSE-2.0 | ||||
| 
 | ||||
|        Unless required by applicable law or agreed to in writing, software | ||||
|        distributed under the License is distributed on an "AS IS" BASIS, | ||||
|        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
|        See the License for the specific language governing permissions and | ||||
|        limitations under the License. | ||||
| 
 | ||||
| notices: [] | ||||
| ... | ||||
							
								
								
									
										11
									
								
								.licenses/npm/twirp-ts.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										11
									
								
								.licenses/npm/twirp-ts.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,11 +0,0 @@ | ||||
| --- | ||||
| name: twirp-ts | ||||
| version: 2.5.0 | ||||
| type: npm | ||||
| summary: Typescript implementation of the Twirp protocol | ||||
| homepage: | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: README.md | ||||
|   text: MIT <3 | ||||
| notices: [] | ||||
							
								
								
									
										2
									
								
								.licenses/npm/universal-user-agent.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/universal-user-agent.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| name: universal-user-agent | ||||
| version: 6.0.0 | ||||
| version: 6.0.1 | ||||
| type: npm | ||||
| summary: Get a user agent string in both browser and node | ||||
| homepage: | ||||
|   | ||||
							
								
								
									
										39
									
								
								.licenses/npm/uuid-3.4.0.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										39
									
								
								.licenses/npm/uuid-3.4.0.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,39 +0,0 @@ | ||||
| --- | ||||
| name: uuid | ||||
| version: 3.4.0 | ||||
| type: npm | ||||
| summary: RFC4122 (v1, v4, and v5) UUIDs | ||||
| homepage: https://github.com/uuidjs/uuid#readme | ||||
| license: mit | ||||
| licenses: | ||||
| - sources: LICENSE.md | ||||
|   text: | | ||||
|     The MIT License (MIT) | ||||
| 
 | ||||
|     Copyright (c) 2010-2016 Robert Kieffer and other contributors | ||||
| 
 | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
| 
 | ||||
|     The above copyright notice and this permission notice shall be included in all | ||||
|     copies or substantial portions of the Software. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||
|     SOFTWARE. | ||||
| notices: | ||||
| - sources: AUTHORS | ||||
|   text: |- | ||||
|     Robert Kieffer <robert@broofa.com> | ||||
|     Christoph Tavan <dev@tavan.de> | ||||
|     AJ ONeal <coolaj86@gmail.com> | ||||
|     Vincent Voyer <vincent@zeroload.net> | ||||
|     Roman Shtylman <shtylman@gmail.com> | ||||
							
								
								
									
										24
									
								
								.licenses/npm/yaml.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										24
									
								
								.licenses/npm/yaml.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,24 +0,0 @@ | ||||
| --- | ||||
| name: yaml | ||||
| version: 1.10.2 | ||||
| type: npm | ||||
| summary: JavaScript parser and stringifier for YAML | ||||
| homepage: https://eemeli.org/yaml/v1/ | ||||
| license: isc | ||||
| licenses: | ||||
| - sources: LICENSE | ||||
|   text: | | ||||
|     Copyright 2018 Eemeli Aro <eemeli@gmail.com> | ||||
| 
 | ||||
|     Permission to use, copy, modify, and/or distribute this software for any purpose | ||||
|     with or without fee is hereby granted, provided that the above copyright notice | ||||
|     and this permission notice appear in all copies. | ||||
| 
 | ||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||||
|     REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||
|     FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||||
|     INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS | ||||
|     OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER | ||||
|     TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF | ||||
|     THIS SOFTWARE. | ||||
| notices: [] | ||||
							
								
								
									
										15
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								README.md
									
									
									
									
									
								
							| @@ -76,6 +76,21 @@ See [action.yml](action.yml) | ||||
|     # Set always-auth option in npmrc file. | ||||
|     # Default: '' | ||||
|     always-auth: '' | ||||
|  | ||||
|     # Optional mirror to download binaries from. | ||||
|     # Artifacts need to match the official Node.js | ||||
|     # Example: | ||||
|     # V8 Canaray Build: <mirror_url>/download/v8-canary | ||||
|     # RC Build: <mirror_url>/download/rc | ||||
|     # Official: Build <mirror_url>/dist | ||||
|     # Nightly build: <mirror_url>/download/nightly | ||||
|     # Default: '' | ||||
|     mirror: '' | ||||
|  | ||||
|     # Optional mirror token. | ||||
|     # The token will be used as a bearer token in the Authorization header | ||||
|     # Default: '' | ||||
|     mirror-token: '' | ||||
| ``` | ||||
| <!-- end usage --> | ||||
|  | ||||
|   | ||||
| @@ -498,6 +498,70 @@ describe('setup-node', () => { | ||||
|         ); | ||||
|       } | ||||
|     ); | ||||
|  | ||||
|     it.each([ | ||||
|       [ | ||||
|         '20.0.0-v8-canary', | ||||
|         '20.0.0-v8-canary20221103f7e2421e91', | ||||
|         '20.0.0-v8-canary20221030fefe1c0879', | ||||
|         'https://my_mirror.org/download/v8-canary/v20.0.0-v8-canary20221103f7e2421e91/node-v20.0.0-v8-canary20221103f7e2421e91-linux-x64.tar.gz' | ||||
|       ], | ||||
|       [ | ||||
|         '20-v8-canary', | ||||
|         '20.0.0-v8-canary20221103f7e2421e91', | ||||
|         '20.0.0-v8-canary20221030fefe1c0879', | ||||
|         'https://my_mirror.org/download/v8-canary/v20.0.0-v8-canary20221103f7e2421e91/node-v20.0.0-v8-canary20221103f7e2421e91-linux-x64.tar.gz' | ||||
|       ], | ||||
|       [ | ||||
|         '19.0.0-v8-canary', | ||||
|         '19.0.0-v8-canary202210187d6960f23f', | ||||
|         '19.0.0-v8-canary202210172ec229fc56', | ||||
|         'https://my_mirror.org/download/v8-canary/v19.0.0-v8-canary202210187d6960f23f/node-v19.0.0-v8-canary202210187d6960f23f-linux-x64.tar.gz' | ||||
|       ], | ||||
|       [ | ||||
|         '19-v8-canary', | ||||
|         '19.0.0-v8-canary202210187d6960f23f', | ||||
|         '19.0.0-v8-canary202210172ec229fc56', | ||||
|         'https://my_mirror.org/download/v8-canary/v19.0.0-v8-canary202210187d6960f23f/node-v19.0.0-v8-canary202210187d6960f23f-linux-x64.tar.gz' | ||||
|       ] | ||||
|     ])( | ||||
|       'get %s version from dist if check-latest is true', | ||||
|       async (input, expectedVersion, foundVersion, expectedUrl) => { | ||||
|         const foundToolPath = path.normalize(`/cache/node/${foundVersion}/x64`); | ||||
|         const toolPath = path.normalize(`/cache/node/${expectedVersion}/x64`); | ||||
|  | ||||
|         inputs['node-version'] = input; | ||||
|         inputs['check-latest'] = 'true'; | ||||
|         os['arch'] = 'x64'; | ||||
|         os['platform'] = 'linux'; | ||||
|         inputs['mirror'] = 'https://my_mirror.org'; | ||||
|         inputs['mirror-token'] = 'faketoken'; | ||||
|  | ||||
|         findSpy.mockReturnValue(foundToolPath); | ||||
|         findAllVersionsSpy.mockReturnValue([ | ||||
|           '20.0.0-v8-canary20221030fefe1c0879', | ||||
|           '19.0.0-v8-canary202210172ec229fc56', | ||||
|           '20.0.0-v8-canary2022102310ff1e5a8d' | ||||
|         ]); | ||||
|         dlSpy.mockImplementation(async () => '/some/temp/path'); | ||||
|         exSpy.mockImplementation(async () => '/some/other/temp/path'); | ||||
|         cacheSpy.mockImplementation(async () => toolPath); | ||||
|  | ||||
|         // act | ||||
|         await main.run(); | ||||
|  | ||||
|         // assert | ||||
|         expect(findAllVersionsSpy).toHaveBeenCalled(); | ||||
|         expect(logSpy).toHaveBeenCalledWith( | ||||
|           `Acquiring ${expectedVersion} - ${os.arch} from ${expectedUrl}` | ||||
|         ); | ||||
|         expect(logSpy).toHaveBeenCalledWith('Extracting ...'); | ||||
|         expect(logSpy).toHaveBeenCalledWith('Adding to the cache ...'); | ||||
|         expect(cnSpy).toHaveBeenCalledWith( | ||||
|           `::add-path::${path.join(toolPath, 'bin')}${osm.EOL}` | ||||
|         ); | ||||
|       } | ||||
|     ); | ||||
|   }); | ||||
|  | ||||
|   describe('setup-node v8 canary tests', () => { | ||||
|   | ||||
| @@ -315,7 +315,7 @@ describe('setup-node', () => { | ||||
|     await main.run(); | ||||
|  | ||||
|     workingUrls.forEach(url => { | ||||
|       expect(dlSpy).toHaveBeenCalledWith(url); | ||||
|       expect(dlSpy).toHaveBeenCalledWith(url, undefined, undefined); | ||||
|     }); | ||||
|     expect(cnSpy).toHaveBeenCalledWith(`::add-path::${toolPath}${osm.EOL}`); | ||||
|   }); | ||||
| @@ -449,6 +449,54 @@ describe('setup-node', () => { | ||||
|     } | ||||
|   }, 100000); | ||||
|  | ||||
|   it('acquires specified architecture of node from mirror', async () => { | ||||
|     for (const {arch, version, osSpec} of [ | ||||
|       { | ||||
|         arch: 'x86', | ||||
|         version: '18.0.0-nightly202110204cb3e06ed8', | ||||
|         osSpec: 'win32' | ||||
|       }, | ||||
|       { | ||||
|         arch: 'x86', | ||||
|         version: '20.0.0-nightly2022101987cdf7d412', | ||||
|         osSpec: 'win32' | ||||
|       } | ||||
|     ]) { | ||||
|       os.platform = osSpec; | ||||
|       os.arch = arch; | ||||
|       const fileExtension = os.platform === 'win32' ? '7z' : 'tar.gz'; | ||||
|       const platform = { | ||||
|         linux: 'linux', | ||||
|         darwin: 'darwin', | ||||
|         win32: 'win' | ||||
|       }[os.platform]; | ||||
|  | ||||
|       inputs['node-version'] = version; | ||||
|       inputs['architecture'] = arch; | ||||
|       inputs['always-auth'] = false; | ||||
|       inputs['token'] = 'faketoken'; | ||||
|       inputs['mirror'] = 'https://my-mirror.org'; | ||||
|       inputs['mirror-token'] = 'my-mirror-token'; | ||||
|  | ||||
|       const expectedUrl = `https://my-mirror.org/download/nightly/v${version}/node-v${version}-${platform}-${arch}.${fileExtension}`; | ||||
|  | ||||
|       // ... but not in the local cache | ||||
|       findSpy.mockImplementation(() => ''); | ||||
|       findAllVersionsSpy.mockImplementation(() => []); | ||||
|  | ||||
|       dlSpy.mockImplementation(async () => '/some/temp/path'); | ||||
|       const toolPath = path.normalize(`/cache/node/${version}/${arch}`); | ||||
|       exSpy.mockImplementation(async () => '/some/other/temp/path'); | ||||
|       cacheSpy.mockImplementation(async () => toolPath); | ||||
|  | ||||
|       await main.run(); | ||||
|       expect(dlSpy).toHaveBeenCalled(); | ||||
|       expect(logSpy).toHaveBeenCalledWith( | ||||
|         `Acquiring ${version} - ${arch} from ${expectedUrl}` | ||||
|       ); | ||||
|     } | ||||
|   }, 100000); | ||||
|  | ||||
|   describe('nightly versions', () => { | ||||
|     it.each([ | ||||
|       [ | ||||
|   | ||||
| @@ -282,6 +282,43 @@ describe('setup-node', () => { | ||||
|     expect(cnSpy).toHaveBeenCalledWith(`::add-path::${expPath}${osm.EOL}`); | ||||
|   }); | ||||
|  | ||||
|   it('falls back to a version from node dist from mirror', async () => { | ||||
|     os.platform = 'linux'; | ||||
|     os.arch = 'x64'; | ||||
|  | ||||
|     // a version which is not in the manifest but is in node dist | ||||
|     const versionSpec = '11.15.0'; | ||||
|     const mirror = 'https://my_mirror_url'; | ||||
|     inputs['node-version'] = versionSpec; | ||||
|     inputs['always-auth'] = false; | ||||
|     inputs['token'] = 'faketoken'; | ||||
|     inputs['mirror'] = mirror; | ||||
|     inputs['mirror-token'] = 'faketoken'; | ||||
|  | ||||
|     // ... but not in the local cache | ||||
|     findSpy.mockImplementation(() => ''); | ||||
|  | ||||
|     dlSpy.mockImplementation(async () => '/some/temp/path'); | ||||
|     const toolPath = path.normalize('/cache/node/11.15.0/x64'); | ||||
|     exSpy.mockImplementation(async () => '/some/other/temp/path'); | ||||
|     cacheSpy.mockImplementation(async () => toolPath); | ||||
|  | ||||
|     await main.run(); | ||||
|  | ||||
|     const expPath = path.join(toolPath, 'bin'); | ||||
|  | ||||
|     expect(getManifestSpy).toHaveBeenCalled(); | ||||
|     expect(logSpy).toHaveBeenCalledWith( | ||||
|       `Attempting to download ${versionSpec}...` | ||||
|     ); | ||||
|     expect(logSpy).toHaveBeenCalledWith( | ||||
|       `Not found in manifest. Falling back to download directly from ${mirror}` | ||||
|     ); | ||||
|     expect(dlSpy).toHaveBeenCalled(); | ||||
|     expect(exSpy).toHaveBeenCalled(); | ||||
|     expect(cnSpy).toHaveBeenCalledWith(`::add-path::${expPath}${osm.EOL}`); | ||||
|   }); | ||||
|  | ||||
|   it('falls back to a version from node dist', async () => { | ||||
|     os.platform = 'linux'; | ||||
|     os.arch = 'x64'; | ||||
| @@ -828,4 +865,46 @@ describe('setup-node', () => { | ||||
|       } | ||||
|     ); | ||||
|   }); | ||||
|  | ||||
|   it('acquires specified architecture of node from mirror', async () => { | ||||
|     for (const {arch, version, osSpec} of [ | ||||
|       {arch: 'x86', version: '12.16.2', osSpec: 'win32'}, | ||||
|       {arch: 'x86', version: '14.0.0', osSpec: 'win32'} | ||||
|     ]) { | ||||
|       os.platform = osSpec; | ||||
|       os.arch = arch; | ||||
|       const fileExtension = os.platform === 'win32' ? '7z' : 'tar.gz'; | ||||
|       const platform = { | ||||
|         linux: 'linux', | ||||
|         darwin: 'darwin', | ||||
|         win32: 'win' | ||||
|       }[os.platform]; | ||||
|  | ||||
|       inputs['node-version'] = version; | ||||
|       inputs['architecture'] = arch; | ||||
|       inputs['always-auth'] = false; | ||||
|       inputs['token'] = 'faketoken'; | ||||
|       inputs['mirror'] = 'https://my_mirror_url'; | ||||
|       inputs['mirror-token'] = 'faketoken'; | ||||
|  | ||||
|       const expectedUrl = | ||||
|         arch === 'x64' | ||||
|           ? `https://github.com/actions/node-versions/releases/download/${version}/node-${version}-${platform}-${arch}.zip` | ||||
|           : `https://my_mirror_url/dist/v${version}/node-v${version}-${platform}-${arch}.${fileExtension}`; | ||||
|  | ||||
|       // ... but not in the local cache | ||||
|       findSpy.mockImplementation(() => ''); | ||||
|  | ||||
|       dlSpy.mockImplementation(async () => '/some/temp/path'); | ||||
|       const toolPath = path.normalize(`/cache/node/${version}/${arch}`); | ||||
|       exSpy.mockImplementation(async () => '/some/other/temp/path'); | ||||
|       cacheSpy.mockImplementation(async () => toolPath); | ||||
|  | ||||
|       await main.run(); | ||||
|       expect(dlSpy).toHaveBeenCalled(); | ||||
|       expect(logSpy).toHaveBeenCalledWith( | ||||
|         `Acquiring ${version} - ${arch} from ${expectedUrl}` | ||||
|       ); | ||||
|     } | ||||
|   }, 100000); | ||||
| }); | ||||
|   | ||||
| @@ -25,6 +25,10 @@ inputs: | ||||
|     description: 'Used to specify a package manager for caching in the default directory. Supported values: npm, yarn, pnpm.' | ||||
|   cache-dependency-path: | ||||
|     description: 'Used to specify the path to a dependency file: package-lock.json, yarn.lock, etc. Supports wildcards or a list of file names for caching multiple dependencies.' | ||||
|   mirror: | ||||
|     description: 'Used to specify an alternative mirror to downlooad Node.js binaries from' | ||||
|   mirror-token: | ||||
|     description: 'The token used as Authorization header when fetching from the mirror' | ||||
| # TODO: add input to control forcing to pull from cloud or dist. | ||||
| #       escape valve for someone having issues or needing the absolute latest which isn't cached yet | ||||
| outputs: | ||||
|   | ||||
							
								
								
									
										5951
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5951
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										6827
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6827
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @@ -418,3 +418,18 @@ Please refer to the [Ensuring workflow access to your package - Configuring a pa | ||||
|  | ||||
| ### always-auth input | ||||
| The always-auth input sets `always-auth=true` in .npmrc file. With this option set [npm](https://docs.npmjs.com/cli/v6/using-npm/config#always-auth)/yarn sends the authentication credentials when making a request to the registries. | ||||
|  | ||||
| ## Use private mirror | ||||
|  | ||||
| It is possible to use a private mirror hosting Node.js binaries. This mirror must be a full mirror of the official Node.js distribution. | ||||
| The mirror URL can be set using the `mirror` input. | ||||
| It is possible to specify a token to authenticate with the mirror using the `mirror-token` input. | ||||
| The token will be passed as a bearer token in the `Authorization` header. | ||||
|  | ||||
| ```yaml | ||||
| - uses: actions/setup-node@v4 | ||||
|   with: | ||||
|     node-version: '14.x' | ||||
|     mirror: 'https://nodejs.org/dist' | ||||
|     mirror-token: 'your-mirror-token' | ||||
| ``` | ||||
|   | ||||
							
								
								
									
										493
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										493
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -9,14 +9,14 @@ | ||||
|       "version": "4.0.0", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/cache": "^4.0.0", | ||||
|         "@actions/cache": "^4.0.3", | ||||
|         "@actions/core": "^1.11.1", | ||||
|         "@actions/exec": "^1.1.1", | ||||
|         "@actions/github": "^5.1.1", | ||||
|         "@actions/glob": "^0.4.0", | ||||
|         "@actions/glob": "^0.5.0", | ||||
|         "@actions/http-client": "^2.2.1", | ||||
|         "@actions/io": "^1.0.2", | ||||
|         "@actions/tool-cache": "^2.0.1", | ||||
|         "@actions/tool-cache": "^2.0.2", | ||||
|         "semver": "^7.6.3", | ||||
|         "uuid": "^9.0.1" | ||||
|       }, | ||||
| @@ -26,7 +26,7 @@ | ||||
|         "@types/semver": "^7.5.8", | ||||
|         "@typescript-eslint/eslint-plugin": "^5.54.0", | ||||
|         "@typescript-eslint/parser": "^5.54.0", | ||||
|         "@vercel/ncc": "^0.38.0", | ||||
|         "@vercel/ncc": "^0.38.3", | ||||
|         "eslint": "^8.57.0", | ||||
|         "eslint-config-prettier": "^8.6.0", | ||||
|         "eslint-plugin-jest": "^27.9.0", | ||||
| @@ -49,9 +49,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@actions/cache": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.0.tgz", | ||||
|       "integrity": "sha512-WIuxjnZ44lNYtIS4fqSaYvF00hORdy3cSin+jx8xNgBVGWnNIAiCBHjlwusVQlcgExoQC9pHXGrDsZyZr7rCDQ==", | ||||
|       "version": "4.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.3.tgz", | ||||
|       "integrity": "sha512-SvrqFtYJ7I48A/uXNkoJrnukx5weQv1fGquhs3+4nkByZThBH109KTIqj5x/cGV7JGNvb8dLPVywUOqX1fjiXg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/core": "^1.11.1", | ||||
| @@ -63,8 +63,7 @@ | ||||
|         "@azure/ms-rest-js": "^2.6.0", | ||||
|         "@azure/storage-blob": "^12.13.0", | ||||
|         "@protobuf-ts/plugin": "^2.9.4", | ||||
|         "semver": "^6.3.1", | ||||
|         "twirp-ts": "^2.5.0" | ||||
|         "semver": "^6.3.1" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@actions/cache/node_modules/@actions/glob": { | ||||
| @@ -107,6 +106,7 @@ | ||||
|       "version": "5.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/github/-/github-5.1.1.tgz", | ||||
|       "integrity": "sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/http-client": "^2.0.1", | ||||
|         "@octokit/core": "^3.6.0", | ||||
| @@ -115,9 +115,10 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@actions/glob": { | ||||
|       "version": "0.4.0", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.4.0.tgz", | ||||
|       "integrity": "sha512-+eKIGFhsFa4EBwaf/GMyzCdWrXWymGXfFmZU3FHQvYS8mPcHtTtZONbkcqqUMzw9mJ/pImEBFET1JNifhqGsAQ==", | ||||
|       "version": "0.5.0", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.5.0.tgz", | ||||
|       "integrity": "sha512-tST2rjPvJLRZLuT9NMUtyBjvj9Yo0MiJS3ow004slMvm8GFM+Zv9HvMJ7HWzfUyJnGrJvDsYkWBaaG3YKXRtCw==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/core": "^1.9.1", | ||||
|         "minimatch": "^3.0.4" | ||||
| @@ -138,16 +139,16 @@ | ||||
|       "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==" | ||||
|     }, | ||||
|     "node_modules/@actions/tool-cache": { | ||||
|       "version": "2.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/tool-cache/-/tool-cache-2.0.1.tgz", | ||||
|       "integrity": "sha512-iPU+mNwrbA8jodY8eyo/0S/QqCKDajiR8OxWTnSk/SnYg0sj8Hp4QcUEVC1YFpHWXtrfbQrE13Jz4k4HXJQKcA==", | ||||
|       "version": "2.0.2", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/tool-cache/-/tool-cache-2.0.2.tgz", | ||||
|       "integrity": "sha512-fBhNNOWxuoLxztQebpOaWu6WeVmuwa77Z+DxIZ1B+OYvGkGQon6kTVg6Z32Cb13WCuw0szqonK+hh03mJV7Z6w==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/core": "^1.2.6", | ||||
|         "@actions/core": "^1.11.1", | ||||
|         "@actions/exec": "^1.0.0", | ||||
|         "@actions/http-client": "^2.0.1", | ||||
|         "@actions/io": "^1.1.1", | ||||
|         "semver": "^6.1.0", | ||||
|         "uuid": "^3.3.2" | ||||
|         "semver": "^6.1.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@actions/tool-cache/node_modules/semver": { | ||||
| @@ -158,15 +159,6 @@ | ||||
|         "semver": "bin/semver.js" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@actions/tool-cache/node_modules/uuid": { | ||||
|       "version": "3.4.0", | ||||
|       "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", | ||||
|       "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", | ||||
|       "deprecated": "Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.", | ||||
|       "bin": { | ||||
|         "uuid": "bin/uuid" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@ampproject/remapping": { | ||||
|       "version": "2.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", | ||||
| @@ -356,89 +348,20 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame": { | ||||
|       "version": "7.22.13", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", | ||||
|       "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", | ||||
|       "version": "7.26.2", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", | ||||
|       "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@babel/highlight": "^7.22.13", | ||||
|         "chalk": "^2.4.2" | ||||
|         "@babel/helper-validator-identifier": "^7.25.9", | ||||
|         "js-tokens": "^4.0.0", | ||||
|         "picocolors": "^1.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/ansi-styles": { | ||||
|       "version": "3.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||||
|       "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "color-convert": "^1.9.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/chalk": { | ||||
|       "version": "2.4.2", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", | ||||
|       "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "ansi-styles": "^3.2.1", | ||||
|         "escape-string-regexp": "^1.0.5", | ||||
|         "supports-color": "^5.3.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/color-convert": { | ||||
|       "version": "1.9.3", | ||||
|       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | ||||
|       "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "color-name": "1.1.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/color-name": { | ||||
|       "version": "1.1.3", | ||||
|       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | ||||
|       "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { | ||||
|       "version": "1.0.5", | ||||
|       "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", | ||||
|       "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=0.8.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/has-flag": { | ||||
|       "version": "3.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | ||||
|       "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/code-frame/node_modules/supports-color": { | ||||
|       "version": "5.5.0", | ||||
|       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | ||||
|       "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "has-flag": "^3.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/compat-data": { | ||||
|       "version": "7.23.2", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", | ||||
| @@ -626,19 +549,21 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/helper-string-parser": { | ||||
|       "version": "7.22.5", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", | ||||
|       "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", | ||||
|       "version": "7.25.9", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", | ||||
|       "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/helper-validator-identifier": { | ||||
|       "version": "7.22.20", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", | ||||
|       "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", | ||||
|       "version": "7.25.9", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", | ||||
|       "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
|       } | ||||
| @@ -653,109 +578,28 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/helpers": { | ||||
|       "version": "7.23.2", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", | ||||
|       "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", | ||||
|       "version": "7.27.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", | ||||
|       "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@babel/template": "^7.22.15", | ||||
|         "@babel/traverse": "^7.23.2", | ||||
|         "@babel/types": "^7.23.0" | ||||
|         "@babel/template": "^7.27.0", | ||||
|         "@babel/types": "^7.27.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight": { | ||||
|       "version": "7.22.20", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", | ||||
|       "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@babel/helper-validator-identifier": "^7.22.20", | ||||
|         "chalk": "^2.4.2", | ||||
|         "js-tokens": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/ansi-styles": { | ||||
|       "version": "3.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||||
|       "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "color-convert": "^1.9.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/chalk": { | ||||
|       "version": "2.4.2", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", | ||||
|       "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "ansi-styles": "^3.2.1", | ||||
|         "escape-string-regexp": "^1.0.5", | ||||
|         "supports-color": "^5.3.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/color-convert": { | ||||
|       "version": "1.9.3", | ||||
|       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | ||||
|       "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "color-name": "1.1.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/color-name": { | ||||
|       "version": "1.1.3", | ||||
|       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | ||||
|       "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/escape-string-regexp": { | ||||
|       "version": "1.0.5", | ||||
|       "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", | ||||
|       "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=0.8.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/has-flag": { | ||||
|       "version": "3.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | ||||
|       "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/highlight/node_modules/supports-color": { | ||||
|       "version": "5.5.0", | ||||
|       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | ||||
|       "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "has-flag": "^3.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/parser": { | ||||
|       "version": "7.23.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", | ||||
|       "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", | ||||
|       "version": "7.27.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", | ||||
|       "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@babel/types": "^7.27.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "parser": "bin/babel-parser.js" | ||||
|       }, | ||||
| @@ -941,14 +785,15 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/template": { | ||||
|       "version": "7.22.15", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", | ||||
|       "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", | ||||
|       "version": "7.27.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", | ||||
|       "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@babel/code-frame": "^7.22.13", | ||||
|         "@babel/parser": "^7.22.15", | ||||
|         "@babel/types": "^7.22.15" | ||||
|         "@babel/code-frame": "^7.26.2", | ||||
|         "@babel/parser": "^7.27.0", | ||||
|         "@babel/types": "^7.27.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
| @@ -985,14 +830,14 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/types": { | ||||
|       "version": "7.23.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", | ||||
|       "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", | ||||
|       "version": "7.27.0", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", | ||||
|       "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@babel/helper-string-parser": "^7.22.5", | ||||
|         "@babel/helper-validator-identifier": "^7.22.20", | ||||
|         "to-fast-properties": "^2.0.0" | ||||
|         "@babel/helper-string-parser": "^7.25.9", | ||||
|         "@babel/helper-validator-identifier": "^7.25.9" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
| @@ -1575,6 +1420,7 @@ | ||||
|       "version": "2.5.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", | ||||
|       "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/types": "^6.0.3" | ||||
|       } | ||||
| @@ -1583,6 +1429,7 @@ | ||||
|       "version": "3.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", | ||||
|       "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/auth-token": "^2.4.4", | ||||
|         "@octokit/graphql": "^4.5.8", | ||||
| @@ -1597,6 +1444,7 @@ | ||||
|       "version": "6.0.12", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", | ||||
|       "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/types": "^6.0.3", | ||||
|         "is-plain-object": "^5.0.0", | ||||
| @@ -1607,6 +1455,7 @@ | ||||
|       "version": "4.8.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", | ||||
|       "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/request": "^5.6.0", | ||||
|         "@octokit/types": "^6.0.3", | ||||
| @@ -1616,12 +1465,14 @@ | ||||
|     "node_modules/@octokit/openapi-types": { | ||||
|       "version": "12.11.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", | ||||
|       "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==" | ||||
|       "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", | ||||
|       "license": "MIT" | ||||
|     }, | ||||
|     "node_modules/@octokit/plugin-paginate-rest": { | ||||
|       "version": "2.21.3", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", | ||||
|       "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/types": "^6.40.0" | ||||
|       }, | ||||
| @@ -1633,6 +1484,7 @@ | ||||
|       "version": "5.16.2", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", | ||||
|       "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/types": "^6.39.0", | ||||
|         "deprecation": "^2.3.1" | ||||
| @@ -1645,6 +1497,7 @@ | ||||
|       "version": "5.6.3", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", | ||||
|       "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/endpoint": "^6.0.1", | ||||
|         "@octokit/request-error": "^2.1.0", | ||||
| @@ -1658,6 +1511,7 @@ | ||||
|       "version": "2.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", | ||||
|       "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/types": "^6.0.3", | ||||
|         "deprecation": "^2.0.0", | ||||
| @@ -1668,6 +1522,7 @@ | ||||
|       "version": "6.41.0", | ||||
|       "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", | ||||
|       "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@octokit/openapi-types": "^12.11.0" | ||||
|       } | ||||
| @@ -1681,15 +1536,15 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@protobuf-ts/plugin": { | ||||
|       "version": "2.9.4", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.9.4.tgz", | ||||
|       "integrity": "sha512-Db5Laq5T3mc6ERZvhIhkj1rn57/p8gbWiCKxQWbZBBl20wMuqKoHbRw4tuD7FyXi+IkwTToaNVXymv5CY3E8Rw==", | ||||
|       "version": "2.9.5", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.9.5.tgz", | ||||
|       "integrity": "sha512-KCzNRTFye837XdfPjS85gGzxgPGVDR3W8Px2G3etXuouNog9W+Cr+U0IBTFADrRWXC2x+OSNjXxrdZEiw+H5Cw==", | ||||
|       "license": "Apache-2.0", | ||||
|       "dependencies": { | ||||
|         "@protobuf-ts/plugin-framework": "^2.9.4", | ||||
|         "@protobuf-ts/protoc": "^2.9.4", | ||||
|         "@protobuf-ts/runtime": "^2.9.4", | ||||
|         "@protobuf-ts/runtime-rpc": "^2.9.4", | ||||
|         "@protobuf-ts/plugin-framework": "^2.9.5", | ||||
|         "@protobuf-ts/protoc": "^2.9.5", | ||||
|         "@protobuf-ts/runtime": "^2.9.5", | ||||
|         "@protobuf-ts/runtime-rpc": "^2.9.5", | ||||
|         "typescript": "^3.9" | ||||
|       }, | ||||
|       "bin": { | ||||
| @@ -1698,12 +1553,12 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@protobuf-ts/plugin-framework": { | ||||
|       "version": "2.9.4", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.9.4.tgz", | ||||
|       "integrity": "sha512-9nuX1kjdMliv+Pes8dQCKyVhjKgNNfwxVHg+tx3fLXSfZZRcUHMc1PMwB9/vTvc6gBKt9QGz5ERqSqZc0++E9A==", | ||||
|       "version": "2.9.5", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.9.5.tgz", | ||||
|       "integrity": "sha512-DYNQ8Ga3xwPZMfaZGRCnDOcEdQZK9MorTXngVoFLnHWEE8zLhUjFVtdkChZtTih6rl8Z6akyA7hRgj/GrJF58Q==", | ||||
|       "license": "(Apache-2.0 AND BSD-3-Clause)", | ||||
|       "dependencies": { | ||||
|         "@protobuf-ts/runtime": "^2.9.4", | ||||
|         "@protobuf-ts/runtime": "^2.9.5", | ||||
|         "typescript": "^3.9" | ||||
|       } | ||||
|     }, | ||||
| @@ -1734,27 +1589,27 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@protobuf-ts/protoc": { | ||||
|       "version": "2.9.4", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.9.4.tgz", | ||||
|       "integrity": "sha512-hQX+nOhFtrA+YdAXsXEDrLoGJqXHpgv4+BueYF0S9hy/Jq0VRTVlJS1Etmf4qlMt/WdigEes5LOd/LDzui4GIQ==", | ||||
|       "version": "2.9.5", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.9.5.tgz", | ||||
|       "integrity": "sha512-n6a7OHfr/Ubw483L6kNJB0wBCe/Ops0A652zB6J6nR2x1o+pjVFrMCeeQQsqxkYpQwQ8FCIETSxrMpfOBKTIvQ==", | ||||
|       "license": "Apache-2.0", | ||||
|       "bin": { | ||||
|         "protoc": "protoc.js" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@protobuf-ts/runtime": { | ||||
|       "version": "2.9.4", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.9.4.tgz", | ||||
|       "integrity": "sha512-vHRFWtJJB/SiogWDF0ypoKfRIZ41Kq+G9cEFj6Qm1eQaAhJ1LDFvgZ7Ja4tb3iLOQhz0PaoPnnOijF1qmEqTxg==", | ||||
|       "version": "2.9.5", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.9.5.tgz", | ||||
|       "integrity": "sha512-SsumigRe3IqNTCQvVZUqDQExsKF72eyAMiWlYb5Jwj3eU4z8UH7JLlSfb/Wjidz4b/chTN6zh5AXBSKl0Asm3A==", | ||||
|       "license": "(Apache-2.0 AND BSD-3-Clause)" | ||||
|     }, | ||||
|     "node_modules/@protobuf-ts/runtime-rpc": { | ||||
|       "version": "2.9.4", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.9.4.tgz", | ||||
|       "integrity": "sha512-y9L9JgnZxXFqH5vD4d7j9duWvIJ7AShyBRoNKJGhu9Q27qIbchfzli66H9RvrQNIFk5ER7z1Twe059WZGqERcA==", | ||||
|       "version": "2.9.5", | ||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.9.5.tgz", | ||||
|       "integrity": "sha512-NWAb1TaV4CR+BknZr1WRVT5Ws2AupVwGgRNes4oPAFrgLNXQotDFl2E6pmsjPwME8sAgJVzeSr7bUqQVyoAK2A==", | ||||
|       "license": "Apache-2.0", | ||||
|       "dependencies": { | ||||
|         "@protobuf-ts/runtime": "^2.9.4" | ||||
|         "@protobuf-ts/runtime": "^2.9.5" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@sinclair/typebox": { | ||||
| @@ -2132,10 +1987,11 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@vercel/ncc": { | ||||
|       "version": "0.38.1", | ||||
|       "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.1.tgz", | ||||
|       "integrity": "sha512-IBBb+iI2NLu4VQn3Vwldyi2QwaXt5+hTyh58ggAMoCGE6DJmPvwL3KPBWcJl1m9LYPChBLE980Jw+CS4Wokqxw==", | ||||
|       "version": "0.38.3", | ||||
|       "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.3.tgz", | ||||
|       "integrity": "sha512-rnK6hJBS6mwc+Bkab+PGPs9OiS0i/3kdTO+CkI8V0/VrW3vmz7O2Pxjw/owOlmo6PKEIxRSeZKv/kuL9itnpYA==", | ||||
|       "dev": true, | ||||
|       "license": "MIT", | ||||
|       "bin": { | ||||
|         "ncc": "dist/ncc/cli.js" | ||||
|       } | ||||
| @@ -2396,7 +2252,8 @@ | ||||
|     "node_modules/before-after-hook": { | ||||
|       "version": "2.2.3", | ||||
|       "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", | ||||
|       "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==" | ||||
|       "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", | ||||
|       "license": "Apache-2.0" | ||||
|     }, | ||||
|     "node_modules/brace-expansion": { | ||||
|       "version": "1.1.11", | ||||
| @@ -2487,16 +2344,6 @@ | ||||
|         "node": ">=6" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/camel-case": { | ||||
|       "version": "4.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", | ||||
|       "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "pascal-case": "^3.1.2", | ||||
|         "tslib": "^2.0.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/camelcase": { | ||||
|       "version": "5.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", | ||||
| @@ -2631,15 +2478,6 @@ | ||||
|         "node": ">= 0.8" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/commander": { | ||||
|       "version": "6.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", | ||||
|       "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", | ||||
|       "license": "MIT", | ||||
|       "engines": { | ||||
|         "node": ">= 6" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/concat-map": { | ||||
|       "version": "0.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | ||||
| @@ -2743,7 +2581,8 @@ | ||||
|     "node_modules/deprecation": { | ||||
|       "version": "2.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", | ||||
|       "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" | ||||
|       "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", | ||||
|       "license": "ISC" | ||||
|     }, | ||||
|     "node_modules/detect-newline": { | ||||
|       "version": "3.1.0", | ||||
| @@ -2787,19 +2626,6 @@ | ||||
|         "node": ">=6.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/dot-object": { | ||||
|       "version": "2.1.5", | ||||
|       "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-2.1.5.tgz", | ||||
|       "integrity": "sha512-xHF8EP4XH/Ba9fvAF2LDd5O3IITVolerVV6xvkxoM8zlGEiCUrggpAnHyOoKJKCrhvPcGATFAUwIujj7bRG5UA==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "commander": "^6.1.0", | ||||
|         "glob": "^7.1.6" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "dot-object": "bin/dot-object" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/electron-to-chromium": { | ||||
|       "version": "1.4.563", | ||||
|       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", | ||||
| @@ -3362,7 +3188,8 @@ | ||||
|     "node_modules/fs.realpath": { | ||||
|       "version": "1.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", | ||||
|       "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" | ||||
|       "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/fsevents": { | ||||
|       "version": "2.3.3", | ||||
| @@ -3430,6 +3257,7 @@ | ||||
|       "version": "7.2.3", | ||||
|       "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", | ||||
|       "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "fs.realpath": "^1.0.0", | ||||
|         "inflight": "^1.0.4", | ||||
| @@ -3597,6 +3425,7 @@ | ||||
|       "version": "1.0.6", | ||||
|       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", | ||||
|       "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "once": "^1.3.0", | ||||
|         "wrappy": "1" | ||||
| @@ -3605,7 +3434,8 @@ | ||||
|     "node_modules/inherits": { | ||||
|       "version": "2.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", | ||||
|       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" | ||||
|       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/is-arrayish": { | ||||
|       "version": "0.2.1", | ||||
| @@ -3686,6 +3516,7 @@ | ||||
|       "version": "5.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", | ||||
|       "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", | ||||
|       "license": "MIT", | ||||
|       "engines": { | ||||
|         "node": ">=0.10.0" | ||||
|       } | ||||
| @@ -4333,7 +4164,8 @@ | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", | ||||
|       "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", | ||||
|       "dev": true | ||||
|       "dev": true, | ||||
|       "license": "MIT" | ||||
|     }, | ||||
|     "node_modules/js-yaml": { | ||||
|       "version": "4.1.0", | ||||
| @@ -4456,12 +4288,6 @@ | ||||
|         "url": "https://github.com/sponsors/sindresorhus" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/lodash": { | ||||
|       "version": "4.17.21", | ||||
|       "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", | ||||
|       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", | ||||
|       "license": "MIT" | ||||
|     }, | ||||
|     "node_modules/lodash.memoize": { | ||||
|       "version": "4.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", | ||||
| @@ -4474,15 +4300,6 @@ | ||||
|       "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/lower-case": { | ||||
|       "version": "2.0.2", | ||||
|       "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", | ||||
|       "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "tslib": "^2.0.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/lru-cache": { | ||||
|       "version": "5.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", | ||||
| @@ -4607,16 +4424,6 @@ | ||||
|       "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/no-case": { | ||||
|       "version": "3.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", | ||||
|       "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "lower-case": "^2.0.2", | ||||
|         "tslib": "^2.0.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/node-fetch": { | ||||
|       "version": "2.7.0", | ||||
|       "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", | ||||
| @@ -4778,16 +4585,6 @@ | ||||
|         "url": "https://github.com/sponsors/sindresorhus" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/pascal-case": { | ||||
|       "version": "3.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", | ||||
|       "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "no-case": "^3.0.4", | ||||
|         "tslib": "^2.0.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/path-exists": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", | ||||
| @@ -4801,6 +4598,7 @@ | ||||
|       "version": "1.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | ||||
|       "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=0.10.0" | ||||
|       } | ||||
| @@ -4820,12 +4618,6 @@ | ||||
|       "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/path-to-regexp": { | ||||
|       "version": "6.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", | ||||
|       "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", | ||||
|       "license": "MIT" | ||||
|     }, | ||||
|     "node_modules/path-type": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", | ||||
| @@ -4939,6 +4731,7 @@ | ||||
|       "version": "2.8.8", | ||||
|       "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", | ||||
|       "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", | ||||
|       "dev": true, | ||||
|       "bin": { | ||||
|         "prettier": "bin-prettier.js" | ||||
|       }, | ||||
| @@ -5396,15 +5189,6 @@ | ||||
|       "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/to-fast-properties": { | ||||
|       "version": "2.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", | ||||
|       "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/to-regex-range": { | ||||
|       "version": "5.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", | ||||
| @@ -5465,16 +5249,6 @@ | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ts-poet": { | ||||
|       "version": "4.15.0", | ||||
|       "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.15.0.tgz", | ||||
|       "integrity": "sha512-sLLR8yQBvHzi9d4R1F4pd+AzQxBfzOSSjfxiJxQhkUoH5bL7RsAC6wgvtVUQdGqiCsyS9rT6/8X2FI7ipdir5g==", | ||||
|       "license": "Apache-2.0", | ||||
|       "dependencies": { | ||||
|         "lodash": "^4.17.15", | ||||
|         "prettier": "^2.5.1" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/tslib": { | ||||
|       "version": "2.6.2", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", | ||||
| @@ -5509,35 +5283,6 @@ | ||||
|         "node": ">=0.6.11 <=0.7.0 || >=0.7.3" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/twirp-ts": { | ||||
|       "version": "2.5.0", | ||||
|       "resolved": "https://registry.npmjs.org/twirp-ts/-/twirp-ts-2.5.0.tgz", | ||||
|       "integrity": "sha512-JTKIK5Pf/+3qCrmYDFlqcPPUx+ohEWKBaZy8GL8TmvV2VvC0SXVyNYILO39+GCRbqnuP6hBIF+BVr8ZxRz+6fw==", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@protobuf-ts/plugin-framework": "^2.0.7", | ||||
|         "camel-case": "^4.1.2", | ||||
|         "dot-object": "^2.1.4", | ||||
|         "path-to-regexp": "^6.2.0", | ||||
|         "ts-poet": "^4.5.0", | ||||
|         "yaml": "^1.10.2" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "protoc-gen-twirp_ts": "protoc-gen-twirp_ts" | ||||
|       }, | ||||
|       "peerDependencies": { | ||||
|         "@protobuf-ts/plugin": "^2.5.0", | ||||
|         "ts-proto": "^1.81.3" | ||||
|       }, | ||||
|       "peerDependenciesMeta": { | ||||
|         "@protobuf-ts/plugin": { | ||||
|           "optional": true | ||||
|         }, | ||||
|         "ts-proto": { | ||||
|           "optional": true | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/type-check": { | ||||
|       "version": "0.4.0", | ||||
|       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", | ||||
| @@ -5602,9 +5347,10 @@ | ||||
|       "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" | ||||
|     }, | ||||
|     "node_modules/universal-user-agent": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", | ||||
|       "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" | ||||
|       "version": "6.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", | ||||
|       "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", | ||||
|       "license": "ISC" | ||||
|     }, | ||||
|     "node_modules/update-browserslist-db": { | ||||
|       "version": "1.0.13", | ||||
| @@ -5779,15 +5525,6 @@ | ||||
|       "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/yaml": { | ||||
|       "version": "1.10.2", | ||||
|       "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", | ||||
|       "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", | ||||
|       "license": "ISC", | ||||
|       "engines": { | ||||
|         "node": ">= 6" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/yargs": { | ||||
|       "version": "17.7.2", | ||||
|       "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", | ||||
|   | ||||
| @@ -25,14 +25,14 @@ | ||||
|   "author": "GitHub", | ||||
|   "license": "MIT", | ||||
|   "dependencies": { | ||||
|     "@actions/cache": "^4.0.0", | ||||
|     "@actions/cache": "^4.0.3", | ||||
|     "@actions/core": "^1.11.1", | ||||
|     "@actions/exec": "^1.1.1", | ||||
|     "@actions/github": "^5.1.1", | ||||
|     "@actions/glob": "^0.4.0", | ||||
|     "@actions/glob": "^0.5.0", | ||||
|     "@actions/http-client": "^2.2.1", | ||||
|     "@actions/io": "^1.0.2", | ||||
|     "@actions/tool-cache": "^2.0.1", | ||||
|     "@actions/tool-cache": "^2.0.2", | ||||
|     "semver": "^7.6.3", | ||||
|     "uuid": "^9.0.1" | ||||
|   }, | ||||
| @@ -42,7 +42,7 @@ | ||||
|     "@types/semver": "^7.5.8", | ||||
|     "@typescript-eslint/eslint-plugin": "^5.54.0", | ||||
|     "@typescript-eslint/parser": "^5.54.0", | ||||
|     "@vercel/ncc": "^0.38.0", | ||||
|     "@vercel/ncc": "^0.38.3", | ||||
|     "eslint": "^8.57.0", | ||||
|     "eslint-config-prettier": "^8.6.0", | ||||
|     "eslint-plugin-jest": "^27.9.0", | ||||
|   | ||||
| @@ -24,7 +24,7 @@ export default abstract class BaseDistribution { | ||||
|     }); | ||||
|   } | ||||
|  | ||||
|   protected abstract getDistributionUrl(): string; | ||||
|   protected abstract getDistributionUrl(mirror: string): string; | ||||
|  | ||||
|   public async setupNodeJs() { | ||||
|     let nodeJsVersions: INodeVersion[] | undefined; | ||||
| @@ -97,10 +97,19 @@ export default abstract class BaseDistribution { | ||||
|   } | ||||
|  | ||||
|   protected async getNodeJsVersions(): Promise<INodeVersion[]> { | ||||
|     const initialUrl = this.getDistributionUrl(); | ||||
|     const initialUrl = this.getDistributionUrl(this.nodeInfo.mirror); | ||||
|     const dataUrl = `${initialUrl}/index.json`; | ||||
|  | ||||
|     const response = await this.httpClient.getJson<INodeVersion[]>(dataUrl); | ||||
|     const headers = {}; | ||||
|  | ||||
|     if (this.nodeInfo.mirrorToken) { | ||||
|       headers['Authorization'] = `Bearer ${this.nodeInfo.mirrorToken}`; | ||||
|     } | ||||
|  | ||||
|     const response = await this.httpClient.getJson<INodeVersion[]>( | ||||
|       dataUrl, | ||||
|       headers | ||||
|     ); | ||||
|     return response.result || []; | ||||
|   } | ||||
|  | ||||
| @@ -117,7 +126,7 @@ export default abstract class BaseDistribution { | ||||
|           ? `${fileName}.zip` | ||||
|           : `${fileName}.7z` | ||||
|         : `${fileName}.tar.gz`; | ||||
|     const initialUrl = this.getDistributionUrl(); | ||||
|     const initialUrl = this.getDistributionUrl(this.nodeInfo.mirror); | ||||
|     const url = `${initialUrl}/v${version}/${urlFileName}`; | ||||
|  | ||||
|     return <INodeVersionInfo>{ | ||||
| @@ -134,7 +143,11 @@ export default abstract class BaseDistribution { | ||||
|       `Acquiring ${info.resolvedVersion} - ${info.arch} from ${info.downloadUrl}` | ||||
|     ); | ||||
|     try { | ||||
|       downloadPath = await tc.downloadTool(info.downloadUrl); | ||||
|       downloadPath = await tc.downloadTool( | ||||
|         info.downloadUrl, | ||||
|         undefined, | ||||
|         this.nodeInfo.mirrorToken | ||||
|       ); | ||||
|     } catch (err) { | ||||
|       if ( | ||||
|         err instanceof tc.HTTPError && | ||||
| @@ -168,7 +181,7 @@ export default abstract class BaseDistribution { | ||||
|     version: string, | ||||
|     arch: string = os.arch() | ||||
|   ): Promise<string> { | ||||
|     const initialUrl = this.getDistributionUrl(); | ||||
|     const initialUrl = this.getDistributionUrl(this.nodeInfo.mirror); | ||||
|     const osArch: string = this.translateArchToDistUrl(arch); | ||||
|  | ||||
|     // Create temporary folder to download to | ||||
| @@ -185,18 +198,34 @@ export default abstract class BaseDistribution { | ||||
|  | ||||
|       core.info(`Downloading only node binary from ${exeUrl}`); | ||||
|  | ||||
|       const exePath = await tc.downloadTool(exeUrl); | ||||
|       const exePath = await tc.downloadTool( | ||||
|         exeUrl, | ||||
|         undefined, | ||||
|         this.nodeInfo.mirrorToken | ||||
|       ); | ||||
|       await io.cp(exePath, path.join(tempDir, 'node.exe')); | ||||
|       const libPath = await tc.downloadTool(libUrl); | ||||
|       const libPath = await tc.downloadTool( | ||||
|         libUrl, | ||||
|         undefined, | ||||
|         this.nodeInfo.mirrorToken | ||||
|       ); | ||||
|       await io.cp(libPath, path.join(tempDir, 'node.lib')); | ||||
|     } catch (err) { | ||||
|       if (err instanceof tc.HTTPError && err.httpStatusCode == 404) { | ||||
|         exeUrl = `${initialUrl}/v${version}/node.exe`; | ||||
|         libUrl = `${initialUrl}/v${version}/node.lib`; | ||||
|  | ||||
|         const exePath = await tc.downloadTool(exeUrl); | ||||
|         const exePath = await tc.downloadTool( | ||||
|           exeUrl, | ||||
|           undefined, | ||||
|           this.nodeInfo.mirrorToken | ||||
|         ); | ||||
|         await io.cp(exePath, path.join(tempDir, 'node.exe')); | ||||
|         const libPath = await tc.downloadTool(libUrl); | ||||
|         const libPath = await tc.downloadTool( | ||||
|           libUrl, | ||||
|           undefined, | ||||
|           this.nodeInfo.mirrorToken | ||||
|         ); | ||||
|         await io.cp(libPath, path.join(tempDir, 'node.lib')); | ||||
|       } else { | ||||
|         throw err; | ||||
|   | ||||
| @@ -4,6 +4,8 @@ export interface NodeInputs { | ||||
|   auth?: string; | ||||
|   checkLatest: boolean; | ||||
|   stable: boolean; | ||||
|   mirror: string; | ||||
|   mirrorToken: string; | ||||
| } | ||||
|  | ||||
| export interface INodeVersionInfo { | ||||
|   | ||||
| @@ -7,7 +7,8 @@ export default class NightlyNodejs extends BasePrereleaseNodejs { | ||||
|     super(nodeInfo); | ||||
|   } | ||||
|  | ||||
|   protected getDistributionUrl(): string { | ||||
|     return 'https://nodejs.org/download/nightly'; | ||||
|   protected getDistributionUrl(mirror: string): string { | ||||
|     const url = mirror || 'https://nodejs.org'; | ||||
|     return `${url}/download/nightly`; | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -84,7 +84,7 @@ export default class OfficialBuilds extends BaseDistribution { | ||||
|         downloadPath = await tc.downloadTool( | ||||
|           versionInfo.downloadUrl, | ||||
|           undefined, | ||||
|           this.nodeInfo.auth | ||||
|           this.nodeInfo.mirror ? this.nodeInfo.mirrorToken : this.nodeInfo.auth | ||||
|         ); | ||||
|  | ||||
|         if (downloadPath) { | ||||
| @@ -96,7 +96,9 @@ export default class OfficialBuilds extends BaseDistribution { | ||||
|         } | ||||
|       } else { | ||||
|         core.info( | ||||
|           'Not found in manifest. Falling back to download directly from Node' | ||||
|           `Not found in manifest. Falling back to download directly from ${ | ||||
|             this.nodeInfo.mirror || 'Node' | ||||
|           }` | ||||
|         ); | ||||
|       } | ||||
|     } catch (err) { | ||||
| @@ -176,8 +178,9 @@ export default class OfficialBuilds extends BaseDistribution { | ||||
|     return version; | ||||
|   } | ||||
|  | ||||
|   protected getDistributionUrl(): string { | ||||
|     return `https://nodejs.org/dist`; | ||||
|   protected getDistributionUrl(mirror: string): string { | ||||
|     const url = mirror || 'https://nodejs.org'; | ||||
|     return `${url}/dist`; | ||||
|   } | ||||
|  | ||||
|   private getManifest(): Promise<tc.IToolRelease[]> { | ||||
| @@ -185,7 +188,7 @@ export default class OfficialBuilds extends BaseDistribution { | ||||
|     return tc.getManifestFromRepo( | ||||
|       'actions', | ||||
|       'node-versions', | ||||
|       this.nodeInfo.auth, | ||||
|       this.nodeInfo.mirror ? this.nodeInfo.mirrorToken : this.nodeInfo.auth, | ||||
|       'main' | ||||
|     ); | ||||
|   } | ||||
|   | ||||
| @@ -6,7 +6,8 @@ export default class RcBuild extends BaseDistribution { | ||||
|     super(nodeInfo); | ||||
|   } | ||||
|  | ||||
|   getDistributionUrl(): string { | ||||
|     return 'https://nodejs.org/download/rc'; | ||||
|   getDistributionUrl(mirror: string): string { | ||||
|     const url = mirror || 'https://nodejs.org'; | ||||
|     return `${url}/download/rc`; | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -7,7 +7,8 @@ export default class CanaryBuild extends BasePrereleaseNodejs { | ||||
|     super(nodeInfo); | ||||
|   } | ||||
|  | ||||
|   protected getDistributionUrl(): string { | ||||
|     return 'https://nodejs.org/download/v8-canary'; | ||||
|   protected getDistributionUrl(mirror: string): string { | ||||
|     const url = mirror || 'https://nodejs.org'; | ||||
|     return `${url}/download/v8-canary`; | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -36,6 +36,8 @@ export async function run() { | ||||
|     if (version) { | ||||
|       const token = core.getInput('token'); | ||||
|       const auth = !token ? undefined : `token ${token}`; | ||||
|       const mirror = core.getInput('mirror'); | ||||
|       const mirrorToken = core.getInput('mirror-token'); | ||||
|       const stable = | ||||
|         (core.getInput('stable') || 'true').toUpperCase() === 'TRUE'; | ||||
|       const checkLatest = | ||||
| @@ -45,7 +47,9 @@ export async function run() { | ||||
|         checkLatest, | ||||
|         auth, | ||||
|         stable, | ||||
|         arch | ||||
|         arch, | ||||
|         mirror, | ||||
|         mirrorToken | ||||
|       }; | ||||
|       const nodeDistribution = getNodejsDistribution(nodejsInfo); | ||||
|       await nodeDistribution.setupNodeJs(); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user