@comate/zulu 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/comate-engine/assets/skills/auto-commit/SKILL.md +386 -0
- package/comate-engine/assets/skills/auto-commit/references/issue_type_mapping.json +19 -0
- package/comate-engine/assets/skills/auto-commit/references/new_version_instruction.md +196 -0
- package/comate-engine/assets/skills/auto-commit/references/old_version_instruction.md +189 -0
- package/comate-engine/assets/skills/auto-commit/references/query_reference.md +176 -0
- package/comate-engine/assets/skills/auto-commit/scripts/compat.py +86 -0
- package/comate-engine/assets/skills/auto-commit/scripts/create_card_cli.py +67 -0
- package/comate-engine/assets/skills/auto-commit/scripts/git_diff_cli.py +195 -0
- package/comate-engine/assets/skills/auto-commit/scripts/git_utils.py +225 -0
- package/comate-engine/assets/skills/auto-commit/scripts/icafe/__init__.py +66 -0
- package/comate-engine/assets/skills/auto-commit/scripts/icafe/client.py +444 -0
- package/comate-engine/assets/skills/auto-commit/scripts/icafe/farseer.py +53 -0
- package/comate-engine/assets/skills/auto-commit/scripts/icafe/matching.py +778 -0
- package/comate-engine/assets/skills/auto-commit/scripts/logger.py +32 -0
- package/comate-engine/assets/skills/auto-commit/scripts/recognize_card_cli.py +63 -0
- package/comate-engine/assets/skills/automation-browser-comate/SKILL.md +193 -90
- package/comate-engine/assets/skills/figma2code-comate/SKILL.md +2 -2
- package/comate-engine/assets/skills/figma2code-comate/references/codeConnect.md +7 -10
- package/comate-engine/assets/skills/smart-commit/SKILL.md +646 -0
- package/comate-engine/assets/skills/smart-commit/references/issue_type_mapping.json +19 -0
- package/comate-engine/assets/skills/smart-commit/references/query_reference.md +176 -0
- package/comate-engine/assets/skills/smart-commit/scripts/compat.py +86 -0
- package/comate-engine/assets/skills/smart-commit/scripts/create_card_cli.py +67 -0
- package/comate-engine/assets/skills/smart-commit/scripts/git_utils.py +220 -0
- package/comate-engine/assets/skills/smart-commit/scripts/icafe/__init__.py +66 -0
- package/comate-engine/assets/skills/smart-commit/scripts/icafe/client.py +444 -0
- package/comate-engine/assets/skills/smart-commit/scripts/icafe/farseer.py +53 -0
- package/comate-engine/assets/skills/smart-commit/scripts/icafe/matching.py +728 -0
- package/comate-engine/assets/skills/smart-commit/scripts/logger.py +32 -0
- package/comate-engine/assets/skills/smart-commit/scripts/recognize_card_cli.py +63 -0
- package/comate-engine/node_modules/@comate/plugin-engine/dist/index.js +7 -7
- package/comate-engine/node_modules/@comate/plugin-host/dist/index.js +1 -1
- package/comate-engine/node_modules/@comate/plugin-host/dist/main.js +1 -1
- package/comate-engine/node_modules/@comate/plugin-shared-internals/dist/index.js +8 -8
- package/comate-engine/node_modules/@comate/preview-proxy/package.json +2 -2
- package/comate-engine/node_modules/better-sqlite3/build/Release/better_sqlite3.node +0 -0
- package/comate-engine/package.json +2 -2
- package/comate-engine/server.js +61 -44
- package/dist/bundle/index.js +8 -8
- package/package.json +1 -1
- package/comate-engine/node_modules/@comate/plugin-engine/dist/index.d.ts +0 -188
- package/comate-engine/node_modules/@comate/plugin-host/dist/main.d.ts +0 -14
- package/comate-engine/node_modules/@comate/plugin-shared-internals/dist/index.d.ts +0 -4817
- package/comate-engine/node_modules/better-sqlite3/README.md +0 -99
- package/comate-engine/node_modules/bindings/LICENSE.md +0 -22
- package/comate-engine/node_modules/bindings/README.md +0 -98
- package/comate-engine/node_modules/compare-versions/README.md +0 -133
- package/comate-engine/node_modules/compare-versions/lib/esm/compare.d.ts +0 -19
- package/comate-engine/node_modules/compare-versions/lib/esm/compareVersions.d.ts +0 -8
- package/comate-engine/node_modules/compare-versions/lib/esm/index.d.ts +0 -5
- package/comate-engine/node_modules/compare-versions/lib/esm/satisfies.d.ts +0 -14
- package/comate-engine/node_modules/compare-versions/lib/esm/utils.d.ts +0 -7
- package/comate-engine/node_modules/compare-versions/lib/esm/validate.d.ts +0 -28
- package/comate-engine/node_modules/file-uri-to-path/History.md +0 -21
- package/comate-engine/node_modules/file-uri-to-path/README.md +0 -74
- package/comate-engine/node_modules/file-uri-to-path/index.d.ts +0 -2
- package/comate-engine/node_modules/pkce-challenge/README.md +0 -55
- package/comate-engine/node_modules/pkce-challenge/dist/index.browser.d.ts +0 -19
- package/comate-engine/node_modules/pkce-challenge/dist/index.node.d.ts +0 -19
- package/comate-engine/node_modules/sqlite-vec/README.md +0 -1
- package/comate-engine/node_modules/sqlite-vec/index.d.ts +0 -17
- package/comate-engine/node_modules/sqlite-vec-darwin-arm64/README.md +0 -1
- package/comate-engine/node_modules/sqlite-vec-darwin-x64/README.md +0 -1
- package/comate-engine/node_modules/sqlite-vec-linux-arm64/README.md +0 -1
- package/comate-engine/node_modules/sqlite-vec-linux-x64/README.md +0 -1
- package/comate-engine/node_modules/sqlite-vec-windows-x64/README.md +0 -1
- package/comate-engine/node_modules/tree-sitter-bash/README.md +0 -44
- package/comate-engine/node_modules/tree-sitter-bash/bindings/node/binding_test.js +0 -9
- package/comate-engine/node_modules/tree-sitter-bash/bindings/node/index.d.ts +0 -28
- package/comate-engine/node_modules/tree-sitter-bash/bindings/node/index.js +0 -11
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/darwin-arm64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/darwin-x64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/linux-arm64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/linux-x64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/win32-arm64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/prebuilds/win32-x64/tree-sitter-bash.node +0 -0
- package/comate-engine/node_modules/tree-sitter-bash/src/grammar.json +0 -7145
- package/comate-engine/node_modules/tree-sitter-bash/src/node-types.json +0 -2894
- package/comate-engine/node_modules/web-streams-polyfill/README.md +0 -119
- package/comate-engine/node_modules/web-streams-polyfill/types/polyfill.d.ts +0 -28
- package/comate-engine/node_modules/web-streams-polyfill/types/ponyfill.d.ts +0 -809
- package/comate-engine/node_modules/web-tree-sitter/README.md +0 -269
- package/comate-engine/node_modules/web-tree-sitter/debug/tree-sitter.cjs +0 -4558
- package/comate-engine/node_modules/web-tree-sitter/debug/tree-sitter.js +0 -4516
- package/comate-engine/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
- package/comate-engine/node_modules/web-tree-sitter/web-tree-sitter.d.ts +0 -1030
- package/comate-engine/node_modules/win-ca/README.md +0 -648
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
# better-sqlite3 [](https://github.com/JoshuaWise/better-sqlite3/actions/workflows/build.yml?query=branch%3Amaster)
|
|
2
|
-
|
|
3
|
-
The fastest and simplest library for SQLite in Node.js.
|
|
4
|
-
|
|
5
|
-
- Full transaction support
|
|
6
|
-
- High performance, efficiency, and safety
|
|
7
|
-
- Easy-to-use synchronous API *(better concurrency than an asynchronous API... yes, you read that correctly)*
|
|
8
|
-
- Support for user-defined functions, aggregates, virtual tables, and extensions
|
|
9
|
-
- 64-bit integers *(invisible until you need them)*
|
|
10
|
-
- Worker thread support *(for large/slow queries)*
|
|
11
|
-
|
|
12
|
-
## Help this project stay strong! 💪
|
|
13
|
-
|
|
14
|
-
`better-sqlite3` is used by thousands of developers and engineers on a daily basis. Long nights and weekends were spent keeping this project strong and dependable, with no ask for compensation or funding, until now. If your company uses `better-sqlite3`, ask your manager to consider supporting the project:
|
|
15
|
-
|
|
16
|
-
- [Become a GitHub sponsor](https://github.com/sponsors/JoshuaWise)
|
|
17
|
-
- [Become a backer on Patreon](https://www.patreon.com/joshuawise)
|
|
18
|
-
- [Make a one-time donation on PayPal](https://www.paypal.me/joshuathomaswise)
|
|
19
|
-
|
|
20
|
-
## How other libraries compare
|
|
21
|
-
|
|
22
|
-
| |select 1 row `get()` |select 100 rows `all()` |select 100 rows `iterate()` 1-by-1|insert 1 row `run()`|insert 100 rows in a transaction|
|
|
23
|
-
|---|---|---|---|---|---|
|
|
24
|
-
|better-sqlite3|1x|1x|1x|1x|1x|
|
|
25
|
-
|[sqlite](https://www.npmjs.com/package/sqlite) and [sqlite3](https://www.npmjs.com/package/sqlite3)|11.7x slower|2.9x slower|24.4x slower|2.8x slower|15.6x slower|
|
|
26
|
-
|
|
27
|
-
> You can verify these results by [running the benchmark yourself](./docs/benchmark.md).
|
|
28
|
-
|
|
29
|
-
## Installation
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
npm install better-sqlite3
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
> Requires Node.js v14.21.1 or later. Prebuilt binaries are available for [LTS versions](https://nodejs.org/en/about/releases/). If you have trouble installing, check the [troubleshooting guide](./docs/troubleshooting.md).
|
|
36
|
-
|
|
37
|
-
## Usage
|
|
38
|
-
|
|
39
|
-
```js
|
|
40
|
-
const db = require('better-sqlite3')('foobar.db', options);
|
|
41
|
-
|
|
42
|
-
const row = db.prepare('SELECT * FROM users WHERE id = ?').get(userId);
|
|
43
|
-
console.log(row.firstName, row.lastName, row.email);
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Though not required, [it is generally important to set the WAL pragma for performance reasons](https://github.com/WiseLibs/better-sqlite3/blob/master/docs/performance.md).
|
|
47
|
-
|
|
48
|
-
```js
|
|
49
|
-
db.pragma('journal_mode = WAL');
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
##### In ES6 module notation:
|
|
53
|
-
|
|
54
|
-
```js
|
|
55
|
-
import Database from 'better-sqlite3';
|
|
56
|
-
const db = new Database('foobar.db', options);
|
|
57
|
-
db.pragma('journal_mode = WAL');
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
## Why should I use this instead of [node-sqlite3](https://github.com/mapbox/node-sqlite3)?
|
|
61
|
-
|
|
62
|
-
- `node-sqlite3` uses asynchronous APIs for tasks that are either CPU-bound or serialized. That's not only bad design, but it wastes tons of resources. It also causes [mutex thrashing](https://en.wikipedia.org/wiki/Resource_contention) which has devastating effects on performance.
|
|
63
|
-
- `node-sqlite3` exposes low-level (C language) memory management functions. `better-sqlite3` does it the JavaScript way, allowing the garbage collector to worry about memory management.
|
|
64
|
-
- `better-sqlite3` is simpler to use, and it provides nice utilities for some operations that are very difficult or impossible in `node-sqlite3`.
|
|
65
|
-
- `better-sqlite3` is much faster than `node-sqlite3` in most cases, and just as fast in all other cases.
|
|
66
|
-
|
|
67
|
-
#### When is this library not appropriate?
|
|
68
|
-
|
|
69
|
-
In most cases, if you're attempting something that cannot be reasonably accomplished with `better-sqlite3`, it probably cannot be reasonably accomplished with SQLite in general. For example, if you're executing queries that take one second to complete, and you expect to have many concurrent users executing those queries, no amount of asynchronicity will save you from SQLite's serialized nature. Fortunately, SQLite is very *very* fast. With proper indexing, we've been able to achieve upward of 2000 queries per second with 5-way-joins in a 60 GB database, where each query was handling 5–50 kilobytes of real data.
|
|
70
|
-
|
|
71
|
-
If you have a performance problem, the most likely causes are inefficient queries, improper indexing, or a lack of [WAL mode](./docs/performance.md)—not `better-sqlite3` itself. However, there are some cases where `better-sqlite3` could be inappropriate:
|
|
72
|
-
|
|
73
|
-
- If you expect a high volume of concurrent reads each returning many megabytes of data (i.e., videos)
|
|
74
|
-
- If you expect a high volume of concurrent writes (i.e., a social media site)
|
|
75
|
-
- If your database's size is near the terabyte range
|
|
76
|
-
|
|
77
|
-
For these situations, you should probably use a full-fledged RDBMS such as [PostgreSQL](https://www.postgresql.org/).
|
|
78
|
-
|
|
79
|
-
## Upgrading
|
|
80
|
-
|
|
81
|
-
Upgrading your `better-sqlite3` dependency can potentially introduce breaking changes, either in the `better-sqlite3` API (if you upgrade to a new [major version](https://semver.org/)), or between your existing database(s) and the underlying version of SQLite. Before upgrading, review:
|
|
82
|
-
|
|
83
|
-
* [`better-sqlite3` release notes](https://github.com/WiseLibs/better-sqlite3/releases)
|
|
84
|
-
* [SQLite release history](https://www.sqlite.org/changes.html)
|
|
85
|
-
|
|
86
|
-
# Documentation
|
|
87
|
-
|
|
88
|
-
- [API documentation](./docs/api.md)
|
|
89
|
-
- [Performance](./docs/performance.md) (also see [benchmark results](./docs/benchmark.md))
|
|
90
|
-
- [64-bit integer support](./docs/integer.md)
|
|
91
|
-
- [Worker thread support](./docs/threads.md)
|
|
92
|
-
- [Unsafe mode (advanced)](./docs/unsafe.md)
|
|
93
|
-
- [SQLite compilation (advanced)](./docs/compilation.md)
|
|
94
|
-
- [Contribution rules](./docs/contribution.md)
|
|
95
|
-
- [Code of conduct](./docs/conduct.md)
|
|
96
|
-
|
|
97
|
-
# License
|
|
98
|
-
|
|
99
|
-
[MIT](./LICENSE)
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
(The MIT License)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net>
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
a copy of this software and associated documentation files (the
|
|
7
|
-
'Software'), to deal in the Software without restriction, including
|
|
8
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
-
the following conditions:
|
|
12
|
-
|
|
13
|
-
The above copyright notice and this permission notice shall be
|
|
14
|
-
included in all copies or substantial portions of the Software.
|
|
15
|
-
|
|
16
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
node-bindings
|
|
2
|
-
=============
|
|
3
|
-
### Helper module for loading your native module's `.node` file
|
|
4
|
-
|
|
5
|
-
This is a helper module for authors of Node.js native addon modules.
|
|
6
|
-
It is basically the "swiss army knife" of `require()`ing your native module's
|
|
7
|
-
`.node` file.
|
|
8
|
-
|
|
9
|
-
Throughout the course of Node's native addon history, addons have ended up being
|
|
10
|
-
compiled in a variety of different places, depending on which build tool and which
|
|
11
|
-
version of node was used. To make matters worse, now the `gyp` build tool can
|
|
12
|
-
produce either a __Release__ or __Debug__ build, each being built into different
|
|
13
|
-
locations.
|
|
14
|
-
|
|
15
|
-
This module checks _all_ the possible locations that a native addon would be built
|
|
16
|
-
at, and returns the first one that loads successfully.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
Installation
|
|
20
|
-
------------
|
|
21
|
-
|
|
22
|
-
Install with `npm`:
|
|
23
|
-
|
|
24
|
-
``` bash
|
|
25
|
-
$ npm install --save bindings
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Or add it to the `"dependencies"` section of your `package.json` file.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
Example
|
|
32
|
-
-------
|
|
33
|
-
|
|
34
|
-
`require()`ing the proper bindings file for the current node version, platform
|
|
35
|
-
and architecture is as simple as:
|
|
36
|
-
|
|
37
|
-
``` js
|
|
38
|
-
var bindings = require('bindings')('binding.node')
|
|
39
|
-
|
|
40
|
-
// Use your bindings defined in your C files
|
|
41
|
-
bindings.your_c_function()
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
Nice Error Output
|
|
46
|
-
-----------------
|
|
47
|
-
|
|
48
|
-
When the `.node` file could not be loaded, `node-bindings` throws an Error with
|
|
49
|
-
a nice error message telling you exactly what was tried. You can also check the
|
|
50
|
-
`err.tries` Array property.
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
Error: Could not load the bindings file. Tried:
|
|
54
|
-
→ /Users/nrajlich/ref/build/binding.node
|
|
55
|
-
→ /Users/nrajlich/ref/build/Debug/binding.node
|
|
56
|
-
→ /Users/nrajlich/ref/build/Release/binding.node
|
|
57
|
-
→ /Users/nrajlich/ref/out/Debug/binding.node
|
|
58
|
-
→ /Users/nrajlich/ref/Debug/binding.node
|
|
59
|
-
→ /Users/nrajlich/ref/out/Release/binding.node
|
|
60
|
-
→ /Users/nrajlich/ref/Release/binding.node
|
|
61
|
-
→ /Users/nrajlich/ref/build/default/binding.node
|
|
62
|
-
→ /Users/nrajlich/ref/compiled/0.8.2/darwin/x64/binding.node
|
|
63
|
-
at bindings (/Users/nrajlich/ref/node_modules/bindings/bindings.js:84:13)
|
|
64
|
-
at Object.<anonymous> (/Users/nrajlich/ref/lib/ref.js:5:47)
|
|
65
|
-
at Module._compile (module.js:449:26)
|
|
66
|
-
at Object.Module._extensions..js (module.js:467:10)
|
|
67
|
-
at Module.load (module.js:356:32)
|
|
68
|
-
at Function.Module._load (module.js:312:12)
|
|
69
|
-
...
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
The searching for the `.node` file will originate from the first directory in which has a `package.json` file is found.
|
|
73
|
-
|
|
74
|
-
License
|
|
75
|
-
-------
|
|
76
|
-
|
|
77
|
-
(The MIT License)
|
|
78
|
-
|
|
79
|
-
Copyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net>
|
|
80
|
-
|
|
81
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
82
|
-
a copy of this software and associated documentation files (the
|
|
83
|
-
'Software'), to deal in the Software without restriction, including
|
|
84
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
85
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
86
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
87
|
-
the following conditions:
|
|
88
|
-
|
|
89
|
-
The above copyright notice and this permission notice shall be
|
|
90
|
-
included in all copies or substantial portions of the Software.
|
|
91
|
-
|
|
92
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
93
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
94
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
95
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
96
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
97
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
98
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
# compare-versions
|
|
2
|
-
|
|
3
|
-
[](https://github.com/omichelsen/compare-versions/actions/workflows/ci.yml)
|
|
4
|
-
[](https://coveralls.io/github/omichelsen/compare-versions?branch=main)
|
|
5
|
-
[](https://bundlephobia.com/package/compare-versions)
|
|
6
|
-
|
|
7
|
-
Compare [semver](https://semver.org/) version strings to find greater, equal or lesser. Runs in the browser as well as Node.js/React Native etc. Has no dependencies and is [tiny](https://bundlephobia.com/package/compare-versions).
|
|
8
|
-
|
|
9
|
-
Supports the full semver specification including versions with different number of digits like `1.0.0`, `1.0`, `1` and pre-releases like `1.0.0-alpha`. Additionally supports the following variations:
|
|
10
|
-
|
|
11
|
-
- Wildcards for minor and patch version like `1.0.x` or `1.0.*`.
|
|
12
|
-
- [Chromium version numbers](https://www.chromium.org/developers/version-numbers) with 4 parts, e.g. version `25.0.1364.126`.
|
|
13
|
-
- Any leading `v` is ignored, e.g. `v1.0` is interpreted as `1.0`.
|
|
14
|
-
- Leading zero is ignored, e.g. `1.01.1` is interpreted as `1.1.1`.
|
|
15
|
-
- [npm version ranges](https://docs.npmjs.com/cli/v6/using-npm/semver#ranges), e.g. `1.2.7 || >=1.2.9 <2.0.0`
|
|
16
|
-
|
|
17
|
-
## Install
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
$ npm install compare-versions
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
__Note__: Starting from v5 the main export is now _named_ like so: `import { compareVersions } from 'compare-versions'`.
|
|
24
|
-
|
|
25
|
-
__Note__: Starting from v4 this library includes a ESM version which will automatically be selected by your bundler (webpack, parcel etc). The CJS/UMD version is `lib/umd/index.js` and the new ESM version is `lib/esm/index.js`.
|
|
26
|
-
|
|
27
|
-
## Usage
|
|
28
|
-
|
|
29
|
-
Will return `1` if first version is greater, `0` if versions are equal, and `-1` if the second version is greater:
|
|
30
|
-
|
|
31
|
-
```js
|
|
32
|
-
import { compareVersions } from 'compare-versions';
|
|
33
|
-
|
|
34
|
-
compareVersions('11.1.1', '10.0.0'); // 1
|
|
35
|
-
compareVersions('10.0.0', '10.0.0'); // 0
|
|
36
|
-
compareVersions('10.0.0', '11.1.1'); // -1
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Can also be used for sorting:
|
|
40
|
-
|
|
41
|
-
```js
|
|
42
|
-
const versions = [
|
|
43
|
-
'1.5.19',
|
|
44
|
-
'1.2.3',
|
|
45
|
-
'1.5.5'
|
|
46
|
-
]
|
|
47
|
-
const sorted = versions.sort(compareVersions);
|
|
48
|
-
/*
|
|
49
|
-
[
|
|
50
|
-
'1.2.3',
|
|
51
|
-
'1.5.5',
|
|
52
|
-
'1.5.19'
|
|
53
|
-
]
|
|
54
|
-
*/
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### "Human Readable" Compare
|
|
58
|
-
|
|
59
|
-
The alternative `compare` function accepts an operator which will be more familiar to humans:
|
|
60
|
-
|
|
61
|
-
```js
|
|
62
|
-
import { compare } from 'compare-versions';
|
|
63
|
-
|
|
64
|
-
compare('10.1.8', '10.0.4', '>'); // true
|
|
65
|
-
compare('10.0.1', '10.0.1', '='); // true
|
|
66
|
-
compare('10.1.1', '10.2.2', '<'); // true
|
|
67
|
-
compare('10.1.1', '10.2.2', '<='); // true
|
|
68
|
-
compare('10.1.1', '10.2.2', '>='); // false
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### Version ranges
|
|
72
|
-
|
|
73
|
-
The `satisfies` function accepts a range to compare, compatible with [npm package versioning](https://docs.npmjs.com/cli/v6/using-npm/semver):
|
|
74
|
-
|
|
75
|
-
```js
|
|
76
|
-
import { satisfies } from 'compare-versions';
|
|
77
|
-
|
|
78
|
-
satisfies('10.0.1', '~10.0.0'); // true
|
|
79
|
-
satisfies('10.1.0', '~10.0.0'); // false
|
|
80
|
-
satisfies('10.1.2', '^10.0.0'); // true
|
|
81
|
-
satisfies('11.0.0', '^10.0.0'); // false
|
|
82
|
-
satisfies('10.1.8', '>10.0.4'); // true
|
|
83
|
-
satisfies('10.0.1', '=10.0.1'); // true
|
|
84
|
-
satisfies('10.1.1', '<10.2.2'); // true
|
|
85
|
-
satisfies('10.1.1', '<=10.2.2'); // true
|
|
86
|
-
satisfies('10.1.1', '>=10.2.2'); // false
|
|
87
|
-
satisfies('1.4.6', '1.2.7 || >=1.2.9 <2.0.0'); // true
|
|
88
|
-
satisfies('1.2.8', '1.2.7 || >=1.2.9 <2.0.0'); // false
|
|
89
|
-
satisfies('1.5.1', '1.2.3 - 2.3.4'); // true
|
|
90
|
-
satisfies('2.3.5', '1.2.3 - 2.3.4'); // false
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Validate version numbers
|
|
94
|
-
|
|
95
|
-
Applies the same rules used comparing version numbers and returns a boolean:
|
|
96
|
-
|
|
97
|
-
```js
|
|
98
|
-
import { validate } from 'compare-versions';
|
|
99
|
-
|
|
100
|
-
validate('1.0.0-rc.1'); // true
|
|
101
|
-
validate('1.0-rc.1'); // false
|
|
102
|
-
validate('foo'); // false
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
### Validate version numbers (strict)
|
|
106
|
-
|
|
107
|
-
Validate version numbers strictly according to semver.org; 3 integers, no wildcards, no leading zero or "v" etc:
|
|
108
|
-
|
|
109
|
-
```js
|
|
110
|
-
import { validateStrict } from 'compare-versions';
|
|
111
|
-
|
|
112
|
-
validate('1.0.0'); // true
|
|
113
|
-
validate('1.0.0-rc.1'); // true
|
|
114
|
-
validate('1.0'); // false
|
|
115
|
-
validate('1.x'); // false
|
|
116
|
-
validate('v1.02'); // false
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
### Browser
|
|
120
|
-
|
|
121
|
-
If included directly in the browser, the functions above are available on the global window under the `compareVersions` object:
|
|
122
|
-
|
|
123
|
-
```html
|
|
124
|
-
<script src=https://unpkg.com/compare-versions/lib/umd/index.js></script>
|
|
125
|
-
<script>
|
|
126
|
-
const { compareVersions, compare, satisfies, validate } = window.compareVersions
|
|
127
|
-
console.log(compareVersions('11.0.0', '10.0.0'))
|
|
128
|
-
console.log(compare('11.0.0', '10.0.0', '>'))
|
|
129
|
-
console.log(satisfies('1.2.0', '^1.0.0'))
|
|
130
|
-
console.log(validate('11.0.0'))
|
|
131
|
-
console.log(validateStrict('11.0.0'))
|
|
132
|
-
</script>
|
|
133
|
-
```
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { CompareOperator } from './utils.js';
|
|
2
|
-
/**
|
|
3
|
-
* Compare [semver](https://semver.org/) version strings using the specified operator.
|
|
4
|
-
*
|
|
5
|
-
* @param v1 First version to compare
|
|
6
|
-
* @param v2 Second version to compare
|
|
7
|
-
* @param operator Allowed arithmetic operator to use
|
|
8
|
-
* @returns `true` if the comparison between the firstVersion and the secondVersion satisfies the operator, `false` otherwise.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```
|
|
12
|
-
* compare('10.1.8', '10.0.4', '>'); // return true
|
|
13
|
-
* compare('10.0.1', '10.0.1', '='); // return true
|
|
14
|
-
* compare('10.1.1', '10.2.2', '<'); // return true
|
|
15
|
-
* compare('10.1.1', '10.2.2', '<='); // return true
|
|
16
|
-
* compare('10.1.1', '10.2.2', '>='); // return false
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export declare const compare: (v1: string, v2: string, operator: CompareOperator) => boolean;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compare [semver](https://semver.org/) version strings to find greater, equal or lesser.
|
|
3
|
-
* This library supports the full semver specification, including comparing versions with different number of digits like `1.0.0`, `1.0`, `1`, and pre-release versions like `1.0.0-alpha`.
|
|
4
|
-
* @param v1 - First version to compare
|
|
5
|
-
* @param v2 - Second version to compare
|
|
6
|
-
* @returns Numeric value compatible with the [Array.sort(fn) interface](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#Parameters).
|
|
7
|
-
*/
|
|
8
|
-
export declare const compareVersions: (v1: string, v2: string) => 0 | 1 | -1;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Match [npm semver](https://docs.npmjs.com/cli/v6/using-npm/semver) version range.
|
|
3
|
-
*
|
|
4
|
-
* @param version Version number to match
|
|
5
|
-
* @param range Range pattern for version
|
|
6
|
-
* @returns `true` if the version number is within the range, `false` otherwise.
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```
|
|
10
|
-
* satisfies('1.1.0', '^1.0.0'); // return true
|
|
11
|
-
* satisfies('1.1.0', '~1.0.0'); // return false
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
export declare const satisfies: (version: string, range: string) => boolean;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Allowed arithmetic operators
|
|
3
|
-
*/
|
|
4
|
-
export type CompareOperator = '>' | '>=' | '=' | '<' | '<=' | '!=';
|
|
5
|
-
export declare const semver: RegExp;
|
|
6
|
-
export declare const validateAndParse: (version: string) => RegExpMatchArray;
|
|
7
|
-
export declare const compareSegments: (a: string | string[] | RegExpMatchArray, b: string | string[] | RegExpMatchArray) => 0 | 1 | -1;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Validate [semver](https://semver.org/) version strings.
|
|
3
|
-
*
|
|
4
|
-
* @param version Version number to validate
|
|
5
|
-
* @returns `true` if the version number is a valid semver version number, `false` otherwise.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```
|
|
9
|
-
* validate('1.0.0-rc.1'); // return true
|
|
10
|
-
* validate('1.0-rc.1'); // return false
|
|
11
|
-
* validate('foo'); // return false
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
export declare const validate: (version: string) => boolean;
|
|
15
|
-
/**
|
|
16
|
-
* Validate [semver](https://semver.org/) version strings strictly. Will not accept wildcards and version ranges.
|
|
17
|
-
*
|
|
18
|
-
* @param version Version number to validate
|
|
19
|
-
* @returns `true` if the version number is a valid semver version number `false` otherwise
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```
|
|
23
|
-
* validate('1.0.0-rc.1'); // return true
|
|
24
|
-
* validate('1.0-rc.1'); // return false
|
|
25
|
-
* validate('foo'); // return false
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export declare const validateStrict: (version: string) => boolean;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
1.0.0 / 2017-07-06
|
|
3
|
-
==================
|
|
4
|
-
|
|
5
|
-
* update "mocha" to v3
|
|
6
|
-
* fixed unicode URI decoding (#6)
|
|
7
|
-
* add typings for Typescript
|
|
8
|
-
* README: use SVG Travis-CI badge
|
|
9
|
-
* add LICENSE file (MIT)
|
|
10
|
-
* add .travis.yml file (testing Node.js 0.8 through 8 currently)
|
|
11
|
-
* add README.md file
|
|
12
|
-
|
|
13
|
-
0.0.2 / 2014-01-27
|
|
14
|
-
==================
|
|
15
|
-
|
|
16
|
-
* index: invert the path separators on Windows
|
|
17
|
-
|
|
18
|
-
0.0.1 / 2014-01-27
|
|
19
|
-
==================
|
|
20
|
-
|
|
21
|
-
* initial commit
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
file-uri-to-path
|
|
2
|
-
================
|
|
3
|
-
### Convert a `file:` URI to a file path
|
|
4
|
-
[](https://travis-ci.org/TooTallNate/file-uri-to-path)
|
|
5
|
-
|
|
6
|
-
Accepts a `file:` URI and returns a regular file path suitable for use with the
|
|
7
|
-
`fs` module functions.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
Installation
|
|
11
|
-
------------
|
|
12
|
-
|
|
13
|
-
Install with `npm`:
|
|
14
|
-
|
|
15
|
-
``` bash
|
|
16
|
-
$ npm install file-uri-to-path
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
Example
|
|
21
|
-
-------
|
|
22
|
-
|
|
23
|
-
``` js
|
|
24
|
-
var uri2path = require('file-uri-to-path');
|
|
25
|
-
|
|
26
|
-
uri2path('file://localhost/c|/WINDOWS/clock.avi');
|
|
27
|
-
// "c:\\WINDOWS\\clock.avi"
|
|
28
|
-
|
|
29
|
-
uri2path('file:///c|/WINDOWS/clock.avi');
|
|
30
|
-
// "c:\\WINDOWS\\clock.avi"
|
|
31
|
-
|
|
32
|
-
uri2path('file://localhost/c:/WINDOWS/clock.avi');
|
|
33
|
-
// "c:\\WINDOWS\\clock.avi"
|
|
34
|
-
|
|
35
|
-
uri2path('file://hostname/path/to/the%20file.txt');
|
|
36
|
-
// "\\\\hostname\\path\\to\\the file.txt"
|
|
37
|
-
|
|
38
|
-
uri2path('file:///c:/path/to/the%20file.txt');
|
|
39
|
-
// "c:\\path\\to\\the file.txt"
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
API
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
### fileUriToPath(String uri) → String
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
License
|
|
51
|
-
-------
|
|
52
|
-
|
|
53
|
-
(The MIT License)
|
|
54
|
-
|
|
55
|
-
Copyright (c) 2014 Nathan Rajlich <nathan@tootallnate.net>
|
|
56
|
-
|
|
57
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
58
|
-
a copy of this software and associated documentation files (the
|
|
59
|
-
'Software'), to deal in the Software without restriction, including
|
|
60
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
61
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
62
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
63
|
-
the following conditions:
|
|
64
|
-
|
|
65
|
-
The above copyright notice and this permission notice shall be
|
|
66
|
-
included in all copies or substantial portions of the Software.
|
|
67
|
-
|
|
68
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
69
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
70
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
71
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
72
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
73
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
74
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
# pkce-challenge
|
|
2
|
-
|
|
3
|
-
Generate or verify a Proof Key for Code Exchange (PKCE) challenge pair.
|
|
4
|
-
|
|
5
|
-
Read more about [PKCE](https://www.oauth.com/oauth2-servers/pkce/authorization-request/).
|
|
6
|
-
|
|
7
|
-
## Installation
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
npm install pkce-challenge
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## Usage
|
|
14
|
-
|
|
15
|
-
Default length for the verifier is 43
|
|
16
|
-
|
|
17
|
-
```js
|
|
18
|
-
import pkceChallenge from "pkce-challenge";
|
|
19
|
-
|
|
20
|
-
await pkceChallenge();
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
gives something like:
|
|
24
|
-
|
|
25
|
-
```js
|
|
26
|
-
{
|
|
27
|
-
code_verifier: 'u1ta-MQ0e7TcpHjgz33M2DcBnOQu~aMGxuiZt0QMD1C',
|
|
28
|
-
code_challenge: 'CUZX5qE8Wvye6kS_SasIsa8MMxacJftmWdsIA_iKp3I'
|
|
29
|
-
}
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### Specify a verifier length
|
|
33
|
-
|
|
34
|
-
```js
|
|
35
|
-
const challenge = await pkceChallenge(128);
|
|
36
|
-
|
|
37
|
-
challenge.code_verifier.length === 128; // true
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Challenge verification
|
|
41
|
-
|
|
42
|
-
```js
|
|
43
|
-
import { verifyChallenge } from "pkce-challenge";
|
|
44
|
-
|
|
45
|
-
(await verifyChallenge(challenge.code_verifier, challenge.code_challenge)) ===
|
|
46
|
-
true; // true
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### Challenge generation from existing code verifier
|
|
50
|
-
|
|
51
|
-
```js
|
|
52
|
-
import { generateChallenge } from "pkce-challenge";
|
|
53
|
-
|
|
54
|
-
(await generateChallenge(challenge.code_verifier)) === challenge.code_challenge; // true
|
|
55
|
-
```
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/** Generate a PKCE code challenge from a code verifier
|
|
2
|
-
* @param code_verifier
|
|
3
|
-
* @returns The base64 url encoded code challenge
|
|
4
|
-
*/
|
|
5
|
-
export declare function generateChallenge(code_verifier: string): Promise<string>;
|
|
6
|
-
/** Generate a PKCE challenge pair
|
|
7
|
-
* @param length Length of the verifer (between 43-128). Defaults to 43.
|
|
8
|
-
* @returns PKCE challenge pair
|
|
9
|
-
*/
|
|
10
|
-
export default function pkceChallenge(length?: number): Promise<{
|
|
11
|
-
code_verifier: string;
|
|
12
|
-
code_challenge: string;
|
|
13
|
-
}>;
|
|
14
|
-
/** Verify that a code_verifier produces the expected code challenge
|
|
15
|
-
* @param code_verifier
|
|
16
|
-
* @param expectedChallenge The code challenge to verify
|
|
17
|
-
* @returns True if challenges are equal. False otherwise.
|
|
18
|
-
*/
|
|
19
|
-
export declare function verifyChallenge(code_verifier: string, expectedChallenge: string): Promise<boolean>;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/** Generate a PKCE code challenge from a code verifier
|
|
2
|
-
* @param code_verifier
|
|
3
|
-
* @returns The base64 url encoded code challenge
|
|
4
|
-
*/
|
|
5
|
-
export declare function generateChallenge(code_verifier: string): Promise<string>;
|
|
6
|
-
/** Generate a PKCE challenge pair
|
|
7
|
-
* @param length Length of the verifer (between 43-128). Defaults to 43.
|
|
8
|
-
* @returns PKCE challenge pair
|
|
9
|
-
*/
|
|
10
|
-
export default function pkceChallenge(length?: number): Promise<{
|
|
11
|
-
code_verifier: string;
|
|
12
|
-
code_challenge: string;
|
|
13
|
-
}>;
|
|
14
|
-
/** Verify that a code_verifier produces the expected code challenge
|
|
15
|
-
* @param code_verifier
|
|
16
|
-
* @param expectedChallenge The code challenge to verify
|
|
17
|
-
* @returns True if challenges are equal. False otherwise.
|
|
18
|
-
*/
|
|
19
|
-
export declare function verifyChallenge(code_verifier: string, expectedChallenge: string): Promise<boolean>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
TODO
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* TODO JSDoc
|
|
5
|
-
*/
|
|
6
|
-
export declare function getLoadablePath(): string;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
interface Db {
|
|
10
|
-
loadExtension(file: string, entrypoint?: string | undefined): void;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* TODO JSDoc
|
|
15
|
-
*/
|
|
16
|
-
export declare function load(db: Db): void;
|
|
17
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
TODO
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
TODO
|