sketchi 0.0.1 → 0.1.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 +164 -0
- package/THIRD_PARTY_NOTICES +352 -0
- package/chunks/831.0761b12c81336696.js +2645 -0
- package/chunks/869.1dfc43b6f9a12ea7.js +1 -0
- package/package.json +6 -2
- package/sketchi.js +60 -60
package/README.md
ADDED
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://sketchi.app/icon.svg" alt="Sketchi" width="112" height="112" />
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<h1 align="center">Sketchi CLI</h1>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<strong>Typed, deterministic diagrams from your terminal.</strong><br />
|
|
9
|
+
Create, inspect, revise, and export local flowcharts and mindmaps—or turn one prompt into validated, editable Excalidraw.
|
|
10
|
+
</p>
|
|
11
|
+
|
|
12
|
+
<p align="center">
|
|
13
|
+
<a href="https://www.npmjs.com/package/sketchi"><img alt="npm version" src="https://img.shields.io/npm/v/sketchi?logo=npm&color=CB3837" /></a>
|
|
14
|
+
<a href="https://sketchi.app/"><img alt="Sketchi website" src="https://img.shields.io/badge/sketchi.app-live-765264" /></a>
|
|
15
|
+
<a href="https://github.com/shpitdev/sketchi/blob/main/LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-2F855A" /></a>
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
Sketchi stores canonical diagram documents and deterministic Excalidraw artifacts
|
|
19
|
+
under `~/.sketchi/diagrams`. Its manual workflow stays local; generation is one
|
|
20
|
+
explicit, credential-free network command.
|
|
21
|
+
|
|
22
|
+
## Install
|
|
23
|
+
|
|
24
|
+
Use the noninteractive installer to install the npm package and configure
|
|
25
|
+
completions for a detected Zsh, Bash, or Fish shell:
|
|
26
|
+
|
|
27
|
+
```sh
|
|
28
|
+
curl -fsSL https://raw.githubusercontent.com/shpitdev/sketchi/main/install.sh | sh
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Or install directly from npm:
|
|
32
|
+
|
|
33
|
+
```sh
|
|
34
|
+
npm install -g sketchi
|
|
35
|
+
sketchi --version
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Sketchi requires Node.js 24.13.0 or newer.
|
|
39
|
+
|
|
40
|
+
## Create and work with a diagram
|
|
41
|
+
|
|
42
|
+
Create a canonical flowchart from inline JSON:
|
|
43
|
+
|
|
44
|
+
```sh
|
|
45
|
+
sketchi create --json '{"type":"flowchart","spec":{"id":"release-flow","title":"Release approval","nodes":[{"id":"start","label":"Change proposed","kind":"start"},{"id":"review","label":"Review evidence","kind":"process"},{"id":"end","label":"Release approved","kind":"end"}],"edges":[{"source":"start","target":"review"},{"source":"review","target":"end"}]}}'
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Inspect it, replace it with another complete canonical document, and list the
|
|
49
|
+
local store:
|
|
50
|
+
|
|
51
|
+
```sh
|
|
52
|
+
sketchi show release-flow
|
|
53
|
+
|
|
54
|
+
sketchi edit release-flow --json '{"type":"flowchart","spec":{"id":"release-flow","title":"Release approval revised","nodes":[{"id":"start","label":"Change proposed","kind":"start"},{"id":"review","label":"Review complete evidence","kind":"process"},{"id":"end","label":"Release approved","kind":"end"}],"edges":[{"source":"start","target":"review"},{"source":"review","target":"end"}]}}'
|
|
55
|
+
|
|
56
|
+
sketchi list
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Export the stored editable artifact:
|
|
60
|
+
|
|
61
|
+
```sh
|
|
62
|
+
sketchi export release-flow --format excalidraw --dest release-flow.excalidraw
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Or render a PNG directly from the stored scene and Excalidraw artifacts:
|
|
66
|
+
|
|
67
|
+
```sh
|
|
68
|
+
sketchi export release-flow --format png --dest release-flow.png
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
PNG rendering is deterministic and fully local. Sketchi uses Excalidraw's
|
|
72
|
+
headless SVG exporter, bundled Excalifont files, and a bundled WASM rasterizer;
|
|
73
|
+
it does not start a browser or use the network. The rendered image is
|
|
74
|
+
export-only and is not added to the diagram record, while a pre-existing
|
|
75
|
+
`diagram.png` remains the fast path.
|
|
76
|
+
|
|
77
|
+
Every command also supports `--output json` for a stable machine-readable
|
|
78
|
+
result envelope. Export status always uses stderr. `export --dest -` writes
|
|
79
|
+
only artifact bytes to stdout; a PNG file export also includes one generic
|
|
80
|
+
inline-Markdown display hint for calling agents. Its destination is enclosed
|
|
81
|
+
in CommonMark angle brackets so local paths containing spaces remain valid.
|
|
82
|
+
|
|
83
|
+
## Generate from a prompt
|
|
84
|
+
|
|
85
|
+
`generate` sends one prompt to Sketchi's public generation API, validates the
|
|
86
|
+
result server-side, and commits the same local record shape used by `create`:
|
|
87
|
+
|
|
88
|
+
```sh
|
|
89
|
+
sketchi generate --prompt "Map release approval with pass and revise branches"
|
|
90
|
+
sketchi generate --prompt "Organize launch readiness" --type mindmap --output json
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
It requires no API key, token, account, or login. It is the CLI's only network
|
|
94
|
+
boundary.
|
|
95
|
+
|
|
96
|
+
## Shell completions
|
|
97
|
+
|
|
98
|
+
The installer configures completions automatically. For a direct npm install,
|
|
99
|
+
generate the script for your shell and source the dedicated file:
|
|
100
|
+
|
|
101
|
+
Zsh initializes its completion system before loading Sketchi:
|
|
102
|
+
|
|
103
|
+
```zsh
|
|
104
|
+
mkdir -p ~/.sketchi/completions
|
|
105
|
+
sketchi --completions zsh > ~/.sketchi/completions/sketchi.zsh
|
|
106
|
+
autoload -Uz compinit
|
|
107
|
+
(( ${+functions[compdef]} )) || compinit
|
|
108
|
+
source ~/.sketchi/completions/sketchi.zsh
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
For Bash:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
mkdir -p ~/.sketchi/completions
|
|
115
|
+
sketchi --completions bash > ~/.sketchi/completions/sketchi.bash
|
|
116
|
+
if [ "${BASH_VERSINFO[0]:-0}" -ge 4 ]; then
|
|
117
|
+
source ~/.sketchi/completions/sketchi.bash
|
|
118
|
+
fi
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Generated Bash completions require Bash 4 or newer. The installer silently
|
|
122
|
+
skips them on the stock macOS Bash 3.2. Bash login shells may not read
|
|
123
|
+
`.bashrc`, so `.bash_profile` may need to source `.bashrc` for completions to be
|
|
124
|
+
available.
|
|
125
|
+
|
|
126
|
+
For Fish:
|
|
127
|
+
|
|
128
|
+
```fish
|
|
129
|
+
mkdir -p ~/.sketchi/completions
|
|
130
|
+
sketchi --completions fish > ~/.sketchi/completions/sketchi.fish
|
|
131
|
+
source ~/.sketchi/completions/sketchi.fish
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## For AI agents
|
|
135
|
+
|
|
136
|
+
The five deterministic commands—`create`, `show`, `edit`, `list`, and
|
|
137
|
+
`export`—are fully offline and require no credentials, account, browser, model,
|
|
138
|
+
or MCP server. They never send stored records to a provider. Agents can use
|
|
139
|
+
`--output json`, complete noninteractive input through `--json` or `--file`, and
|
|
140
|
+
raw artifact output through `export --dest -` without prompts.
|
|
141
|
+
|
|
142
|
+
After exporting PNG to a file, agents can follow the returned hint to display
|
|
143
|
+
that path as an inline Markdown image for the user.
|
|
144
|
+
|
|
145
|
+
`generate` is deliberately separate: it uses the public Sketchi API, remains
|
|
146
|
+
credential-free, and is the only command that uses the network.
|
|
147
|
+
|
|
148
|
+
## License
|
|
149
|
+
|
|
150
|
+
Sketchi CLI's own code is MIT-licensed. The published package also bundles
|
|
151
|
+
Excalidraw, resvg-wasm, and Excalifont under their respective licenses; see
|
|
152
|
+
the included `THIRD_PARTY_NOTICES` file for copyright, license, and source
|
|
153
|
+
availability details.
|
|
154
|
+
|
|
155
|
+
## Help
|
|
156
|
+
|
|
157
|
+
```sh
|
|
158
|
+
sketchi --help
|
|
159
|
+
sketchi create --help
|
|
160
|
+
sketchi generate --help
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
Source, issue tracking, and architecture documentation live in the
|
|
164
|
+
[Sketchi repository](https://github.com/shpitdev/sketchi).
|
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
Sketchi CLI third-party notices
|
|
2
|
+
================================
|
|
3
|
+
|
|
4
|
+
The Sketchi CLI package is licensed under the MIT License. It also bundles
|
|
5
|
+
the following third-party software and font files under their own licenses.
|
|
6
|
+
|
|
7
|
+
@resvg/resvg-wasm 2.6.2
|
|
8
|
+
------------------------
|
|
9
|
+
|
|
10
|
+
License: Mozilla Public License 2.0 (MPL-2.0)
|
|
11
|
+
Project: https://github.com/yisibl/resvg-js
|
|
12
|
+
Corresponding source: https://github.com/yisibl/resvg-js/tree/v2.6.2
|
|
13
|
+
License text: https://www.mozilla.org/MPL/2.0/
|
|
14
|
+
|
|
15
|
+
This package contains the unmodified resvg-wasm JavaScript and WebAssembly
|
|
16
|
+
distribution. The source code for that executable form is available at the
|
|
17
|
+
corresponding-source URL above under MPL-2.0.
|
|
18
|
+
|
|
19
|
+
@excalidraw/excalidraw 0.18.1
|
|
20
|
+
--------------------------------
|
|
21
|
+
|
|
22
|
+
MIT License
|
|
23
|
+
|
|
24
|
+
Copyright (c) 2020 Excalidraw
|
|
25
|
+
|
|
26
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
27
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
28
|
+
in the Software without restriction, including without limitation the rights
|
|
29
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
30
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
31
|
+
furnished to do so, subject to the following conditions:
|
|
32
|
+
|
|
33
|
+
The above copyright notice and this permission notice shall be included in all
|
|
34
|
+
copies or substantial portions of the Software.
|
|
35
|
+
|
|
36
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
37
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
38
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
39
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
40
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
41
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
42
|
+
SOFTWARE.
|
|
43
|
+
|
|
44
|
+
Excalifont
|
|
45
|
+
-----------
|
|
46
|
+
|
|
47
|
+
Copyright (c) 2024 by Excalidraw. All rights reserved.
|
|
48
|
+
Manufacturer and designer: Your Own Font Foundry (Virgil); Jan Filipek /
|
|
49
|
+
DizajnDesign (Excalifont, modifications)
|
|
50
|
+
|
|
51
|
+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
52
|
+
|
|
53
|
+
-----------------------------------------------------------
|
|
54
|
+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
55
|
+
-----------------------------------------------------------
|
|
56
|
+
|
|
57
|
+
PREAMBLE
|
|
58
|
+
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
59
|
+
development of collaborative font projects, to support the font creation
|
|
60
|
+
efforts of academic and linguistic communities, and to provide a free and
|
|
61
|
+
open framework in which fonts may be shared and improved in partnership with
|
|
62
|
+
others.
|
|
63
|
+
|
|
64
|
+
The OFL allows the licensed fonts to be used, studied, modified and
|
|
65
|
+
redistributed freely as long as they are not sold by themselves. The fonts,
|
|
66
|
+
including any derivative works, can be bundled, embedded, redistributed
|
|
67
|
+
and/or sold with any software provided that any reserved names are not used
|
|
68
|
+
by derivative works. The fonts and derivatives, however, cannot be released
|
|
69
|
+
under any other type of license. The requirement for fonts to remain under
|
|
70
|
+
this license does not apply to any document created using the fonts or their
|
|
71
|
+
derivatives.
|
|
72
|
+
|
|
73
|
+
DEFINITIONS
|
|
74
|
+
"Font Software" refers to the set of files released by the Copyright
|
|
75
|
+
Holder(s) under this license and clearly marked as such. This may include
|
|
76
|
+
source files, build scripts and documentation.
|
|
77
|
+
|
|
78
|
+
"Reserved Font Name" refers to any names specified as such after the
|
|
79
|
+
copyright statement(s).
|
|
80
|
+
|
|
81
|
+
"Original Version" refers to the collection of Font Software components as
|
|
82
|
+
distributed by the Copyright Holder(s).
|
|
83
|
+
|
|
84
|
+
"Modified Version" refers to any derivative made by adding to, deleting, or
|
|
85
|
+
substituting -- in part or in whole -- any of the components of the Original
|
|
86
|
+
Version, by changing formats or by porting the Font Software to a new
|
|
87
|
+
environment.
|
|
88
|
+
|
|
89
|
+
"Author" refers to any designer, engineer, programmer, technical writer or
|
|
90
|
+
other person who contributed to the Font Software.
|
|
91
|
+
|
|
92
|
+
PERMISSION & CONDITIONS
|
|
93
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
94
|
+
of the Font Software, to use, study, copy, merge, embed, modify, redistribute,
|
|
95
|
+
and sell modified and unmodified copies of the Font Software, subject to the
|
|
96
|
+
following conditions:
|
|
97
|
+
|
|
98
|
+
1) Neither the Font Software nor any of its individual components, in
|
|
99
|
+
Original or Modified Versions, may be sold by itself.
|
|
100
|
+
|
|
101
|
+
2) Original or Modified Versions of the Font Software may be bundled,
|
|
102
|
+
redistributed and/or sold with any software, provided that each copy contains
|
|
103
|
+
the above copyright notice and this license. These can be included either as
|
|
104
|
+
stand-alone text files, human-readable headers or in the appropriate
|
|
105
|
+
machine-readable metadata fields within text or binary files as long as those
|
|
106
|
+
fields can be easily viewed by the user.
|
|
107
|
+
|
|
108
|
+
3) No Modified Version of the Font Software may use the Reserved Font Name(s)
|
|
109
|
+
unless explicit written permission is granted by the corresponding Copyright
|
|
110
|
+
Holder. This restriction only applies to the primary font name as presented
|
|
111
|
+
to the users.
|
|
112
|
+
|
|
113
|
+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
114
|
+
Software shall not be used to promote, endorse or advertise any Modified
|
|
115
|
+
Version, except to acknowledge the contribution(s) of the Copyright Holder(s)
|
|
116
|
+
and the Author(s) or with their explicit written permission.
|
|
117
|
+
|
|
118
|
+
5) The Font Software, modified or unmodified, in part or in whole, must be
|
|
119
|
+
distributed entirely under this license, and must not be distributed under
|
|
120
|
+
any other license. The requirement for fonts to remain under this license
|
|
121
|
+
does not apply to any document created using the Font Software.
|
|
122
|
+
|
|
123
|
+
TERMINATION
|
|
124
|
+
This license becomes null and void if any of the above conditions are not
|
|
125
|
+
met.
|
|
126
|
+
|
|
127
|
+
DISCLAIMER
|
|
128
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
129
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
|
|
130
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
|
|
131
|
+
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR
|
|
132
|
+
ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL,
|
|
133
|
+
INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
|
|
134
|
+
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE
|
|
135
|
+
THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
136
|
+
|
|
137
|
+
linkedom and its dependency tree
|
|
138
|
+
---------------------------------
|
|
139
|
+
|
|
140
|
+
The headless renderer bundles the following DOM implementation packages.
|
|
141
|
+
Their complete notices follow this inventory.
|
|
142
|
+
|
|
143
|
+
- linkedom 0.18.13 (ISC)
|
|
144
|
+
- uhyphen 0.2.0 (ISC)
|
|
145
|
+
- boolbase 2.0.0 (ISC)
|
|
146
|
+
- css-select 7.0.0, css-what 8.0.0, domhandler 6.0.1 and 5.0.3,
|
|
147
|
+
domutils 4.0.2 and 3.2.2, nth-check 3.0.1, domelementtype 3.0.0 and
|
|
148
|
+
2.3.0, and entities 8.0.0, 7.0.1, and 4.5.0 (BSD-2-Clause)
|
|
149
|
+
- cssom 0.5.0 (MIT)
|
|
150
|
+
- html-escaper 3.0.3 (MIT)
|
|
151
|
+
- htmlparser2 10.1.0 (MIT)
|
|
152
|
+
- dom-serializer 3.1.1 and 2.0.0 (MIT)
|
|
153
|
+
|
|
154
|
+
linkedom 0.18.13
|
|
155
|
+
~~~~~~~~~~~~~~~~~
|
|
156
|
+
|
|
157
|
+
ISC License
|
|
158
|
+
|
|
159
|
+
Copyright (c) 2021, Andrea Giammarchi, @WebReflection
|
|
160
|
+
|
|
161
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
162
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
163
|
+
copyright notice and this permission notice appear in all copies.
|
|
164
|
+
|
|
165
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
166
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
167
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
168
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
169
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
|
170
|
+
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
171
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
172
|
+
|
|
173
|
+
uhyphen 0.2.0
|
|
174
|
+
~~~~~~~~~~~~~
|
|
175
|
+
|
|
176
|
+
ISC License
|
|
177
|
+
|
|
178
|
+
Copyright (c) 2020, Andrea Giammarchi, @WebReflection
|
|
179
|
+
|
|
180
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
181
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
182
|
+
copyright notice and this permission notice appear in all copies.
|
|
183
|
+
|
|
184
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
185
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
186
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
187
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
188
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
|
189
|
+
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
190
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
191
|
+
|
|
192
|
+
boolbase 2.0.0
|
|
193
|
+
~~~~~~~~~~~~~~
|
|
194
|
+
|
|
195
|
+
Copyright (c) 2014-2015, Felix Boehm <me@feedic.com>
|
|
196
|
+
|
|
197
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
198
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
199
|
+
copyright notice and this permission notice appear in all copies.
|
|
200
|
+
|
|
201
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
202
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
203
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
204
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
205
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
206
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
207
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
208
|
+
|
|
209
|
+
html-escaper 3.0.3
|
|
210
|
+
~~~~~~~~~~~~~~~~~~
|
|
211
|
+
|
|
212
|
+
Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection
|
|
213
|
+
|
|
214
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
215
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
216
|
+
in the Software without restriction, including without limitation the rights
|
|
217
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
218
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
219
|
+
furnished to do so, subject to the following conditions:
|
|
220
|
+
|
|
221
|
+
The above copyright notice and this permission notice shall be included in
|
|
222
|
+
all copies or substantial portions of the Software.
|
|
223
|
+
|
|
224
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
225
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
226
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
227
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
228
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
229
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
230
|
+
THE SOFTWARE.
|
|
231
|
+
|
|
232
|
+
cssom 0.5.0
|
|
233
|
+
~~~~~~~~~~~
|
|
234
|
+
|
|
235
|
+
Copyright (c) Nikita Vasilyev
|
|
236
|
+
|
|
237
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
238
|
+
a copy of this software and associated documentation files (the
|
|
239
|
+
"Software"), to deal in the Software without restriction, including
|
|
240
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
241
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
242
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
243
|
+
the following conditions:
|
|
244
|
+
|
|
245
|
+
The above copyright notice and this permission notice shall be
|
|
246
|
+
included in all copies or substantial portions of the Software.
|
|
247
|
+
|
|
248
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
249
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
250
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
251
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
252
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
253
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
254
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
255
|
+
|
|
256
|
+
htmlparser2 10.1.0
|
|
257
|
+
~~~~~~~~~~~~~~~~~~
|
|
258
|
+
|
|
259
|
+
Copyright 2010, 2011, Chris Winberry <chris@winberry.net>. All rights reserved.
|
|
260
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
261
|
+
of this software and associated documentation files (the "Software"), to
|
|
262
|
+
deal in the Software without restriction, including without limitation the
|
|
263
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
264
|
+
sell copies of the Software, and to permit persons to whom the Software is
|
|
265
|
+
furnished to do so, subject to the following conditions:
|
|
266
|
+
|
|
267
|
+
The above copyright notice and this permission notice shall be included in
|
|
268
|
+
all copies or substantial portions of the Software.
|
|
269
|
+
|
|
270
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
271
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
272
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
273
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
274
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
275
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
276
|
+
IN THE SOFTWARE.
|
|
277
|
+
|
|
278
|
+
css-select and related htmlparser2 packages
|
|
279
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
280
|
+
|
|
281
|
+
This notice applies to the BSD-2-Clause packages listed together in the
|
|
282
|
+
inventory above.
|
|
283
|
+
|
|
284
|
+
Copyright (c) Felix Böhm
|
|
285
|
+
All rights reserved.
|
|
286
|
+
|
|
287
|
+
Redistribution and use in source and binary forms, with or without
|
|
288
|
+
modification, are permitted provided that the following conditions are met:
|
|
289
|
+
|
|
290
|
+
Redistributions of source code must retain the above copyright notice, this
|
|
291
|
+
list of conditions and the following disclaimer.
|
|
292
|
+
|
|
293
|
+
Redistributions in binary form must reproduce the above copyright notice,
|
|
294
|
+
this list of conditions and the following disclaimer in the documentation
|
|
295
|
+
and/or other materials provided with the distribution.
|
|
296
|
+
|
|
297
|
+
THIS IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
|
298
|
+
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
299
|
+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
300
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
301
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
302
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
303
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
304
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
305
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
306
|
+
OF THIS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
307
|
+
|
|
308
|
+
dom-serializer 3.1.1
|
|
309
|
+
~~~~~~~~~~~~~~~~~~~~
|
|
310
|
+
|
|
311
|
+
Copyright (c) 2022 The Cheerio contributors
|
|
312
|
+
|
|
313
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
314
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
315
|
+
in the Software without restriction, including without limitation the rights
|
|
316
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
317
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
318
|
+
furnished to do so, subject to the following conditions:
|
|
319
|
+
|
|
320
|
+
The above copyright notice and this permission notice shall be included in
|
|
321
|
+
all copies or substantial portions of the Software.
|
|
322
|
+
|
|
323
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
324
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
325
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
326
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
327
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
328
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
329
|
+
SOFTWARE.
|
|
330
|
+
|
|
331
|
+
dom-serializer 2.0.0
|
|
332
|
+
~~~~~~~~~~~~~~~~~~~~
|
|
333
|
+
|
|
334
|
+
Copyright (c) 2014 The cheeriojs contributors
|
|
335
|
+
|
|
336
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
337
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
338
|
+
in the Software without restriction, including without limitation the rights
|
|
339
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
340
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
341
|
+
furnished to do so, subject to the following conditions:
|
|
342
|
+
|
|
343
|
+
The above copyright notice and this permission notice shall be included in
|
|
344
|
+
all copies or substantial portions of the Software.
|
|
345
|
+
|
|
346
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
347
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
348
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
349
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
350
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
351
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
352
|
+
SOFTWARE.
|