upgrade @action/cache from 4.0.0 to 4.0.2 (#766)

* actions/cache upgrade to 4.0.2

* check failures fix

* fix for licensed check failure
This commit is contained in:
aparnajyothi-y
2025-03-19 23:50:08 +05:30
committed by GitHub
parent 799ee7c97e
commit b8ebb8ba1d
29 changed files with 216 additions and 10504 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
---
name: "@actions/cache"
version: 4.0.0
version: 4.0.2
type: npm
summary: Actions cache lib
homepage: https://github.com/actions/toolkit/tree/main/packages/cache
+27 -2
View File
@@ -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
@@ -11,12 +11,17 @@ licenses:
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,
@@ -24,19 +29,24 @@ licenses:
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
@@ -44,6 +54,7 @@ licenses:
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
@@ -57,15 +68,18 @@ licenses:
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
@@ -81,19 +95,24 @@ licenses:
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
@@ -110,12 +129,14 @@ licenses:
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
@@ -123,10 +144,12 @@ licenses:
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,
@@ -136,6 +159,7 @@ licenses:
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
@@ -147,6 +171,7 @@ licenses:
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,
@@ -157,4 +182,4 @@ 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.
notices: []
notices: []
+1 -1
View File
@@ -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.
+28 -6
View File
@@ -1,14 +1,14 @@
---
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
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
@@ -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: []
+1 -1
View File
@@ -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
+27 -2
View File
@@ -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
@@ -11,12 +11,17 @@ licenses:
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,
@@ -24,19 +29,24 @@ licenses:
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
@@ -44,6 +54,7 @@ licenses:
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
@@ -57,15 +68,18 @@ licenses:
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
@@ -81,19 +95,24 @@ licenses:
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
@@ -110,12 +129,14 @@ licenses:
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
@@ -123,10 +144,12 @@ licenses:
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,
@@ -136,6 +159,7 @@ licenses:
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
@@ -147,6 +171,7 @@ licenses:
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,
@@ -157,4 +182,4 @@ 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.
notices: []
notices: []
-42
View File
@@ -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
View File
@@ -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
View File
@@ -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: []
-45
View File
@@ -1,45 +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: []
-27
View File
@@ -1,27 +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
View File
@@ -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
View File
@@ -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: []
...
-46
View File
@@ -1,46 +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
View File
@@ -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
View File
@@ -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: []
-26
View File
@@ -1,26 +0,0 @@
---
name: once
version: 1.4.0
type: npm
summary: Run a function exactly one time
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.
notices: []
-42
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -1,3585 +0,0 @@
---
name: prettier
version: 2.8.8
type: npm
summary: Prettier is an opinionated code formatter
homepage: https://prettier.io
license: mit
licenses:
- sources: LICENSE
text: "# Prettier license\n\nPrettier is released under the MIT license:\n\nCopyright
© James Long and contributors\n\nPermission 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:\n\nThe above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n\nTHE 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.\n\n## Licenses of bundled dependencies\n\nThe published Prettier artifact
additionally contains code with the following licenses:\nMIT, ISC, BSD-2-Clause,
BSD-3-Clause, Apache-2.0, 0BSD\n\n## Bundled dependencies\n\n### @angular/compiler@v12.2.16\n\nLicense:
MIT\nBy: angular\nRepository: <https://github.com/angular/angular.git>\n\n----------------------------------------\n\n###
@babel/code-frame@v7.18.6\n\nLicense: MIT\nBy: The Babel Team\nRepository: <https://github.com/babel/babel.git>\n\n>
MIT License\n>\n> Copyright (c) 2014-present Sebastian McKenzie and other contributors\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> \"Software\"), to
deal in the Software without restriction, including\n> without limitation the
rights to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or
sell copies of the Software, and to\n> permit persons to whom the Software is
furnished to do so, subject to\n> the following conditions:\n>\n> The above copyright
notice and this permission notice shall be\n> included in all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION\n> WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n### @babel/helper-validator-identifier@v7.19.1\n\nLicense:
MIT\nBy: The Babel Team\nRepository: <https://github.com/babel/babel.git>\n\n>
MIT License\n>\n> Copyright (c) 2014-present Sebastian McKenzie and other contributors\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> \"Software\"), to
deal in the Software without restriction, including\n> without limitation the
rights to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or
sell copies of the Software, and to\n> permit persons to whom the Software is
furnished to do so, subject to\n> the following conditions:\n>\n> The above copyright
notice and this permission notice shall be\n> included in all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION\n> WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n### @babel/highlight@v7.18.6\n\nLicense:
MIT\nBy: The Babel Team\nRepository: <https://github.com/babel/babel.git>\n\n>
MIT License\n>\n> Copyright (c) 2014-present Sebastian McKenzie and other contributors\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> \"Software\"), to
deal in the Software without restriction, including\n> without limitation the
rights to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or
sell copies of the Software, and to\n> permit persons to whom the Software is
furnished to do so, subject to\n> the following conditions:\n>\n> The above copyright
notice and this permission notice shall be\n> included in all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION\n> WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n### @babel/parser@v7.21.3\n\nLicense:
MIT\nBy: The Babel Team\nRepository: <https://github.com/babel/babel.git>\n\n>
Copyright (C) 2012-2014 by various contributors (see AUTHORS)\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
@glimmer/env@v0.1.7\n\nLicense: MIT\n\n> Copyright (c) 2017 Martin Muñoz and contributors.\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy of\n>
this software and associated documentation files (the \"Software\"), to deal in\n>
the Software without restriction, including without limitation the rights to\n>
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n>
of the Software, and to permit persons to whom the Software is furnished to do\n>
so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### @glimmer/syntax@v0.84.2\n\nLicense:
MIT\n\n> Copyright (c) 2015 Tilde, Inc.\n>\n> Permission is hereby granted, free
of charge, to any person obtaining a copy of\n> this software and associated documentation
files (the \"Software\"), to deal in\n> the Software without restriction, including
without limitation the rights to\n> use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies\n> of the Software, and to permit persons to whom
the Software is furnished to do\n> so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
@glimmer/util@v0.84.2\n\nLicense: MIT\n\n> Copyright (c) 2015 Tilde, Inc.\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy of\n>
this software and associated documentation files (the \"Software\"), to deal in\n>
the Software without restriction, including without limitation the rights to\n>
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n>
of the Software, and to permit persons to whom the Software is furnished to do\n>
so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### @handlebars/parser@v2.0.0\n\nLicense:
ISC\nRepository: <git+https://github.com/handlebars-lang/handlebars-parser.git>\n\n----------------------------------------\n\n###
@iarna/toml@v2.2.5\n\nLicense: ISC\nBy: Rebecca Turner\nRepository: <git+https://github.com/iarna/iarna-toml.git>\n\n>
Copyright (c) 2016, Rebecca Turner <me@re-becca.org>\n>\n> Permission to use,
copy, modify, and/or distribute this software for any\n> purpose with or without
fee is hereby granted, provided that the above\n> copyright notice and this permission
notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n>
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
@nodelib/fs.scandir@v2.1.5\n\nLicense: MIT\n\n> The MIT License (MIT)\n>\n> Copyright
(c) Denis Malinochkin\n>\n> Permission is hereby granted, free of charge, to any
person obtaining a copy\n> of this software and associated documentation files
(the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
@nodelib/fs.stat@v2.0.5\n\nLicense: MIT\n\n> The MIT License (MIT)\n>\n> Copyright
(c) Denis Malinochkin\n>\n> Permission is hereby granted, free of charge, to any
person obtaining a copy\n> of this software and associated documentation files
(the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
@nodelib/fs.walk@v1.2.8\n\nLicense: MIT\n\n> The MIT License (MIT)\n>\n> Copyright
(c) Denis Malinochkin\n>\n> Permission is hereby granted, free of charge, to any
person obtaining a copy\n> of this software and associated documentation files
(the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
@typescript-eslint/types@v5.55.0\n\nLicense: MIT\nRepository: <https://github.com/typescript-eslint/typescript-eslint.git>\n\n>
MIT License\n>\n> Copyright (c) 2019 typescript-eslint and other contributors\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### @typescript-eslint/typescript-estree@v5.55.0\n\nLicense:
BSD-2-Clause\nRepository: <https://github.com/typescript-eslint/typescript-eslint.git>\n\n>
TypeScript ESTree\n>\n> Originally extracted from:\n>\n> TypeScript ESLint Parser\n>
Copyright JS Foundation and other contributors, https://js.foundation\n>\n> Redistribution
and use in source and binary forms, with or without\n> modification, are permitted
provided that the following conditions are met:\n>\n> - Redistributions of source
code must retain the above copyright\n> notice, this list of conditions and
the following disclaimer.\n> - Redistributions in binary form must reproduce the
above copyright\n> notice, this list of conditions and the following disclaimer
in the\n> documentation and/or other materials provided with the distribution.\n>\n>
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n>
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n> IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n> ARE DISCLAIMED.
IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY\n> DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n> (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n> LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n> ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT\n> (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF\n> THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.\n\n----------------------------------------\n\n###
@typescript-eslint/visitor-keys@v5.55.0\n\nLicense: MIT\nRepository: <https://github.com/typescript-eslint/typescript-eslint.git>\n\n>
MIT License\n>\n> Copyright (c) 2019 typescript-eslint and other contributors\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### acorn@v8.8.1\n\nLicense:
MIT\nRepository: <https://github.com/acornjs/acorn.git>\n\n> MIT License\n>\n>
Copyright (C) 2012-2022 by various contributors (see AUTHORS)\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
acorn-jsx@v5.3.2\n\nLicense: MIT\nRepository: <https://github.com/acornjs/acorn-jsx>\n\n>
Copyright (C) 2012-2017 by Ingvar Stepanyan\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
aggregate-error@v3.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
angular-estree-parser@v2.5.1\n\nLicense: MIT\nBy: Ika\n\n> MIT License\n>\n> Copyright
(c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
angular-html-parser@v1.8.0\n\nLicense: MIT\nBy: Ika\n\n> MIT License\n>\n> Copyright
(c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
ansi-regex@v6.0.1\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
ansi-styles@v3.2.1\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
array-union@v2.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
bail@v1.0.5\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright
(c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby granted,
free of charge, to any person obtaining\n> a copy of this software and associated
documentation files (the\n> 'Software'), to deal in the Software without restriction,
including\n> without limitation the rights to use, copy, modify, merge, publish,\n>
distribute, sublicense, and/or sell copies of the Software, and to\n> permit persons
to whom the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n>
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
balanced-match@v1.0.2\n\nLicense: MIT\nBy: Julian Gruber\nRepository: <git://github.com/juliangruber/balanced-match.git>\n\n>
(MIT)\n>\n> Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy of\n>
this software and associated documentation files (the \"Software\"), to deal in\n>
the Software without restriction, including without limitation the rights to\n>
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n>
of the Software, and to permit persons to whom the Software is furnished to do\n>
so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### brace-expansion@v1.1.11\n\nLicense:
MIT\nBy: Julian Gruber\nRepository: <git://github.com/juliangruber/brace-expansion.git>\n\n>
MIT License\n>\n> Copyright (c) 2013 Julian Gruber <julian@juliangruber.com>\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### braces@v3.0.2\n\nLicense:
MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n> Copyright (c) 2014-2018,
Jon Schlinkert.\n>\n> Permission is hereby granted, free of charge, to any person
obtaining a copy\n> of this software and associated documentation files (the \"Software\"),
to deal\n> in the Software without restriction, including without limitation the
rights\n> to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell\n> copies of the Software, and to permit persons to whom the Software is\n>
furnished to do so, subject to the following conditions:\n>\n> The above copyright
notice and this permission notice shall be included in\n> all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### camelcase@v6.3.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### ccount@v1.1.0\n\nLicense:
MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright (c) 2015 Titus Wormer
<tituswormer@gmail.com>\n>\n> Permission is hereby granted, free of charge, to
any person obtaining\n> a copy of this software and associated documentation files
(the\n> 'Software'), to deal in the Software without restriction, including\n>
without limitation the rights to use, copy, modify, merge, publish,\n> distribute,
sublicense, and/or sell copies of the Software, and to\n> permit persons to whom
the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n>
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
chalk@v2.4.2\n\nLicense: MIT\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus
<sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n>
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
chalk@v5.0.1\n\nLicense: MIT\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus
<sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n>
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
character-entities@v1.2.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
character-entities-legacy@v1.1.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT
License)\n>\n> Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> 'Software'), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
character-reference-invalid@v1.1.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The
MIT License)\n>\n> Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> 'Software'), to deal
in the Software without restriction, including\n> without limitation the rights
to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or sell copies
of the Software, and to\n> permit persons to whom the Software is furnished to
do so, subject to\n> the following conditions:\n>\n> The above copyright notice
and this permission notice shall be\n> included in all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY
KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n>
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.\n\n----------------------------------------\n\n### ci-info@v3.3.0\n\nLicense:
MIT\nBy: Thomas Watson Steen\nRepository: <https://github.com/watson/ci-info.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2016-2021 Thomas Watson Steen\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n### clean-stack@v2.2.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### clone@v1.0.4\n\nLicense:
MIT\nBy: Paul Vorbach\nRepository: <git://github.com/pvorb/node-clone.git>\n\n>
Copyright © 2011-2015 Paul Vorbach <paul@vorba.ch>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy of\n> this software and
associated documentation files (the “Software”), to deal in\n> the Software without
restriction, including without limitation the rights to\n> use, copy, modify,
merge, publish, distribute, sublicense, and/or sell copies of\n> the Software,
and to permit persons to whom the Software is furnished to do so,\n> subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n>
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n>
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n>
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, OUT OF OR IN CONNECTION WITH THE\n>
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
collapse-white-space@v1.0.6\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
color-convert@v1.9.3\n\nLicense: MIT\nBy: Heather Arthur\n\n> Copyright (c) 2011-2016
Heather Arthur <fayearthur@gmail.com>\n>\n> Permission is hereby granted, free
of charge, to any person obtaining\n> a copy of this software and associated documentation
files (the\n> \"Software\"), to deal in the Software without restriction, including\n>
without limitation the rights to use, copy, modify, merge, publish,\n> distribute,
sublicense, and/or sell copies of the Software, and to\n> permit persons to whom
the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
BE\n> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n>
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n> WITH
THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
color-name@v1.1.3\n\nLicense: MIT\nBy: DY\nRepository: <git@github.com:dfcreative/color-name.git>\n\n>
The MIT License (MIT)\n> Copyright (c) 2015 Dmitry Ivanov\n> \n> 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:\n> \n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n> \n> 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.\n\n----------------------------------------\n\n###
commondir@v1.0.1\n\nLicense: MIT\nBy: James Halliday\nRepository: <http://github.com/substack/node-commondir.git>\n\n>
The MIT License\n>\n> Copyright (c) 2013 James Halliday (mail@substack.net)\n>\n>
Permission is hereby granted, free of charge, \n> to any person obtaining a copy
of this software and \n> associated documentation files (the \"Software\"), to
\n> deal in the Software without restriction, including \n> without limitation
the rights to use, copy, modify, \n> merge, publish, distribute, sublicense, and/or
sell \n> copies of the Software, and to permit persons to whom \n> the Software
is furnished to do so, \n> subject to the following conditions:\n>\n> The above
copyright notice and this permission notice \n> shall be included in all copies
or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\",
WITHOUT WARRANTY OF ANY KIND, \n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
TO THE WARRANTIES \n> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. \n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
FOR \n> ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE \n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
concat-map@v0.0.1\n\nLicense: MIT\nBy: James Halliday\nRepository: <git://github.com/substack/node-concat-map.git>\n\n>
This software is released under the MIT license:\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of\n> the Software, and to permit persons
to whom the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
cosmiconfig@v7.0.1\n\nLicense: MIT\nBy: David Clark\nRepository: <git+https://github.com/davidtheclark/cosmiconfig.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 David Clark\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
cross-spawn@v7.0.3\n\nLicense: MIT\nBy: André Cruz\nRepository: <git@github.com:moxystudio/node-cross-spawn.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2018 Made With MOXY Lda <hello@moxy.studio>\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### crypto-random-string@v4.0.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### css-units-list@v1.1.0\n\nLicense:
MIT\nBy: fisker Cheung\n\n> MIT License\n>\n> Copyright (c) fisker Cheung <lionkay@gmail.com>
(https://www.fiskercheung.com/)\n>\n> Permission is hereby granted, free of charge,
to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
dashify@v2.0.0\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2015-present, Jon Schlinkert.\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
defaults@v1.0.4\n\nLicense: MIT\nBy: Elijah Insua\nRepository: <git://github.com/sindresorhus/node-defaults.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2022 Sindre Sorhus\n> Copyright (c)
2015 Elijah Insua\n>\n> Permission is hereby granted, free of charge, to any person
obtaining a copy\n> of this software and associated documentation files (the \"Software\"),
to deal\n> in the Software without restriction, including without limitation the
rights\n> to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell\n> copies of the Software, and to permit persons to whom the Software is\n>
furnished to do so, subject to the following conditions:\n>\n> The above copyright
notice and this permission notice shall be included in\n> all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### del@v6.1.1\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### detect-newline@v3.1.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### diff@v5.0.0\n\nLicense:
BSD-3-Clause\nRepository: <git://github.com/kpdecker/jsdiff.git>\n\n> Software
License Agreement (BSD License)\n>\n> Copyright (c) 2009-2015, Kevin Decker <kpdecker@gmail.com>\n>\n>
All rights reserved.\n>\n> Redistribution and use of this software in source and
binary forms, with or without modification,\n> are permitted provided that the
following conditions are met:\n>\n> * Redistributions of source code must retain
the above\n> copyright notice, this list of conditions and the\n> following
disclaimer.\n>\n> * Redistributions in binary form must reproduce the above\n>
\ copyright notice, this list of conditions and the\n> following disclaimer
in the documentation and/or other\n> materials provided with the distribution.\n>\n>
* Neither the name of Kevin Decker nor the names of its\n> contributors may
be used to endorse or promote products\n> derived from this software without
specific prior\n> written permission.\n>\n> THIS SOFTWARE IS PROVIDED BY THE
COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR\n> IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\n>
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR\n> CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL\n> DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n> DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER\n> IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT\n> OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.\n\n----------------------------------------\n\n### dir-glob@v3.0.1\n\nLicense:
MIT\nBy: Kevin Mårtensson\n\n> MIT License\n>\n> Copyright (c) Kevin Mårtensson
<kevinmartensson@gmail.com> (github.com/kevva)\n>\n> 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:\n>\n>
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
editorconfig@v0.15.3\n\nLicense: MIT\nBy: EditorConfig Team\nRepository: <git://github.com/editorconfig/editorconfig-core-js.git>\n\n>
Copyright © 2012 EditorConfig Team\n>\n> Permission is hereby granted, free of
charge, to any person obtaining a copy\n> of this software and associated documentation
files (the “Software”), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
“AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
editorconfig-to-prettier@v1.0.0\n\nLicense: ISC\nBy: Joseph Frazier\nRepository:
<git+https://github.com/josephfrazier/editorconfig-to-prettier.git>\n\n----------------------------------------\n\n###
emoji-regex@v9.2.2\n\nLicense: MIT\nBy: Mathias Bynens\nRepository: <https://github.com/mathiasbynens/emoji-regex.git>\n\n>
Copyright Mathias Bynens <https://mathiasbynens.be/>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> \"Software\"), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n>
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
error-ex@v1.3.2\n\nLicense: MIT\n\n> The MIT License (MIT)\n>\n> Copyright (c)
2015 JD Ballard\n>\n> Permission is hereby granted, free of charge, to any person
obtaining a copy\n> of this software and associated documentation files (the \"Software\"),
to deal\n> in the Software without restriction, including without limitation the
rights\n> to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell\n> copies of the Software, and to permit persons to whom the Software is\n>
furnished to do so, subject to the following conditions:\n>\n> The above copyright
notice and this permission notice shall be included in\n> all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### escape-string-regexp@v1.0.5\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> The MIT License (MIT)\n>\n> Copyright (c) Sindre Sorhus
<sindresorhus@gmail.com> (sindresorhus.com)\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
escape-string-regexp@v5.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
eslint-visitor-keys@v3.3.0\n\nLicense: Apache-2.0\nBy: Toru Nagashima\n\n> Apache
License\n> Version 2.0, January 2004\n> http://www.apache.org/licenses/\n>\n>
\ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n>\n> 1. Definitions.\n>\n>
\ \"License\" shall mean the terms and conditions for use, reproduction,\n>
\ and distribution as defined by Sections 1 through 9 of this document.\n>\n>
\ \"Licensor\" shall mean the copyright owner or entity authorized by\n>
\ the copyright owner that is granting the License.\n>\n> \"Legal Entity\"
shall mean the union of the acting entity and all\n> other entities that
control, are controlled by, or are under common\n> control with that entity.
For the purposes of this definition,\n> \"control\" means (i) the power,
direct or indirect, to cause the\n> direction or management of such entity,
whether by contract or\n> otherwise, or (ii) ownership of fifty percent
(50%) or more of the\n> outstanding shares, or (iii) beneficial ownership
of such entity.\n>\n> \"You\" (or \"Your\") shall mean an individual or
Legal Entity\n> exercising permissions granted by this License.\n>\n> \"Source\"
form shall mean the preferred form for making modifications,\n> including
but not limited to software source code, documentation\n> source, and configuration
files.\n>\n> \"Object\" form shall mean any form resulting from mechanical\n>
\ transformation or translation of a Source form, including but\n> not
limited to compiled object code, generated documentation,\n> and conversions
to other media types.\n>\n> \"Work\" shall mean the work of authorship,
whether in Source or\n> Object form, made available under the License, as
indicated by a\n> copyright notice that is included in or attached to the
work\n> (an example is provided in the Appendix below).\n>\n> \"Derivative
Works\" shall mean any work, whether in Source or Object\n> form, that is
based on (or derived from) the Work and for which the\n> editorial revisions,
annotations, elaborations, or other modifications\n> represent, as a whole,
an original work of authorship. For the purposes\n> of this License, Derivative
Works shall not include works that remain\n> separable from, or merely link
(or bind by name) to the interfaces of,\n> the Work and Derivative Works
thereof.\n>\n> \"Contribution\" shall mean any work of authorship, including\n>
\ the original version of the Work and any modifications or additions\n>
\ to that Work or Derivative Works thereof, that is intentionally\n> submitted
to Licensor for inclusion in the Work by the copyright owner\n> or by an
individual or Legal Entity authorized to submit on behalf of\n> the copyright
owner. For the purposes of this definition, \"submitted\"\n> means any form
of electronic, verbal, or written communication sent\n> to the Licensor
or its representatives, including but not limited to\n> communication on
electronic mailing lists, source code control systems,\n> and issue tracking
systems that are managed by, or on behalf of, the\n> Licensor for the purpose
of discussing and improving the Work, but\n> excluding communication that
is conspicuously marked or otherwise\n> designated in writing by the copyright
owner as \"Not a Contribution.\"\n>\n> \"Contributor\" shall mean Licensor
and any individual or Legal Entity\n> on behalf of whom a Contribution has
been received by Licensor and\n> subsequently incorporated within the Work.\n>\n>
\ 2. Grant of Copyright License. Subject to the terms and conditions of\n> this
License, each Contributor hereby grants to You a perpetual,\n> worldwide,
non-exclusive, no-charge, royalty-free, irrevocable\n> copyright license
to reproduce, prepare Derivative Works of,\n> publicly display, publicly
perform, sublicense, and distribute the\n> Work and such Derivative Works
in Source or Object form.\n>\n> 3. Grant of Patent License. Subject to the
terms and conditions of\n> this License, each Contributor hereby grants
to You a perpetual,\n> worldwide, non-exclusive, no-charge, royalty-free,
irrevocable\n> (except as stated in this section) patent license to make,
have made,\n> use, offer to sell, sell, import, and otherwise transfer the
Work,\n> where such license applies only to those patent claims licensable\n>
\ by such Contributor that are necessarily infringed by their\n> Contribution(s)
alone or by combination of their Contribution(s)\n> with the Work to which
such Contribution(s) was submitted. If You\n> institute patent litigation
against any entity (including a\n> cross-claim or counterclaim in a lawsuit)
alleging that the Work\n> or a Contribution incorporated within the Work
constitutes direct\n> or contributory patent infringement, then any patent
licenses\n> granted to You under this License for that Work shall terminate\n>
\ as of the date such litigation is filed.\n>\n> 4. Redistribution. You
may reproduce and distribute copies of the\n> Work or Derivative Works thereof
in any medium, with or without\n> modifications, and in Source or Object
form, provided that You\n> meet the following conditions:\n>\n> (a)
You must give any other recipients of the Work or\n> Derivative Works
a copy of this License; and\n>\n> (b) You must cause any modified files
to carry prominent notices\n> stating that You changed the files; and\n>\n>
\ (c) You must retain, in the Source form of any Derivative Works\n> that
You distribute, all copyright, patent, trademark, and\n> attribution
notices from the Source form of the Work,\n> excluding those notices
that do not pertain to any part of\n> the Derivative Works; and\n>\n>
\ (d) If the Work includes a \"NOTICE\" text file as part of its\n> distribution,
then any Derivative Works that You distribute must\n> include a readable
copy of the attribution notices contained\n> within such NOTICE file,
excluding those notices that do not\n> pertain to any part of the Derivative
Works, in at least one\n> of the following places: within a NOTICE text
file distributed\n> as part of the Derivative Works; within the Source
form or\n> documentation, if provided along with the Derivative Works;
or,\n> within a display generated by the Derivative Works, if and\n>
\ wherever such third-party notices normally appear. The contents\n>
\ of the NOTICE file are for informational purposes only and\n> do
not modify the License. You may add Your own attribution\n> notices
within Derivative Works that You distribute, alongside\n> or as an addendum
to the NOTICE text from the Work, provided\n> that such additional attribution
notices cannot be construed\n> as modifying the License.\n>\n> You
may add Your own copyright statement to Your modifications and\n> may provide
additional or different license terms and conditions\n> for use, reproduction,
or distribution of Your modifications, or\n> for any such Derivative Works
as a whole, provided Your use,\n> reproduction, and distribution of the
Work otherwise complies with\n> the conditions stated in this License.\n>\n>
\ 5. Submission of Contributions. Unless You explicitly state otherwise,\n>
\ any Contribution intentionally submitted for inclusion in the Work\n> by
You to the Licensor shall be under the terms and conditions of\n> this License,
without any additional terms or conditions.\n> Notwithstanding the above,
nothing herein shall supersede or modify\n> the terms of any separate license
agreement you may have executed\n> with Licensor regarding such Contributions.\n>\n>
\ 6. Trademarks. This License does not grant permission to use the trade\n>
\ names, trademarks, service marks, or product names of the Licensor,\n>
\ except as required for reasonable and customary use in describing the\n>
\ origin of the Work and reproducing the content of the NOTICE file.\n>\n>
\ 7. Disclaimer of Warranty. Unless required by applicable law or\n> agreed
to in writing, Licensor provides the Work (and each\n> Contributor provides
its Contributions) on an \"AS IS\" BASIS,\n> WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or\n> implied, including, without limitation,
any warranties or conditions\n> of TITLE, NON-INFRINGEMENT, MERCHANTABILITY,
or FITNESS FOR A\n> PARTICULAR PURPOSE. You are solely responsible for determining
the\n> appropriateness of using or redistributing the Work and assume any\n>
\ risks associated with Your exercise of permissions under this License.\n>\n>
\ 8. Limitation of Liability. In no event and under no legal theory,\n> whether
in tort (including negligence), contract, or otherwise,\n> unless required
by applicable law (such as deliberate and grossly\n> negligent acts) or
agreed to in writing, shall any Contributor be\n> liable to You for damages,
including any direct, indirect, special,\n> incidental, or consequential
damages of any character arising as a\n> result of this License or out of
the use or inability to use the\n> Work (including but not limited to damages
for loss of goodwill,\n> work stoppage, computer failure or malfunction,
or any and all\n> other commercial damages or losses), even if such Contributor\n>
\ has been advised of the possibility of such damages.\n>\n> 9. Accepting
Warranty or Additional Liability. While redistributing\n> the Work or Derivative
Works thereof, You may choose to offer,\n> and charge a fee for, acceptance
of support, warranty, indemnity,\n> or other liability obligations and/or
rights consistent with this\n> License. However, in accepting such obligations,
You may act only\n> on Your own behalf and on Your sole responsibility,
not on behalf\n> of any other Contributor, and only if You agree to indemnify,\n>
\ defend, and hold each Contributor harmless for any liability\n> incurred
by, or claims asserted against, such Contributor by reason\n> of your accepting
any such warranty or additional liability.\n>\n> END OF TERMS AND CONDITIONS\n>\n>
\ APPENDIX: How to apply the Apache License to your work.\n>\n> To apply
the Apache License to your work, attach the following\n> boilerplate notice,
with the fields enclosed by brackets \"{}\"\n> replaced with your own identifying
information. (Don't include\n> the brackets!) The text should be enclosed
in the appropriate\n> comment syntax for the file format. We also recommend
that a\n> file or class name and description of purpose be included on the\n>
\ same \"printed page\" as the copyright notice for easier\n> identification
within third-party archives.\n>\n> Copyright contributors\n>\n> Licensed
under the Apache License, Version 2.0 (the \"License\");\n> you may not use
this file except in compliance with the License.\n> You may obtain a copy of
the License at\n>\n> http://www.apache.org/licenses/LICENSE-2.0\n>\n> Unless
required by applicable law or agreed to in writing, software\n> distributed
under the License is distributed on an \"AS IS\" BASIS,\n> WITHOUT WARRANTIES
OR CONDITIONS OF ANY KIND, either express or implied.\n> See the License for
the specific language governing permissions and\n> limitations under the License.\n\n----------------------------------------\n\n###
espree@v9.4.1\n\nLicense: BSD-2-Clause\nBy: Nicholas C. Zakas\n\n> BSD 2-Clause
License\n>\n> Copyright (c) Open JS Foundation\n> All rights reserved.\n>\n> Redistribution
and use in source and binary forms, with or without\n> modification, are permitted
provided that the following conditions are met:\n>\n> 1. Redistributions of source
code must retain the above copyright notice, this\n> list of conditions and
the following disclaimer.\n>\n> 2. Redistributions in binary form must reproduce
the above copyright notice,\n> this list of conditions and the following disclaimer
in the documentation\n> and/or other materials provided with the distribution.\n>\n>
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n>
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n> IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n> DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n> FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n> DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n> SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n> CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n> OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n> OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.\n\n----------------------------------------\n\n###
esutils@v2.0.3\n\nLicense: BSD-2-Clause\nRepository: <http://github.com/estools/esutils.git>\n\n>
Redistribution and use in source and binary forms, with or without\n> modification,
are permitted provided that the following conditions are met:\n>\n> * Redistributions
of source code must retain the above copyright\n> notice, this list of conditions
and the following disclaimer.\n> * Redistributions in binary form must reproduce
the above copyright\n> notice, this list of conditions and the following disclaimer
in the\n> documentation and/or other materials provided with the distribution.\n>\n>
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n>
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n> IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n> ARE DISCLAIMED.
IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY\n> DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n> (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n> LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n> ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT\n> (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF\n> THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.\n\n----------------------------------------\n\n###
execa@v6.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
extend@v3.0.2\n\nLicense: MIT\nBy: Stefan Thomas\nRepository: <https://github.com/justmoon/node-extend.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2014 Stefan Thomas\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> \"Software\"), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n>
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
fast-glob@v3.2.12\n\nLicense: MIT\nBy: Denis Malinochkin\n\n> The MIT License
(MIT)\n>\n> Copyright (c) Denis Malinochkin\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
fast-json-stable-stringify@v2.1.0\n\nLicense: MIT\nBy: James Halliday\nRepository:
<git://github.com/epoberezkin/fast-json-stable-stringify.git>\n\n> This software
is released under the MIT license:\n>\n> Copyright (c) 2017 Evgeny Poberezkin\n>
Copyright (c) 2013 James Halliday\n>\n> Permission is hereby granted, free of
charge, to any person obtaining a copy of\n> this software and associated documentation
files (the \"Software\"), to deal in\n> the Software without restriction, including
without limitation the rights to\n> use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of\n> the Software, and to permit persons to whom
the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
fastq@v1.14.0\n\nLicense: ISC\nBy: Matteo Collina\nRepository: <git+https://github.com/mcollina/fastq.git>\n\n>
Copyright (c) 2015-2020, Matteo Collina <matteo.collina@gmail.com>\n>\n> Permission
to use, copy, modify, and/or distribute this software for any\n> purpose with
or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF\n> OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
file-entry-cache@v6.0.1\n\nLicense: MIT\nBy: Roy Riojas\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2015 Roy Riojas\n>\n> Permission is hereby granted, free of charge,
to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
fill-range@v7.0.1\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-present, Jon Schlinkert.\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
find-cache-dir@v3.3.2\n\nLicense: MIT\n\n> MIT License\n>\n> Copyright (c) Sindre
Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
find-parent-dir@v0.3.1\n\nLicense: MIT\nBy: Thorsten Lorenz\nRepository: <git://github.com/thlorenz/find-parent-dir.git>\n\n>
Copyright 2013 Thorsten Lorenz. \n> All rights reserved.\n>\n> Permission is hereby
granted, free of charge, to any person\n> obtaining a copy of this software and
associated documentation\n> files (the \"Software\"), to deal in the Software
without\n> restriction, including without limitation the rights to use,\n> copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the\n> Software is furnished to do so, subject to
the following\n> conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n> OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT\n> HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n>
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n> OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
find-up@v4.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
flat-cache@v3.0.4\n\nLicense: MIT\nBy: Roy Riojas\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2015 Roy Riojas\n>\n> Permission is hereby granted, free of charge,
to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
flatted@v3.2.7\n\nLicense: ISC\nBy: Andrea Giammarchi\nRepository: <git+https://github.com/WebReflection/flatted.git>\n\n>
ISC License\n>\n> Copyright (c) 2018-2020, Andrea Giammarchi, @WebReflection\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n> REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n> AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n> INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n> LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE\n> OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR\n> PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
flatten@v1.0.3\n\nLicense: MIT\nBy: Joshua Holbrook\nRepository: <git+https://github.com/mk-pmb/flatten-js.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2016 Joshua Holbrook\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
flow-parser@v0.180.0\n\nLicense: MIT\nBy: Flow Team\nRepository: <https://github.com/facebook/flow.git>\n\n----------------------------------------\n\n###
fs.realpath@v1.0.0\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git+https://github.com/isaacs/fs.realpath.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n>\n>
----\n>\n> This library bundles a version of the `fs.realpath` and `fs.realpathSync`\n>
methods from Node.js v0.10 under the terms of the Node.js MIT license.\n>\n> Node's
license follows, also included at the header of `old.js` which contains\n> the
licensed code:\n>\n> Copyright Joyent, Inc. and other Node contributors.\n>\n>
\ Permission is hereby granted, free of charge, to any person obtaining a\n>
\ copy of this software and associated documentation files (the \"Software\"),\n>
\ to deal in the Software without restriction, including without limitation\n>
\ the rights to use, copy, modify, merge, publish, distribute, sublicense,\n>
\ and/or sell copies of the Software, and to permit persons to whom the\n> Software
is furnished to do so, subject to the following conditions:\n>\n> The above
copyright notice and this permission notice shall be included in\n> all copies
or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS
IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER\n> DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
function-bind@v1.1.1\n\nLicense: MIT\nBy: Raynos\n\n> Copyright (c) 2013 Raynos.\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### get-stdin@v8.0.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### get-stream@v6.0.1\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### glob@v7.2.3\n\nLicense:
ISC\nBy: Isaac Z. Schlueter\nRepository: <git://github.com/isaacs/node-glob.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n>\n>
## Glob Logo\n>\n> Glob's logo created by Tanya Brassie <http://tanyabrassie.com/>,
licensed\n> under a Creative Commons Attribution-ShareAlike 4.0 International
License\n> https://creativecommons.org/licenses/by-sa/4.0/\n\n----------------------------------------\n\n###
glob-parent@v5.1.2\n\nLicense: ISC\nBy: Gulp Team\n\n> The ISC License\n>\n> Copyright
(c) 2015, 2019 Elan Shanker\n>\n> Permission to use, copy, modify, and/or distribute
this software for any\n> purpose with or without fee is hereby granted, provided
that the above\n> copyright notice and this permission notice appear in all copies.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n>
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.\n\n----------------------------------------\n\n### globby@v11.1.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### graceful-fs@v4.2.10\n\nLicense:
ISC\nRepository: <https://github.com/isaacs/node-graceful-fs>\n\n> The ISC License\n>\n>
Copyright (c) 2011-2022 Isaac Z. Schlueter, Ben Noordhuis, and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
graphql@v15.6.1\n\nLicense: MIT\nRepository: <https://github.com/graphql/graphql-js.git>\n\n>
MIT License\n>\n> Copyright (c) GraphQL Contributors\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
has@v1.0.3\n\nLicense: MIT\nBy: Thiago de Arruda\nRepository: <git://github.com/tarruda/has.git>\n\n>
Copyright (c) 2013 Thiago de Arruda\n>\n> Permission is hereby granted, free of
charge, to any person\n> obtaining a copy of this software and associated documentation\n>
files (the \"Software\"), to deal in the Software without\n> restriction, including
without limitation the rights to use,\n> copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the\n> Software is furnished to do so, subject to the following\n> conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES\n> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n>
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n> WHETHER IN AN
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR\n> OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
has-flag@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
html-element-attributes@v3.1.0\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT
License)\n>\n> Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> 'Software'), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
html-tag-names@v2.0.1\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
human-signals@v3.0.1\n\nLicense: Apache-2.0\nBy: ehmicky\n\n> Apache License\n>
\ Version 2.0, January 2004\n> http://www.apache.org/licenses/\n>\n>
\ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n>\n> 1. Definitions.\n>\n>
\ \"License\" shall mean the terms and conditions for use, reproduction,\n>
\ and distribution as defined by Sections 1 through 9 of this document.\n>\n>
\ \"Licensor\" shall mean the copyright owner or entity authorized by\n>
\ the copyright owner that is granting the License.\n>\n> \"Legal Entity\"
shall mean the union of the acting entity and all\n> other entities that
control, are controlled by, or are under common\n> control with that entity.
For the purposes of this definition,\n> \"control\" means (i) the power,
direct or indirect, to cause the\n> direction or management of such entity,
whether by contract or\n> otherwise, or (ii) ownership of fifty percent
(50%) or more of the\n> outstanding shares, or (iii) beneficial ownership
of such entity.\n>\n> \"You\" (or \"Your\") shall mean an individual or
Legal Entity\n> exercising permissions granted by this License.\n>\n> \"Source\"
form shall mean the preferred form for making modifications,\n> including
but not limited to software source code, documentation\n> source, and configuration
files.\n>\n> \"Object\" form shall mean any form resulting from mechanical\n>
\ transformation or translation of a Source form, including but\n> not
limited to compiled object code, generated documentation,\n> and conversions
to other media types.\n>\n> \"Work\" shall mean the work of authorship,
whether in Source or\n> Object form, made available under the License, as
indicated by a\n> copyright notice that is included in or attached to the
work\n> (an example is provided in the Appendix below).\n>\n> \"Derivative
Works\" shall mean any work, whether in Source or Object\n> form, that is
based on (or derived from) the Work and for which the\n> editorial revisions,
annotations, elaborations, or other modifications\n> represent, as a whole,
an original work of authorship. For the purposes\n> of this License, Derivative
Works shall not include works that remain\n> separable from, or merely link
(or bind by name) to the interfaces of,\n> the Work and Derivative Works
thereof.\n>\n> \"Contribution\" shall mean any work of authorship, including\n>
\ the original version of the Work and any modifications or additions\n>
\ to that Work or Derivative Works thereof, that is intentionally\n> submitted
to Licensor for inclusion in the Work by the copyright owner\n> or by an
individual or Legal Entity authorized to submit on behalf of\n> the copyright
owner. For the purposes of this definition, \"submitted\"\n> means any form
of electronic, verbal, or written communication sent\n> to the Licensor
or its representatives, including but not limited to\n> communication on
electronic mailing lists, source code control systems,\n> and issue tracking
systems that are managed by, or on behalf of, the\n> Licensor for the purpose
of discussing and improving the Work, but\n> excluding communication that
is conspicuously marked or otherwise\n> designated in writing by the copyright
owner as \"Not a Contribution.\"\n>\n> \"Contributor\" shall mean Licensor
and any individual or Legal Entity\n> on behalf of whom a Contribution has
been received by Licensor and\n> subsequently incorporated within the Work.\n>\n>
\ 2. Grant of Copyright License. Subject to the terms and conditions of\n> this
License, each Contributor hereby grants to You a perpetual,\n> worldwide,
non-exclusive, no-charge, royalty-free, irrevocable\n> copyright license
to reproduce, prepare Derivative Works of,\n> publicly display, publicly
perform, sublicense, and distribute the\n> Work and such Derivative Works
in Source or Object form.\n>\n> 3. Grant of Patent License. Subject to the
terms and conditions of\n> this License, each Contributor hereby grants
to You a perpetual,\n> worldwide, non-exclusive, no-charge, royalty-free,
irrevocable\n> (except as stated in this section) patent license to make,
have made,\n> use, offer to sell, sell, import, and otherwise transfer the
Work,\n> where such license applies only to those patent claims licensable\n>
\ by such Contributor that are necessarily infringed by their\n> Contribution(s)
alone or by combination of their Contribution(s)\n> with the Work to which
such Contribution(s) was submitted. If You\n> institute patent litigation
against any entity (including a\n> cross-claim or counterclaim in a lawsuit)
alleging that the Work\n> or a Contribution incorporated within the Work
constitutes direct\n> or contributory patent infringement, then any patent
licenses\n> granted to You under this License for that Work shall terminate\n>
\ as of the date such litigation is filed.\n>\n> 4. Redistribution. You
may reproduce and distribute copies of the\n> Work or Derivative Works thereof
in any medium, with or without\n> modifications, and in Source or Object
form, provided that You\n> meet the following conditions:\n>\n> (a)
You must give any other recipients of the Work or\n> Derivative Works
a copy of this License; and\n>\n> (b) You must cause any modified files
to carry prominent notices\n> stating that You changed the files; and\n>\n>
\ (c) You must retain, in the Source form of any Derivative Works\n> that
You distribute, all copyright, patent, trademark, and\n> attribution
notices from the Source form of the Work,\n> excluding those notices
that do not pertain to any part of\n> the Derivative Works; and\n>\n>
\ (d) If the Work includes a \"NOTICE\" text file as part of its\n> distribution,
then any Derivative Works that You distribute must\n> include a readable
copy of the attribution notices contained\n> within such NOTICE file,
excluding those notices that do not\n> pertain to any part of the Derivative
Works, in at least one\n> of the following places: within a NOTICE text
file distributed\n> as part of the Derivative Works; within the Source
form or\n> documentation, if provided along with the Derivative Works;
or,\n> within a display generated by the Derivative Works, if and\n>
\ wherever such third-party notices normally appear. The contents\n>
\ of the NOTICE file are for informational purposes only and\n> do
not modify the License. You may add Your own attribution\n> notices
within Derivative Works that You distribute, alongside\n> or as an addendum
to the NOTICE text from the Work, provided\n> that such additional attribution
notices cannot be construed\n> as modifying the License.\n>\n> You
may add Your own copyright statement to Your modifications and\n> may provide
additional or different license terms and conditions\n> for use, reproduction,
or distribution of Your modifications, or\n> for any such Derivative Works
as a whole, provided Your use,\n> reproduction, and distribution of the
Work otherwise complies with\n> the conditions stated in this License.\n>\n>
\ 5. Submission of Contributions. Unless You explicitly state otherwise,\n>
\ any Contribution intentionally submitted for inclusion in the Work\n> by
You to the Licensor shall be under the terms and conditions of\n> this License,
without any additional terms or conditions.\n> Notwithstanding the above,
nothing herein shall supersede or modify\n> the terms of any separate license
agreement you may have executed\n> with Licensor regarding such Contributions.\n>\n>
\ 6. Trademarks. This License does not grant permission to use the trade\n>
\ names, trademarks, service marks, or product names of the Licensor,\n>
\ except as required for reasonable and customary use in describing the\n>
\ origin of the Work and reproducing the content of the NOTICE file.\n>\n>
\ 7. Disclaimer of Warranty. Unless required by applicable law or\n> agreed
to in writing, Licensor provides the Work (and each\n> Contributor provides
its Contributions) on an \"AS IS\" BASIS,\n> WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or\n> implied, including, without limitation,
any warranties or conditions\n> of TITLE, NON-INFRINGEMENT, MERCHANTABILITY,
or FITNESS FOR A\n> PARTICULAR PURPOSE. You are solely responsible for determining
the\n> appropriateness of using or redistributing the Work and assume any\n>
\ risks associated with Your exercise of permissions under this License.\n>\n>
\ 8. Limitation of Liability. In no event and under no legal theory,\n> whether
in tort (including negligence), contract, or otherwise,\n> unless required
by applicable law (such as deliberate and grossly\n> negligent acts) or
agreed to in writing, shall any Contributor be\n> liable to You for damages,
including any direct, indirect, special,\n> incidental, or consequential
damages of any character arising as a\n> result of this License or out of
the use or inability to use the\n> Work (including but not limited to damages
for loss of goodwill,\n> work stoppage, computer failure or malfunction,
or any and all\n> other commercial damages or losses), even if such Contributor\n>
\ has been advised of the possibility of such damages.\n>\n> 9. Accepting
Warranty or Additional Liability. While redistributing\n> the Work or Derivative
Works thereof, You may choose to offer,\n> and charge a fee for, acceptance
of support, warranty, indemnity,\n> or other liability obligations and/or
rights consistent with this\n> License. However, in accepting such obligations,
You may act only\n> on Your own behalf and on Your sole responsibility,
not on behalf\n> of any other Contributor, and only if You agree to indemnify,\n>
\ defend, and hold each Contributor harmless for any liability\n> incurred
by, or claims asserted against, such Contributor by reason\n> of your accepting
any such warranty or additional liability.\n>\n> END OF TERMS AND CONDITIONS\n>\n>
\ APPENDIX: How to apply the Apache License to your work.\n>\n> To apply
the Apache License to your work, attach the following\n> boilerplate notice,
with the fields enclosed by brackets \"[]\"\n> replaced with your own identifying
information. (Don't include\n> the brackets!) The text should be enclosed
in the appropriate\n> comment syntax for the file format. We also recommend
that a\n> file or class name and description of purpose be included on the\n>
\ same \"printed page\" as the copyright notice for easier\n> identification
within third-party archives.\n>\n> Copyright 2021 ehmicky <ehmicky@gmail.com>\n>\n>
\ Licensed under the Apache License, Version 2.0 (the \"License\");\n> you
may not use this file except in compliance with the License.\n> You may obtain
a copy of the License at\n>\n> http://www.apache.org/licenses/LICENSE-2.0\n>\n>
\ Unless required by applicable law or agreed to in writing, software\n> distributed
under the License is distributed on an \"AS IS\" BASIS,\n> WITHOUT WARRANTIES
OR CONDITIONS OF ANY KIND, either express or implied.\n> See the License for
the specific language governing permissions and\n> limitations under the License.\n\n----------------------------------------\n\n###
ignore@v5.2.0\n\nLicense: MIT\nBy: kael\nRepository: <git@github.com:kaelzhang/node-ignore.git>\n\n>
Copyright (c) 2013 Kael Zhang <i@kael.me>, contributors\n> http://kael.me/\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> \"Software\"), to
deal in the Software without restriction, including\n> without limitation the
rights to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or
sell copies of the Software, and to\n> permit persons to whom the Software is
furnished to do so, subject to\n> the following conditions:\n>\n> The above copyright
notice and this permission notice shall be\n> included in all copies or substantial
portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY
OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION\n> WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n### ignore@v5.2.4\n\nLicense:
MIT\nBy: kael\nRepository: <git@github.com:kaelzhang/node-ignore.git>\n\n> Copyright
(c) 2013 Kael Zhang <i@kael.me>, contributors\n> http://kael.me/\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> \"Software\"), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n>
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
import-fresh@v3.3.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
indent-string@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
indexes-of@v1.0.1\n\nLicense: MIT\nBy: Dominic Tarr\nRepository: <git://github.com/dominictarr/indexes-of.git>\n\n>
Copyright (c) 2013 Dominic Tarr\n>\n> Permission is hereby granted, free of charge,
\n> to any person obtaining a copy of this software and \n> associated documentation
files (the \"Software\"), to \n> deal in the Software without restriction, including
\n> without limitation the rights to use, copy, modify, \n> merge, publish, distribute,
sublicense, and/or sell \n> copies of the Software, and to permit persons to whom
\n> the Software is furnished to do so, \n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice \n> shall be included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, \n> EXPRESS OR IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES \n> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. \n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR \n> ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, \n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
THE \n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
inflight@v1.0.6\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <https://github.com/npm/inflight.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter\n>\n> Permission to use,
copy, modify, and/or distribute this software for any\n> purpose with or without
fee is hereby granted, provided that the above\n> copyright notice and this permission
notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
inherits@v2.0.4\n\nLicense: ISC\n\n> The ISC License\n>\n> Copyright (c) Isaac
Z. Schlueter\n>\n> Permission to use, copy, modify, and/or distribute this software
for any\n> purpose with or without fee is hereby granted, provided that the above\n>
copyright notice and this permission notice appear in all copies.\n>\n> THE SOFTWARE
IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n> REGARD TO
THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND\n> FITNESS.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n> INDIRECT, OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n> LOSS OF USE,
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n> OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n> PERFORMANCE OF THIS
SOFTWARE.\n\n----------------------------------------\n\n### is-alphabetical@v1.0.4\n\nLicense:
MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright (c) 2016 Titus Wormer
<tituswormer@gmail.com>\n>\n> Permission is hereby granted, free of charge, to
any person obtaining\n> a copy of this software and associated documentation files
(the\n> 'Software'), to deal in the Software without restriction, including\n>
without limitation the rights to use, copy, modify, merge, publish,\n> distribute,
sublicense, and/or sell copies of the Software, and to\n> permit persons to whom
the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n>
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-alphanumerical@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-arrayish@v0.2.1\n\nLicense: MIT\nBy: Qix\nRepository: <https://github.com/qix-/node-is-arrayish.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 JD Ballard\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
is-buffer@v2.0.5\n\nLicense: MIT\nBy: Feross Aboukhadijeh\nRepository: <git://github.com/feross/is-buffer.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) Feross Aboukhadijeh\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
is-core-module@v2.11.0\n\nLicense: MIT\nBy: Jordan Harband\nRepository: <git+https://github.com/inspect-js/is-core-module.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2014 Dave Justice\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy of\n> this software
and associated documentation files (the \"Software\"), to deal in\n> the Software
without restriction, including without limitation the rights to\n> use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of\n> the Software,
and to permit persons to whom the Software is furnished to do so,\n> subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n>
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n>
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n>
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-decimal@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-extglob@v2.1.1\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-2016, Jon Schlinkert\n>\n> Permission is hereby granted, free
of charge, to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
is-fullwidth-code-point@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
is-glob@v4.0.3\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-2017, Jon Schlinkert.\n>\n> Permission is hereby granted, free
of charge, to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
is-hexadecimal@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-number@v7.0.0\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-present, Jon Schlinkert.\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
is-path-cwd@v2.2.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
is-path-inside@v3.0.3\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
is-plain-obj@v2.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
is-stream@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
is-whitespace-character@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT
License)\n>\n> Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> 'Software'), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
is-word-character@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
isexe@v2.0.0\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git+https://github.com/isaacs/isexe.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
jest-docblock@v28.1.1\n\nLicense: MIT\nRepository: <https://github.com/facebook/jest.git>\n\n>
MIT License\n>\n> Copyright (c) Facebook, Inc. and its affiliates.\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
js-tokens@v4.0.0\n\nLicense: MIT\nBy: Simon Lydell\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014, 2015, 2016, 2017, 2018 Simon Lydell\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
json-parse-even-better-errors@v2.3.1\n\nLicense: MIT\nBy: Kat Marchán\n\n> Copyright
2017 Kat Marchán\n> Copyright npm, Inc.\n>\n> Permission is hereby granted, free
of charge, to any person obtaining a\n> copy of this software and associated documentation
files (the \"Software\"),\n> to deal in the Software without restriction, including
without limitation\n> the rights to use, copy, modify, merge, publish, distribute,
sublicense,\n> and/or sell copies of the Software, and to permit persons to whom
the\n> Software is furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER\n> DEALINGS IN THE SOFTWARE.\n>\n> ---\n>\n> This
library is a fork of 'better-json-errors' by Kat Marchán, extended and\n> distributed
under the terms of the MIT license above.\n\n----------------------------------------\n\n###
json5@v2.2.2\n\nLicense: MIT\nBy: Aseem Kishore\nRepository: <git+https://github.com/json5/json5.git>\n\n>
MIT License\n>\n> Copyright (c) 2012-2018 Aseem Kishore, and [others].\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n>\n> [others]:
https://github.com/json5/json5/contributors\n\n----------------------------------------\n\n###
leven@v2.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> The MIT License (MIT)\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### leven@v4.0.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### lines-and-columns@v1.2.4\n\nLicense:
MIT\nBy: Brian Donovan\nRepository: <https://github.com/eventualbuddha/lines-and-columns.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 Brian Donovan\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
lines-and-columns@v2.0.3\n\nLicense: MIT\nBy: Brian Donovan\nRepository: <https://github.com/eventualbuddha/lines-and-columns.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 Brian Donovan\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
linguist-languages@v7.21.0\n\nLicense: MIT\nBy: Ika\n\n> MIT License\n>\n> Copyright
(c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
locate-path@v5.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
lru-cache@v4.1.5\n\nLicense: ISC\nBy: Isaac Z. Schlueter\n\n> The ISC License\n>\n>
Copyright (c) Isaac Z. Schlueter and Contributors\n>\n> Permission to use, copy,
modify, and/or distribute this software for any\n> purpose with or without fee
is hereby granted, provided that the above\n> copyright notice and this permission
notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
lru-cache@v6.0.0\n\nLicense: ISC\nBy: Isaac Z. Schlueter\n\n> The ISC License\n>\n>
Copyright (c) Isaac Z. Schlueter and Contributors\n>\n> Permission to use, copy,
modify, and/or distribute this software for any\n> purpose with or without fee
is hereby granted, provided that the above\n> copyright notice and this permission
notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
make-dir@v3.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
map-age-cleaner@v0.1.3\n\nLicense: MIT\nBy: Sam Verschueren\n\n> MIT License\n>\n>
Copyright (c) Sam Verschueren <sam.verschueren@gmail.com> (github.com/SamVerschueren)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
markdown-escapes@v1.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
mem@v9.0.2\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
merge-stream@v2.0.0\n\nLicense: MIT\nBy: Stephen Sugden\n\n> The MIT License (MIT)\n>\n>
Copyright (c) Stephen Sugden <me@stephensugden.com> (stephensugden.com)\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### merge2@v1.4.1\n\nLicense:
MIT\nRepository: <git@github.com:teambition/merge2.git>\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-2020 Teambition\n>\n> Permission is hereby granted, free of
charge, to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
meriyah@v4.2.1\n\nLicense: ISC\nBy: Kenny F.\nRepository: <https://github.com/meriyah/meriyah>\n\n>
ISC License\n>\n> Copyright (c) 2019 and later, KFlash and others.\n>\n> 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.\n>\n> 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.\n\n----------------------------------------\n\n###
micromatch@v4.0.5\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2014-present, Jon Schlinkert.\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
mimic-fn@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
minimatch@v3.1.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git://github.com/isaacs/minimatch.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
minimist@v1.2.6\n\nLicense: MIT\nBy: James Halliday\nRepository: <git://github.com/substack/minimist.git>\n\n>
This software is released under the MIT license:\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of\n> the Software, and to permit persons
to whom the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
n-readlines@v1.0.1\n\nLicense: MIT\nBy: Yoan Arnaudov\nRepository: <http://github.com/nacholibre/node-readlines.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2013 Liucw\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy of\n> this software and
associated documentation files (the \"Software\"), to deal in\n> the Software
without restriction, including without limitation the rights to\n> use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of\n> the Software,
and to permit persons to whom the Software is furnished to do so,\n> subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n>
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n>
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n>
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
npm-run-path@v5.1.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
once@v1.4.0\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git://github.com/isaacs/once>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
onetime@v6.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
outdent@v0.8.0\n\nLicense: MIT\nBy: Andrew Bradley\nRepository: <git+https://github.com/cspotcode/outdent.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2016 Andrew Bradley\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
p-defer@v1.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> The MIT License (MIT)\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### p-limit@v2.3.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### p-locate@v4.1.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### p-map@v4.0.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### p-try@v2.2.0\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### parse-entities@v2.0.0\n\nLicense:
MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright (c) 2015 Titus Wormer
<mailto:tituswormer@gmail.com>\n>\n> Permission is hereby granted, free of charge,
to any person obtaining\n> a copy of this software and associated documentation
files (the\n> 'Software'), to deal in the Software without restriction, including\n>
without limitation the rights to use, copy, modify, merge, publish,\n> distribute,
sublicense, and/or sell copies of the Software, and to\n> permit persons to whom
the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n>
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
parse-json@v5.2.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
parse-srcset@v1.0.2\n\nLicense: MIT\nBy: Alex Bell\nRepository: <git+https://github.com/albell/parse-srcset.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2014 Alex Bell\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
path-exists@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
path-is-absolute@v1.0.1\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> The MIT License
(MIT)\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy\n>
of this software and associated documentation files (the \"Software\"), to deal\n>
in the Software without restriction, including without limitation the rights\n>
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies
of the Software, and to permit persons to whom the Software is\n> furnished to
do so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in\n> all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n### path-key@v3.1.1\n\nLicense:
MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com>
(sindresorhus.com)\n>\n> 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:\n>\n> The above copyright
notice and this permission notice shall be included in all copies or substantial
portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n### path-parse@v1.0.7\n\nLicense:
MIT\nBy: Javier Blanco\nRepository: <https://github.com/jbgutierrez/path-parse.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 Javier Blanco\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
path-type@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
picocolors@v0.2.1\n\nLicense: ISC\nBy: Alexey Raspopov\n\n> ISC License\n>\n>
Copyright (c) 2021 Alexey Raspopov, Kostiantyn Denysov, Anton Verinov\n>\n> Permission
to use, copy, modify, and/or distribute this software for any\n> purpose with
or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF\n> OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
picomatch@v2.3.1\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License (MIT)\n>\n>
Copyright (c) 2017-present, Jon Schlinkert.\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
pkg-dir@v4.2.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
please-upgrade-node@v3.2.0\n\nLicense: MIT\nBy: typicode\nRepository: <git+https://github.com/typicode/please-upgrade-node.git>\n\n>
MIT License\n>\n> Copyright (c) 2017 \n>\n> Permission is hereby granted, free
of charge, to any person obtaining a copy\n> of this software and associated documentation
files (the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
postcss@v7.0.39\n\nLicense: MIT\nBy: Andrey Sitnik\n\n> The MIT License (MIT)\n>\n>
Copyright 2013 Andrey Sitnik <andrey@sitnik.ru>\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of\n> the Software, and to permit persons
to whom the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
postcss-less@v3.1.4\n\nLicense: MIT\nBy: Denys Kniazevych\n\n> The MIT License
(MIT)\n>\n> Copyright (c) 2013 Andrey Sitnik <andrey@sitnik.ru>\n> Copyright (c)
2016 Denys Kniazevych <webschik@gmail.com>\n> Copyright (c) 2016 Pat Sissons <patricksissons@gmail.com>\n>
Copyright (c) 2017 Andrew Powell <andrew@shellscape.org>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
postcss-media-query-parser@v0.2.3\n\nLicense: MIT\nBy: dryoma\nRepository: <git+https://github.com/dryoma/postcss-media-query-parser.git>\n\n----------------------------------------\n\n###
postcss-scss@v2.1.1\n\nLicense: MIT\nBy: Andrey Sitnik\n\n> The MIT License (MIT)\n>\n>
Copyright 2013 Andrey Sitnik <andrey@sitnik.ru>\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of\n> the Software, and to permit persons
to whom the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
postcss-selector-parser@v2.2.3\n\nLicense: MIT\nBy: Ben Briggs\n\n> Copyright
(c) Ben Briggs <beneb.info@gmail.com> (http://beneb.info)\n>\n> Permission is
hereby granted, free of charge, to any person\n> obtaining a copy of this software
and associated documentation\n> files (the \"Software\"), to deal in the Software
without\n> restriction, including without limitation the rights to use,\n> copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the\n> Software is furnished to do so, subject to
the following\n> conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n> OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT\n> HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n>
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n> OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
postcss-values-parser@v2.0.1\n\nLicense: MIT\nBy: Andrew Powell (shellscape)\n\n>
Copyright (c) Andrew Powell <andrew@shellscape.org>\n>\n> Permission is hereby
granted, free of charge, to any person\n> obtaining a copy of this software and
associated documentation\n> files (the \"Software\"), to deal in the Software
without\n> restriction, including without limitation the rights to use,\n> copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the\n> Software is furnished to do so, subject to
the following\n> conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n> OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT\n> HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n>
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n> FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n> OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
pseudomap@v1.0.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git+https://github.com/isaacs/pseudomap.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
queue-microtask@v1.2.3\n\nLicense: MIT\nBy: Feross Aboukhadijeh\nRepository: <git://github.com/feross/queue-microtask.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) Feross Aboukhadijeh\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy of\n> this software
and associated documentation files (the \"Software\"), to deal in\n> the Software
without restriction, including without limitation the rights to\n> use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of\n> the Software,
and to permit persons to whom the Software is furnished to do so,\n> subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n>
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n>
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n>
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
remark-footnotes@v2.0.0\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2020 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
remark-math@v3.0.1\n\nLicense: MIT\nBy: Junyoung Choi\n\n----------------------------------------\n\n###
remark-parse@v8.0.3\n\nLicense: MIT\nBy: Titus Wormer\n\n----------------------------------------\n\n###
repeat-string@v1.6.1\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License
(MIT)\n>\n> Copyright (c) 2014-2016, Jon Schlinkert.\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
resolve@v1.22.1\n\nLicense: MIT\nBy: James Halliday\nRepository: <git://github.com/browserify/resolve.git>\n\n>
MIT License\n>\n> Copyright (c) 2012 James Halliday\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
resolve-from@v4.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
reusify@v1.0.4\n\nLicense: MIT\nBy: Matteo Collina\nRepository: <git+https://github.com/mcollina/reusify.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2015 Matteo Collina\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
rimraf@v3.0.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\n\n> The ISC License\n>\n>
Copyright (c) Isaac Z. Schlueter and Contributors\n>\n> Permission to use, copy,
modify, and/or distribute this software for any\n> purpose with or without fee
is hereby granted, provided that the above\n> copyright notice and this permission
notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
rollup-plugin-node-polyfills@v0.2.1\n\nLicense: MIT\nRepository: <git@github.com:ionic-team/rollup-plugin-node-polyfills.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2019 these people\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
run-parallel@v1.2.0\n\nLicense: MIT\nBy: Feross Aboukhadijeh\nRepository: <git://github.com/feross/run-parallel.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) Feross Aboukhadijeh\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy of\n> this software
and associated documentation files (the \"Software\"), to deal in\n> the Software
without restriction, including without limitation the rights to\n> use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of\n> the Software,
and to permit persons to whom the Software is furnished to do so,\n> subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n>
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n>
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n>
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
sdbm@v2.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
semver@v6.3.0\n\nLicense: ISC\n\n> The ISC License\n>\n> Copyright (c) Isaac Z.
Schlueter and Contributors\n>\n> Permission to use, copy, modify, and/or distribute
this software for any\n> purpose with or without fee is hereby granted, provided
that the above\n> copyright notice and this permission notice appear in all copies.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n>
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.\n\n----------------------------------------\n\n### semver@v7.3.7\n\nLicense:
ISC\nBy: GitHub Inc.\nRepository: <https://github.com/npm/node-semver.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
semver@v7.3.8\n\nLicense: ISC\nBy: GitHub Inc.\nRepository: <https://github.com/npm/node-semver.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
semver-compare@v1.0.0\n\nLicense: MIT\nBy: James Halliday\nRepository: <git://github.com/substack/semver-compare.git>\n\n>
This software is released under the MIT license:\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of\n> the Software, and to permit persons
to whom the Software is furnished to do so,\n> subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n> FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n> COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n> IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n> CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
shebang-command@v2.0.0\n\nLicense: MIT\nBy: Kevin Mårtensson\n\n> MIT License\n>\n>
Copyright (c) Kevin Mårtensson <kevinmartensson@gmail.com> (github.com/kevva)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
shebang-regex@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
sigmund@v1.0.1\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git://github.com/isaacs/sigmund>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
signal-exit@v3.0.7\n\nLicense: ISC\nBy: Ben Coe\nRepository: <https://github.com/tapjs/signal-exit.git>\n\n>
The ISC License\n>\n> Copyright (c) 2015, Contributors\n>\n> Permission to use,
copy, modify, and/or distribute this software\n> for any purpose with or without
fee is hereby granted, provided\n> that the above copyright notice and this permission
notice\n> appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE
AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE INCLUDING ALL
IMPLIED WARRANTIES\n> OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
BE\n> LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES\n> OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,\n> WHETHER
IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,\n> ARISING OUT
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
simple-html-tokenizer@v0.5.11\n\nLicense: MIT\nRepository: <https://github.com/tildeio/simple-html-tokenizer.git>\n\n>
Copyright (c) 2014 Yehuda Katz and contributors\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy of\n> this software and associated
documentation files (the \"Software\"), to deal in\n> the Software without restriction,
including without limitation the rights to\n> use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies\n> of the Software, and to permit persons
to whom the Software is furnished to do\n> so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in all\n>
copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
slash@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
state-toggle@v1.0.3\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
string-width@v5.0.1\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
strip-ansi@v7.0.1\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
strip-final-newline@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
supports-color@v5.5.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
temp-dir@v2.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
tempy@v2.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n> Copyright
(c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n> 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:\n>\n> The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the Software.\n>\n> 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.\n\n----------------------------------------\n\n###
to-regex-range@v5.0.1\n\nLicense: MIT\nBy: Jon Schlinkert\n\n> The MIT License
(MIT)\n>\n> Copyright (c) 2015-present, Jon Schlinkert.\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
trim@v0.0.1\n\nBy: TJ Holowaychuk\n\n----------------------------------------\n\n###
trim-trailing-lines@v1.1.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <mailto:tituswormer@gmail.com>\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> 'Software'), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
trough@v1.0.5\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright
(c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
tslib@v1.14.1\n\nLicense: 0BSD\nBy: Microsoft Corp.\nRepository: <https://github.com/Microsoft/tslib.git>\n\n>
Copyright (c) Microsoft Corporation.\n> \n> Permission to use, copy, modify, and/or
distribute this software for any\n> purpose with or without fee is hereby granted.\n>
\n> THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH\n> REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n>
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n>
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n>
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n>
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n> PERFORMANCE
OF THIS SOFTWARE.\n\n----------------------------------------\n\n### tsutils@v3.21.0\n\nLicense:
MIT\nBy: Klaus Meinhardt\nRepository: <https://github.com/ajafff/tsutils>\n\n>
The MIT License (MIT)\n> \n> Copyright (c) 2017 Klaus Meinhardt\n> \n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n> \n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>
\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n>
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n>
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
typescript@v5.0.2\n\nLicense: Apache-2.0\nBy: Microsoft Corp.\nRepository: <https://github.com/Microsoft/TypeScript.git>\n\n>
Apache License\n> \n> Version 2.0, January 2004\n> \n> http://www.apache.org/licenses/
\n> \n> TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n> \n> 1.
Definitions.\n> \n> \"License\" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.\n> \n> \"Licensor\"
shall mean the copyright owner or entity authorized by the copyright owner that
is granting the License.\n> \n> \"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.\n>
\n> \"You\" (or \"Your\") shall mean an individual or Legal Entity exercising
permissions granted by this License.\n> \n> \"Source\" form shall mean the preferred
form for making modifications, including but not limited to software source code,
documentation source, and configuration files.\n> \n> \"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.\n> \n> \"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).\n> \n> \"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.\n> \n> \"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.\"\n>
\n> \"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.\n> \n> 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.\n> \n> 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.\n> \n> 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:\n> \n> You must give any other recipients
of the Work or Derivative Works a copy of this License; and\n> \n> You must cause
any modified files to carry prominent notices stating that You changed the files;
and\n> \n> 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\n> \n> 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.\n> \n> 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.\n> \n> 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.\n> \n> 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.\n> \n> 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.\n> \n> 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.\n>
\n> END OF TERMS AND CONDITIONS\n\n----------------------------------------\n\n###
unherit@v1.1.3\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
unified@v9.2.1\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
uniq@v1.0.1\n\nLicense: MIT\nBy: Mikola Lysenko\nRepository: <git://github.com/mikolalysenko/uniq.git>\n\n>
The MIT License (MIT)\n>\n> Copyright (c) 2013 Mikola Lysenko\n>\n> Permission
is hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in\n> all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
unique-string@v3.0.0\n\nLicense: MIT\nBy: Sindre Sorhus\n\n> MIT License\n>\n>
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)\n>\n>
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:\n>\n> The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the Software.\n>\n>
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.\n\n----------------------------------------\n\n###
unist-util-is@v4.1.0\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT license)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
unist-util-remove-position@v2.0.1\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The
MIT License)\n>\n> Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n>
Permission is hereby granted, free of charge, to any person obtaining\n> a copy
of this software and associated documentation files (the\n> 'Software'), to deal
in the Software without restriction, including\n> without limitation the rights
to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or sell copies
of the Software, and to\n> permit persons to whom the Software is furnished to
do so, subject to\n> the following conditions:\n>\n> The above copyright notice
and this permission notice shall be\n> included in all copies or substantial portions
of the Software.\n>\n> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY
KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n>
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.\n\n----------------------------------------\n\n### unist-util-stringify-position@v2.0.3\n\nLicense:
MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright (c) 2016 Titus Wormer
<tituswormer@gmail.com>\n>\n> Permission is hereby granted, free of charge, to
any person obtaining\n> a copy of this software and associated documentation files
(the\n> 'Software'), to deal in the Software without restriction, including\n>
without limitation the rights to use, copy, modify, merge, publish,\n> distribute,
sublicense, and/or sell copies of the Software, and to\n> permit persons to whom
the Software is furnished to do so, subject to\n> the following conditions:\n>\n>
The above copyright notice and this permission notice shall be\n> included in
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n>
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n> SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
unist-util-visit@v2.0.3\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
unist-util-visit-parents@v3.1.1\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT
License)\n>\n> Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission
is hereby granted, free of charge, to any person obtaining\n> a copy of this software
and associated documentation files (the\n> 'Software'), to deal in the Software
without restriction, including\n> without limitation the rights to use, copy,
modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
vfile@v4.2.1\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n> Copyright
(c) 2015 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby granted,
free of charge, to any person obtaining a copy\n> of this software and associated
documentation files (the \"Software\"), to deal\n> in the Software without restriction,
including without limitation the rights\n> to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons
to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
vfile-location@v3.2.0\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2016 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
vfile-message@v2.0.4\n\nLicense: MIT\nBy: Titus Wormer\n\n> (The MIT License)\n>\n>
Copyright (c) 2017 Titus Wormer <tituswormer@gmail.com>\n>\n> Permission is hereby
granted, free of charge, to any person obtaining\n> a copy of this software and
associated documentation files (the\n> 'Software'), to deal in the Software without
restriction, including\n> without limitation the rights to use, copy, modify,
merge, publish,\n> distribute, sublicense, and/or sell copies of the Software,
and to\n> permit persons to whom the Software is furnished to do so, subject to\n>
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be\n> included in all copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n> IN NO EVENT SHALL THE AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT,\n> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE\n> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n----------------------------------------\n\n###
vnopts@v1.0.2\n\nLicense: MIT\nBy: Ika\n\n> MIT License\n>\n> Copyright (c) Ika
<ikatyang@gmail.com> (https://github.com/ikatyang)\n>\n> Permission is hereby
granted, free of charge, to any person obtaining a copy\n> of this software and
associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n\n----------------------------------------\n\n###
wcwidth@v1.0.1\n\nLicense: MIT\nBy: Tim Oxley\nRepository: <git+https://github.com/timoxley/wcwidth.git>\n\n>
wcwidth.js: JavaScript Portng of Markus Kuhn's wcwidth() Implementation\n> =======================================================================\n>\n>
Copyright (C) 2012 by Jun Woong.\n>\n> This package is a JavaScript porting of
`wcwidth()` implementation\n> [by Markus Kuhn](http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c).\n>\n>
Permission is hereby granted, free of charge, to any person obtaining a copy of\n>
this software and associated documentation files (the \"Software\"), to deal in\n>
the Software without restriction, including without limitation the rights to\n>
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n>
of the Software, and to permit persons to whom the Software is furnished to do\n>
so, subject to the following conditions:\n>\n> The above copyright notice and
this permission notice shall be included in all\n> copies or substantial portions
of the Software.\n>\n>\n> THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS
OR IMPLIED WARRANTIES,\n> INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND\n> FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
NO EVENT SHALL THE AUTHOR\n> OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL,\n> EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO,\n> PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR\n> BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER\n> IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n>
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n>
POSSIBILITY OF SUCH DAMAGE.\n\n----------------------------------------\n\n###
which@v2.0.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git://github.com/isaacs/node-which.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
wrappy@v1.0.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <https://github.com/npm/wrappy>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
xtend@v4.0.2\n\nLicense: MIT\nBy: Raynos\n\n> The MIT License (MIT)\n> Copyright
(c) 2012-2014 Raynos.\n>\n> Permission is hereby granted, free of charge, to any
person obtaining a copy\n> of this software and associated documentation files
(the \"Software\"), to deal\n> in the Software without restriction, including
without limitation the rights\n> to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell\n> copies of the Software, and to permit persons to whom
the Software is\n> furnished to do so, subject to the following conditions:\n>\n>
The above copyright notice and this permission notice shall be included in\n>
all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT
NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n\n----------------------------------------\n\n###
yallist@v2.1.2\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git+https://github.com/isaacs/yallist.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
yallist@v4.0.0\n\nLicense: ISC\nBy: Isaac Z. Schlueter\nRepository: <git+https://github.com/isaacs/yallist.git>\n\n>
The ISC License\n>\n> Copyright (c) Isaac Z. Schlueter and Contributors\n>\n>
Permission to use, copy, modify, and/or distribute this software for any\n> purpose
with or without fee is hereby granted, provided that the above\n> copyright notice
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n> WITH REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF\n> MERCHANTABILITY AND FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR\n> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES\n> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN\n> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR\n> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n----------------------------------------\n\n###
yaml@v1.10.2\n\nLicense: ISC\nBy: Eemeli Aro\n\n> Copyright 2018 Eemeli Aro <eemeli@gmail.com>\n>\n>
Permission to use, copy, modify, and/or distribute this software for any purpose\n>
with or without fee is hereby granted, provided that the above copyright notice\n>
and this permission notice appear in all copies.\n>\n> THE SOFTWARE IS PROVIDED
\"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n> REGARD TO THIS SOFTWARE
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND\n> FITNESS. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n> INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS\n> OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER\n> TORTIOUS ACTION, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF\n> THIS SOFTWARE.\n\n----------------------------------------\n\n###
yaml-unist-parser@v1.3.1\n\nLicense: MIT\nBy: Ika\n\n> MIT License\n>\n> Copyright
(c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)\n>\n> Permission is
hereby granted, free of charge, to any person obtaining a copy\n> of this software
and associated documentation files (the \"Software\"), to deal\n> in the Software
without restriction, including without limitation the rights\n> to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software,
and to permit persons to whom the Software is\n> furnished to do so, subject to
the following conditions:\n>\n> The above copyright notice and this permission
notice shall be included in all\n> copies or substantial portions of the Software.\n>\n>
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n>
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n> SOFTWARE.\n"
notices: []
-216
View File
@@ -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
View File
@@ -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: []
-26
View File
@@ -1,26 +0,0 @@
---
name: wrappy
version: 1.0.2
type: npm
summary: Callback wrapping utility
homepage: https://github.com/npm/wrappy
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.
notices: []
-24
View File
@@ -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: []
+25 -2884
View File
@@ -220,7 +220,7 @@ function restoreCacheV2(paths, primaryKey, restoreKeys, options, enableCrossOsAr
};
const response = yield twirpClient.GetCacheEntryDownloadURL(request);
if (!response.ok) {
core.warning(`Cache not found for keys: ${keys.join(', ')}`);
core.debug(`Cache not found for keys: ${keys.join(', ')}`);
return undefined;
}
core.info(`Cache hit for: ${request.key}`);
@@ -412,12 +412,20 @@ function saveCacheV2(paths, key, options, enableCrossOsArchive = false) {
key,
version
};
const response = yield twirpClient.CreateCacheEntry(request);
if (!response.ok) {
let signedUploadUrl;
try {
const response = yield twirpClient.CreateCacheEntry(request);
if (!response.ok) {
throw new Error('Response was not ok');
}
signedUploadUrl = response.signedUploadUrl;
}
catch (error) {
core.debug(`Failed to reserve cache: ${error}`);
throw new ReserveCacheError(`Unable to reserve cache with key ${key}, another job may be creating this cache.`);
}
core.debug(`Attempting to upload cache located at: ${archivePath}`);
yield cacheHttpClient.saveCache(cacheId, archivePath, response.signedUploadUrl, options);
yield cacheHttpClient.saveCache(cacheId, archivePath, signedUploadUrl, options);
const finalizeRequest = {
key,
version,
@@ -458,156 +466,13 @@ function saveCacheV2(paths, key, options, enableCrossOsArchive = false) {
/***/ }),
/***/ 4469:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Timestamp = void 0;
const runtime_1 = __nccwpck_require__(4061);
const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const runtime_6 = __nccwpck_require__(4061);
const runtime_7 = __nccwpck_require__(4061);
// @generated message type with reflection information, may provide speed optimized methods
class Timestamp$Type extends runtime_7.MessageType {
constructor() {
super("google.protobuf.Timestamp", [
{ no: 1, name: "seconds", kind: "scalar", T: 3 /*ScalarType.INT64*/ },
{ no: 2, name: "nanos", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
]);
}
/**
* Creates a new `Timestamp` for the current time.
*/
now() {
const msg = this.create();
const ms = Date.now();
msg.seconds = runtime_6.PbLong.from(Math.floor(ms / 1000)).toString();
msg.nanos = (ms % 1000) * 1000000;
return msg;
}
/**
* Converts a `Timestamp` to a JavaScript Date.
*/
toDate(message) {
return new Date(runtime_6.PbLong.from(message.seconds).toNumber() * 1000 + Math.ceil(message.nanos / 1000000));
}
/**
* Converts a JavaScript Date to a `Timestamp`.
*/
fromDate(date) {
const msg = this.create();
const ms = date.getTime();
msg.seconds = runtime_6.PbLong.from(Math.floor(ms / 1000)).toString();
msg.nanos = (ms % 1000) * 1000000;
return msg;
}
/**
* In JSON format, the `Timestamp` type is encoded as a string
* in the RFC 3339 format.
*/
internalJsonWrite(message, options) {
let ms = runtime_6.PbLong.from(message.seconds).toNumber() * 1000;
if (ms < Date.parse("0001-01-01T00:00:00Z") || ms > Date.parse("9999-12-31T23:59:59Z"))
throw new Error("Unable to encode Timestamp to JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");
if (message.nanos < 0)
throw new Error("Unable to encode invalid Timestamp to JSON. Nanos must not be negative.");
let z = "Z";
if (message.nanos > 0) {
let nanosStr = (message.nanos + 1000000000).toString().substring(1);
if (nanosStr.substring(3) === "000000")
z = "." + nanosStr.substring(0, 3) + "Z";
else if (nanosStr.substring(6) === "000")
z = "." + nanosStr.substring(0, 6) + "Z";
else
z = "." + nanosStr + "Z";
}
return new Date(ms).toISOString().replace(".000Z", z);
}
/**
* In JSON format, the `Timestamp` type is encoded as a string
* in the RFC 3339 format.
*/
internalJsonRead(json, options, target) {
if (typeof json !== "string")
throw new Error("Unable to parse Timestamp from JSON " + (0, runtime_5.typeofJsonValue)(json) + ".");
let matches = json.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);
if (!matches)
throw new Error("Unable to parse Timestamp from JSON. Invalid format.");
let ms = Date.parse(matches[1] + "-" + matches[2] + "-" + matches[3] + "T" + matches[4] + ":" + matches[5] + ":" + matches[6] + (matches[8] ? matches[8] : "Z"));
if (Number.isNaN(ms))
throw new Error("Unable to parse Timestamp from JSON. Invalid value.");
if (ms < Date.parse("0001-01-01T00:00:00Z") || ms > Date.parse("9999-12-31T23:59:59Z"))
throw new globalThis.Error("Unable to parse Timestamp from JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");
if (!target)
target = this.create();
target.seconds = runtime_6.PbLong.from(ms / 1000).toString();
target.nanos = 0;
if (matches[7])
target.nanos = (parseInt("1" + matches[7] + "0".repeat(9 - matches[7].length)) - 1000000000);
return target;
}
create(value) {
const message = { seconds: "0", nanos: 0 };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* int64 seconds */ 1:
message.seconds = reader.int64().toString();
break;
case /* int32 nanos */ 2:
message.nanos = reader.int32();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* int64 seconds = 1; */
if (message.seconds !== "0")
writer.tag(1, runtime_1.WireType.Varint).int64(message.seconds);
/* int32 nanos = 2; */
if (message.nanos !== 0)
writer.tag(2, runtime_1.WireType.Varint).int32(message.nanos);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message google.protobuf.Timestamp
*/
exports.Timestamp = new Timestamp$Type();
//# sourceMappingURL=timestamp.js.map
/***/ }),
/***/ 4388:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.CacheService = exports.LookupCacheEntryResponse = exports.LookupCacheEntryRequest = exports.ListCacheEntriesResponse = exports.ListCacheEntriesRequest = exports.DeleteCacheEntryResponse = exports.DeleteCacheEntryRequest = exports.GetCacheEntryDownloadURLResponse = exports.GetCacheEntryDownloadURLRequest = exports.FinalizeCacheEntryUploadResponse = exports.FinalizeCacheEntryUploadRequest = exports.CreateCacheEntryResponse = exports.CreateCacheEntryRequest = void 0;
exports.CacheService = exports.GetCacheEntryDownloadURLResponse = exports.GetCacheEntryDownloadURLRequest = exports.FinalizeCacheEntryUploadResponse = exports.FinalizeCacheEntryUploadRequest = exports.CreateCacheEntryResponse = exports.CreateCacheEntryRequest = void 0;
// @generated by protobuf-ts 2.9.1 with parameter long_type_string,client_none,generate_dependencies
// @generated from protobuf file "results/api/v1/cache.proto" (package "github.actions.results.api.v1", syntax proto3)
// tslint:disable
@@ -617,7 +482,6 @@ const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const cacheentry_1 = __nccwpck_require__(3639);
const cachemetadata_1 = __nccwpck_require__(7988);
// @generated message type with reflection information, may provide speed optimized methods
class CreateCacheEntryRequest$Type extends runtime_5.MessageType {
@@ -985,376 +849,25 @@ class GetCacheEntryDownloadURLResponse$Type extends runtime_5.MessageType {
* @generated MessageType for protobuf message github.actions.results.api.v1.GetCacheEntryDownloadURLResponse
*/
exports.GetCacheEntryDownloadURLResponse = new GetCacheEntryDownloadURLResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeleteCacheEntryRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.DeleteCacheEntryRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.DeleteCacheEntryRequest
*/
exports.DeleteCacheEntryRequest = new DeleteCacheEntryRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeleteCacheEntryResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.DeleteCacheEntryResponse", [
{ no: 1, name: "ok", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
{ no: 2, name: "entry_id", kind: "scalar", T: 3 /*ScalarType.INT64*/ }
]);
}
create(value) {
const message = { ok: false, entryId: "0" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bool ok */ 1:
message.ok = reader.bool();
break;
case /* int64 entry_id */ 2:
message.entryId = reader.int64().toString();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bool ok = 1; */
if (message.ok !== false)
writer.tag(1, runtime_1.WireType.Varint).bool(message.ok);
/* int64 entry_id = 2; */
if (message.entryId !== "0")
writer.tag(2, runtime_1.WireType.Varint).int64(message.entryId);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.DeleteCacheEntryResponse
*/
exports.DeleteCacheEntryResponse = new DeleteCacheEntryResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListCacheEntriesRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.ListCacheEntriesRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "restore_keys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "", restoreKeys: [] };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
case /* repeated string restore_keys */ 3:
message.restoreKeys.push(reader.string());
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
/* repeated string restore_keys = 3; */
for (let i = 0; i < message.restoreKeys.length; i++)
writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.restoreKeys[i]);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.ListCacheEntriesRequest
*/
exports.ListCacheEntriesRequest = new ListCacheEntriesRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListCacheEntriesResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.ListCacheEntriesResponse", [
{ no: 1, name: "entries", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => cacheentry_1.CacheEntry }
]);
}
create(value) {
const message = { entries: [] };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* repeated github.actions.results.entities.v1.CacheEntry entries */ 1:
message.entries.push(cacheentry_1.CacheEntry.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* repeated github.actions.results.entities.v1.CacheEntry entries = 1; */
for (let i = 0; i < message.entries.length; i++)
cacheentry_1.CacheEntry.internalBinaryWrite(message.entries[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.ListCacheEntriesResponse
*/
exports.ListCacheEntriesResponse = new ListCacheEntriesResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class LookupCacheEntryRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.LookupCacheEntryRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "restore_keys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
{ no: 4, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "", restoreKeys: [], version: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
case /* repeated string restore_keys */ 3:
message.restoreKeys.push(reader.string());
break;
case /* string version */ 4:
message.version = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
/* repeated string restore_keys = 3; */
for (let i = 0; i < message.restoreKeys.length; i++)
writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.restoreKeys[i]);
/* string version = 4; */
if (message.version !== "")
writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.version);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.LookupCacheEntryRequest
*/
exports.LookupCacheEntryRequest = new LookupCacheEntryRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class LookupCacheEntryResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.LookupCacheEntryResponse", [
{ no: 1, name: "exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
{ no: 2, name: "entry", kind: "message", T: () => cacheentry_1.CacheEntry }
]);
}
create(value) {
const message = { exists: false };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bool exists */ 1:
message.exists = reader.bool();
break;
case /* github.actions.results.entities.v1.CacheEntry entry */ 2:
message.entry = cacheentry_1.CacheEntry.internalBinaryRead(reader, reader.uint32(), options, message.entry);
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bool exists = 1; */
if (message.exists !== false)
writer.tag(1, runtime_1.WireType.Varint).bool(message.exists);
/* github.actions.results.entities.v1.CacheEntry entry = 2; */
if (message.entry)
cacheentry_1.CacheEntry.internalBinaryWrite(message.entry, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.LookupCacheEntryResponse
*/
exports.LookupCacheEntryResponse = new LookupCacheEntryResponse$Type();
/**
* @generated ServiceType for protobuf service github.actions.results.api.v1.CacheService
*/
exports.CacheService = new runtime_rpc_1.ServiceType("github.actions.results.api.v1.CacheService", [
{ name: "CreateCacheEntry", options: {}, I: exports.CreateCacheEntryRequest, O: exports.CreateCacheEntryResponse },
{ name: "FinalizeCacheEntryUpload", options: {}, I: exports.FinalizeCacheEntryUploadRequest, O: exports.FinalizeCacheEntryUploadResponse },
{ name: "GetCacheEntryDownloadURL", options: {}, I: exports.GetCacheEntryDownloadURLRequest, O: exports.GetCacheEntryDownloadURLResponse },
{ name: "DeleteCacheEntry", options: {}, I: exports.DeleteCacheEntryRequest, O: exports.DeleteCacheEntryResponse },
{ name: "ListCacheEntries", options: {}, I: exports.ListCacheEntriesRequest, O: exports.ListCacheEntriesResponse },
{ name: "LookupCacheEntry", options: {}, I: exports.LookupCacheEntryRequest, O: exports.LookupCacheEntryResponse }
{ name: "GetCacheEntryDownloadURL", options: {}, I: exports.GetCacheEntryDownloadURLRequest, O: exports.GetCacheEntryDownloadURLResponse }
]);
//# sourceMappingURL=cache.js.map
/***/ }),
/***/ 267:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
/***/ 2655:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.createCacheServiceServer = exports.CacheServiceMethodList = exports.CacheServiceMethod = exports.CacheServiceClientProtobuf = exports.CacheServiceClientJSON = void 0;
const twirp_ts_1 = __nccwpck_require__(6465);
exports.CacheServiceClientProtobuf = exports.CacheServiceClientJSON = void 0;
const cache_1 = __nccwpck_require__(4388);
class CacheServiceClientJSON {
constructor(rpc) {
@@ -1362,9 +875,6 @@ class CacheServiceClientJSON {
this.CreateCacheEntry.bind(this);
this.FinalizeCacheEntryUpload.bind(this);
this.GetCacheEntryDownloadURL.bind(this);
this.DeleteCacheEntry.bind(this);
this.ListCacheEntries.bind(this);
this.LookupCacheEntry.bind(this);
}
CreateCacheEntry(request) {
const data = cache_1.CreateCacheEntryRequest.toJson(request, {
@@ -1396,36 +906,6 @@ class CacheServiceClientJSON {
ignoreUnknownFields: true,
}));
}
DeleteCacheEntry(request) {
const data = cache_1.DeleteCacheEntryRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "DeleteCacheEntry", "application/json", data);
return promise.then((data) => cache_1.DeleteCacheEntryResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
ListCacheEntries(request) {
const data = cache_1.ListCacheEntriesRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "ListCacheEntries", "application/json", data);
return promise.then((data) => cache_1.ListCacheEntriesResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
LookupCacheEntry(request) {
const data = cache_1.LookupCacheEntryRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "LookupCacheEntry", "application/json", data);
return promise.then((data) => cache_1.LookupCacheEntryResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
}
exports.CacheServiceClientJSON = CacheServiceClientJSON;
class CacheServiceClientProtobuf {
@@ -1434,9 +914,6 @@ class CacheServiceClientProtobuf {
this.CreateCacheEntry.bind(this);
this.FinalizeCacheEntryUpload.bind(this);
this.GetCacheEntryDownloadURL.bind(this);
this.DeleteCacheEntry.bind(this);
this.ListCacheEntries.bind(this);
this.LookupCacheEntry.bind(this);
}
CreateCacheEntry(request) {
const data = cache_1.CreateCacheEntryRequest.toBinary(request);
@@ -1453,610 +930,9 @@ class CacheServiceClientProtobuf {
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "GetCacheEntryDownloadURL", "application/protobuf", data);
return promise.then((data) => cache_1.GetCacheEntryDownloadURLResponse.fromBinary(data));
}
DeleteCacheEntry(request) {
const data = cache_1.DeleteCacheEntryRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "DeleteCacheEntry", "application/protobuf", data);
return promise.then((data) => cache_1.DeleteCacheEntryResponse.fromBinary(data));
}
ListCacheEntries(request) {
const data = cache_1.ListCacheEntriesRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "ListCacheEntries", "application/protobuf", data);
return promise.then((data) => cache_1.ListCacheEntriesResponse.fromBinary(data));
}
LookupCacheEntry(request) {
const data = cache_1.LookupCacheEntryRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "LookupCacheEntry", "application/protobuf", data);
return promise.then((data) => cache_1.LookupCacheEntryResponse.fromBinary(data));
}
}
exports.CacheServiceClientProtobuf = CacheServiceClientProtobuf;
var CacheServiceMethod;
(function (CacheServiceMethod) {
CacheServiceMethod["CreateCacheEntry"] = "CreateCacheEntry";
CacheServiceMethod["FinalizeCacheEntryUpload"] = "FinalizeCacheEntryUpload";
CacheServiceMethod["GetCacheEntryDownloadURL"] = "GetCacheEntryDownloadURL";
CacheServiceMethod["DeleteCacheEntry"] = "DeleteCacheEntry";
CacheServiceMethod["ListCacheEntries"] = "ListCacheEntries";
CacheServiceMethod["LookupCacheEntry"] = "LookupCacheEntry";
})(CacheServiceMethod || (exports.CacheServiceMethod = CacheServiceMethod = {}));
exports.CacheServiceMethodList = [
CacheServiceMethod.CreateCacheEntry,
CacheServiceMethod.FinalizeCacheEntryUpload,
CacheServiceMethod.GetCacheEntryDownloadURL,
CacheServiceMethod.DeleteCacheEntry,
CacheServiceMethod.ListCacheEntries,
CacheServiceMethod.LookupCacheEntry,
];
function createCacheServiceServer(service) {
return new twirp_ts_1.TwirpServer({
service,
packageName: "github.actions.results.api.v1",
serviceName: "CacheService",
methodList: exports.CacheServiceMethodList,
matchRoute: matchCacheServiceRoute,
});
}
exports.createCacheServiceServer = createCacheServiceServer;
function matchCacheServiceRoute(method, events) {
switch (method) {
case "CreateCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "CreateCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceCreateCacheEntryRequest(ctx, service, data, interceptors);
});
case "FinalizeCacheEntryUpload":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "FinalizeCacheEntryUpload" });
yield events.onMatch(ctx);
return handleCacheServiceFinalizeCacheEntryUploadRequest(ctx, service, data, interceptors);
});
case "GetCacheEntryDownloadURL":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "GetCacheEntryDownloadURL" });
yield events.onMatch(ctx);
return handleCacheServiceGetCacheEntryDownloadURLRequest(ctx, service, data, interceptors);
});
case "DeleteCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "DeleteCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceDeleteCacheEntryRequest(ctx, service, data, interceptors);
});
case "ListCacheEntries":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "ListCacheEntries" });
yield events.onMatch(ctx);
return handleCacheServiceListCacheEntriesRequest(ctx, service, data, interceptors);
});
case "LookupCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "LookupCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceLookupCacheEntryRequest(ctx, service, data, interceptors);
});
default:
events.onNotFound();
const msg = `no handler found`;
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceCreateCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceCreateCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceCreateCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceFinalizeCacheEntryUploadRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceFinalizeCacheEntryUploadJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceFinalizeCacheEntryUploadProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceGetCacheEntryDownloadURLRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceGetCacheEntryDownloadURLJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceGetCacheEntryDownloadURLProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceDeleteCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceDeleteCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceDeleteCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceListCacheEntriesRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceListCacheEntriesJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceListCacheEntriesProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceLookupCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceLookupCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceLookupCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceCreateCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.CreateCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.CreateCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.CreateCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.CreateCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceFinalizeCacheEntryUploadJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.FinalizeCacheEntryUploadRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.FinalizeCacheEntryUpload(ctx, inputReq);
});
}
else {
response = yield service.FinalizeCacheEntryUpload(ctx, request);
}
return JSON.stringify(cache_1.FinalizeCacheEntryUploadResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceGetCacheEntryDownloadURLJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.GetCacheEntryDownloadURLRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.GetCacheEntryDownloadURL(ctx, inputReq);
});
}
else {
response = yield service.GetCacheEntryDownloadURL(ctx, request);
}
return JSON.stringify(cache_1.GetCacheEntryDownloadURLResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceDeleteCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.DeleteCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.DeleteCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.DeleteCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.DeleteCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceListCacheEntriesJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.ListCacheEntriesRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.ListCacheEntries(ctx, inputReq);
});
}
else {
response = yield service.ListCacheEntries(ctx, request);
}
return JSON.stringify(cache_1.ListCacheEntriesResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceLookupCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.LookupCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.LookupCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.LookupCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.LookupCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceCreateCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.CreateCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.CreateCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.CreateCacheEntry(ctx, request);
}
return Buffer.from(cache_1.CreateCacheEntryResponse.toBinary(response));
});
}
function handleCacheServiceFinalizeCacheEntryUploadProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.FinalizeCacheEntryUploadRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.FinalizeCacheEntryUpload(ctx, inputReq);
});
}
else {
response = yield service.FinalizeCacheEntryUpload(ctx, request);
}
return Buffer.from(cache_1.FinalizeCacheEntryUploadResponse.toBinary(response));
});
}
function handleCacheServiceGetCacheEntryDownloadURLProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.GetCacheEntryDownloadURLRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.GetCacheEntryDownloadURL(ctx, inputReq);
});
}
else {
response = yield service.GetCacheEntryDownloadURL(ctx, request);
}
return Buffer.from(cache_1.GetCacheEntryDownloadURLResponse.toBinary(response));
});
}
function handleCacheServiceDeleteCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.DeleteCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.DeleteCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.DeleteCacheEntry(ctx, request);
}
return Buffer.from(cache_1.DeleteCacheEntryResponse.toBinary(response));
});
}
function handleCacheServiceListCacheEntriesProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.ListCacheEntriesRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.ListCacheEntries(ctx, inputReq);
});
}
else {
response = yield service.ListCacheEntries(ctx, request);
}
return Buffer.from(cache_1.ListCacheEntriesResponse.toBinary(response));
});
}
function handleCacheServiceLookupCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.LookupCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.LookupCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.LookupCacheEntry(ctx, request);
}
return Buffer.from(cache_1.LookupCacheEntryResponse.toBinary(response));
});
}
//# sourceMappingURL=cache.twirp.js.map
/***/ }),
/***/ 3639:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.CacheEntry = void 0;
const runtime_1 = __nccwpck_require__(4061);
const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const timestamp_1 = __nccwpck_require__(4469);
// @generated message type with reflection information, may provide speed optimized methods
class CacheEntry$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.entities.v1.CacheEntry", [
{ no: 1, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 2, name: "hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "size_bytes", kind: "scalar", T: 3 /*ScalarType.INT64*/ },
{ no: 4, name: "scope", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 5, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 6, name: "created_at", kind: "message", T: () => timestamp_1.Timestamp },
{ no: 7, name: "last_accessed_at", kind: "message", T: () => timestamp_1.Timestamp },
{ no: 8, name: "expires_at", kind: "message", T: () => timestamp_1.Timestamp }
]);
}
create(value) {
const message = { key: "", hash: "", sizeBytes: "0", scope: "", version: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* string key */ 1:
message.key = reader.string();
break;
case /* string hash */ 2:
message.hash = reader.string();
break;
case /* int64 size_bytes */ 3:
message.sizeBytes = reader.int64().toString();
break;
case /* string scope */ 4:
message.scope = reader.string();
break;
case /* string version */ 5:
message.version = reader.string();
break;
case /* google.protobuf.Timestamp created_at */ 6:
message.createdAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.createdAt);
break;
case /* google.protobuf.Timestamp last_accessed_at */ 7:
message.lastAccessedAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.lastAccessedAt);
break;
case /* google.protobuf.Timestamp expires_at */ 8:
message.expiresAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.expiresAt);
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* string key = 1; */
if (message.key !== "")
writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.key);
/* string hash = 2; */
if (message.hash !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.hash);
/* int64 size_bytes = 3; */
if (message.sizeBytes !== "0")
writer.tag(3, runtime_1.WireType.Varint).int64(message.sizeBytes);
/* string scope = 4; */
if (message.scope !== "")
writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.scope);
/* string version = 5; */
if (message.version !== "")
writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.version);
/* google.protobuf.Timestamp created_at = 6; */
if (message.createdAt)
timestamp_1.Timestamp.internalBinaryWrite(message.createdAt, writer.tag(6, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.protobuf.Timestamp last_accessed_at = 7; */
if (message.lastAccessedAt)
timestamp_1.Timestamp.internalBinaryWrite(message.lastAccessedAt, writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.protobuf.Timestamp expires_at = 8; */
if (message.expiresAt)
timestamp_1.Timestamp.internalBinaryWrite(message.expiresAt, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.entities.v1.CacheEntry
*/
exports.CacheEntry = new CacheEntry$Type();
//# sourceMappingURL=cacheentry.js.map
//# sourceMappingURL=cache.twirp-client.js.map
/***/ }),
@@ -3327,7 +2203,7 @@ const config_1 = __nccwpck_require__(5147);
const cacheUtils_1 = __nccwpck_require__(1518);
const auth_1 = __nccwpck_require__(5526);
const http_client_1 = __nccwpck_require__(6255);
const cache_twirp_1 = __nccwpck_require__(267);
const cache_twirp_client_1 = __nccwpck_require__(2655);
/**
* This class is a wrapper around the CacheServiceClientJSON class generated by Twirp.
*
@@ -3464,7 +2340,7 @@ class CacheServiceClient {
}
function internalCacheTwirpClient(options) {
const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier);
return new cache_twirp_1.CacheServiceClientJSON(client);
return new cache_twirp_client_1.CacheServiceClientJSON(client);
}
exports.internalCacheTwirpClient = internalCacheTwirpClient;
//# sourceMappingURL=cacheTwirpClient.js.map
@@ -54923,12 +53799,16 @@ class ReflectionJsonReader {
target[localName] = field.T().internalJsonRead(jsonValue, options, target[localName]);
break;
case "enum":
if (jsonValue === null)
continue;
let val = this.enum(field.T(), jsonValue, field.name, options.ignoreUnknownFields);
if (val === false)
continue;
target[localName] = val;
break;
case "scalar":
if (jsonValue === null)
continue;
target[localName] = this.scalar(jsonValue, field.T, field.L, field.name);
break;
}
@@ -56807,599 +55687,6 @@ DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() {
};
/***/ }),
/***/ 4365:
/***/ ((module) => {
"use strict";
function _process (v, mod) {
var i
var r
if (typeof mod === 'function') {
r = mod(v)
if (r !== undefined) {
v = r
}
} else if (Array.isArray(mod)) {
for (i = 0; i < mod.length; i++) {
r = mod[i](v)
if (r !== undefined) {
v = r
}
}
}
return v
}
function parseKey (key, val) {
// detect negative index notation
if (key[0] === '-' && Array.isArray(val) && /^-\d+$/.test(key)) {
return val.length + parseInt(key, 10)
}
return key
}
function isIndex (k) {
return /^\d+$/.test(k)
}
function isObject (val) {
return Object.prototype.toString.call(val) === '[object Object]'
}
function isArrayOrObject (val) {
return Object(val) === val
}
function isEmptyObject (val) {
return Object.keys(val).length === 0
}
var blacklist = ['__proto__', 'prototype', 'constructor']
var blacklistFilter = function (part) { return blacklist.indexOf(part) === -1 }
function parsePath (path, sep) {
if (path.indexOf('[') >= 0) {
path = path.replace(/\[/g, sep).replace(/]/g, '')
}
var parts = path.split(sep)
var check = parts.filter(blacklistFilter)
if (check.length !== parts.length) {
throw Error('Refusing to update blacklisted property ' + path)
}
return parts
}
var hasOwnProperty = Object.prototype.hasOwnProperty
function DotObject (separator, override, useArray, useBrackets) {
if (!(this instanceof DotObject)) {
return new DotObject(separator, override, useArray, useBrackets)
}
if (typeof override === 'undefined') override = false
if (typeof useArray === 'undefined') useArray = true
if (typeof useBrackets === 'undefined') useBrackets = true
this.separator = separator || '.'
this.override = override
this.useArray = useArray
this.useBrackets = useBrackets
this.keepArray = false
// contains touched arrays
this.cleanup = []
}
var dotDefault = new DotObject('.', false, true, true)
function wrap (method) {
return function () {
return dotDefault[method].apply(dotDefault, arguments)
}
}
DotObject.prototype._fill = function (a, obj, v, mod) {
var k = a.shift()
if (a.length > 0) {
obj[k] = obj[k] || (this.useArray && isIndex(a[0]) ? [] : {})
if (!isArrayOrObject(obj[k])) {
if (this.override) {
obj[k] = {}
} else {
if (!(isArrayOrObject(v) && isEmptyObject(v))) {
throw new Error(
'Trying to redefine `' + k + '` which is a ' + typeof obj[k]
)
}
return
}
}
this._fill(a, obj[k], v, mod)
} else {
if (!this.override && isArrayOrObject(obj[k]) && !isEmptyObject(obj[k])) {
if (!(isArrayOrObject(v) && isEmptyObject(v))) {
throw new Error("Trying to redefine non-empty obj['" + k + "']")
}
return
}
obj[k] = _process(v, mod)
}
}
/**
*
* Converts an object with dotted-key/value pairs to it's expanded version
*
* Optionally transformed by a set of modifiers.
*
* Usage:
*
* var row = {
* 'nr': 200,
* 'doc.name': ' My Document '
* }
*
* var mods = {
* 'doc.name': [_s.trim, _s.underscored]
* }
*
* dot.object(row, mods)
*
* @param {Object} obj
* @param {Object} mods
*/
DotObject.prototype.object = function (obj, mods) {
var self = this
Object.keys(obj).forEach(function (k) {
var mod = mods === undefined ? null : mods[k]
// normalize array notation.
var ok = parsePath(k, self.separator).join(self.separator)
if (ok.indexOf(self.separator) !== -1) {
self._fill(ok.split(self.separator), obj, obj[k], mod)
delete obj[k]
} else {
obj[k] = _process(obj[k], mod)
}
})
return obj
}
/**
* @param {String} path dotted path
* @param {String} v value to be set
* @param {Object} obj object to be modified
* @param {Function|Array} mod optional modifier
*/
DotObject.prototype.str = function (path, v, obj, mod) {
var ok = parsePath(path, this.separator).join(this.separator)
if (path.indexOf(this.separator) !== -1) {
this._fill(ok.split(this.separator), obj, v, mod)
} else {
obj[path] = _process(v, mod)
}
return obj
}
/**
*
* Pick a value from an object using dot notation.
*
* Optionally remove the value
*
* @param {String} path
* @param {Object} obj
* @param {Boolean} remove
*/
DotObject.prototype.pick = function (path, obj, remove, reindexArray) {
var i
var keys
var val
var key
var cp
keys = parsePath(path, this.separator)
for (i = 0; i < keys.length; i++) {
key = parseKey(keys[i], obj)
if (obj && typeof obj === 'object' && key in obj) {
if (i === keys.length - 1) {
if (remove) {
val = obj[key]
if (reindexArray && Array.isArray(obj)) {
obj.splice(key, 1)
} else {
delete obj[key]
}
if (Array.isArray(obj)) {
cp = keys.slice(0, -1).join('.')
if (this.cleanup.indexOf(cp) === -1) {
this.cleanup.push(cp)
}
}
return val
} else {
return obj[key]
}
} else {
obj = obj[key]
}
} else {
return undefined
}
}
if (remove && Array.isArray(obj)) {
obj = obj.filter(function (n) {
return n !== undefined
})
}
return obj
}
/**
*
* Delete value from an object using dot notation.
*
* @param {String} path
* @param {Object} obj
* @return {any} The removed value
*/
DotObject.prototype.delete = function (path, obj) {
return this.remove(path, obj, true)
}
/**
*
* Remove value from an object using dot notation.
*
* Will remove multiple items if path is an array.
* In this case array indexes will be retained until all
* removals have been processed.
*
* Use dot.delete() to automatically re-index arrays.
*
* @param {String|Array<String>} path
* @param {Object} obj
* @param {Boolean} reindexArray
* @return {any} The removed value
*/
DotObject.prototype.remove = function (path, obj, reindexArray) {
var i
this.cleanup = []
if (Array.isArray(path)) {
for (i = 0; i < path.length; i++) {
this.pick(path[i], obj, true, reindexArray)
}
if (!reindexArray) {
this._cleanup(obj)
}
return obj
} else {
return this.pick(path, obj, true, reindexArray)
}
}
DotObject.prototype._cleanup = function (obj) {
var ret
var i
var keys
var root
if (this.cleanup.length) {
for (i = 0; i < this.cleanup.length; i++) {
keys = this.cleanup[i].split('.')
root = keys.splice(0, -1).join('.')
ret = root ? this.pick(root, obj) : obj
ret = ret[keys[0]].filter(function (v) {
return v !== undefined
})
this.set(this.cleanup[i], ret, obj)
}
this.cleanup = []
}
}
/**
* Alias method for `dot.remove`
*
* Note: this is not an alias for dot.delete()
*
* @param {String|Array<String>} path
* @param {Object} obj
* @param {Boolean} reindexArray
* @return {any} The removed value
*/
DotObject.prototype.del = DotObject.prototype.remove
/**
*
* Move a property from one place to the other.
*
* If the source path does not exist (undefined)
* the target property will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.move = function (source, target, obj, mods, merge) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(target, _process(this.pick(source, obj, true), mods), obj, merge)
} else {
merge = mods
this.set(target, this.pick(source, obj, true), obj, merge)
}
return obj
}
/**
*
* Transfer a property from one object to another object.
*
* If the source path does not exist (undefined)
* the property on the other object will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj1
* @param {Object} obj2
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.transfer = function (
source,
target,
obj1,
obj2,
mods,
merge
) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(
target,
_process(this.pick(source, obj1, true), mods),
obj2,
merge
)
} else {
merge = mods
this.set(target, this.pick(source, obj1, true), obj2, merge)
}
return obj2
}
/**
*
* Copy a property from one object to another object.
*
* If the source path does not exist (undefined)
* the property on the other object will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj1
* @param {Object} obj2
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.copy = function (source, target, obj1, obj2, mods, merge) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(
target,
_process(
// clone what is picked
JSON.parse(JSON.stringify(this.pick(source, obj1, false))),
mods
),
obj2,
merge
)
} else {
merge = mods
this.set(target, this.pick(source, obj1, false), obj2, merge)
}
return obj2
}
/**
*
* Set a property on an object using dot notation.
*
* @param {String} path
* @param {any} val
* @param {Object} obj
* @param {Boolean} merge
*/
DotObject.prototype.set = function (path, val, obj, merge) {
var i
var k
var keys
var key
// Do not operate if the value is undefined.
if (typeof val === 'undefined') {
return obj
}
keys = parsePath(path, this.separator)
for (i = 0; i < keys.length; i++) {
key = keys[i]
if (i === keys.length - 1) {
if (merge && isObject(val) && isObject(obj[key])) {
for (k in val) {
if (hasOwnProperty.call(val, k)) {
obj[key][k] = val[k]
}
}
} else if (merge && Array.isArray(obj[key]) && Array.isArray(val)) {
for (var j = 0; j < val.length; j++) {
obj[keys[i]].push(val[j])
}
} else {
obj[key] = val
}
} else if (
// force the value to be an object
!hasOwnProperty.call(obj, key) ||
(!isObject(obj[key]) && !Array.isArray(obj[key]))
) {
// initialize as array if next key is numeric
if (/^\d+$/.test(keys[i + 1])) {
obj[key] = []
} else {
obj[key] = {}
}
}
obj = obj[key]
}
return obj
}
/**
*
* Transform an object
*
* Usage:
*
* var obj = {
* "id": 1,
* "some": {
* "thing": "else"
* }
* }
*
* var transform = {
* "id": "nr",
* "some.thing": "name"
* }
*
* var tgt = dot.transform(transform, obj)
*
* @param {Object} recipe Transform recipe
* @param {Object} obj Object to be transformed
* @param {Array} mods modifiers for the target
*/
DotObject.prototype.transform = function (recipe, obj, tgt) {
obj = obj || {}
tgt = tgt || {}
Object.keys(recipe).forEach(
function (key) {
this.set(recipe[key], this.pick(key, obj), tgt)
}.bind(this)
)
return tgt
}
/**
*
* Convert object to dotted-key/value pair
*
* Usage:
*
* var tgt = dot.dot(obj)
*
* or
*
* var tgt = {}
* dot.dot(obj, tgt)
*
* @param {Object} obj source object
* @param {Object} tgt target object
* @param {Array} path path array (internal)
*/
DotObject.prototype.dot = function (obj, tgt, path) {
tgt = tgt || {}
path = path || []
var isArray = Array.isArray(obj)
Object.keys(obj).forEach(
function (key) {
var index = isArray && this.useBrackets ? '[' + key + ']' : key
if (
isArrayOrObject(obj[key]) &&
((isObject(obj[key]) && !isEmptyObject(obj[key])) ||
(Array.isArray(obj[key]) && !this.keepArray && obj[key].length !== 0))
) {
if (isArray && this.useBrackets) {
var previousKey = path[path.length - 1] || ''
return this.dot(
obj[key],
tgt,
path.slice(0, -1).concat(previousKey + index)
)
} else {
return this.dot(obj[key], tgt, path.concat(index))
}
} else {
if (isArray && this.useBrackets) {
tgt[path.join(this.separator).concat('[' + key + ']')] = obj[key]
} else {
tgt[path.concat(index).join(this.separator)] = obj[key]
}
}
}.bind(this)
)
return tgt
}
DotObject.pick = wrap('pick')
DotObject.move = wrap('move')
DotObject.transfer = wrap('transfer')
DotObject.transform = wrap('transform')
DotObject.copy = wrap('copy')
DotObject.object = wrap('object')
DotObject.str = wrap('str')
DotObject.set = wrap('set')
DotObject.delete = wrap('delete')
DotObject.del = DotObject.remove = wrap('remove')
DotObject.dot = wrap('dot');
['override', 'overwrite'].forEach(function (prop) {
Object.defineProperty(DotObject, prop, {
get: function () {
return dotDefault.override
},
set: function (val) {
dotDefault.override = !!val
}
})
});
['useArray', 'keepArray', 'useBrackets'].forEach(function (prop) {
Object.defineProperty(DotObject, prop, {
get: function () {
return dotDefault[prop]
},
set: function (val) {
dotDefault[prop] = val
}
})
})
DotObject._process = _process
module.exports = DotObject
/***/ }),
/***/ 7426:
@@ -68094,1152 +66381,6 @@ if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) {
exports.debug = debug; // for test
/***/ }),
/***/ 1524:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
/***/ }),
/***/ 6647:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isValidErrorCode = exports.httpStatusFromErrorCode = exports.TwirpErrorCode = exports.BadRouteError = exports.InternalServerErrorWith = exports.InternalServerError = exports.RequiredArgumentError = exports.InvalidArgumentError = exports.NotFoundError = exports.TwirpError = void 0;
/**
* Represents a twirp error
*/
class TwirpError extends Error {
constructor(code, msg) {
super(msg);
this.code = TwirpErrorCode.Internal;
this.meta = {};
this.code = code;
this.msg = msg;
Object.setPrototypeOf(this, TwirpError.prototype);
}
/**
* Adds a metadata kv to the error
* @param key
* @param value
*/
withMeta(key, value) {
this.meta[key] = value;
return this;
}
/**
* Returns a single metadata value
* return "" if not found
* @param key
*/
getMeta(key) {
return this.meta[key] || "";
}
/**
* Add the original error cause
* @param err
* @param addMeta
*/
withCause(err, addMeta = false) {
this._originalCause = err;
if (addMeta) {
this.withMeta("cause", err.message);
}
return this;
}
cause() {
return this._originalCause;
}
/**
* Returns the error representation to JSON
*/
toJSON() {
try {
return JSON.stringify({
code: this.code,
msg: this.msg,
meta: this.meta,
});
}
catch (e) {
return `{"code": "internal", "msg": "There was an error but it could not be serialized into JSON"}`;
}
}
/**
* Create a twirp error from an object
* @param obj
*/
static fromObject(obj) {
const code = obj["code"] || TwirpErrorCode.Unknown;
const msg = obj["msg"] || "unknown";
const error = new TwirpError(code, msg);
if (obj["meta"]) {
Object.keys(obj["meta"]).forEach((key) => {
error.withMeta(key, obj["meta"][key]);
});
}
return error;
}
}
exports.TwirpError = TwirpError;
/**
* NotFoundError constructor for the common NotFound error.
*/
class NotFoundError extends TwirpError {
constructor(msg) {
super(TwirpErrorCode.NotFound, msg);
}
}
exports.NotFoundError = NotFoundError;
/**
* InvalidArgumentError constructor for the common InvalidArgument error. Can be
* used when an argument has invalid format, is a number out of range, is a bad
* option, etc).
*/
class InvalidArgumentError extends TwirpError {
constructor(argument, validationMsg) {
super(TwirpErrorCode.InvalidArgument, argument + " " + validationMsg);
this.withMeta("argument", argument);
}
}
exports.InvalidArgumentError = InvalidArgumentError;
/**
* RequiredArgumentError is a more specific constructor for InvalidArgument
* error. Should be used when the argument is required (expected to have a
* non-zero value).
*/
class RequiredArgumentError extends InvalidArgumentError {
constructor(argument) {
super(argument, "is required");
}
}
exports.RequiredArgumentError = RequiredArgumentError;
/**
* InternalError constructor for the common Internal error. Should be used to
* specify that something bad or unexpected happened.
*/
class InternalServerError extends TwirpError {
constructor(msg) {
super(TwirpErrorCode.Internal, msg);
}
}
exports.InternalServerError = InternalServerError;
/**
* InternalErrorWith makes an internal error, wrapping the original error and using it
* for the error message, and with metadata "cause" with the original error type.
* This function is used by Twirp services to wrap non-Twirp errors as internal errors.
* The wrapped error can be extracted later with err.cause()
*/
class InternalServerErrorWith extends InternalServerError {
constructor(err) {
super(err.message);
this.withMeta("cause", err.name);
this.withCause(err);
}
}
exports.InternalServerErrorWith = InternalServerErrorWith;
/**
* A standard BadRoute Error
*/
class BadRouteError extends TwirpError {
constructor(msg, method, url) {
super(TwirpErrorCode.BadRoute, msg);
this.withMeta("twirp_invalid_route", method + " " + url);
}
}
exports.BadRouteError = BadRouteError;
var TwirpErrorCode;
(function (TwirpErrorCode) {
// Canceled indicates the operation was cancelled (typically by the caller).
TwirpErrorCode["Canceled"] = "canceled";
// Unknown error. For example when handling errors raised by APIs that do not
// return enough error information.
TwirpErrorCode["Unknown"] = "unknown";
// InvalidArgument indicates client specified an invalid argument. It
// indicates arguments that are problematic regardless of the state of the
// system (i.e. a malformed file name, required argument, number out of range,
// etc.).
TwirpErrorCode["InvalidArgument"] = "invalid_argument";
// Malformed indicates an error occurred while decoding the client's request.
// This may mean that the message was encoded improperly, or that there is a
// disagreement in message format between the client and server.
TwirpErrorCode["Malformed"] = "malformed";
// DeadlineExceeded means operation expired before completion. For operations
// that change the state of the system, this error may be returned even if the
// operation has completed successfully (timeout).
TwirpErrorCode["DeadlineExceeded"] = "deadline_exceeded";
// NotFound means some requested entity was not found.
TwirpErrorCode["NotFound"] = "not_found";
// BadRoute means that the requested URL path wasn't routable to a Twirp
// service and method. This is returned by the generated server, and usually
// shouldn't be returned by applications. Instead, applications should use
// NotFound or Unimplemented.
TwirpErrorCode["BadRoute"] = "bad_route";
// AlreadyExists means an attempt to create an entity failed because one
// already exists.
TwirpErrorCode["AlreadyExists"] = "already_exists";
// PermissionDenied indicates the caller does not have permission to execute
// the specified operation. It must not be used if the caller cannot be
// identified (Unauthenticated).
TwirpErrorCode["PermissionDenied"] = "permission_denied";
// Unauthenticated indicates the request does not have valid authentication
// credentials for the operation.
TwirpErrorCode["Unauthenticated"] = "unauthenticated";
// ResourceExhausted indicates some resource has been exhausted, perhaps a
// per-user quota, or perhaps the entire file system is out of space.
TwirpErrorCode["ResourceExhausted"] = "resource_exhausted";
// FailedPrecondition indicates operation was rejected because the system is
// not in a state required for the operation's execution. For example, doing
// an rmdir operation on a directory that is non-empty, or on a non-directory
// object, or when having conflicting read-modify-write on the same resource.
TwirpErrorCode["FailedPrecondition"] = "failed_precondition";
// Aborted indicates the operation was aborted, typically due to a concurrency
// issue like sequencer check failures, transaction aborts, etc.
TwirpErrorCode["Aborted"] = "aborted";
// OutOfRange means operation was attempted past the valid range. For example,
// seeking or reading past end of a paginated collection.
//
// Unlike InvalidArgument, this error indicates a problem that may be fixed if
// the system state changes (i.e. adding more items to the collection).
//
// There is a fair bit of overlap between FailedPrecondition and OutOfRange.
// We recommend using OutOfRange (the more specific error) when it applies so
// that callers who are iterating through a space can easily look for an
// OutOfRange error to detect when they are done.
TwirpErrorCode["OutOfRange"] = "out_of_range";
// Unimplemented indicates operation is not implemented or not
// supported/enabled in this service.
TwirpErrorCode["Unimplemented"] = "unimplemented";
// Internal errors. When some invariants expected by the underlying system
// have been broken. In other words, something bad happened in the library or
// backend service. Do not confuse with HTTP Internal Server Error; an
// Internal error could also happen on the client code, i.e. when parsing a
// server response.
TwirpErrorCode["Internal"] = "internal";
// Unavailable indicates the service is currently unavailable. This is a most
// likely a transient condition and may be corrected by retrying with a
// backoff.
TwirpErrorCode["Unavailable"] = "unavailable";
// DataLoss indicates unrecoverable data loss or corruption.
TwirpErrorCode["DataLoss"] = "data_loss";
})(TwirpErrorCode = exports.TwirpErrorCode || (exports.TwirpErrorCode = {}));
// ServerHTTPStatusFromErrorCode maps a Twirp error type into a similar HTTP
// response status. It is used by the Twirp server handler to set the HTTP
// response status code. Returns 0 if the ErrorCode is invalid.
function httpStatusFromErrorCode(code) {
switch (code) {
case TwirpErrorCode.Canceled:
return 408; // RequestTimeout
case TwirpErrorCode.Unknown:
return 500; // Internal Server Error
case TwirpErrorCode.InvalidArgument:
return 400; // BadRequest
case TwirpErrorCode.Malformed:
return 400; // BadRequest
case TwirpErrorCode.DeadlineExceeded:
return 408; // RequestTimeout
case TwirpErrorCode.NotFound:
return 404; // Not Found
case TwirpErrorCode.BadRoute:
return 404; // Not Found
case TwirpErrorCode.AlreadyExists:
return 409; // Conflict
case TwirpErrorCode.PermissionDenied:
return 403; // Forbidden
case TwirpErrorCode.Unauthenticated:
return 401; // Unauthorized
case TwirpErrorCode.ResourceExhausted:
return 429; // Too Many Requests
case TwirpErrorCode.FailedPrecondition:
return 412; // Precondition Failed
case TwirpErrorCode.Aborted:
return 409; // Conflict
case TwirpErrorCode.OutOfRange:
return 400; // Bad Request
case TwirpErrorCode.Unimplemented:
return 501; // Not Implemented
case TwirpErrorCode.Internal:
return 500; // Internal Server Error
case TwirpErrorCode.Unavailable:
return 503; // Service Unavailable
case TwirpErrorCode.DataLoss:
return 500; // Internal Server Error
default:
return 0; // Invalid!
}
}
exports.httpStatusFromErrorCode = httpStatusFromErrorCode;
// IsValidErrorCode returns true if is one of the valid predefined constants.
function isValidErrorCode(code) {
return httpStatusFromErrorCode(code) != 0;
}
exports.isValidErrorCode = isValidErrorCode;
/***/ }),
/***/ 6748:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Gateway = exports.Pattern = void 0;
const querystring_1 = __nccwpck_require__(3477);
const dotObject = __importStar(__nccwpck_require__(4365));
const request_1 = __nccwpck_require__(8347);
const errors_1 = __nccwpck_require__(6647);
const http_client_1 = __nccwpck_require__(4091);
const server_1 = __nccwpck_require__(6604);
var Pattern;
(function (Pattern) {
Pattern["POST"] = "post";
Pattern["GET"] = "get";
Pattern["PATCH"] = "patch";
Pattern["PUT"] = "put";
Pattern["DELETE"] = "delete";
})(Pattern = exports.Pattern || (exports.Pattern = {}));
/**
* The Gateway proxies http requests to Twirp Compliant
* handlers
*/
class Gateway {
constructor(routes) {
this.routes = routes;
}
/**
* Middleware that rewrite the current request
* to a Twirp compliant request
*/
twirpRewrite(prefix = "/twirp") {
return (req, resp, next) => {
this.rewrite(req, resp, prefix)
.then(() => next())
.catch((e) => {
if (e instanceof errors_1.TwirpError) {
if (e.code !== errors_1.TwirpErrorCode.NotFound) {
server_1.writeError(resp, e);
}
else {
next();
}
}
});
};
}
/**
* Rewrite an incoming request to a Twirp compliant request
* @param req
* @param resp
* @param prefix
*/
rewrite(req, resp, prefix = "/twirp") {
return __awaiter(this, void 0, void 0, function* () {
const [match, route] = this.matchRoute(req);
const body = yield this.prepareTwirpBody(req, match, route);
const twirpUrl = `${prefix}/${route.packageName}.${route.serviceName}/${route.methodName}`;
req.url = twirpUrl;
req.originalUrl = twirpUrl;
req.method = "POST";
req.headers["content-type"] = "application/json";
req.rawBody = Buffer.from(JSON.stringify(body));
if (route.responseBodyKey) {
const endFn = resp.end.bind(resp);
resp.end = function (chunk) {
if (resp.statusCode === 200) {
endFn(`{ "${route.responseBodyKey}": ${chunk} }`);
}
else {
endFn(chunk);
}
};
}
});
}
/**
* Create a reverse proxy handler to
* proxy http requests to Twirp Compliant handlers
* @param httpClientOption
*/
reverseProxy(httpClientOption) {
const client = http_client_1.NodeHttpRPC(httpClientOption);
return (req, res) => __awaiter(this, void 0, void 0, function* () {
try {
const [match, route] = this.matchRoute(req);
const body = yield this.prepareTwirpBody(req, match, route);
const response = yield client.request(`${route.packageName}.${route.serviceName}`, route.methodName, "application/json", body);
res.statusCode = 200;
res.setHeader("content-type", "application/json");
let jsonResponse;
if (route.responseBodyKey) {
jsonResponse = JSON.stringify({ [route.responseBodyKey]: response });
}
else {
jsonResponse = JSON.stringify(response);
}
res.end(jsonResponse);
}
catch (e) {
server_1.writeError(res, e);
}
});
}
/**
* Prepares twirp body requests using http.google.annotions
* compliant spec
*
* @param req
* @param match
* @param route
* @protected
*/
prepareTwirpBody(req, match, route) {
return __awaiter(this, void 0, void 0, function* () {
const _a = match.params, { query_string } = _a, params = __rest(_a, ["query_string"]);
let requestBody = Object.assign({}, params);
if (query_string && route.bodyKey !== "*") {
const queryParams = this.parseQueryString(query_string);
requestBody = Object.assign(Object.assign({}, queryParams), requestBody);
}
let body = {};
if (route.bodyKey) {
const data = yield request_1.getRequestData(req);
try {
const jsonBody = JSON.parse(data.toString() || "{}");
if (route.bodyKey === "*") {
body = jsonBody;
}
else {
body[route.bodyKey] = jsonBody;
}
}
catch (e) {
const msg = "the json request could not be decoded";
throw new errors_1.TwirpError(errors_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
return Object.assign(Object.assign({}, body), requestBody);
});
}
/**
* Matches a route
* @param req
*/
matchRoute(req) {
var _a;
const httpMethod = (_a = req.method) === null || _a === void 0 ? void 0 : _a.toLowerCase();
if (!httpMethod) {
throw new errors_1.BadRouteError(`method not allowed`, req.method || "", req.url || "");
}
const routes = this.routes[httpMethod];
for (const route of routes) {
const match = route.matcher(req.url || "/");
if (match) {
return [match, route];
}
}
throw new errors_1.NotFoundError(`url ${req.url} not found`);
}
/**
* Parse query string
* @param queryString
*/
parseQueryString(queryString) {
const queryParams = querystring_1.parse(queryString.replace("?", ""));
return dotObject.object(queryParams);
}
}
exports.Gateway = Gateway;
/***/ }),
/***/ 4263:
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isHook = exports.chainHooks = void 0;
// ChainHooks creates a new ServerHook which chains the callbacks in
// each of the constituent hooks passed in. Each hook function will be
// called in the order of the ServerHooks values passed in.
//
// For the erroring hooks, RequestReceived and RequestRouted, any returned
// errors prevent processing by later hooks.
function chainHooks(...hooks) {
if (hooks.length === 0) {
return null;
}
if (hooks.length === 1) {
return hooks[0];
}
const serverHook = {
requestReceived(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestReceived) {
continue;
}
yield hook.requestReceived(ctx);
}
});
},
requestPrepared(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestPrepared) {
continue;
}
console.warn("hook requestPrepared is deprecated and will be removed in the next release. " +
"Please use responsePrepared instead.");
yield hook.requestPrepared(ctx);
}
});
},
responsePrepared(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.responsePrepared) {
continue;
}
yield hook.responsePrepared(ctx);
}
});
},
requestSent(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestSent) {
continue;
}
console.warn("hook requestSent is deprecated and will be removed in the next release. " +
"Please use responseSent instead.");
yield hook.requestSent(ctx);
}
});
},
responseSent(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.responseSent) {
continue;
}
yield hook.responseSent(ctx);
}
});
},
requestRouted(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestRouted) {
continue;
}
yield hook.requestRouted(ctx);
}
});
},
error(ctx, err) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.error) {
continue;
}
yield hook.error(ctx, err);
}
});
},
};
return serverHook;
}
exports.chainHooks = chainHooks;
function isHook(object) {
return ("requestReceived" in object ||
"requestPrepared" in object ||
"requestSent" in object ||
"requestRouted" in object ||
"responsePrepared" in object ||
"responseSent" in object ||
"error" in object);
}
exports.isHook = isHook;
/***/ }),
/***/ 4091:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.FetchRPC = exports.wrapErrorResponseToTwirpError = exports.NodeHttpRPC = void 0;
const http = __importStar(__nccwpck_require__(3685));
const https = __importStar(__nccwpck_require__(5687));
const url_1 = __nccwpck_require__(7310);
const errors_1 = __nccwpck_require__(6647);
/**
* a node HTTP RPC implementation
* @param options
* @constructor
*/
const NodeHttpRPC = (options) => ({
request(service, method, contentType, data) {
let client;
return new Promise((resolve, rejected) => {
const responseChunks = [];
const requestData = contentType === "application/protobuf"
? Buffer.from(data)
: JSON.stringify(data);
const url = new url_1.URL(options.baseUrl);
const isHttps = url.protocol === "https:";
if (isHttps) {
client = https;
}
else {
client = http;
}
const prefix = url.pathname !== "/" ? url.pathname : "";
const req = client
.request(Object.assign(Object.assign({}, (options ? options : {})), { method: "POST", protocol: url.protocol, host: url.hostname, port: url.port ? url.port : isHttps ? 443 : 80, path: `${prefix}/${service}/${method}`, headers: Object.assign(Object.assign({}, (options.headers ? options.headers : {})), { "Content-Type": contentType, "Content-Length": contentType === "application/protobuf"
? Buffer.byteLength(requestData)
: Buffer.from(requestData).byteLength }) }), (res) => {
res.on("data", (chunk) => responseChunks.push(chunk));
res.on("end", () => {
const data = Buffer.concat(responseChunks);
if (res.statusCode != 200) {
rejected(wrapErrorResponseToTwirpError(data.toString()));
}
else {
if (contentType === "application/json") {
resolve(JSON.parse(data.toString()));
}
else {
resolve(data);
}
}
});
res.on("error", (err) => {
rejected(err);
});
})
.on("error", (err) => {
rejected(err);
});
req.end(requestData);
});
},
});
exports.NodeHttpRPC = NodeHttpRPC;
function wrapErrorResponseToTwirpError(errorResponse) {
return errors_1.TwirpError.fromObject(JSON.parse(errorResponse));
}
exports.wrapErrorResponseToTwirpError = wrapErrorResponseToTwirpError;
/**
* a browser fetch RPC implementation
*/
const FetchRPC = (options) => ({
request(service, method, contentType, data) {
return __awaiter(this, void 0, void 0, function* () {
const headers = new Headers(options.headers);
headers.set("content-type", contentType);
const response = yield fetch(`${options.baseUrl}/${service}/${method}`, Object.assign(Object.assign({}, options), { method: "POST", headers, body: data instanceof Uint8Array ? data : JSON.stringify(data) }));
if (response.status === 200) {
if (contentType === "application/json") {
return yield response.json();
}
return new Uint8Array(yield response.arrayBuffer());
}
throw errors_1.TwirpError.fromObject(yield response.json());
});
},
});
exports.FetchRPC = FetchRPC;
/***/ }),
/***/ 6465:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.TwirpContentType = void 0;
__exportStar(__nccwpck_require__(1524), exports);
__exportStar(__nccwpck_require__(6604), exports);
__exportStar(__nccwpck_require__(8913), exports);
__exportStar(__nccwpck_require__(4263), exports);
__exportStar(__nccwpck_require__(6647), exports);
__exportStar(__nccwpck_require__(6748), exports);
__exportStar(__nccwpck_require__(4091), exports);
var request_1 = __nccwpck_require__(8347);
Object.defineProperty(exports, "TwirpContentType", ({ enumerable: true, get: function () { return request_1.TwirpContentType; } }));
/***/ }),
/***/ 8913:
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.chainInterceptors = void 0;
// chains multiple Interceptors into a single Interceptor.
// The first interceptor wraps the second one, and so on.
// Returns null if interceptors is empty.
function chainInterceptors(...interceptors) {
if (interceptors.length === 0) {
return;
}
if (interceptors.length === 1) {
return interceptors[0];
}
const first = interceptors[0];
return (ctx, request, handler) => __awaiter(this, void 0, void 0, function* () {
let next = handler;
for (let i = interceptors.length - 1; i > 0; i--) {
next = ((next) => (ctx, typedRequest) => {
return interceptors[i](ctx, typedRequest, next);
})(next);
}
return first(ctx, request, next);
});
}
exports.chainInterceptors = chainInterceptors;
/***/ }),
/***/ 8347:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.parseTwirpPath = exports.getRequestData = exports.validateRequest = exports.getContentType = exports.TwirpContentType = void 0;
const errors_1 = __nccwpck_require__(6647);
/**
* Supported Twirp Content-Type
*/
var TwirpContentType;
(function (TwirpContentType) {
TwirpContentType[TwirpContentType["Protobuf"] = 0] = "Protobuf";
TwirpContentType[TwirpContentType["JSON"] = 1] = "JSON";
TwirpContentType[TwirpContentType["Unknown"] = 2] = "Unknown";
})(TwirpContentType = exports.TwirpContentType || (exports.TwirpContentType = {}));
/**
* Get supported content-type
* @param mimeType
*/
function getContentType(mimeType) {
switch (mimeType) {
case "application/protobuf":
return TwirpContentType.Protobuf;
case "application/json":
return TwirpContentType.JSON;
default:
return TwirpContentType.Unknown;
}
}
exports.getContentType = getContentType;
/**
* Validate a twirp request
* @param ctx
* @param request
* @param pathPrefix
*/
function validateRequest(ctx, request, pathPrefix) {
if (request.method !== "POST") {
const msg = `unsupported method ${request.method} (only POST is allowed)`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
const path = parseTwirpPath(request.url || "");
if (path.pkgService !==
(ctx.packageName ? ctx.packageName + "." : "") + ctx.serviceName) {
const msg = `no handler for path ${request.url}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
if (path.prefix !== pathPrefix) {
const msg = `invalid path prefix ${path.prefix}, expected ${pathPrefix}, on path ${request.url}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
const mimeContentType = request.headers["content-type"] || "";
if (ctx.contentType === TwirpContentType.Unknown) {
const msg = `unexpected Content-Type: ${request.headers["content-type"]}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
return Object.assign(Object.assign({}, path), { mimeContentType, contentType: ctx.contentType });
}
exports.validateRequest = validateRequest;
/**
* Get request data from the body
* @param req
*/
function getRequestData(req) {
return new Promise((resolve, reject) => {
const reqWithRawBody = req;
if (reqWithRawBody.rawBody instanceof Buffer) {
resolve(reqWithRawBody.rawBody);
return;
}
const chunks = [];
req.on("data", (chunk) => chunks.push(chunk));
req.on("end", () => __awaiter(this, void 0, void 0, function* () {
const data = Buffer.concat(chunks);
resolve(data);
}));
req.on("error", (err) => {
if (req.aborted) {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.DeadlineExceeded, "failed to read request: deadline exceeded"));
}
else {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.Malformed, err.message).withCause(err));
}
});
req.on("close", () => {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.Canceled, "failed to read request: context canceled"));
});
});
}
exports.getRequestData = getRequestData;
/**
* Parses twirp url path
* @param path
*/
function parseTwirpPath(path) {
const parts = path.split("/");
if (parts.length < 2) {
return {
pkgService: "",
method: "",
prefix: "",
};
}
return {
method: parts[parts.length - 1],
pkgService: parts[parts.length - 2],
prefix: parts.slice(0, parts.length - 2).join("/"),
};
}
exports.parseTwirpPath = parseTwirpPath;
/***/ }),
/***/ 6604:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.writeError = exports.TwirpServer = void 0;
const hooks_1 = __nccwpck_require__(4263);
const request_1 = __nccwpck_require__(8347);
const errors_1 = __nccwpck_require__(6647);
/**
* Runtime server implementation of a TwirpServer
*/
class TwirpServer {
constructor(options) {
this.pathPrefix = "/twirp";
this.hooks = [];
this.interceptors = [];
this.packageName = options.packageName;
this.serviceName = options.serviceName;
this.methodList = options.methodList;
this.matchRoute = options.matchRoute;
this.service = options.service;
}
/**
* Returns the prefix for this server
*/
get prefix() {
return this.pathPrefix;
}
/**
* The http handler for twirp complaint endpoints
* @param options
*/
httpHandler(options) {
return (req, resp) => {
// setup prefix
if ((options === null || options === void 0 ? void 0 : options.prefix) !== undefined) {
this.withPrefix(options.prefix);
}
return this._httpHandler(req, resp);
};
}
/**
* Adds interceptors or hooks to the request stack
* @param middlewares
*/
use(...middlewares) {
middlewares.forEach((middleware) => {
if (hooks_1.isHook(middleware)) {
this.hooks.push(middleware);
return this;
}
this.interceptors.push(middleware);
});
return this;
}
/**
* Adds a prefix to the service url path
* @param prefix
*/
withPrefix(prefix) {
if (prefix === false) {
this.pathPrefix = "";
}
else {
this.pathPrefix = prefix;
}
return this;
}
/**
* Returns the regex matching path for this twirp server
*/
matchingPath() {
const baseRegex = this.baseURI().replace(/\./g, "\\.");
return new RegExp(`${baseRegex}\/(${this.methodList.join("|")})`);
}
/**
* Returns the base URI for this twirp server
*/
baseURI() {
return `${this.pathPrefix}/${this.packageName ? this.packageName + "." : ""}${this.serviceName}`;
}
/**
* Create a twirp context
* @param req
* @param res
* @private
*/
createContext(req, res) {
return {
packageName: this.packageName,
serviceName: this.serviceName,
methodName: "",
contentType: request_1.getContentType(req.headers["content-type"]),
req: req,
res: res,
};
}
/**
* Twrip server http handler implementation
* @param req
* @param resp
* @private
*/
_httpHandler(req, resp) {
return __awaiter(this, void 0, void 0, function* () {
const ctx = this.createContext(req, resp);
try {
yield this.invokeHook("requestReceived", ctx);
const { method, mimeContentType } = request_1.validateRequest(ctx, req, this.pathPrefix || "");
const handler = this.matchRoute(method, {
onMatch: (ctx) => {
return this.invokeHook("requestRouted", ctx);
},
onNotFound: () => {
const msg = `no handler for path ${req.url}`;
throw new errors_1.BadRouteError(msg, req.method || "", req.url || "");
},
});
const body = yield request_1.getRequestData(req);
const response = yield handler(ctx, this.service, body, this.interceptors);
yield Promise.all([
this.invokeHook("responsePrepared", ctx),
// keep backwards compatibility till next release
this.invokeHook("requestPrepared", ctx),
]);
resp.statusCode = 200;
resp.setHeader("Content-Type", mimeContentType);
resp.end(response);
}
catch (e) {
yield this.invokeHook("error", ctx, mustBeTwirpError(e));
if (!resp.headersSent) {
writeError(resp, e);
}
}
finally {
yield Promise.all([
this.invokeHook("responseSent", ctx),
// keep backwards compatibility till next release
this.invokeHook("requestSent", ctx),
]);
}
});
}
/**
* Invoke a hook
* @param hookName
* @param ctx
* @param err
* @protected
*/
invokeHook(hookName, ctx, err) {
return __awaiter(this, void 0, void 0, function* () {
if (this.hooks.length === 0) {
return;
}
const chainedHooks = hooks_1.chainHooks(...this.hooks);
const hook = chainedHooks === null || chainedHooks === void 0 ? void 0 : chainedHooks[hookName];
if (hook) {
yield hook(ctx, err || new errors_1.InternalServerError("internal server error"));
}
});
}
}
exports.TwirpServer = TwirpServer;
/**
* Write http error response
* @param res
* @param error
*/
function writeError(res, error) {
const twirpError = mustBeTwirpError(error);
res.setHeader("Content-Type", "application/json");
res.statusCode = errors_1.httpStatusFromErrorCode(twirpError.code);
res.end(twirpError.toJSON());
}
exports.writeError = writeError;
/**
* Make sure that the error passed is a TwirpError
* otherwise it will wrap it into an InternalError
* @param err
*/
function mustBeTwirpError(err) {
if (err instanceof errors_1.TwirpError) {
return err;
}
return new errors_1.InternalServerErrorWith(err);
}
/***/ }),
/***/ 1773:
@@ -99044,7 +96185,7 @@ module.exports = parseParams
/***/ ((module) => {
"use strict";
module.exports = JSON.parse('{"name":"@actions/cache","version":"4.0.0","preview":true,"description":"Actions cache lib","keywords":["github","actions","cache"],"homepage":"https://github.com/actions/toolkit/tree/main/packages/cache","license":"MIT","main":"lib/cache.js","types":"lib/cache.d.ts","directories":{"lib":"lib","test":"__tests__"},"files":["lib","!.DS_Store"],"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/actions/toolkit.git","directory":"packages/cache"},"scripts":{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json","test":"echo \\"Error: run tests from root\\" && exit 1","tsc":"tsc"},"bugs":{"url":"https://github.com/actions/toolkit/issues"},"dependencies":{"@actions/core":"^1.11.1","@actions/exec":"^1.0.1","@actions/glob":"^0.1.0","@actions/http-client":"^2.1.1","@actions/io":"^1.0.1","@azure/abort-controller":"^1.1.0","@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"},"devDependencies":{"@types/semver":"^6.0.0","typescript":"^5.2.2"}}');
module.exports = JSON.parse('{"name":"@actions/cache","version":"4.0.2","preview":true,"description":"Actions cache lib","keywords":["github","actions","cache"],"homepage":"https://github.com/actions/toolkit/tree/main/packages/cache","license":"MIT","main":"lib/cache.js","types":"lib/cache.d.ts","directories":{"lib":"lib","test":"__tests__"},"files":["lib","!.DS_Store"],"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/actions/toolkit.git","directory":"packages/cache"},"scripts":{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json","test":"echo \\"Error: run tests from root\\" && exit 1","tsc":"tsc"},"bugs":{"url":"https://github.com/actions/toolkit/issues"},"dependencies":{"@actions/core":"^1.11.1","@actions/exec":"^1.0.1","@actions/glob":"^0.1.0","@actions/http-client":"^2.1.1","@actions/io":"^1.0.1","@azure/abort-controller":"^1.1.0","@azure/ms-rest-js":"^2.6.0","@azure/storage-blob":"^12.13.0","@protobuf-ts/plugin":"^2.9.4","semver":"^6.3.1"},"devDependencies":{"@types/semver":"^6.0.0","typescript":"^5.2.2"}}');
/***/ }),
+25 -2884
View File
@@ -220,7 +220,7 @@ function restoreCacheV2(paths, primaryKey, restoreKeys, options, enableCrossOsAr
};
const response = yield twirpClient.GetCacheEntryDownloadURL(request);
if (!response.ok) {
core.warning(`Cache not found for keys: ${keys.join(', ')}`);
core.debug(`Cache not found for keys: ${keys.join(', ')}`);
return undefined;
}
core.info(`Cache hit for: ${request.key}`);
@@ -412,12 +412,20 @@ function saveCacheV2(paths, key, options, enableCrossOsArchive = false) {
key,
version
};
const response = yield twirpClient.CreateCacheEntry(request);
if (!response.ok) {
let signedUploadUrl;
try {
const response = yield twirpClient.CreateCacheEntry(request);
if (!response.ok) {
throw new Error('Response was not ok');
}
signedUploadUrl = response.signedUploadUrl;
}
catch (error) {
core.debug(`Failed to reserve cache: ${error}`);
throw new ReserveCacheError(`Unable to reserve cache with key ${key}, another job may be creating this cache.`);
}
core.debug(`Attempting to upload cache located at: ${archivePath}`);
yield cacheHttpClient.saveCache(cacheId, archivePath, response.signedUploadUrl, options);
yield cacheHttpClient.saveCache(cacheId, archivePath, signedUploadUrl, options);
const finalizeRequest = {
key,
version,
@@ -458,156 +466,13 @@ function saveCacheV2(paths, key, options, enableCrossOsArchive = false) {
/***/ }),
/***/ 24469:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Timestamp = void 0;
const runtime_1 = __nccwpck_require__(4061);
const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const runtime_6 = __nccwpck_require__(4061);
const runtime_7 = __nccwpck_require__(4061);
// @generated message type with reflection information, may provide speed optimized methods
class Timestamp$Type extends runtime_7.MessageType {
constructor() {
super("google.protobuf.Timestamp", [
{ no: 1, name: "seconds", kind: "scalar", T: 3 /*ScalarType.INT64*/ },
{ no: 2, name: "nanos", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
]);
}
/**
* Creates a new `Timestamp` for the current time.
*/
now() {
const msg = this.create();
const ms = Date.now();
msg.seconds = runtime_6.PbLong.from(Math.floor(ms / 1000)).toString();
msg.nanos = (ms % 1000) * 1000000;
return msg;
}
/**
* Converts a `Timestamp` to a JavaScript Date.
*/
toDate(message) {
return new Date(runtime_6.PbLong.from(message.seconds).toNumber() * 1000 + Math.ceil(message.nanos / 1000000));
}
/**
* Converts a JavaScript Date to a `Timestamp`.
*/
fromDate(date) {
const msg = this.create();
const ms = date.getTime();
msg.seconds = runtime_6.PbLong.from(Math.floor(ms / 1000)).toString();
msg.nanos = (ms % 1000) * 1000000;
return msg;
}
/**
* In JSON format, the `Timestamp` type is encoded as a string
* in the RFC 3339 format.
*/
internalJsonWrite(message, options) {
let ms = runtime_6.PbLong.from(message.seconds).toNumber() * 1000;
if (ms < Date.parse("0001-01-01T00:00:00Z") || ms > Date.parse("9999-12-31T23:59:59Z"))
throw new Error("Unable to encode Timestamp to JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");
if (message.nanos < 0)
throw new Error("Unable to encode invalid Timestamp to JSON. Nanos must not be negative.");
let z = "Z";
if (message.nanos > 0) {
let nanosStr = (message.nanos + 1000000000).toString().substring(1);
if (nanosStr.substring(3) === "000000")
z = "." + nanosStr.substring(0, 3) + "Z";
else if (nanosStr.substring(6) === "000")
z = "." + nanosStr.substring(0, 6) + "Z";
else
z = "." + nanosStr + "Z";
}
return new Date(ms).toISOString().replace(".000Z", z);
}
/**
* In JSON format, the `Timestamp` type is encoded as a string
* in the RFC 3339 format.
*/
internalJsonRead(json, options, target) {
if (typeof json !== "string")
throw new Error("Unable to parse Timestamp from JSON " + (0, runtime_5.typeofJsonValue)(json) + ".");
let matches = json.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);
if (!matches)
throw new Error("Unable to parse Timestamp from JSON. Invalid format.");
let ms = Date.parse(matches[1] + "-" + matches[2] + "-" + matches[3] + "T" + matches[4] + ":" + matches[5] + ":" + matches[6] + (matches[8] ? matches[8] : "Z"));
if (Number.isNaN(ms))
throw new Error("Unable to parse Timestamp from JSON. Invalid value.");
if (ms < Date.parse("0001-01-01T00:00:00Z") || ms > Date.parse("9999-12-31T23:59:59Z"))
throw new globalThis.Error("Unable to parse Timestamp from JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");
if (!target)
target = this.create();
target.seconds = runtime_6.PbLong.from(ms / 1000).toString();
target.nanos = 0;
if (matches[7])
target.nanos = (parseInt("1" + matches[7] + "0".repeat(9 - matches[7].length)) - 1000000000);
return target;
}
create(value) {
const message = { seconds: "0", nanos: 0 };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* int64 seconds */ 1:
message.seconds = reader.int64().toString();
break;
case /* int32 nanos */ 2:
message.nanos = reader.int32();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* int64 seconds = 1; */
if (message.seconds !== "0")
writer.tag(1, runtime_1.WireType.Varint).int64(message.seconds);
/* int32 nanos = 2; */
if (message.nanos !== 0)
writer.tag(2, runtime_1.WireType.Varint).int32(message.nanos);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message google.protobuf.Timestamp
*/
exports.Timestamp = new Timestamp$Type();
//# sourceMappingURL=timestamp.js.map
/***/ }),
/***/ 84388:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.CacheService = exports.LookupCacheEntryResponse = exports.LookupCacheEntryRequest = exports.ListCacheEntriesResponse = exports.ListCacheEntriesRequest = exports.DeleteCacheEntryResponse = exports.DeleteCacheEntryRequest = exports.GetCacheEntryDownloadURLResponse = exports.GetCacheEntryDownloadURLRequest = exports.FinalizeCacheEntryUploadResponse = exports.FinalizeCacheEntryUploadRequest = exports.CreateCacheEntryResponse = exports.CreateCacheEntryRequest = void 0;
exports.CacheService = exports.GetCacheEntryDownloadURLResponse = exports.GetCacheEntryDownloadURLRequest = exports.FinalizeCacheEntryUploadResponse = exports.FinalizeCacheEntryUploadRequest = exports.CreateCacheEntryResponse = exports.CreateCacheEntryRequest = void 0;
// @generated by protobuf-ts 2.9.1 with parameter long_type_string,client_none,generate_dependencies
// @generated from protobuf file "results/api/v1/cache.proto" (package "github.actions.results.api.v1", syntax proto3)
// tslint:disable
@@ -617,7 +482,6 @@ const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const cacheentry_1 = __nccwpck_require__(53639);
const cachemetadata_1 = __nccwpck_require__(67988);
// @generated message type with reflection information, may provide speed optimized methods
class CreateCacheEntryRequest$Type extends runtime_5.MessageType {
@@ -985,376 +849,25 @@ class GetCacheEntryDownloadURLResponse$Type extends runtime_5.MessageType {
* @generated MessageType for protobuf message github.actions.results.api.v1.GetCacheEntryDownloadURLResponse
*/
exports.GetCacheEntryDownloadURLResponse = new GetCacheEntryDownloadURLResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeleteCacheEntryRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.DeleteCacheEntryRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.DeleteCacheEntryRequest
*/
exports.DeleteCacheEntryRequest = new DeleteCacheEntryRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeleteCacheEntryResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.DeleteCacheEntryResponse", [
{ no: 1, name: "ok", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
{ no: 2, name: "entry_id", kind: "scalar", T: 3 /*ScalarType.INT64*/ }
]);
}
create(value) {
const message = { ok: false, entryId: "0" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bool ok */ 1:
message.ok = reader.bool();
break;
case /* int64 entry_id */ 2:
message.entryId = reader.int64().toString();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bool ok = 1; */
if (message.ok !== false)
writer.tag(1, runtime_1.WireType.Varint).bool(message.ok);
/* int64 entry_id = 2; */
if (message.entryId !== "0")
writer.tag(2, runtime_1.WireType.Varint).int64(message.entryId);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.DeleteCacheEntryResponse
*/
exports.DeleteCacheEntryResponse = new DeleteCacheEntryResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListCacheEntriesRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.ListCacheEntriesRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "restore_keys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "", restoreKeys: [] };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
case /* repeated string restore_keys */ 3:
message.restoreKeys.push(reader.string());
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
/* repeated string restore_keys = 3; */
for (let i = 0; i < message.restoreKeys.length; i++)
writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.restoreKeys[i]);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.ListCacheEntriesRequest
*/
exports.ListCacheEntriesRequest = new ListCacheEntriesRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListCacheEntriesResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.ListCacheEntriesResponse", [
{ no: 1, name: "entries", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => cacheentry_1.CacheEntry }
]);
}
create(value) {
const message = { entries: [] };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* repeated github.actions.results.entities.v1.CacheEntry entries */ 1:
message.entries.push(cacheentry_1.CacheEntry.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* repeated github.actions.results.entities.v1.CacheEntry entries = 1; */
for (let i = 0; i < message.entries.length; i++)
cacheentry_1.CacheEntry.internalBinaryWrite(message.entries[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.ListCacheEntriesResponse
*/
exports.ListCacheEntriesResponse = new ListCacheEntriesResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class LookupCacheEntryRequest$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.LookupCacheEntryRequest", [
{ no: 1, name: "metadata", kind: "message", T: () => cachemetadata_1.CacheMetadata },
{ no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "restore_keys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
{ no: 4, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = { key: "", restoreKeys: [], version: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* github.actions.results.entities.v1.CacheMetadata metadata */ 1:
message.metadata = cachemetadata_1.CacheMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);
break;
case /* string key */ 2:
message.key = reader.string();
break;
case /* repeated string restore_keys */ 3:
message.restoreKeys.push(reader.string());
break;
case /* string version */ 4:
message.version = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* github.actions.results.entities.v1.CacheMetadata metadata = 1; */
if (message.metadata)
cachemetadata_1.CacheMetadata.internalBinaryWrite(message.metadata, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* string key = 2; */
if (message.key !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.key);
/* repeated string restore_keys = 3; */
for (let i = 0; i < message.restoreKeys.length; i++)
writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.restoreKeys[i]);
/* string version = 4; */
if (message.version !== "")
writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.version);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.LookupCacheEntryRequest
*/
exports.LookupCacheEntryRequest = new LookupCacheEntryRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class LookupCacheEntryResponse$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.api.v1.LookupCacheEntryResponse", [
{ no: 1, name: "exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
{ no: 2, name: "entry", kind: "message", T: () => cacheentry_1.CacheEntry }
]);
}
create(value) {
const message = { exists: false };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bool exists */ 1:
message.exists = reader.bool();
break;
case /* github.actions.results.entities.v1.CacheEntry entry */ 2:
message.entry = cacheentry_1.CacheEntry.internalBinaryRead(reader, reader.uint32(), options, message.entry);
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bool exists = 1; */
if (message.exists !== false)
writer.tag(1, runtime_1.WireType.Varint).bool(message.exists);
/* github.actions.results.entities.v1.CacheEntry entry = 2; */
if (message.entry)
cacheentry_1.CacheEntry.internalBinaryWrite(message.entry, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.api.v1.LookupCacheEntryResponse
*/
exports.LookupCacheEntryResponse = new LookupCacheEntryResponse$Type();
/**
* @generated ServiceType for protobuf service github.actions.results.api.v1.CacheService
*/
exports.CacheService = new runtime_rpc_1.ServiceType("github.actions.results.api.v1.CacheService", [
{ name: "CreateCacheEntry", options: {}, I: exports.CreateCacheEntryRequest, O: exports.CreateCacheEntryResponse },
{ name: "FinalizeCacheEntryUpload", options: {}, I: exports.FinalizeCacheEntryUploadRequest, O: exports.FinalizeCacheEntryUploadResponse },
{ name: "GetCacheEntryDownloadURL", options: {}, I: exports.GetCacheEntryDownloadURLRequest, O: exports.GetCacheEntryDownloadURLResponse },
{ name: "DeleteCacheEntry", options: {}, I: exports.DeleteCacheEntryRequest, O: exports.DeleteCacheEntryResponse },
{ name: "ListCacheEntries", options: {}, I: exports.ListCacheEntriesRequest, O: exports.ListCacheEntriesResponse },
{ name: "LookupCacheEntry", options: {}, I: exports.LookupCacheEntryRequest, O: exports.LookupCacheEntryResponse }
{ name: "GetCacheEntryDownloadURL", options: {}, I: exports.GetCacheEntryDownloadURLRequest, O: exports.GetCacheEntryDownloadURLResponse }
]);
//# sourceMappingURL=cache.js.map
/***/ }),
/***/ 40267:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
/***/ 42655:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.createCacheServiceServer = exports.CacheServiceMethodList = exports.CacheServiceMethod = exports.CacheServiceClientProtobuf = exports.CacheServiceClientJSON = void 0;
const twirp_ts_1 = __nccwpck_require__(66465);
exports.CacheServiceClientProtobuf = exports.CacheServiceClientJSON = void 0;
const cache_1 = __nccwpck_require__(84388);
class CacheServiceClientJSON {
constructor(rpc) {
@@ -1362,9 +875,6 @@ class CacheServiceClientJSON {
this.CreateCacheEntry.bind(this);
this.FinalizeCacheEntryUpload.bind(this);
this.GetCacheEntryDownloadURL.bind(this);
this.DeleteCacheEntry.bind(this);
this.ListCacheEntries.bind(this);
this.LookupCacheEntry.bind(this);
}
CreateCacheEntry(request) {
const data = cache_1.CreateCacheEntryRequest.toJson(request, {
@@ -1396,36 +906,6 @@ class CacheServiceClientJSON {
ignoreUnknownFields: true,
}));
}
DeleteCacheEntry(request) {
const data = cache_1.DeleteCacheEntryRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "DeleteCacheEntry", "application/json", data);
return promise.then((data) => cache_1.DeleteCacheEntryResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
ListCacheEntries(request) {
const data = cache_1.ListCacheEntriesRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "ListCacheEntries", "application/json", data);
return promise.then((data) => cache_1.ListCacheEntriesResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
LookupCacheEntry(request) {
const data = cache_1.LookupCacheEntryRequest.toJson(request, {
useProtoFieldName: true,
emitDefaultValues: false,
});
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "LookupCacheEntry", "application/json", data);
return promise.then((data) => cache_1.LookupCacheEntryResponse.fromJson(data, {
ignoreUnknownFields: true,
}));
}
}
exports.CacheServiceClientJSON = CacheServiceClientJSON;
class CacheServiceClientProtobuf {
@@ -1434,9 +914,6 @@ class CacheServiceClientProtobuf {
this.CreateCacheEntry.bind(this);
this.FinalizeCacheEntryUpload.bind(this);
this.GetCacheEntryDownloadURL.bind(this);
this.DeleteCacheEntry.bind(this);
this.ListCacheEntries.bind(this);
this.LookupCacheEntry.bind(this);
}
CreateCacheEntry(request) {
const data = cache_1.CreateCacheEntryRequest.toBinary(request);
@@ -1453,610 +930,9 @@ class CacheServiceClientProtobuf {
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "GetCacheEntryDownloadURL", "application/protobuf", data);
return promise.then((data) => cache_1.GetCacheEntryDownloadURLResponse.fromBinary(data));
}
DeleteCacheEntry(request) {
const data = cache_1.DeleteCacheEntryRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "DeleteCacheEntry", "application/protobuf", data);
return promise.then((data) => cache_1.DeleteCacheEntryResponse.fromBinary(data));
}
ListCacheEntries(request) {
const data = cache_1.ListCacheEntriesRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "ListCacheEntries", "application/protobuf", data);
return promise.then((data) => cache_1.ListCacheEntriesResponse.fromBinary(data));
}
LookupCacheEntry(request) {
const data = cache_1.LookupCacheEntryRequest.toBinary(request);
const promise = this.rpc.request("github.actions.results.api.v1.CacheService", "LookupCacheEntry", "application/protobuf", data);
return promise.then((data) => cache_1.LookupCacheEntryResponse.fromBinary(data));
}
}
exports.CacheServiceClientProtobuf = CacheServiceClientProtobuf;
var CacheServiceMethod;
(function (CacheServiceMethod) {
CacheServiceMethod["CreateCacheEntry"] = "CreateCacheEntry";
CacheServiceMethod["FinalizeCacheEntryUpload"] = "FinalizeCacheEntryUpload";
CacheServiceMethod["GetCacheEntryDownloadURL"] = "GetCacheEntryDownloadURL";
CacheServiceMethod["DeleteCacheEntry"] = "DeleteCacheEntry";
CacheServiceMethod["ListCacheEntries"] = "ListCacheEntries";
CacheServiceMethod["LookupCacheEntry"] = "LookupCacheEntry";
})(CacheServiceMethod || (exports.CacheServiceMethod = CacheServiceMethod = {}));
exports.CacheServiceMethodList = [
CacheServiceMethod.CreateCacheEntry,
CacheServiceMethod.FinalizeCacheEntryUpload,
CacheServiceMethod.GetCacheEntryDownloadURL,
CacheServiceMethod.DeleteCacheEntry,
CacheServiceMethod.ListCacheEntries,
CacheServiceMethod.LookupCacheEntry,
];
function createCacheServiceServer(service) {
return new twirp_ts_1.TwirpServer({
service,
packageName: "github.actions.results.api.v1",
serviceName: "CacheService",
methodList: exports.CacheServiceMethodList,
matchRoute: matchCacheServiceRoute,
});
}
exports.createCacheServiceServer = createCacheServiceServer;
function matchCacheServiceRoute(method, events) {
switch (method) {
case "CreateCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "CreateCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceCreateCacheEntryRequest(ctx, service, data, interceptors);
});
case "FinalizeCacheEntryUpload":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "FinalizeCacheEntryUpload" });
yield events.onMatch(ctx);
return handleCacheServiceFinalizeCacheEntryUploadRequest(ctx, service, data, interceptors);
});
case "GetCacheEntryDownloadURL":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "GetCacheEntryDownloadURL" });
yield events.onMatch(ctx);
return handleCacheServiceGetCacheEntryDownloadURLRequest(ctx, service, data, interceptors);
});
case "DeleteCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "DeleteCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceDeleteCacheEntryRequest(ctx, service, data, interceptors);
});
case "ListCacheEntries":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "ListCacheEntries" });
yield events.onMatch(ctx);
return handleCacheServiceListCacheEntriesRequest(ctx, service, data, interceptors);
});
case "LookupCacheEntry":
return (ctx, service, data, interceptors) => __awaiter(this, void 0, void 0, function* () {
ctx = Object.assign(Object.assign({}, ctx), { methodName: "LookupCacheEntry" });
yield events.onMatch(ctx);
return handleCacheServiceLookupCacheEntryRequest(ctx, service, data, interceptors);
});
default:
events.onNotFound();
const msg = `no handler found`;
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceCreateCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceCreateCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceCreateCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceFinalizeCacheEntryUploadRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceFinalizeCacheEntryUploadJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceFinalizeCacheEntryUploadProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceGetCacheEntryDownloadURLRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceGetCacheEntryDownloadURLJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceGetCacheEntryDownloadURLProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceDeleteCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceDeleteCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceDeleteCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceListCacheEntriesRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceListCacheEntriesJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceListCacheEntriesProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceLookupCacheEntryRequest(ctx, service, data, interceptors) {
switch (ctx.contentType) {
case twirp_ts_1.TwirpContentType.JSON:
return handleCacheServiceLookupCacheEntryJSON(ctx, service, data, interceptors);
case twirp_ts_1.TwirpContentType.Protobuf:
return handleCacheServiceLookupCacheEntryProtobuf(ctx, service, data, interceptors);
default:
const msg = "unexpected Content-Type";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.BadRoute, msg);
}
}
function handleCacheServiceCreateCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.CreateCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.CreateCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.CreateCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.CreateCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceFinalizeCacheEntryUploadJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.FinalizeCacheEntryUploadRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.FinalizeCacheEntryUpload(ctx, inputReq);
});
}
else {
response = yield service.FinalizeCacheEntryUpload(ctx, request);
}
return JSON.stringify(cache_1.FinalizeCacheEntryUploadResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceGetCacheEntryDownloadURLJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.GetCacheEntryDownloadURLRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.GetCacheEntryDownloadURL(ctx, inputReq);
});
}
else {
response = yield service.GetCacheEntryDownloadURL(ctx, request);
}
return JSON.stringify(cache_1.GetCacheEntryDownloadURLResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceDeleteCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.DeleteCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.DeleteCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.DeleteCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.DeleteCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceListCacheEntriesJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.ListCacheEntriesRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.ListCacheEntries(ctx, inputReq);
});
}
else {
response = yield service.ListCacheEntries(ctx, request);
}
return JSON.stringify(cache_1.ListCacheEntriesResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceLookupCacheEntryJSON(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
const body = JSON.parse(data.toString() || "{}");
request = cache_1.LookupCacheEntryRequest.fromJson(body, {
ignoreUnknownFields: true,
});
}
catch (e) {
if (e instanceof Error) {
const msg = "the json request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.LookupCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.LookupCacheEntry(ctx, request);
}
return JSON.stringify(cache_1.LookupCacheEntryResponse.toJson(response, {
useProtoFieldName: true,
emitDefaultValues: false,
}));
});
}
function handleCacheServiceCreateCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.CreateCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.CreateCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.CreateCacheEntry(ctx, request);
}
return Buffer.from(cache_1.CreateCacheEntryResponse.toBinary(response));
});
}
function handleCacheServiceFinalizeCacheEntryUploadProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.FinalizeCacheEntryUploadRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.FinalizeCacheEntryUpload(ctx, inputReq);
});
}
else {
response = yield service.FinalizeCacheEntryUpload(ctx, request);
}
return Buffer.from(cache_1.FinalizeCacheEntryUploadResponse.toBinary(response));
});
}
function handleCacheServiceGetCacheEntryDownloadURLProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.GetCacheEntryDownloadURLRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.GetCacheEntryDownloadURL(ctx, inputReq);
});
}
else {
response = yield service.GetCacheEntryDownloadURL(ctx, request);
}
return Buffer.from(cache_1.GetCacheEntryDownloadURLResponse.toBinary(response));
});
}
function handleCacheServiceDeleteCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.DeleteCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.DeleteCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.DeleteCacheEntry(ctx, request);
}
return Buffer.from(cache_1.DeleteCacheEntryResponse.toBinary(response));
});
}
function handleCacheServiceListCacheEntriesProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.ListCacheEntriesRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.ListCacheEntries(ctx, inputReq);
});
}
else {
response = yield service.ListCacheEntries(ctx, request);
}
return Buffer.from(cache_1.ListCacheEntriesResponse.toBinary(response));
});
}
function handleCacheServiceLookupCacheEntryProtobuf(ctx, service, data, interceptors) {
return __awaiter(this, void 0, void 0, function* () {
let request;
let response;
try {
request = cache_1.LookupCacheEntryRequest.fromBinary(data);
}
catch (e) {
if (e instanceof Error) {
const msg = "the protobuf request could not be decoded";
throw new twirp_ts_1.TwirpError(twirp_ts_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
if (interceptors && interceptors.length > 0) {
const interceptor = (0, twirp_ts_1.chainInterceptors)(...interceptors);
response = yield interceptor(ctx, request, (ctx, inputReq) => {
return service.LookupCacheEntry(ctx, inputReq);
});
}
else {
response = yield service.LookupCacheEntry(ctx, request);
}
return Buffer.from(cache_1.LookupCacheEntryResponse.toBinary(response));
});
}
//# sourceMappingURL=cache.twirp.js.map
/***/ }),
/***/ 53639:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.CacheEntry = void 0;
const runtime_1 = __nccwpck_require__(4061);
const runtime_2 = __nccwpck_require__(4061);
const runtime_3 = __nccwpck_require__(4061);
const runtime_4 = __nccwpck_require__(4061);
const runtime_5 = __nccwpck_require__(4061);
const timestamp_1 = __nccwpck_require__(24469);
// @generated message type with reflection information, may provide speed optimized methods
class CacheEntry$Type extends runtime_5.MessageType {
constructor() {
super("github.actions.results.entities.v1.CacheEntry", [
{ no: 1, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 2, name: "hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 3, name: "size_bytes", kind: "scalar", T: 3 /*ScalarType.INT64*/ },
{ no: 4, name: "scope", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 5, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 6, name: "created_at", kind: "message", T: () => timestamp_1.Timestamp },
{ no: 7, name: "last_accessed_at", kind: "message", T: () => timestamp_1.Timestamp },
{ no: 8, name: "expires_at", kind: "message", T: () => timestamp_1.Timestamp }
]);
}
create(value) {
const message = { key: "", hash: "", sizeBytes: "0", scope: "", version: "" };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* string key */ 1:
message.key = reader.string();
break;
case /* string hash */ 2:
message.hash = reader.string();
break;
case /* int64 size_bytes */ 3:
message.sizeBytes = reader.int64().toString();
break;
case /* string scope */ 4:
message.scope = reader.string();
break;
case /* string version */ 5:
message.version = reader.string();
break;
case /* google.protobuf.Timestamp created_at */ 6:
message.createdAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.createdAt);
break;
case /* google.protobuf.Timestamp last_accessed_at */ 7:
message.lastAccessedAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.lastAccessedAt);
break;
case /* google.protobuf.Timestamp expires_at */ 8:
message.expiresAt = timestamp_1.Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.expiresAt);
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* string key = 1; */
if (message.key !== "")
writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.key);
/* string hash = 2; */
if (message.hash !== "")
writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.hash);
/* int64 size_bytes = 3; */
if (message.sizeBytes !== "0")
writer.tag(3, runtime_1.WireType.Varint).int64(message.sizeBytes);
/* string scope = 4; */
if (message.scope !== "")
writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.scope);
/* string version = 5; */
if (message.version !== "")
writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.version);
/* google.protobuf.Timestamp created_at = 6; */
if (message.createdAt)
timestamp_1.Timestamp.internalBinaryWrite(message.createdAt, writer.tag(6, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.protobuf.Timestamp last_accessed_at = 7; */
if (message.lastAccessedAt)
timestamp_1.Timestamp.internalBinaryWrite(message.lastAccessedAt, writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.protobuf.Timestamp expires_at = 8; */
if (message.expiresAt)
timestamp_1.Timestamp.internalBinaryWrite(message.expiresAt, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message github.actions.results.entities.v1.CacheEntry
*/
exports.CacheEntry = new CacheEntry$Type();
//# sourceMappingURL=cacheentry.js.map
//# sourceMappingURL=cache.twirp-client.js.map
/***/ }),
@@ -3327,7 +2203,7 @@ const config_1 = __nccwpck_require__(35147);
const cacheUtils_1 = __nccwpck_require__(91518);
const auth_1 = __nccwpck_require__(35526);
const http_client_1 = __nccwpck_require__(96255);
const cache_twirp_1 = __nccwpck_require__(40267);
const cache_twirp_client_1 = __nccwpck_require__(42655);
/**
* This class is a wrapper around the CacheServiceClientJSON class generated by Twirp.
*
@@ -3464,7 +2340,7 @@ class CacheServiceClient {
}
function internalCacheTwirpClient(options) {
const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier);
return new cache_twirp_1.CacheServiceClientJSON(client);
return new cache_twirp_client_1.CacheServiceClientJSON(client);
}
exports.internalCacheTwirpClient = internalCacheTwirpClient;
//# sourceMappingURL=cacheTwirpClient.js.map
@@ -79777,12 +78653,16 @@ class ReflectionJsonReader {
target[localName] = field.T().internalJsonRead(jsonValue, options, target[localName]);
break;
case "enum":
if (jsonValue === null)
continue;
let val = this.enum(field.T(), jsonValue, field.name, options.ignoreUnknownFields);
if (val === false)
continue;
target[localName] = val;
break;
case "scalar":
if (jsonValue === null)
continue;
target[localName] = this.scalar(jsonValue, field.T, field.L, field.name);
break;
}
@@ -81661,599 +80541,6 @@ DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() {
};
/***/ }),
/***/ 13598:
/***/ ((module) => {
"use strict";
function _process (v, mod) {
var i
var r
if (typeof mod === 'function') {
r = mod(v)
if (r !== undefined) {
v = r
}
} else if (Array.isArray(mod)) {
for (i = 0; i < mod.length; i++) {
r = mod[i](v)
if (r !== undefined) {
v = r
}
}
}
return v
}
function parseKey (key, val) {
// detect negative index notation
if (key[0] === '-' && Array.isArray(val) && /^-\d+$/.test(key)) {
return val.length + parseInt(key, 10)
}
return key
}
function isIndex (k) {
return /^\d+$/.test(k)
}
function isObject (val) {
return Object.prototype.toString.call(val) === '[object Object]'
}
function isArrayOrObject (val) {
return Object(val) === val
}
function isEmptyObject (val) {
return Object.keys(val).length === 0
}
var blacklist = ['__proto__', 'prototype', 'constructor']
var blacklistFilter = function (part) { return blacklist.indexOf(part) === -1 }
function parsePath (path, sep) {
if (path.indexOf('[') >= 0) {
path = path.replace(/\[/g, sep).replace(/]/g, '')
}
var parts = path.split(sep)
var check = parts.filter(blacklistFilter)
if (check.length !== parts.length) {
throw Error('Refusing to update blacklisted property ' + path)
}
return parts
}
var hasOwnProperty = Object.prototype.hasOwnProperty
function DotObject (separator, override, useArray, useBrackets) {
if (!(this instanceof DotObject)) {
return new DotObject(separator, override, useArray, useBrackets)
}
if (typeof override === 'undefined') override = false
if (typeof useArray === 'undefined') useArray = true
if (typeof useBrackets === 'undefined') useBrackets = true
this.separator = separator || '.'
this.override = override
this.useArray = useArray
this.useBrackets = useBrackets
this.keepArray = false
// contains touched arrays
this.cleanup = []
}
var dotDefault = new DotObject('.', false, true, true)
function wrap (method) {
return function () {
return dotDefault[method].apply(dotDefault, arguments)
}
}
DotObject.prototype._fill = function (a, obj, v, mod) {
var k = a.shift()
if (a.length > 0) {
obj[k] = obj[k] || (this.useArray && isIndex(a[0]) ? [] : {})
if (!isArrayOrObject(obj[k])) {
if (this.override) {
obj[k] = {}
} else {
if (!(isArrayOrObject(v) && isEmptyObject(v))) {
throw new Error(
'Trying to redefine `' + k + '` which is a ' + typeof obj[k]
)
}
return
}
}
this._fill(a, obj[k], v, mod)
} else {
if (!this.override && isArrayOrObject(obj[k]) && !isEmptyObject(obj[k])) {
if (!(isArrayOrObject(v) && isEmptyObject(v))) {
throw new Error("Trying to redefine non-empty obj['" + k + "']")
}
return
}
obj[k] = _process(v, mod)
}
}
/**
*
* Converts an object with dotted-key/value pairs to it's expanded version
*
* Optionally transformed by a set of modifiers.
*
* Usage:
*
* var row = {
* 'nr': 200,
* 'doc.name': ' My Document '
* }
*
* var mods = {
* 'doc.name': [_s.trim, _s.underscored]
* }
*
* dot.object(row, mods)
*
* @param {Object} obj
* @param {Object} mods
*/
DotObject.prototype.object = function (obj, mods) {
var self = this
Object.keys(obj).forEach(function (k) {
var mod = mods === undefined ? null : mods[k]
// normalize array notation.
var ok = parsePath(k, self.separator).join(self.separator)
if (ok.indexOf(self.separator) !== -1) {
self._fill(ok.split(self.separator), obj, obj[k], mod)
delete obj[k]
} else {
obj[k] = _process(obj[k], mod)
}
})
return obj
}
/**
* @param {String} path dotted path
* @param {String} v value to be set
* @param {Object} obj object to be modified
* @param {Function|Array} mod optional modifier
*/
DotObject.prototype.str = function (path, v, obj, mod) {
var ok = parsePath(path, this.separator).join(this.separator)
if (path.indexOf(this.separator) !== -1) {
this._fill(ok.split(this.separator), obj, v, mod)
} else {
obj[path] = _process(v, mod)
}
return obj
}
/**
*
* Pick a value from an object using dot notation.
*
* Optionally remove the value
*
* @param {String} path
* @param {Object} obj
* @param {Boolean} remove
*/
DotObject.prototype.pick = function (path, obj, remove, reindexArray) {
var i
var keys
var val
var key
var cp
keys = parsePath(path, this.separator)
for (i = 0; i < keys.length; i++) {
key = parseKey(keys[i], obj)
if (obj && typeof obj === 'object' && key in obj) {
if (i === keys.length - 1) {
if (remove) {
val = obj[key]
if (reindexArray && Array.isArray(obj)) {
obj.splice(key, 1)
} else {
delete obj[key]
}
if (Array.isArray(obj)) {
cp = keys.slice(0, -1).join('.')
if (this.cleanup.indexOf(cp) === -1) {
this.cleanup.push(cp)
}
}
return val
} else {
return obj[key]
}
} else {
obj = obj[key]
}
} else {
return undefined
}
}
if (remove && Array.isArray(obj)) {
obj = obj.filter(function (n) {
return n !== undefined
})
}
return obj
}
/**
*
* Delete value from an object using dot notation.
*
* @param {String} path
* @param {Object} obj
* @return {any} The removed value
*/
DotObject.prototype.delete = function (path, obj) {
return this.remove(path, obj, true)
}
/**
*
* Remove value from an object using dot notation.
*
* Will remove multiple items if path is an array.
* In this case array indexes will be retained until all
* removals have been processed.
*
* Use dot.delete() to automatically re-index arrays.
*
* @param {String|Array<String>} path
* @param {Object} obj
* @param {Boolean} reindexArray
* @return {any} The removed value
*/
DotObject.prototype.remove = function (path, obj, reindexArray) {
var i
this.cleanup = []
if (Array.isArray(path)) {
for (i = 0; i < path.length; i++) {
this.pick(path[i], obj, true, reindexArray)
}
if (!reindexArray) {
this._cleanup(obj)
}
return obj
} else {
return this.pick(path, obj, true, reindexArray)
}
}
DotObject.prototype._cleanup = function (obj) {
var ret
var i
var keys
var root
if (this.cleanup.length) {
for (i = 0; i < this.cleanup.length; i++) {
keys = this.cleanup[i].split('.')
root = keys.splice(0, -1).join('.')
ret = root ? this.pick(root, obj) : obj
ret = ret[keys[0]].filter(function (v) {
return v !== undefined
})
this.set(this.cleanup[i], ret, obj)
}
this.cleanup = []
}
}
/**
* Alias method for `dot.remove`
*
* Note: this is not an alias for dot.delete()
*
* @param {String|Array<String>} path
* @param {Object} obj
* @param {Boolean} reindexArray
* @return {any} The removed value
*/
DotObject.prototype.del = DotObject.prototype.remove
/**
*
* Move a property from one place to the other.
*
* If the source path does not exist (undefined)
* the target property will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.move = function (source, target, obj, mods, merge) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(target, _process(this.pick(source, obj, true), mods), obj, merge)
} else {
merge = mods
this.set(target, this.pick(source, obj, true), obj, merge)
}
return obj
}
/**
*
* Transfer a property from one object to another object.
*
* If the source path does not exist (undefined)
* the property on the other object will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj1
* @param {Object} obj2
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.transfer = function (
source,
target,
obj1,
obj2,
mods,
merge
) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(
target,
_process(this.pick(source, obj1, true), mods),
obj2,
merge
)
} else {
merge = mods
this.set(target, this.pick(source, obj1, true), obj2, merge)
}
return obj2
}
/**
*
* Copy a property from one object to another object.
*
* If the source path does not exist (undefined)
* the property on the other object will not be set.
*
* @param {String} source
* @param {String} target
* @param {Object} obj1
* @param {Object} obj2
* @param {Function|Array} mods
* @param {Boolean} merge
*/
DotObject.prototype.copy = function (source, target, obj1, obj2, mods, merge) {
if (typeof mods === 'function' || Array.isArray(mods)) {
this.set(
target,
_process(
// clone what is picked
JSON.parse(JSON.stringify(this.pick(source, obj1, false))),
mods
),
obj2,
merge
)
} else {
merge = mods
this.set(target, this.pick(source, obj1, false), obj2, merge)
}
return obj2
}
/**
*
* Set a property on an object using dot notation.
*
* @param {String} path
* @param {any} val
* @param {Object} obj
* @param {Boolean} merge
*/
DotObject.prototype.set = function (path, val, obj, merge) {
var i
var k
var keys
var key
// Do not operate if the value is undefined.
if (typeof val === 'undefined') {
return obj
}
keys = parsePath(path, this.separator)
for (i = 0; i < keys.length; i++) {
key = keys[i]
if (i === keys.length - 1) {
if (merge && isObject(val) && isObject(obj[key])) {
for (k in val) {
if (hasOwnProperty.call(val, k)) {
obj[key][k] = val[k]
}
}
} else if (merge && Array.isArray(obj[key]) && Array.isArray(val)) {
for (var j = 0; j < val.length; j++) {
obj[keys[i]].push(val[j])
}
} else {
obj[key] = val
}
} else if (
// force the value to be an object
!hasOwnProperty.call(obj, key) ||
(!isObject(obj[key]) && !Array.isArray(obj[key]))
) {
// initialize as array if next key is numeric
if (/^\d+$/.test(keys[i + 1])) {
obj[key] = []
} else {
obj[key] = {}
}
}
obj = obj[key]
}
return obj
}
/**
*
* Transform an object
*
* Usage:
*
* var obj = {
* "id": 1,
* "some": {
* "thing": "else"
* }
* }
*
* var transform = {
* "id": "nr",
* "some.thing": "name"
* }
*
* var tgt = dot.transform(transform, obj)
*
* @param {Object} recipe Transform recipe
* @param {Object} obj Object to be transformed
* @param {Array} mods modifiers for the target
*/
DotObject.prototype.transform = function (recipe, obj, tgt) {
obj = obj || {}
tgt = tgt || {}
Object.keys(recipe).forEach(
function (key) {
this.set(recipe[key], this.pick(key, obj), tgt)
}.bind(this)
)
return tgt
}
/**
*
* Convert object to dotted-key/value pair
*
* Usage:
*
* var tgt = dot.dot(obj)
*
* or
*
* var tgt = {}
* dot.dot(obj, tgt)
*
* @param {Object} obj source object
* @param {Object} tgt target object
* @param {Array} path path array (internal)
*/
DotObject.prototype.dot = function (obj, tgt, path) {
tgt = tgt || {}
path = path || []
var isArray = Array.isArray(obj)
Object.keys(obj).forEach(
function (key) {
var index = isArray && this.useBrackets ? '[' + key + ']' : key
if (
isArrayOrObject(obj[key]) &&
((isObject(obj[key]) && !isEmptyObject(obj[key])) ||
(Array.isArray(obj[key]) && !this.keepArray && obj[key].length !== 0))
) {
if (isArray && this.useBrackets) {
var previousKey = path[path.length - 1] || ''
return this.dot(
obj[key],
tgt,
path.slice(0, -1).concat(previousKey + index)
)
} else {
return this.dot(obj[key], tgt, path.concat(index))
}
} else {
if (isArray && this.useBrackets) {
tgt[path.join(this.separator).concat('[' + key + ']')] = obj[key]
} else {
tgt[path.concat(index).join(this.separator)] = obj[key]
}
}
}.bind(this)
)
return tgt
}
DotObject.pick = wrap('pick')
DotObject.move = wrap('move')
DotObject.transfer = wrap('transfer')
DotObject.transform = wrap('transform')
DotObject.copy = wrap('copy')
DotObject.object = wrap('object')
DotObject.str = wrap('str')
DotObject.set = wrap('set')
DotObject.delete = wrap('delete')
DotObject.del = DotObject.remove = wrap('remove')
DotObject.dot = wrap('dot');
['override', 'overwrite'].forEach(function (prop) {
Object.defineProperty(DotObject, prop, {
get: function () {
return dotDefault.override
},
set: function (val) {
dotDefault.override = !!val
}
})
});
['useArray', 'keepArray', 'useBrackets'].forEach(function (prop) {
Object.defineProperty(DotObject, prop, {
get: function () {
return dotDefault[prop]
},
set: function (val) {
dotDefault[prop] = val
}
})
})
DotObject._process = _process
module.exports = DotObject
/***/ }),
/***/ 47426:
@@ -92948,1152 +91235,6 @@ if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) {
exports.debug = debug; // for test
/***/ }),
/***/ 31524:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
/***/ }),
/***/ 66647:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isValidErrorCode = exports.httpStatusFromErrorCode = exports.TwirpErrorCode = exports.BadRouteError = exports.InternalServerErrorWith = exports.InternalServerError = exports.RequiredArgumentError = exports.InvalidArgumentError = exports.NotFoundError = exports.TwirpError = void 0;
/**
* Represents a twirp error
*/
class TwirpError extends Error {
constructor(code, msg) {
super(msg);
this.code = TwirpErrorCode.Internal;
this.meta = {};
this.code = code;
this.msg = msg;
Object.setPrototypeOf(this, TwirpError.prototype);
}
/**
* Adds a metadata kv to the error
* @param key
* @param value
*/
withMeta(key, value) {
this.meta[key] = value;
return this;
}
/**
* Returns a single metadata value
* return "" if not found
* @param key
*/
getMeta(key) {
return this.meta[key] || "";
}
/**
* Add the original error cause
* @param err
* @param addMeta
*/
withCause(err, addMeta = false) {
this._originalCause = err;
if (addMeta) {
this.withMeta("cause", err.message);
}
return this;
}
cause() {
return this._originalCause;
}
/**
* Returns the error representation to JSON
*/
toJSON() {
try {
return JSON.stringify({
code: this.code,
msg: this.msg,
meta: this.meta,
});
}
catch (e) {
return `{"code": "internal", "msg": "There was an error but it could not be serialized into JSON"}`;
}
}
/**
* Create a twirp error from an object
* @param obj
*/
static fromObject(obj) {
const code = obj["code"] || TwirpErrorCode.Unknown;
const msg = obj["msg"] || "unknown";
const error = new TwirpError(code, msg);
if (obj["meta"]) {
Object.keys(obj["meta"]).forEach((key) => {
error.withMeta(key, obj["meta"][key]);
});
}
return error;
}
}
exports.TwirpError = TwirpError;
/**
* NotFoundError constructor for the common NotFound error.
*/
class NotFoundError extends TwirpError {
constructor(msg) {
super(TwirpErrorCode.NotFound, msg);
}
}
exports.NotFoundError = NotFoundError;
/**
* InvalidArgumentError constructor for the common InvalidArgument error. Can be
* used when an argument has invalid format, is a number out of range, is a bad
* option, etc).
*/
class InvalidArgumentError extends TwirpError {
constructor(argument, validationMsg) {
super(TwirpErrorCode.InvalidArgument, argument + " " + validationMsg);
this.withMeta("argument", argument);
}
}
exports.InvalidArgumentError = InvalidArgumentError;
/**
* RequiredArgumentError is a more specific constructor for InvalidArgument
* error. Should be used when the argument is required (expected to have a
* non-zero value).
*/
class RequiredArgumentError extends InvalidArgumentError {
constructor(argument) {
super(argument, "is required");
}
}
exports.RequiredArgumentError = RequiredArgumentError;
/**
* InternalError constructor for the common Internal error. Should be used to
* specify that something bad or unexpected happened.
*/
class InternalServerError extends TwirpError {
constructor(msg) {
super(TwirpErrorCode.Internal, msg);
}
}
exports.InternalServerError = InternalServerError;
/**
* InternalErrorWith makes an internal error, wrapping the original error and using it
* for the error message, and with metadata "cause" with the original error type.
* This function is used by Twirp services to wrap non-Twirp errors as internal errors.
* The wrapped error can be extracted later with err.cause()
*/
class InternalServerErrorWith extends InternalServerError {
constructor(err) {
super(err.message);
this.withMeta("cause", err.name);
this.withCause(err);
}
}
exports.InternalServerErrorWith = InternalServerErrorWith;
/**
* A standard BadRoute Error
*/
class BadRouteError extends TwirpError {
constructor(msg, method, url) {
super(TwirpErrorCode.BadRoute, msg);
this.withMeta("twirp_invalid_route", method + " " + url);
}
}
exports.BadRouteError = BadRouteError;
var TwirpErrorCode;
(function (TwirpErrorCode) {
// Canceled indicates the operation was cancelled (typically by the caller).
TwirpErrorCode["Canceled"] = "canceled";
// Unknown error. For example when handling errors raised by APIs that do not
// return enough error information.
TwirpErrorCode["Unknown"] = "unknown";
// InvalidArgument indicates client specified an invalid argument. It
// indicates arguments that are problematic regardless of the state of the
// system (i.e. a malformed file name, required argument, number out of range,
// etc.).
TwirpErrorCode["InvalidArgument"] = "invalid_argument";
// Malformed indicates an error occurred while decoding the client's request.
// This may mean that the message was encoded improperly, or that there is a
// disagreement in message format between the client and server.
TwirpErrorCode["Malformed"] = "malformed";
// DeadlineExceeded means operation expired before completion. For operations
// that change the state of the system, this error may be returned even if the
// operation has completed successfully (timeout).
TwirpErrorCode["DeadlineExceeded"] = "deadline_exceeded";
// NotFound means some requested entity was not found.
TwirpErrorCode["NotFound"] = "not_found";
// BadRoute means that the requested URL path wasn't routable to a Twirp
// service and method. This is returned by the generated server, and usually
// shouldn't be returned by applications. Instead, applications should use
// NotFound or Unimplemented.
TwirpErrorCode["BadRoute"] = "bad_route";
// AlreadyExists means an attempt to create an entity failed because one
// already exists.
TwirpErrorCode["AlreadyExists"] = "already_exists";
// PermissionDenied indicates the caller does not have permission to execute
// the specified operation. It must not be used if the caller cannot be
// identified (Unauthenticated).
TwirpErrorCode["PermissionDenied"] = "permission_denied";
// Unauthenticated indicates the request does not have valid authentication
// credentials for the operation.
TwirpErrorCode["Unauthenticated"] = "unauthenticated";
// ResourceExhausted indicates some resource has been exhausted, perhaps a
// per-user quota, or perhaps the entire file system is out of space.
TwirpErrorCode["ResourceExhausted"] = "resource_exhausted";
// FailedPrecondition indicates operation was rejected because the system is
// not in a state required for the operation's execution. For example, doing
// an rmdir operation on a directory that is non-empty, or on a non-directory
// object, or when having conflicting read-modify-write on the same resource.
TwirpErrorCode["FailedPrecondition"] = "failed_precondition";
// Aborted indicates the operation was aborted, typically due to a concurrency
// issue like sequencer check failures, transaction aborts, etc.
TwirpErrorCode["Aborted"] = "aborted";
// OutOfRange means operation was attempted past the valid range. For example,
// seeking or reading past end of a paginated collection.
//
// Unlike InvalidArgument, this error indicates a problem that may be fixed if
// the system state changes (i.e. adding more items to the collection).
//
// There is a fair bit of overlap between FailedPrecondition and OutOfRange.
// We recommend using OutOfRange (the more specific error) when it applies so
// that callers who are iterating through a space can easily look for an
// OutOfRange error to detect when they are done.
TwirpErrorCode["OutOfRange"] = "out_of_range";
// Unimplemented indicates operation is not implemented or not
// supported/enabled in this service.
TwirpErrorCode["Unimplemented"] = "unimplemented";
// Internal errors. When some invariants expected by the underlying system
// have been broken. In other words, something bad happened in the library or
// backend service. Do not confuse with HTTP Internal Server Error; an
// Internal error could also happen on the client code, i.e. when parsing a
// server response.
TwirpErrorCode["Internal"] = "internal";
// Unavailable indicates the service is currently unavailable. This is a most
// likely a transient condition and may be corrected by retrying with a
// backoff.
TwirpErrorCode["Unavailable"] = "unavailable";
// DataLoss indicates unrecoverable data loss or corruption.
TwirpErrorCode["DataLoss"] = "data_loss";
})(TwirpErrorCode = exports.TwirpErrorCode || (exports.TwirpErrorCode = {}));
// ServerHTTPStatusFromErrorCode maps a Twirp error type into a similar HTTP
// response status. It is used by the Twirp server handler to set the HTTP
// response status code. Returns 0 if the ErrorCode is invalid.
function httpStatusFromErrorCode(code) {
switch (code) {
case TwirpErrorCode.Canceled:
return 408; // RequestTimeout
case TwirpErrorCode.Unknown:
return 500; // Internal Server Error
case TwirpErrorCode.InvalidArgument:
return 400; // BadRequest
case TwirpErrorCode.Malformed:
return 400; // BadRequest
case TwirpErrorCode.DeadlineExceeded:
return 408; // RequestTimeout
case TwirpErrorCode.NotFound:
return 404; // Not Found
case TwirpErrorCode.BadRoute:
return 404; // Not Found
case TwirpErrorCode.AlreadyExists:
return 409; // Conflict
case TwirpErrorCode.PermissionDenied:
return 403; // Forbidden
case TwirpErrorCode.Unauthenticated:
return 401; // Unauthorized
case TwirpErrorCode.ResourceExhausted:
return 429; // Too Many Requests
case TwirpErrorCode.FailedPrecondition:
return 412; // Precondition Failed
case TwirpErrorCode.Aborted:
return 409; // Conflict
case TwirpErrorCode.OutOfRange:
return 400; // Bad Request
case TwirpErrorCode.Unimplemented:
return 501; // Not Implemented
case TwirpErrorCode.Internal:
return 500; // Internal Server Error
case TwirpErrorCode.Unavailable:
return 503; // Service Unavailable
case TwirpErrorCode.DataLoss:
return 500; // Internal Server Error
default:
return 0; // Invalid!
}
}
exports.httpStatusFromErrorCode = httpStatusFromErrorCode;
// IsValidErrorCode returns true if is one of the valid predefined constants.
function isValidErrorCode(code) {
return httpStatusFromErrorCode(code) != 0;
}
exports.isValidErrorCode = isValidErrorCode;
/***/ }),
/***/ 56748:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Gateway = exports.Pattern = void 0;
const querystring_1 = __nccwpck_require__(63477);
const dotObject = __importStar(__nccwpck_require__(13598));
const request_1 = __nccwpck_require__(8347);
const errors_1 = __nccwpck_require__(66647);
const http_client_1 = __nccwpck_require__(94091);
const server_1 = __nccwpck_require__(26604);
var Pattern;
(function (Pattern) {
Pattern["POST"] = "post";
Pattern["GET"] = "get";
Pattern["PATCH"] = "patch";
Pattern["PUT"] = "put";
Pattern["DELETE"] = "delete";
})(Pattern = exports.Pattern || (exports.Pattern = {}));
/**
* The Gateway proxies http requests to Twirp Compliant
* handlers
*/
class Gateway {
constructor(routes) {
this.routes = routes;
}
/**
* Middleware that rewrite the current request
* to a Twirp compliant request
*/
twirpRewrite(prefix = "/twirp") {
return (req, resp, next) => {
this.rewrite(req, resp, prefix)
.then(() => next())
.catch((e) => {
if (e instanceof errors_1.TwirpError) {
if (e.code !== errors_1.TwirpErrorCode.NotFound) {
server_1.writeError(resp, e);
}
else {
next();
}
}
});
};
}
/**
* Rewrite an incoming request to a Twirp compliant request
* @param req
* @param resp
* @param prefix
*/
rewrite(req, resp, prefix = "/twirp") {
return __awaiter(this, void 0, void 0, function* () {
const [match, route] = this.matchRoute(req);
const body = yield this.prepareTwirpBody(req, match, route);
const twirpUrl = `${prefix}/${route.packageName}.${route.serviceName}/${route.methodName}`;
req.url = twirpUrl;
req.originalUrl = twirpUrl;
req.method = "POST";
req.headers["content-type"] = "application/json";
req.rawBody = Buffer.from(JSON.stringify(body));
if (route.responseBodyKey) {
const endFn = resp.end.bind(resp);
resp.end = function (chunk) {
if (resp.statusCode === 200) {
endFn(`{ "${route.responseBodyKey}": ${chunk} }`);
}
else {
endFn(chunk);
}
};
}
});
}
/**
* Create a reverse proxy handler to
* proxy http requests to Twirp Compliant handlers
* @param httpClientOption
*/
reverseProxy(httpClientOption) {
const client = http_client_1.NodeHttpRPC(httpClientOption);
return (req, res) => __awaiter(this, void 0, void 0, function* () {
try {
const [match, route] = this.matchRoute(req);
const body = yield this.prepareTwirpBody(req, match, route);
const response = yield client.request(`${route.packageName}.${route.serviceName}`, route.methodName, "application/json", body);
res.statusCode = 200;
res.setHeader("content-type", "application/json");
let jsonResponse;
if (route.responseBodyKey) {
jsonResponse = JSON.stringify({ [route.responseBodyKey]: response });
}
else {
jsonResponse = JSON.stringify(response);
}
res.end(jsonResponse);
}
catch (e) {
server_1.writeError(res, e);
}
});
}
/**
* Prepares twirp body requests using http.google.annotions
* compliant spec
*
* @param req
* @param match
* @param route
* @protected
*/
prepareTwirpBody(req, match, route) {
return __awaiter(this, void 0, void 0, function* () {
const _a = match.params, { query_string } = _a, params = __rest(_a, ["query_string"]);
let requestBody = Object.assign({}, params);
if (query_string && route.bodyKey !== "*") {
const queryParams = this.parseQueryString(query_string);
requestBody = Object.assign(Object.assign({}, queryParams), requestBody);
}
let body = {};
if (route.bodyKey) {
const data = yield request_1.getRequestData(req);
try {
const jsonBody = JSON.parse(data.toString() || "{}");
if (route.bodyKey === "*") {
body = jsonBody;
}
else {
body[route.bodyKey] = jsonBody;
}
}
catch (e) {
const msg = "the json request could not be decoded";
throw new errors_1.TwirpError(errors_1.TwirpErrorCode.Malformed, msg).withCause(e, true);
}
}
return Object.assign(Object.assign({}, body), requestBody);
});
}
/**
* Matches a route
* @param req
*/
matchRoute(req) {
var _a;
const httpMethod = (_a = req.method) === null || _a === void 0 ? void 0 : _a.toLowerCase();
if (!httpMethod) {
throw new errors_1.BadRouteError(`method not allowed`, req.method || "", req.url || "");
}
const routes = this.routes[httpMethod];
for (const route of routes) {
const match = route.matcher(req.url || "/");
if (match) {
return [match, route];
}
}
throw new errors_1.NotFoundError(`url ${req.url} not found`);
}
/**
* Parse query string
* @param queryString
*/
parseQueryString(queryString) {
const queryParams = querystring_1.parse(queryString.replace("?", ""));
return dotObject.object(queryParams);
}
}
exports.Gateway = Gateway;
/***/ }),
/***/ 4263:
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isHook = exports.chainHooks = void 0;
// ChainHooks creates a new ServerHook which chains the callbacks in
// each of the constituent hooks passed in. Each hook function will be
// called in the order of the ServerHooks values passed in.
//
// For the erroring hooks, RequestReceived and RequestRouted, any returned
// errors prevent processing by later hooks.
function chainHooks(...hooks) {
if (hooks.length === 0) {
return null;
}
if (hooks.length === 1) {
return hooks[0];
}
const serverHook = {
requestReceived(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestReceived) {
continue;
}
yield hook.requestReceived(ctx);
}
});
},
requestPrepared(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestPrepared) {
continue;
}
console.warn("hook requestPrepared is deprecated and will be removed in the next release. " +
"Please use responsePrepared instead.");
yield hook.requestPrepared(ctx);
}
});
},
responsePrepared(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.responsePrepared) {
continue;
}
yield hook.responsePrepared(ctx);
}
});
},
requestSent(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestSent) {
continue;
}
console.warn("hook requestSent is deprecated and will be removed in the next release. " +
"Please use responseSent instead.");
yield hook.requestSent(ctx);
}
});
},
responseSent(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.responseSent) {
continue;
}
yield hook.responseSent(ctx);
}
});
},
requestRouted(ctx) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.requestRouted) {
continue;
}
yield hook.requestRouted(ctx);
}
});
},
error(ctx, err) {
return __awaiter(this, void 0, void 0, function* () {
for (const hook of hooks) {
if (!hook.error) {
continue;
}
yield hook.error(ctx, err);
}
});
},
};
return serverHook;
}
exports.chainHooks = chainHooks;
function isHook(object) {
return ("requestReceived" in object ||
"requestPrepared" in object ||
"requestSent" in object ||
"requestRouted" in object ||
"responsePrepared" in object ||
"responseSent" in object ||
"error" in object);
}
exports.isHook = isHook;
/***/ }),
/***/ 94091:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.FetchRPC = exports.wrapErrorResponseToTwirpError = exports.NodeHttpRPC = void 0;
const http = __importStar(__nccwpck_require__(13685));
const https = __importStar(__nccwpck_require__(95687));
const url_1 = __nccwpck_require__(57310);
const errors_1 = __nccwpck_require__(66647);
/**
* a node HTTP RPC implementation
* @param options
* @constructor
*/
const NodeHttpRPC = (options) => ({
request(service, method, contentType, data) {
let client;
return new Promise((resolve, rejected) => {
const responseChunks = [];
const requestData = contentType === "application/protobuf"
? Buffer.from(data)
: JSON.stringify(data);
const url = new url_1.URL(options.baseUrl);
const isHttps = url.protocol === "https:";
if (isHttps) {
client = https;
}
else {
client = http;
}
const prefix = url.pathname !== "/" ? url.pathname : "";
const req = client
.request(Object.assign(Object.assign({}, (options ? options : {})), { method: "POST", protocol: url.protocol, host: url.hostname, port: url.port ? url.port : isHttps ? 443 : 80, path: `${prefix}/${service}/${method}`, headers: Object.assign(Object.assign({}, (options.headers ? options.headers : {})), { "Content-Type": contentType, "Content-Length": contentType === "application/protobuf"
? Buffer.byteLength(requestData)
: Buffer.from(requestData).byteLength }) }), (res) => {
res.on("data", (chunk) => responseChunks.push(chunk));
res.on("end", () => {
const data = Buffer.concat(responseChunks);
if (res.statusCode != 200) {
rejected(wrapErrorResponseToTwirpError(data.toString()));
}
else {
if (contentType === "application/json") {
resolve(JSON.parse(data.toString()));
}
else {
resolve(data);
}
}
});
res.on("error", (err) => {
rejected(err);
});
})
.on("error", (err) => {
rejected(err);
});
req.end(requestData);
});
},
});
exports.NodeHttpRPC = NodeHttpRPC;
function wrapErrorResponseToTwirpError(errorResponse) {
return errors_1.TwirpError.fromObject(JSON.parse(errorResponse));
}
exports.wrapErrorResponseToTwirpError = wrapErrorResponseToTwirpError;
/**
* a browser fetch RPC implementation
*/
const FetchRPC = (options) => ({
request(service, method, contentType, data) {
return __awaiter(this, void 0, void 0, function* () {
const headers = new Headers(options.headers);
headers.set("content-type", contentType);
const response = yield fetch(`${options.baseUrl}/${service}/${method}`, Object.assign(Object.assign({}, options), { method: "POST", headers, body: data instanceof Uint8Array ? data : JSON.stringify(data) }));
if (response.status === 200) {
if (contentType === "application/json") {
return yield response.json();
}
return new Uint8Array(yield response.arrayBuffer());
}
throw errors_1.TwirpError.fromObject(yield response.json());
});
},
});
exports.FetchRPC = FetchRPC;
/***/ }),
/***/ 66465:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.TwirpContentType = void 0;
__exportStar(__nccwpck_require__(31524), exports);
__exportStar(__nccwpck_require__(26604), exports);
__exportStar(__nccwpck_require__(48913), exports);
__exportStar(__nccwpck_require__(4263), exports);
__exportStar(__nccwpck_require__(66647), exports);
__exportStar(__nccwpck_require__(56748), exports);
__exportStar(__nccwpck_require__(94091), exports);
var request_1 = __nccwpck_require__(8347);
Object.defineProperty(exports, "TwirpContentType", ({ enumerable: true, get: function () { return request_1.TwirpContentType; } }));
/***/ }),
/***/ 48913:
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.chainInterceptors = void 0;
// chains multiple Interceptors into a single Interceptor.
// The first interceptor wraps the second one, and so on.
// Returns null if interceptors is empty.
function chainInterceptors(...interceptors) {
if (interceptors.length === 0) {
return;
}
if (interceptors.length === 1) {
return interceptors[0];
}
const first = interceptors[0];
return (ctx, request, handler) => __awaiter(this, void 0, void 0, function* () {
let next = handler;
for (let i = interceptors.length - 1; i > 0; i--) {
next = ((next) => (ctx, typedRequest) => {
return interceptors[i](ctx, typedRequest, next);
})(next);
}
return first(ctx, request, next);
});
}
exports.chainInterceptors = chainInterceptors;
/***/ }),
/***/ 8347:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.parseTwirpPath = exports.getRequestData = exports.validateRequest = exports.getContentType = exports.TwirpContentType = void 0;
const errors_1 = __nccwpck_require__(66647);
/**
* Supported Twirp Content-Type
*/
var TwirpContentType;
(function (TwirpContentType) {
TwirpContentType[TwirpContentType["Protobuf"] = 0] = "Protobuf";
TwirpContentType[TwirpContentType["JSON"] = 1] = "JSON";
TwirpContentType[TwirpContentType["Unknown"] = 2] = "Unknown";
})(TwirpContentType = exports.TwirpContentType || (exports.TwirpContentType = {}));
/**
* Get supported content-type
* @param mimeType
*/
function getContentType(mimeType) {
switch (mimeType) {
case "application/protobuf":
return TwirpContentType.Protobuf;
case "application/json":
return TwirpContentType.JSON;
default:
return TwirpContentType.Unknown;
}
}
exports.getContentType = getContentType;
/**
* Validate a twirp request
* @param ctx
* @param request
* @param pathPrefix
*/
function validateRequest(ctx, request, pathPrefix) {
if (request.method !== "POST") {
const msg = `unsupported method ${request.method} (only POST is allowed)`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
const path = parseTwirpPath(request.url || "");
if (path.pkgService !==
(ctx.packageName ? ctx.packageName + "." : "") + ctx.serviceName) {
const msg = `no handler for path ${request.url}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
if (path.prefix !== pathPrefix) {
const msg = `invalid path prefix ${path.prefix}, expected ${pathPrefix}, on path ${request.url}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
const mimeContentType = request.headers["content-type"] || "";
if (ctx.contentType === TwirpContentType.Unknown) {
const msg = `unexpected Content-Type: ${request.headers["content-type"]}`;
throw new errors_1.BadRouteError(msg, request.method || "", request.url || "");
}
return Object.assign(Object.assign({}, path), { mimeContentType, contentType: ctx.contentType });
}
exports.validateRequest = validateRequest;
/**
* Get request data from the body
* @param req
*/
function getRequestData(req) {
return new Promise((resolve, reject) => {
const reqWithRawBody = req;
if (reqWithRawBody.rawBody instanceof Buffer) {
resolve(reqWithRawBody.rawBody);
return;
}
const chunks = [];
req.on("data", (chunk) => chunks.push(chunk));
req.on("end", () => __awaiter(this, void 0, void 0, function* () {
const data = Buffer.concat(chunks);
resolve(data);
}));
req.on("error", (err) => {
if (req.aborted) {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.DeadlineExceeded, "failed to read request: deadline exceeded"));
}
else {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.Malformed, err.message).withCause(err));
}
});
req.on("close", () => {
reject(new errors_1.TwirpError(errors_1.TwirpErrorCode.Canceled, "failed to read request: context canceled"));
});
});
}
exports.getRequestData = getRequestData;
/**
* Parses twirp url path
* @param path
*/
function parseTwirpPath(path) {
const parts = path.split("/");
if (parts.length < 2) {
return {
pkgService: "",
method: "",
prefix: "",
};
}
return {
method: parts[parts.length - 1],
pkgService: parts[parts.length - 2],
prefix: parts.slice(0, parts.length - 2).join("/"),
};
}
exports.parseTwirpPath = parseTwirpPath;
/***/ }),
/***/ 26604:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.writeError = exports.TwirpServer = void 0;
const hooks_1 = __nccwpck_require__(4263);
const request_1 = __nccwpck_require__(8347);
const errors_1 = __nccwpck_require__(66647);
/**
* Runtime server implementation of a TwirpServer
*/
class TwirpServer {
constructor(options) {
this.pathPrefix = "/twirp";
this.hooks = [];
this.interceptors = [];
this.packageName = options.packageName;
this.serviceName = options.serviceName;
this.methodList = options.methodList;
this.matchRoute = options.matchRoute;
this.service = options.service;
}
/**
* Returns the prefix for this server
*/
get prefix() {
return this.pathPrefix;
}
/**
* The http handler for twirp complaint endpoints
* @param options
*/
httpHandler(options) {
return (req, resp) => {
// setup prefix
if ((options === null || options === void 0 ? void 0 : options.prefix) !== undefined) {
this.withPrefix(options.prefix);
}
return this._httpHandler(req, resp);
};
}
/**
* Adds interceptors or hooks to the request stack
* @param middlewares
*/
use(...middlewares) {
middlewares.forEach((middleware) => {
if (hooks_1.isHook(middleware)) {
this.hooks.push(middleware);
return this;
}
this.interceptors.push(middleware);
});
return this;
}
/**
* Adds a prefix to the service url path
* @param prefix
*/
withPrefix(prefix) {
if (prefix === false) {
this.pathPrefix = "";
}
else {
this.pathPrefix = prefix;
}
return this;
}
/**
* Returns the regex matching path for this twirp server
*/
matchingPath() {
const baseRegex = this.baseURI().replace(/\./g, "\\.");
return new RegExp(`${baseRegex}\/(${this.methodList.join("|")})`);
}
/**
* Returns the base URI for this twirp server
*/
baseURI() {
return `${this.pathPrefix}/${this.packageName ? this.packageName + "." : ""}${this.serviceName}`;
}
/**
* Create a twirp context
* @param req
* @param res
* @private
*/
createContext(req, res) {
return {
packageName: this.packageName,
serviceName: this.serviceName,
methodName: "",
contentType: request_1.getContentType(req.headers["content-type"]),
req: req,
res: res,
};
}
/**
* Twrip server http handler implementation
* @param req
* @param resp
* @private
*/
_httpHandler(req, resp) {
return __awaiter(this, void 0, void 0, function* () {
const ctx = this.createContext(req, resp);
try {
yield this.invokeHook("requestReceived", ctx);
const { method, mimeContentType } = request_1.validateRequest(ctx, req, this.pathPrefix || "");
const handler = this.matchRoute(method, {
onMatch: (ctx) => {
return this.invokeHook("requestRouted", ctx);
},
onNotFound: () => {
const msg = `no handler for path ${req.url}`;
throw new errors_1.BadRouteError(msg, req.method || "", req.url || "");
},
});
const body = yield request_1.getRequestData(req);
const response = yield handler(ctx, this.service, body, this.interceptors);
yield Promise.all([
this.invokeHook("responsePrepared", ctx),
// keep backwards compatibility till next release
this.invokeHook("requestPrepared", ctx),
]);
resp.statusCode = 200;
resp.setHeader("Content-Type", mimeContentType);
resp.end(response);
}
catch (e) {
yield this.invokeHook("error", ctx, mustBeTwirpError(e));
if (!resp.headersSent) {
writeError(resp, e);
}
}
finally {
yield Promise.all([
this.invokeHook("responseSent", ctx),
// keep backwards compatibility till next release
this.invokeHook("requestSent", ctx),
]);
}
});
}
/**
* Invoke a hook
* @param hookName
* @param ctx
* @param err
* @protected
*/
invokeHook(hookName, ctx, err) {
return __awaiter(this, void 0, void 0, function* () {
if (this.hooks.length === 0) {
return;
}
const chainedHooks = hooks_1.chainHooks(...this.hooks);
const hook = chainedHooks === null || chainedHooks === void 0 ? void 0 : chainedHooks[hookName];
if (hook) {
yield hook(ctx, err || new errors_1.InternalServerError("internal server error"));
}
});
}
}
exports.TwirpServer = TwirpServer;
/**
* Write http error response
* @param res
* @param error
*/
function writeError(res, error) {
const twirpError = mustBeTwirpError(error);
res.setHeader("Content-Type", "application/json");
res.statusCode = errors_1.httpStatusFromErrorCode(twirpError.code);
res.end(twirpError.toJSON());
}
exports.writeError = writeError;
/**
* Make sure that the error passed is a TwirpError
* otherwise it will wrap it into an InternalError
* @param err
*/
function mustBeTwirpError(err) {
if (err instanceof errors_1.TwirpError) {
return err;
}
return new errors_1.InternalServerErrorWith(err);
}
/***/ }),
/***/ 41773:
@@ -137049,7 +134190,7 @@ module.exports = parseParams
/***/ ((module) => {
"use strict";
module.exports = JSON.parse('{"name":"@actions/cache","version":"4.0.0","preview":true,"description":"Actions cache lib","keywords":["github","actions","cache"],"homepage":"https://github.com/actions/toolkit/tree/main/packages/cache","license":"MIT","main":"lib/cache.js","types":"lib/cache.d.ts","directories":{"lib":"lib","test":"__tests__"},"files":["lib","!.DS_Store"],"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/actions/toolkit.git","directory":"packages/cache"},"scripts":{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json","test":"echo \\"Error: run tests from root\\" && exit 1","tsc":"tsc"},"bugs":{"url":"https://github.com/actions/toolkit/issues"},"dependencies":{"@actions/core":"^1.11.1","@actions/exec":"^1.0.1","@actions/glob":"^0.1.0","@actions/http-client":"^2.1.1","@actions/io":"^1.0.1","@azure/abort-controller":"^1.1.0","@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"},"devDependencies":{"@types/semver":"^6.0.0","typescript":"^5.2.2"}}');
module.exports = JSON.parse('{"name":"@actions/cache","version":"4.0.2","preview":true,"description":"Actions cache lib","keywords":["github","actions","cache"],"homepage":"https://github.com/actions/toolkit/tree/main/packages/cache","license":"MIT","main":"lib/cache.js","types":"lib/cache.d.ts","directories":{"lib":"lib","test":"__tests__"},"files":["lib","!.DS_Store"],"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/actions/toolkit.git","directory":"packages/cache"},"scripts":{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json","test":"echo \\"Error: run tests from root\\" && exit 1","tsc":"tsc"},"bugs":{"url":"https://github.com/actions/toolkit/issues"},"dependencies":{"@actions/core":"^1.11.1","@actions/exec":"^1.0.1","@actions/glob":"^0.1.0","@actions/http-client":"^2.1.1","@actions/io":"^1.0.1","@azure/abort-controller":"^1.1.0","@azure/ms-rest-js":"^2.6.0","@azure/storage-blob":"^12.13.0","@protobuf-ts/plugin":"^2.9.4","semver":"^6.3.1"},"devDependencies":{"@types/semver":"^6.0.0","typescript":"^5.2.2"}}');
/***/ }),
+80 -349
View File
@@ -9,7 +9,7 @@
"version": "4.0.0",
"license": "MIT",
"dependencies": {
"@actions/cache": "^4.0.0",
"@actions/cache": "^4.0.2",
"@actions/core": "^1.10.0",
"@actions/exec": "^1.0.4",
"@actions/glob": "^0.4.0",
@@ -47,9 +47,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.2",
"resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.2.tgz",
"integrity": "sha512-cBr7JL1q+JKjbBd3w3SZN5OQ1Xg+/D8QLMcE7MpgpghZlL4biBO0ZEeraoTxCZyfN0YY0dxXlLgsgGv/sT5BTg==",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.11.1",
@@ -61,8 +61,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": {
@@ -333,89 +332,20 @@
}
},
"node_modules/@babel/code-frame": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz",
"integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==",
"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.23.4",
"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.3",
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz",
@@ -603,19 +533,21 @@
}
},
"node_modules/@babel/helper-string-parser": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz",
"integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==",
"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"
}
@@ -630,109 +562,28 @@
}
},
"node_modules/@babel/helpers": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.4.tgz",
"integrity": "sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==",
"version": "7.26.10",
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz",
"integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@babel/template": "^7.22.15",
"@babel/traverse": "^7.23.4",
"@babel/types": "^7.23.4"
"@babel/template": "^7.26.9",
"@babel/types": "^7.26.10"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/highlight": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz",
"integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==",
"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.4",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz",
"integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==",
"version": "7.26.10",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz",
"integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@babel/types": "^7.26.10"
},
"bin": {
"parser": "bin/babel-parser.js"
},
@@ -918,14 +769,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.26.9",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz",
"integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
"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.26.9",
"@babel/types": "^7.26.9"
},
"engines": {
"node": ">=6.9.0"
@@ -962,14 +814,14 @@
}
},
"node_modules/@babel/types": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz",
"integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==",
"version": "7.26.10",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz",
"integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@babel/helper-string-parser": "^7.23.4",
"@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"
@@ -1600,15 +1452,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": {
@@ -1617,12 +1469,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"
}
},
@@ -1653,27 +1505,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": {
@@ -2401,16 +2253,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",
@@ -2545,15 +2387,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",
@@ -2697,19 +2530,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.589",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.589.tgz",
@@ -3271,7 +3091,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",
@@ -3339,6 +3160,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",
@@ -3506,6 +3328,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"
@@ -3514,7 +3337,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",
@@ -4234,7 +4058,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",
@@ -4357,12 +4182,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",
@@ -4375,15 +4194,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",
@@ -4509,16 +4319,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",
@@ -4594,6 +4394,7 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
"dependencies": {
"wrappy": "1"
}
@@ -4699,16 +4500,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",
@@ -4722,6 +4513,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"
}
@@ -4741,12 +4533,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",
@@ -4860,6 +4646,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"
},
@@ -5334,15 +5121,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",
@@ -5398,16 +5176,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",
@@ -5442,35 +5210,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",
@@ -5640,7 +5379,8 @@
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
"node_modules/write-file-atomic": {
"version": "4.0.2",
@@ -5725,15 +5465,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",
+1 -1
View File
@@ -26,7 +26,7 @@
"author": "GitHub",
"license": "MIT",
"dependencies": {
"@actions/cache": "^4.0.0",
"@actions/cache": "^4.0.2",
"@actions/core": "^1.10.0",
"@actions/exec": "^1.0.4",
"@actions/glob": "^0.4.0",