shaderkit 0.1.10 → 0.1.11
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/LICENSE +21 -21
- package/README.md +185 -185
- package/dist/index.cjs +5 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1 -0
- package/dist/index.js +4 -983
- package/dist/index.js.map +1 -1
- package/package.json +50 -44
- package/src/constants.ts +901 -901
- package/src/index.ts +3 -3
- package/src/minifier.ts +100 -100
- package/src/tokenizer.ts +78 -78
- package/dist/index.mjs +0 -984
- package/dist/index.mjs.map +0 -1
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2023 Cody Bennett
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 Cody Bennett
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,185 +1,185 @@
|
|
|
1
|
-
[](https://bundlephobia.com/package/shaderkit)
|
|
2
|
-
[](https://npmjs.com/package/shaderkit)
|
|
3
|
-
[](https://npmjs.com/package/shaderkit)
|
|
4
|
-
|
|
5
|
-
# shaderkit
|
|
6
|
-
|
|
7
|
-
Tools and IntelliSense for GLSL and WGSL.
|
|
8
|
-
|
|
9
|
-
## Installation
|
|
10
|
-
|
|
11
|
-
To install, use your preferred package manager:
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
npm install shaderkit
|
|
15
|
-
yarn add shaderkit
|
|
16
|
-
pnpm add shaderkit
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Or, use a CDN:
|
|
20
|
-
|
|
21
|
-
```html
|
|
22
|
-
<script type="module">
|
|
23
|
-
import * as shaderkit from 'https://unpkg.com/shaderkit'
|
|
24
|
-
</script>
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## Tokenize
|
|
28
|
-
|
|
29
|
-
Tokenizes a string of GLSL or WGSL code, returning an array of `Token` objects, where each `Token` object represents a single syntax feature in the input code.
|
|
30
|
-
|
|
31
|
-
<details>
|
|
32
|
-
<summary>GLSL Example</summary>
|
|
33
|
-
|
|
34
|
-
<br />
|
|
35
|
-
|
|
36
|
-
```ts
|
|
37
|
-
import { tokenize } from 'shaderkit'
|
|
38
|
-
|
|
39
|
-
const code = 'void main() { gl_Position = vec4(0, 0, 0, 1); }'
|
|
40
|
-
const tokens = tokenize(code)
|
|
41
|
-
|
|
42
|
-
console.log(tokens)
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
The output of the above code will be:
|
|
46
|
-
|
|
47
|
-
```json
|
|
48
|
-
[
|
|
49
|
-
{ "type": "keyword", "value": "void" },
|
|
50
|
-
{ "type": "whitespace", "value": " " },
|
|
51
|
-
{ "type": "identifier", "value": "main" },
|
|
52
|
-
{ "type": "symbol", "value": "(" },
|
|
53
|
-
{ "type": "symbol", "value": ")" },
|
|
54
|
-
{ "type": "whitespace", "value": " " },
|
|
55
|
-
{ "type": "symbol", "value": "{" },
|
|
56
|
-
{ "type": "whitespace", "value": " " },
|
|
57
|
-
{ "type": "keyword", "value": "gl_Position" },
|
|
58
|
-
{ "type": "whitespace", "value": " " },
|
|
59
|
-
{ "type": "symbol", "value": "=" },
|
|
60
|
-
{ "type": "whitespace", "value": " " },
|
|
61
|
-
{ "type": "keyword", "value": "vec4" },
|
|
62
|
-
{ "type": "symbol", "value": "(" },
|
|
63
|
-
{ "type": "int", "value": "0" },
|
|
64
|
-
{ "type": "symbol", "value": "," },
|
|
65
|
-
{ "type": "whitespace", "value": " " },
|
|
66
|
-
{ "type": "int", "value": "0" },
|
|
67
|
-
{ "type": "symbol", "value": "," },
|
|
68
|
-
{ "type": "whitespace", "value": " " },
|
|
69
|
-
{ "type": "int", "value": "0" },
|
|
70
|
-
{ "type": "symbol", "value": "," },
|
|
71
|
-
{ "type": "whitespace", "value": " " },
|
|
72
|
-
{ "type": "int", "value": "1" },
|
|
73
|
-
{ "type": "symbol", "value": ")" },
|
|
74
|
-
{ "type": "symbol", "value": ";" },
|
|
75
|
-
{ "type": "whitespace", "value": " " },
|
|
76
|
-
{ "type": "symbol", "value": "}" }
|
|
77
|
-
]
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
</details>
|
|
81
|
-
|
|
82
|
-
<details>
|
|
83
|
-
<summary>WGSL Example</summary>
|
|
84
|
-
|
|
85
|
-
<br />
|
|
86
|
-
|
|
87
|
-
```ts
|
|
88
|
-
import { tokenize } from 'shaderkit'
|
|
89
|
-
|
|
90
|
-
const code = '@vertex fn main() -> @builtin(position) vec4<f32> { return vec4(0, 0, 0, 1); }'
|
|
91
|
-
const tokens = tokenize(code)
|
|
92
|
-
|
|
93
|
-
console.log(tokens)
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
The output of the above code will be:
|
|
97
|
-
|
|
98
|
-
```json
|
|
99
|
-
[
|
|
100
|
-
{ "type": "symbol", "value": "@" },
|
|
101
|
-
{ "type": "keyword", "value": "vertex" },
|
|
102
|
-
{ "type": "whitespace", "value": " " },
|
|
103
|
-
{ "type": "keyword", "value": "fn" },
|
|
104
|
-
{ "type": "whitespace", "value": " " },
|
|
105
|
-
{ "type": "identifier", "value": "main" },
|
|
106
|
-
{ "type": "symbol", "value": "(" },
|
|
107
|
-
{ "type": "symbol", "value": ")" },
|
|
108
|
-
{ "type": "whitespace", "value": " " },
|
|
109
|
-
{ "type": "symbol", "value": "->" },
|
|
110
|
-
{ "type": "whitespace", "value": " " },
|
|
111
|
-
{ "type": "symbol", "value": "@" },
|
|
112
|
-
{ "type": "keyword", "value": "builtin" },
|
|
113
|
-
{ "type": "symbol", "value": "(" },
|
|
114
|
-
{ "type": "keyword", "value": "position" },
|
|
115
|
-
{ "type": "symbol", "value": ")" },
|
|
116
|
-
{ "type": "whitespace", "value": " " },
|
|
117
|
-
{ "type": "keyword", "value": "vec4" },
|
|
118
|
-
{ "type": "symbol", "value": "<" },
|
|
119
|
-
{ "type": "keyword", "value": "f32" },
|
|
120
|
-
{ "type": "symbol", "value": ">" },
|
|
121
|
-
{ "type": "whitespace", "value": " " },
|
|
122
|
-
{ "type": "symbol", "value": "{" },
|
|
123
|
-
{ "type": "whitespace", "value": " " },
|
|
124
|
-
{ "type": "keyword", "value": "return" },
|
|
125
|
-
{ "type": "whitespace", "value": " " },
|
|
126
|
-
{ "type": "keyword", "value": "vec4" },
|
|
127
|
-
{ "type": "symbol", "value": "(" },
|
|
128
|
-
{ "type": "int", "value": "0" },
|
|
129
|
-
{ "type": "symbol", "value": "," },
|
|
130
|
-
{ "type": "whitespace", "value": " " },
|
|
131
|
-
{ "type": "int", "value": "0" },
|
|
132
|
-
{ "type": "symbol", "value": "," },
|
|
133
|
-
{ "type": "whitespace", "value": " " },
|
|
134
|
-
{ "type": "int", "value": "0" },
|
|
135
|
-
{ "type": "symbol", "value": "," },
|
|
136
|
-
{ "type": "whitespace", "value": " " },
|
|
137
|
-
{ "type": "int", "value": "1" },
|
|
138
|
-
{ "type": "symbol", "value": ")" },
|
|
139
|
-
{ "type": "symbol", "value": ";" },
|
|
140
|
-
{ "type": "whitespace", "value": " " },
|
|
141
|
-
{ "type": "symbol", "value": "}" }
|
|
142
|
-
]
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
</details>
|
|
146
|
-
|
|
147
|
-
The following are the supported token types and their descriptions:
|
|
148
|
-
|
|
149
|
-
| Type | Description |
|
|
150
|
-
| ---------- | ------------------------------------------------------------------------- |
|
|
151
|
-
| whitespace | A sequence of one or more whitespace characters. |
|
|
152
|
-
| comment | A single-line or multi-line comment. |
|
|
153
|
-
| symbol | A symbol, such as an operator or punctuation mark. |
|
|
154
|
-
| bool | A boolean value, either true or false. |
|
|
155
|
-
| float | A floating-point number, represented by a sequence of digits and symbols. |
|
|
156
|
-
| int | An integer number, represented by a sequence of digits. |
|
|
157
|
-
| identifier | A user-defined identifier, such as a variable name or function name. |
|
|
158
|
-
| keyword | A keyword reserved by the language, such as if, else, for, etc. |
|
|
159
|
-
|
|
160
|
-
## Minify
|
|
161
|
-
|
|
162
|
-
Minifies a string of GLSL or WGSL code, returning a minified version of the input code.
|
|
163
|
-
|
|
164
|
-
```ts
|
|
165
|
-
const minified: string = minify(code: string, {
|
|
166
|
-
/** Whether to rename variables. Will call a MangleMatcher if specified. Default is `false`. */
|
|
167
|
-
mangle: boolean | ((token: Token, index: number, tokens: Token[]) => boolean)
|
|
168
|
-
/** A map to read and write renamed variables to when mangling. */
|
|
169
|
-
mangleMap: Map<string, string>
|
|
170
|
-
/** Whether to rename external variables such as uniforms or varyings. Default is `false`. */
|
|
171
|
-
mangleExternals: boolean
|
|
172
|
-
})
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
To shared mangled interfaces when using `mangleExternal`, declare and re-use a `mangleMap` between shaders:
|
|
176
|
-
|
|
177
|
-
```ts
|
|
178
|
-
const programOpts = { mangle: true, mangleExternals: true, mangleMap: new Map() }
|
|
179
|
-
|
|
180
|
-
// #version 300 es\nin vec2 a;out vec2 b;void main(){b=a;}
|
|
181
|
-
minify(`#version 300 es\nin vec2 uv;out vec2 c;void main(){c=uv;}`, programOpts)
|
|
182
|
-
|
|
183
|
-
// #version 300 es\nin vec2 b;out vec4 c[gl_MaxDrawBuffers];void main(){c[0]=b.sstt;}
|
|
184
|
-
minify(`#version 300 es\nin vec2 c;out vec4 data[gl_MaxDrawBuffers];void main(){data[0]=c.sstt;}`, programOpts)
|
|
185
|
-
```
|
|
1
|
+
[](https://bundlephobia.com/package/shaderkit)
|
|
2
|
+
[](https://npmjs.com/package/shaderkit)
|
|
3
|
+
[](https://npmjs.com/package/shaderkit)
|
|
4
|
+
|
|
5
|
+
# shaderkit
|
|
6
|
+
|
|
7
|
+
Tools and IntelliSense for GLSL and WGSL.
|
|
8
|
+
|
|
9
|
+
## Installation
|
|
10
|
+
|
|
11
|
+
To install, use your preferred package manager:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm install shaderkit
|
|
15
|
+
yarn add shaderkit
|
|
16
|
+
pnpm add shaderkit
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Or, use a CDN:
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<script type="module">
|
|
23
|
+
import * as shaderkit from 'https://unpkg.com/shaderkit'
|
|
24
|
+
</script>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Tokenize
|
|
28
|
+
|
|
29
|
+
Tokenizes a string of GLSL or WGSL code, returning an array of `Token` objects, where each `Token` object represents a single syntax feature in the input code.
|
|
30
|
+
|
|
31
|
+
<details>
|
|
32
|
+
<summary>GLSL Example</summary>
|
|
33
|
+
|
|
34
|
+
<br />
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
import { tokenize } from 'shaderkit'
|
|
38
|
+
|
|
39
|
+
const code = 'void main() { gl_Position = vec4(0, 0, 0, 1); }'
|
|
40
|
+
const tokens = tokenize(code)
|
|
41
|
+
|
|
42
|
+
console.log(tokens)
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
The output of the above code will be:
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
[
|
|
49
|
+
{ "type": "keyword", "value": "void" },
|
|
50
|
+
{ "type": "whitespace", "value": " " },
|
|
51
|
+
{ "type": "identifier", "value": "main" },
|
|
52
|
+
{ "type": "symbol", "value": "(" },
|
|
53
|
+
{ "type": "symbol", "value": ")" },
|
|
54
|
+
{ "type": "whitespace", "value": " " },
|
|
55
|
+
{ "type": "symbol", "value": "{" },
|
|
56
|
+
{ "type": "whitespace", "value": " " },
|
|
57
|
+
{ "type": "keyword", "value": "gl_Position" },
|
|
58
|
+
{ "type": "whitespace", "value": " " },
|
|
59
|
+
{ "type": "symbol", "value": "=" },
|
|
60
|
+
{ "type": "whitespace", "value": " " },
|
|
61
|
+
{ "type": "keyword", "value": "vec4" },
|
|
62
|
+
{ "type": "symbol", "value": "(" },
|
|
63
|
+
{ "type": "int", "value": "0" },
|
|
64
|
+
{ "type": "symbol", "value": "," },
|
|
65
|
+
{ "type": "whitespace", "value": " " },
|
|
66
|
+
{ "type": "int", "value": "0" },
|
|
67
|
+
{ "type": "symbol", "value": "," },
|
|
68
|
+
{ "type": "whitespace", "value": " " },
|
|
69
|
+
{ "type": "int", "value": "0" },
|
|
70
|
+
{ "type": "symbol", "value": "," },
|
|
71
|
+
{ "type": "whitespace", "value": " " },
|
|
72
|
+
{ "type": "int", "value": "1" },
|
|
73
|
+
{ "type": "symbol", "value": ")" },
|
|
74
|
+
{ "type": "symbol", "value": ";" },
|
|
75
|
+
{ "type": "whitespace", "value": " " },
|
|
76
|
+
{ "type": "symbol", "value": "}" }
|
|
77
|
+
]
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
</details>
|
|
81
|
+
|
|
82
|
+
<details>
|
|
83
|
+
<summary>WGSL Example</summary>
|
|
84
|
+
|
|
85
|
+
<br />
|
|
86
|
+
|
|
87
|
+
```ts
|
|
88
|
+
import { tokenize } from 'shaderkit'
|
|
89
|
+
|
|
90
|
+
const code = '@vertex fn main() -> @builtin(position) vec4<f32> { return vec4(0, 0, 0, 1); }'
|
|
91
|
+
const tokens = tokenize(code)
|
|
92
|
+
|
|
93
|
+
console.log(tokens)
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
The output of the above code will be:
|
|
97
|
+
|
|
98
|
+
```json
|
|
99
|
+
[
|
|
100
|
+
{ "type": "symbol", "value": "@" },
|
|
101
|
+
{ "type": "keyword", "value": "vertex" },
|
|
102
|
+
{ "type": "whitespace", "value": " " },
|
|
103
|
+
{ "type": "keyword", "value": "fn" },
|
|
104
|
+
{ "type": "whitespace", "value": " " },
|
|
105
|
+
{ "type": "identifier", "value": "main" },
|
|
106
|
+
{ "type": "symbol", "value": "(" },
|
|
107
|
+
{ "type": "symbol", "value": ")" },
|
|
108
|
+
{ "type": "whitespace", "value": " " },
|
|
109
|
+
{ "type": "symbol", "value": "->" },
|
|
110
|
+
{ "type": "whitespace", "value": " " },
|
|
111
|
+
{ "type": "symbol", "value": "@" },
|
|
112
|
+
{ "type": "keyword", "value": "builtin" },
|
|
113
|
+
{ "type": "symbol", "value": "(" },
|
|
114
|
+
{ "type": "keyword", "value": "position" },
|
|
115
|
+
{ "type": "symbol", "value": ")" },
|
|
116
|
+
{ "type": "whitespace", "value": " " },
|
|
117
|
+
{ "type": "keyword", "value": "vec4" },
|
|
118
|
+
{ "type": "symbol", "value": "<" },
|
|
119
|
+
{ "type": "keyword", "value": "f32" },
|
|
120
|
+
{ "type": "symbol", "value": ">" },
|
|
121
|
+
{ "type": "whitespace", "value": " " },
|
|
122
|
+
{ "type": "symbol", "value": "{" },
|
|
123
|
+
{ "type": "whitespace", "value": " " },
|
|
124
|
+
{ "type": "keyword", "value": "return" },
|
|
125
|
+
{ "type": "whitespace", "value": " " },
|
|
126
|
+
{ "type": "keyword", "value": "vec4" },
|
|
127
|
+
{ "type": "symbol", "value": "(" },
|
|
128
|
+
{ "type": "int", "value": "0" },
|
|
129
|
+
{ "type": "symbol", "value": "," },
|
|
130
|
+
{ "type": "whitespace", "value": " " },
|
|
131
|
+
{ "type": "int", "value": "0" },
|
|
132
|
+
{ "type": "symbol", "value": "," },
|
|
133
|
+
{ "type": "whitespace", "value": " " },
|
|
134
|
+
{ "type": "int", "value": "0" },
|
|
135
|
+
{ "type": "symbol", "value": "," },
|
|
136
|
+
{ "type": "whitespace", "value": " " },
|
|
137
|
+
{ "type": "int", "value": "1" },
|
|
138
|
+
{ "type": "symbol", "value": ")" },
|
|
139
|
+
{ "type": "symbol", "value": ";" },
|
|
140
|
+
{ "type": "whitespace", "value": " " },
|
|
141
|
+
{ "type": "symbol", "value": "}" }
|
|
142
|
+
]
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
</details>
|
|
146
|
+
|
|
147
|
+
The following are the supported token types and their descriptions:
|
|
148
|
+
|
|
149
|
+
| Type | Description |
|
|
150
|
+
| ---------- | ------------------------------------------------------------------------- |
|
|
151
|
+
| whitespace | A sequence of one or more whitespace characters. |
|
|
152
|
+
| comment | A single-line or multi-line comment. |
|
|
153
|
+
| symbol | A symbol, such as an operator or punctuation mark. |
|
|
154
|
+
| bool | A boolean value, either true or false. |
|
|
155
|
+
| float | A floating-point number, represented by a sequence of digits and symbols. |
|
|
156
|
+
| int | An integer number, represented by a sequence of digits. |
|
|
157
|
+
| identifier | A user-defined identifier, such as a variable name or function name. |
|
|
158
|
+
| keyword | A keyword reserved by the language, such as if, else, for, etc. |
|
|
159
|
+
|
|
160
|
+
## Minify
|
|
161
|
+
|
|
162
|
+
Minifies a string of GLSL or WGSL code, returning a minified version of the input code.
|
|
163
|
+
|
|
164
|
+
```ts
|
|
165
|
+
const minified: string = minify(code: string, {
|
|
166
|
+
/** Whether to rename variables. Will call a MangleMatcher if specified. Default is `false`. */
|
|
167
|
+
mangle: boolean | ((token: Token, index: number, tokens: Token[]) => boolean)
|
|
168
|
+
/** A map to read and write renamed variables to when mangling. */
|
|
169
|
+
mangleMap: Map<string, string>
|
|
170
|
+
/** Whether to rename external variables such as uniforms or varyings. Default is `false`. */
|
|
171
|
+
mangleExternals: boolean
|
|
172
|
+
})
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
To shared mangled interfaces when using `mangleExternal`, declare and re-use a `mangleMap` between shaders:
|
|
176
|
+
|
|
177
|
+
```ts
|
|
178
|
+
const programOpts = { mangle: true, mangleExternals: true, mangleMap: new Map() }
|
|
179
|
+
|
|
180
|
+
// #version 300 es\nin vec2 a;out vec2 b;void main(){b=a;}
|
|
181
|
+
minify(`#version 300 es\nin vec2 uv;out vec2 c;void main(){c=uv;}`, programOpts)
|
|
182
|
+
|
|
183
|
+
// #version 300 es\nin vec2 b;out vec4 c[gl_MaxDrawBuffers];void main(){c[0]=b.sstt;}
|
|
184
|
+
minify(`#version 300 es\nin vec2 c;out vec4 data[gl_MaxDrawBuffers];void main(){data[0]=c.sstt;}`, programOpts)
|
|
185
|
+
```
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=["vec2","vec2i","vec2u","vec2f","vec2h","vec3","vec3i","vec3u","vec3f","vec3h","vec4","vec4i","vec4u","vec4f","vec4h","mat2x2","mat2x2f","mat2x2h","mat2x3","mat2x3f","mat2x3h","mat2x4","mat2x4f","mat2x4h","mat3x2","mat3x2f","mat3x2h","mat3x3","mat3x3f","mat3x3h","mat3x4","mat3x4f","mat3x4h","mat4x2","mat4x2f","mat4x2h","mat4x3","mat4x3f","mat4x3h","mat4x4","mat4x4f","mat4x4h","array","atomic","bool","f32","f16","i32","ptr","sampler","sampler_comparison","texture_1d","texture_2d","texture_2d_array","texture_3d","texture_cube","texture_cube_array","texture_multisampled_2d","texture_storage_1d","texture_storage_2d","texture_storage_2d_array","texture_storage_3d","texture_depth_2d","texture_depth_2d_array","texture_depth_cube","texture_depth_cube_array","texture_depth_multisampled_2d","u32","alias","bitcast","break","case","const","const_assert","continue","continuing","default","discard","else","enable","false","fn","for","if","let","loop","override","return","struct","switch","true","var","while","Hullshader","NULL","Self","abstract","active","alignas","alignof","as","asm","asm_fragment","async","attribute","auto","await","become","bf16","binding_array","cast","catch","class","co_await","co_return","co_yield","coherent","column_major","common","compile","compile_fragment","concept","const_cast","consteval","constexpr","constinit","crate","debugger","decltype","delete","demote","demote_to_helper","do","dynamic_cast","enum","explicit","export","extends","extern","external","f64","fallthrough","filter","final","finally","friend","from","fxgroup","get","goto","groupshared","handle","highp","i16","i64","i8","impl","implements","import","inline","instanceof","interface","layout","lowp","macro","macro_rules","match","mediump","meta","mod","module","move","mut","mutable","namespace","new","nil","noexcept","noinline","nointerpolation","noperspective","null","nullptr","of","operator","package","packoffset","partition","pass","patch","pixelfragment","precise","precision","premerge","priv","protected","pub","public","quat","readonly","ref","regardless","register","reinterpret_cast","requires","resource","restrict","self","set","shared","sizeof","smooth","snorm","static","static_assert","static_cast","std","subroutine","super","target","template","this","thread_local","throw","trait","try","type","typedef","typeid","typename","typeof","u16","u64","u8","union","unless","unorm","unsafe","unsized","use","using","varying","virtual","volatile","wgsl","where","with","writeonly","yield","@align","@binding","@builtin","@compute","@const","@fragment","@group","@id","@interpolate","@invariant","@location","@size","@vertex","@workgroup_size","perspective","linear","flat","center","centroid","sample","vertex_index","instance_index","position","front_facing","frag_depth","local_invocation_id","local_invocation_index","global_invocation_id","workgroup_id","num_workgroups","sample_index","sample_mask","read","write","read_write","function","private","workgroup","uniform","storage","rgba8unorm","rgba8snorm","rgba8uint","rgba8sint","rgba16uint","rgba16sint","rgba16float","r32uint","r32sint","r32float","rg32uint","rg32sint","rg32float","rgba32uint","rgba32sint","rgba32float","bgra8unorm","f16","all","any","select","arrayLength","abs","acos","acosh","asin","asinh","atan","atanh","atan2","ceil","clamp","cos","cosh","countLeadingZeros","countOneBits","countTrailingZeros","cross","degrees","determinant","distance","dot","exp","exp2","extractBits","faceForward","firstLeadingBit","firstTrailingBit","floor","fma","fract","frexp","insertBits","inverseSqrt","ldexp","length","log","log2","max","min","mix","modf","normalize","pow","quantizeToF16","radians","reflect","refract","reverseBits","round","saturate","sign","sin","sinh","smoothstep","sqrt","step","tan","tanh","transpose","trunc","dpdx","dpdxCoarse","dpdxFine","dpdy","dpdyCoarse","dpdyFine","fwidth","fwidthCoarse","fwidthFine","textureDimensions","textureGather","textureGatherCompare","textureLoad","textureNumLayers","textureNumLevels","textureNumSamples","textureSample","textureSampleBias","textureSampleCompare","textureSampleCompareLevel","textureSampleGrad","textureSampleLevel","textureSampleBaseClampToEdge","atomicLoad","atomicStore","atomicAdd","atomicSub","atomicMax","atomicMin","atomicAnd","atomicOr","atomicXor","atomicExchange","atomicCompareExchangeWeak","pack4x8snorm","pack4x8unorm","pack2x16snorm","pack2x16unorm","pack2x16float","unpack4x8snorm","unpack4x8unorm","unpack2x16snorm","unpack2x16unorm","unpack2x16float","storageBarrier","workgroupBarrier","workgroupUniformLoad"],I=["const","uniform","layout","centroid","flat","smooth","break","continue","do","for","while","switch","case","default","if","else","in","out","inout","float","int","void","bool","true","false","invariant","discard","return","mat2","mat3","mat4","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","uint","uvec2","uvec3","uvec4","lowp","mediump","highp","precision","sampler2D","sampler3D","samplerCube","sampler2DShadow","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","struct","attribute","varying","coherent","volatile","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","asm","class","union","enum","typedef","template","this","goto","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","superp","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler3DRect","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","imageBuffer","iimageBuffer","uimageBuffer","sampler1D","sampler1DShadow","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","sampler2DRect","sampler2DRectShadow","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray","sizeof","cast","namespace","using","#define","#undef","#if","#ifdef","#ifndef","#else","#elif","#endif","#error","#pragma","#extension","#version","#line","defined","__LINE__","__FILE__","__VERSION__","GL_ES","gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","radians","degrees","sin","cos","tan","asin","acos","atan","sinh","cosh","tanh","asinh","acosh","atanh","pow","exp","log","exp2","log2","sqrt","inversesqrt","abs","sign","floor","trunc","round","roundEven","ceil","fract","mod","modf","min","max","clamp","mix","step","smoothstep","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","length","distance","dot","cross","normalize","faceforward","reflect","refract","matrixCompMult","outerProduct","transpose","determinant","inverse","lessThan","lessThanEqual","greaterThan","greaterThanEqual","equal","notEqual","any","all","not","textureSize","texture","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset","dFdx","dFdy","fwidth","#include","gl_DrawID","gl_ViewID_OVR","GL_OVR_multiview2"],G=["//","/*","*/",":",",",".","{","[","(","?","}","]",")",";","~","--","++","!","&","|","^","/","==",">",">=","<","<=","&&","||","^^","-","*","!=","+","%","<<",">>","=","+=","&=","|=","^=","/=","*=","%=","<<=",">>=","-="],P=[...G,"#","\\"],W=[...G,"->","@"],U=RegExp.prototype.test.bind(/\bfn\s+\w+\s*\(|\b(var|let)\s+\w+\s*[:=]/),k=RegExp.prototype.test.bind(/^(\d+\.\d*|\d*\.\d+)([eEpP][-+]?\d+)?[fFhH]?$/),q=RegExp.prototype.test.bind(/^(0[xX][\w\d]+|\d+)[iIuU]?$/),Y=RegExp.prototype.test.bind(/^(true|false)$/),N=48,j=57,H=65,$=90,K=10,Z=13,X=9,J=32,Q=95,C=47,E=42,ee=35,te=64,z=e=>N<=e&&e<=j,ae=e=>(e&=-33,H<=e&&e<=$),re=e=>e===K||e===Z,B=e=>re(e)||e===X||e===J,O=e=>ae(e)||z(e)||e===Q,ie=e=>e===ee||e===te;function V(e,r=0){const o=[];let p=-1;const[c,d]=U(e)?[T,W]:[I,P];for(;r<e.length;){let t=e[r];const s=e.charCodeAt(r++);if(B(s)){for(;B(e.charCodeAt(r));)t+=e[r++];o.push({type:"whitespace",value:t})}else if(z(s)){for(;k(t+e[r])||q(t+e[r]);)t+=e[r++];k(t)?o.push({type:"float",value:t}):o.push({type:"int",value:t})}else if(O(s)){for(;O(e.charCodeAt(r));)t+=e[r++];Y(t)?o.push({type:"bool",value:t}):c.includes(ie(p)?String.fromCharCode(p)+t:t)?o.push({type:"keyword",value:t}):o.push({type:"identifier",value:t})}else if(s===C&&(e.charCodeAt(r)===C||e.charCodeAt(r)===E)){const u=e.charCodeAt(r)===E?"*/":`
|
|
2
|
+
`;for(;!t.endsWith(u);)t+=e[r++];o.push({type:"comment",value:t})}else{for(const u of d)u.length>t.length&&e.startsWith(u,r-1)&&(t=u);r+=t.length-1,o.push({type:"symbol",value:t})}p=s}return o}const M=RegExp.prototype.test.bind(/^\w/),oe=RegExp.prototype.test.bind(/[^\w\\]/),R=RegExp.prototype.test.bind(/^[_A-Za-z]/),F=RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/);function se(e,{mangle:r=!1,mangleMap:o=new Map,mangleExternals:p=!1}={}){var c,d,t,s,u,g,v,h,_,y,b,D,w,S;e=e.replace(/(^\s*#[^\\]*?)(\n|\/[\/\*])/gm,"$1\\$2");const A=new Set(o.values()),i=V(e).filter(a=>a.type!=="whitespace"&&a.type!=="comment");let L=0,x=null,m="";for(let a=0;a<i.length;a++){const n=i[a];if(M(n.value)&&M((c=i[a-1])==null?void 0:c.value)&&(m+=" "),n.value==="{"&&R((d=i[a-1])==null?void 0:d.value)?x=a-1:n.value==="}"&&(x=null),oe(n.value)&&(((t=i[a-2])==null?void 0:t.value)==="#"&&((s=i[a-1])==null?void 0:s.value)==="include"||((u=i[a-3])==null?void 0:u.value)==="#"&&((g=i[a-2])==null?void 0:g.value)==="define")&&(m+=" "),n.type==="identifier"&&n.value!=="main"&&(typeof r=="boolean"?r:r(n,a,i))){let l=o.get(n.value);if(!l&&x==null&&(R((v=i[a-1])==null?void 0:v.value)||((h=i[a-1])==null?void 0:h.value)==="}"&&((_=i[a+1])==null?void 0:_.value)===";"||((y=i[a-1])==null?void 0:y.value)===","||((b=i[a+1])==null?void 0:b.value)===":")&&(p||!F((D=i[a-1])==null?void 0:D.value)&&!F((w=i[a-2])==null?void 0:w.value))){for(;!l||A.has(l);){l="",L++;let f=L;for(;f>0;)l=String.fromCharCode(97+(f-1)%26)+l,f=Math.floor(f/26)}o.set(n.value,l)}m+=l!=null?l:n.value}else n.value==="#"&&((S=i[a-1])==null?void 0:S.value)!=="\\"?m+=`
|
|
3
|
+
#`:n.value==="\\"?m+=`
|
|
4
|
+
`:m+=n.value}return m.trim()}exports.GLSL_KEYWORDS=I,exports.GLSL_SYMBOLS=P,exports.WGSL_KEYWORDS=T,exports.WGSL_SYMBOLS=W,exports.minify=se,exports.tokenize=V;
|
|
5
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/constants.ts","../src/tokenizer.ts","../src/minifier.ts"],"sourcesContent":null,"names":["WGSL_KEYWORDS","GLSL_KEYWORDS","SYMBOLS","GLSL_SYMBOLS","WGSL_SYMBOLS","isWGSL","isFloat","isInt","isBool","ZERO","NINE","A","Z","LF","CR","TAB","SPACE","UNDERSCORE","SLASH","STAR","HASH","AT","isDigit","c","isAlpha","isLine","isSpace","isIdent","isMacro","tokenize","code","index","tokens","prev","KEYWORDS","value","char","terminator","symbol","isWord","isSymbol","isName","isStorage","minify","mangle","mangleMap","mangleExternals","exclude","token","mangleIndex","blockIndex","minified","i","_a","_b","_c","_d","_e","_f","renamed","_g","_h","_i","_j","_k","_l","_m","j","_n"],"mappings":"gFACO,MAAMA,EAAgB,CAE3B,OACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QAGA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UAGA,QACA,SACA,OACA,MACA,MACA,MAUA,MACA,UACA,qBACA,aACA,aACA,mBACA,aACA,eACA,qBACA,0BACA,qBACA,qBACA,2BACA,qBACA,mBACA,yBACA,qBACA,2BACA,gCACA,MAMA,QACA,UACA,QACA,OACA,QACA,eACA,WACA,aACA,UACA,UACA,OACA,SACA,QACA,KACA,MACA,KACA,MACA,OACA,WACA,SACA,SACA,SACA,OACA,MACA,QAGA,aACA,OACA,OACA,WACA,SACA,UACA,UACA,KACA,MACA,eACA,QACA,YACA,OACA,QACA,SACA,OACA,gBACA,OACA,QACA,QACA,WACA,YACA,WACA,WACA,eACA,SACA,UACA,mBACA,UACA,aACA,YACA,YACA,YACA,QACA,WACA,WACA,SACA,SACA,mBACA,KACA,eACA,OACA,WACA,SACA,UACA,SACA,WACA,MACA,cACA,SACA,QACA,UACA,SACA,OACA,UACA,MACA,OACA,cACA,SACA,QACA,MACA,MACA,KACA,OACA,aACA,SACA,SACA,aACA,YACA,SACA,OACA,QACA,cACA,QACA,UACA,OACA,MACA,SACA,OACA,MACA,UACA,YACA,MACA,MACA,WACA,WACA,kBACA,gBACA,OACA,UACA,KACA,WACA,UACA,aACA,YACA,OACA,QACA,gBACA,UACA,YACA,WACA,OACA,YACA,MACA,SACA,OACA,WACA,MACA,aACA,WACA,mBACA,WACA,WACA,WACA,OACA,MACA,SACA,SACA,SACA,QACA,SACA,gBACA,cACA,MACA,aACA,QACA,SACA,WACA,OACA,eACA,QACA,QACA,MACA,OACA,UACA,SACA,WACA,SACA,MACA,MACA,KACA,QACA,SACA,QACA,SACA,UACA,MACA,QACA,UACA,UACA,WACA,OACA,QACA,OACA,YACA,QAGA,SACA,WACA,WACA,WACA,SACA,YACA,SACA,MACA,eACA,aACA,YACA,QACA,UACA,kBAGA,cACA,SACA,OAGA,SACA,WACA,SAGA,eACA,iBACA,WACA,eACA,aACA,sBACA,yBACA,uBACA,eACA,iBACA,eACA,cAGA,OACA,QACA,aAGA,WACA,UACA,YACA,UACA,UAGA,aACA,aACA,YACA,YACA,aACA,aACA,cACA,UACA,UACA,WACA,WACA,WACA,YACA,aACA,aACA,cACA,aAGA,MAGA,MACA,MACA,SAGA,cAGA,MACA,OACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,MACA,OACA,oBACA,eACA,qBACA,QACA,UACA,cACA,WACA,MACA,MACA,OACA,cACA,cACA,kBACA,mBACA,QACA,MACA,QACA,QACA,aACA,cACA,QACA,SACA,MACA,OACA,MACA,MACA,MACA,OACA,YACA,MACA,gBACA,UACA,UACA,UACA,cACA,QACA,WACA,OACA,MACA,OACA,aACA,OACA,OACA,MACA,OACA,YACA,QAGA,OACA,aACA,WACA,OACA,aACA,WACA,SACA,eACA,aAGA,oBACA,gBACA,uBACA,cACA,mBACA,mBACA,oBACA,gBACA,oBACA,uBACA,4BACA,oBACA,qBACA,+BAGA,aACA,cACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,iBACA,4BAGA,eACA,eACA,gBACA,gBACA,gBAGA,iBACA,iBACA,kBACA,kBACA,kBAGA,iBACA,mBACA,sBACF,EAIaC,EAAgB,CAE3B,QACA,UACA,SACA,WACA,OACA,SACA,QACA,WACA,KACA,MACA,QACA,SACA,OACA,UACA,KACA,OACA,KACA,MACA,QACA,QACA,MACA,OACA,OACA,OACA,QACA,YACA,UACA,SACA,OACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,UACA,QACA,YACA,YACA,YACA,cACA,kBACA,oBACA,iBACA,uBACA,aACA,aACA,eACA,kBACA,aACA,aACA,eACA,kBACA,SAGA,YACA,UACA,WACA,WACA,WACA,WACA,YACA,WACA,cACA,gBACA,QACA,SACA,aACA,SACA,YACA,SACA,MACA,QACA,QACA,OACA,UACA,WACA,OACA,OACA,SACA,WACA,WACA,SACA,SACA,SACA,WACA,YACA,OACA,QACA,SACA,OACA,QACA,WACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,gBACA,SACA,UACA,UACA,UACA,YACA,WACA,WACA,WACA,aACA,WACA,WACA,WACA,aACA,eACA,eACA,gBACA,gBACA,gBACA,gBACA,cACA,eACA,eACA,YACA,kBACA,iBACA,uBACA,aACA,kBACA,aACA,kBACA,gBACA,sBACA,iBACA,iBACA,gBACA,iBACA,iBACA,cACA,eACA,eACA,mBACA,oBACA,oBACA,SACA,OACA,YACA,QAGA,UACA,SACA,MACA,SACA,UACA,QACA,QACA,SACA,SACA,UACA,aACA,WACA,QAGA,UAGA,WACA,WACA,cACA,QAGA,cACA,gBACA,cACA,eAGA,eACA,iBACA,eACA,gBAGA,sBACA,6BACA,4BACA,6BACA,gCACA,kCACA,0BACA,+BACA,oBACA,2BACA,2BAGA,0BACA,gBAGA,UACA,UACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,QAGA,MACA,MACA,MACA,OACA,OACA,OACA,cAGA,MACA,OACA,QACA,QACA,QACA,YACA,OACA,QACA,MACA,OACA,MACA,MACA,QACA,MACA,OACA,aACA,QACA,QACA,iBACA,kBACA,iBACA,kBAGA,gBACA,kBACA,gBACA,kBACA,eACA,iBAGA,SACA,WACA,MACA,QACA,YACA,cACA,UACA,UACA,iBACA,eACA,YACA,cACA,UAGA,WA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"}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../src'
|