shaderkit 0.1.4 → 0.1.6

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/dist/index.js CHANGED
@@ -894,7 +894,7 @@ function tokenize(code, index = 0) {
894
894
  tokens.push({ type: "float", value });
895
895
  else
896
896
  tokens.push({ type: "int", value });
897
- } else if (isAlpha(char)) {
897
+ } else if (isIdent(char)) {
898
898
  while (isIdent(code.charCodeAt(index)))
899
899
  value += code[index++];
900
900
  if (isBool(value))
@@ -921,10 +921,11 @@ function tokenize(code, index = 0) {
921
921
  return tokens;
922
922
  }
923
923
  const isWord = RegExp.prototype.test.bind(/^\w/);
924
+ const isSymbol = RegExp.prototype.test.bind(/[^\w\\]/);
924
925
  const isName = RegExp.prototype.test.bind(/^[_A-Za-z]/);
925
926
  const isStorage = RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/);
926
927
  function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), mangleExternals = false } = {}) {
927
- var _a, _b, _c, _d, _e, _f, _g, _h;
928
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
928
929
  code = code.replace(/(^\s*#[^\\]*?)(\n|\/[\/\*])/gm, "$1\\$2");
929
930
  const exclude = new Set(mangleMap.values());
930
931
  const tokens = tokenize(code).filter((token) => token.type !== "whitespace" && token.type !== "comment");
@@ -939,6 +940,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
939
940
  blockIndex = i - 1;
940
941
  else if (token.value === "}")
941
942
  blockIndex = null;
943
+ if (isSymbol(token.value) && (((_c = tokens[i - 2]) == null ? void 0 : _c.value) === "#" && ((_d = tokens[i - 1]) == null ? void 0 : _d.value) === "include" || ((_e = tokens[i - 3]) == null ? void 0 : _e.value) === "#" && ((_f = tokens[i - 2]) == null ? void 0 : _f.value) === "define"))
944
+ minified += " ";
942
945
  if (isName(token.value)) {
943
946
  let renamed = mangleMap.get(token.value);
944
947
  if (
@@ -946,8 +949,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
946
949
  !renamed && // Skip struct properties
947
950
  blockIndex == null && // Filter variable names
948
951
  token.value !== "main" && (typeof mangle === "boolean" ? mangle : mangle(token, i, tokens)) && // Is declaration, reference, namespace, or comma-separated list
949
- token.type === "identifier" && (isName((_c = tokens[i - 1]) == null ? void 0 : _c.value) || /}|,/.test((_d = tokens[i - 1]) == null ? void 0 : _d.value) || ((_e = tokens[i + 1]) == null ? void 0 : _e.value) === ":") && // Skip shader externals when disabled
950
- (mangleExternals || !isStorage((_f = tokens[i - 1]) == null ? void 0 : _f.value) && !isStorage((_g = tokens[i - 2]) == null ? void 0 : _g.value))
952
+ token.type === "identifier" && (isName((_g = tokens[i - 1]) == null ? void 0 : _g.value) || /}|,/.test((_h = tokens[i - 1]) == null ? void 0 : _h.value) || ((_i = tokens[i + 1]) == null ? void 0 : _i.value) === ":") && // Skip shader externals when disabled
953
+ (mangleExternals || !isStorage((_j = tokens[i - 1]) == null ? void 0 : _j.value) && !isStorage((_k = tokens[i - 2]) == null ? void 0 : _k.value))
951
954
  ) {
952
955
  while (!renamed || exclude.has(renamed)) {
953
956
  renamed = "";
@@ -961,10 +964,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
961
964
  mangleMap.set(token.value, renamed);
962
965
  }
963
966
  minified += renamed != null ? renamed : token.value;
964
- if (token.value === "include")
965
- minified += " ";
966
967
  } else {
967
- if (token.value === "#" && ((_h = tokens[i - 1]) == null ? void 0 : _h.value) !== "\\")
968
+ if (token.value === "#" && ((_l = tokens[i - 1]) == null ? void 0 : _l.value) !== "\\")
968
969
  minified += "\n#";
969
970
  else if (token.value === "\\")
970
971
  minified += "\n";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/constants.ts","../src/tokenizer.ts","../src/minifier.ts"],"sourcesContent":null,"names":["SYMBOLS"],"mappings":";;AACO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EA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"}
1
+ {"version":3,"file":"index.js","sources":["../src/constants.ts","../src/tokenizer.ts","../src/minifier.ts"],"sourcesContent":null,"names":["SYMBOLS"],"mappings":";;AACO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,EACA;AACF;AAEA,MAAM,UAAU;AAAA;AAAA,EAEd;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGO,MAAM,eAAe;AAAA,EAC1B,GAAG;AAAA;AAAA,EAEH;AAAA;AAAA,EAEA;AACF;AAGO,MAAM,eAAe;AAAA,EAC1B,GAAG;AAAA;AAAA,EAEH;AAAA;AAAA,EAEA;AACF;AC13BA,MAAM,SAAS,OAAO,UAAU,KAAK,KAAK,0CAA0C;AAEpF,MAAM,UAAU,OAAO,UAAU,KAAK,KAAK,0BAA0B;AACrE,MAAM,SAAS,OAAO,UAAU,KAAK,KAAK,gBAAgB;AAE1D,MAAM,OAAO;AACb,MAAM,OAAO;AACb,MAAM,IAAI;AACV,MAAM,IAAI;AACV,MAAM,KAAK;AACX,MAAM,KAAK;AACX,MAAM,MAAM;AACZ,MAAM,QAAQ;AACd,MAAM,OAAO;AACb,MAAM,QAAQ;AACd,MAAM,MAAM;AACZ,MAAM,aAAa;AACnB,MAAM,QAAQ;AACd,MAAM,OAAO;AACb,MAAM,OAAO;AACb,MAAM,KAAK;AAEX,MAAM,UAAU,CAAC,MAAc,QAAQ,KAAK,KAAK;AACjD,MAAM,UAAU,CAAC,OAAgB,KAAK,CAAC,IAAK,KAAK,KAAK,KAAK;AAC3D,MAAM,SAAS,CAAC,MAAc,MAAM,MAAM,MAAM;AAChD,MAAM,UAAU,CAAC,MAAc,OAAO,CAAC,KAAK,MAAM,OAAO,MAAM;AAC/D,MAAM,WAAW,CAAC,MAAc,QAAQ,CAAC,KAAK,QAAQ,CAAC,KAAK,MAAM,QAAQ,MAAM,SAAS,MAAM;AAC/F,MAAM,UAAU,CAAC,MAAc,QAAQ,CAAC,KAAK,QAAQ,CAAC,KAAK,MAAM;AACjE,MAAM,UAAU,CAAC,MAAc,MAAM,QAAQ,MAAM;AAKnC,SAAA,SAAS,MAAc,QAAgB,GAAY;AACjE,QAAM,SAAkB,CAAA;AAExB,MAAI,OAAe;AACnB,QAAM,CAAC,UAAUA,QAAO,IAAI,OAAO,IAAI,IAAI,CAAC,eAAe,YAAY,IAAI,CAAC,eAAe,YAAY;AAChG,SAAA,QAAQ,KAAK,QAAQ;AACtB,QAAA,QAAQ,KAAK,KAAK;AAChB,UAAA,OAAO,KAAK,WAAW,OAAO;AAEhC,QAAA,QAAQ,IAAI,GAAG;AACjB,aAAO,QAAQ,KAAK,WAAW,KAAK,CAAC;AAAG,iBAAS,KAAK,OAAO;AAC7D,aAAO,KAAK,EAAE,MAAM,cAAc,MAAO,CAAA;AAAA,IAAA,WAChC,QAAQ,IAAI,GAAG;AACxB,aAAO,SAAS,KAAK,WAAW,KAAK,CAAC;AAAG,iBAAS,KAAK,OAAO;AAC9D,UAAI,QAAQ,KAAK;AAAG,eAAO,KAAK,EAAE,MAAM,SAAS,MAAO,CAAA;AAAA;AACnD,eAAO,KAAK,EAAE,MAAM,OAAO,MAAO,CAAA;AAAA,IAAA,WAC9B,QAAQ,IAAI,GAAG;AACxB,aAAO,QAAQ,KAAK,WAAW,KAAK,CAAC;AAAG,iBAAS,KAAK,OAAO;AAC7D,UAAI,OAAO,KAAK;AAAG,eAAO,KAAK,EAAE,MAAM,QAAQ,MAAO,CAAA;AAAA,eAC7C,SAAS,SAAS,QAAQ,IAAI,IAAI,OAAO,aAAa,IAAI,IAAI,QAAQ,KAAK;AAClF,eAAO,KAAK,EAAE,MAAM,WAAW,MAAO,CAAA;AAAA;AACnC,eAAO,KAAK,EAAE,MAAM,cAAc,MAAO,CAAA;AAAA,IACrC,WAAA,SAAS,UAAU,KAAK,WAAW,KAAK,MAAM,SAAS,KAAK,WAAW,KAAK,MAAM,OAAO;AAClG,YAAM,aAAa,KAAK,WAAW,KAAK,MAAM,OAAO,OAAO;AACrD,aAAA,CAAC,MAAM,SAAS,UAAU;AAAG,iBAAS,KAAK,OAAO;AACzD,aAAO,KAAK,EAAE,MAAM,WAAW,MAAO,CAAA;AAAA,IAAA,OACjC;AACL,iBAAW,UAAUA,UAAS;AACxB,YAAA,OAAO,SAAS,MAAM,UAAU,KAAK,WAAW,QAAQ,QAAQ,CAAC;AAAW,kBAAA;AAAA,MAClF;AACA,eAAS,MAAM,SAAS;AACxB,aAAO,KAAK,EAAE,MAAM,UAAU,MAAO,CAAA;AAAA,IACvC;AACO,WAAA;AAAA,EACT;AAEO,SAAA;AACT;ACnEA,MAAM,SAAS,OAAO,UAAU,KAAK,KAAK,KAAK;AAC/C,MAAM,WAAW,OAAO,UAAU,KAAK,KAAK,SAAS;AACrD,MAAM,SAAS,OAAO,UAAU,KAAK,KAAK,YAAY;AACtD,MAAM,YAAY,OAAO,UAAU,KAAK,KAAK,wCAAwC;AAK9E,SAAS,OACd,MACA,EAAE,SAAS,OAAO,YAAgB,oBAAA,OAAO,kBAAkB,MAAM,IAA4B,CAAA,GACrF;;AAED,SAAA,KAAK,QAAQ,iCAAiC,QAAQ;AAE7D,QAAM,UAAU,IAAI,IAAY,UAAU,OAAQ,CAAA;AAClD,QAAM,SAAkB,SAAS,IAAI,EAAE,OAAO,CAAC,UAAU,MAAM,SAAS,gBAAgB,MAAM,SAAS,SAAS;AAEhH,MAAI,cAAsB;AAC1B,MAAI,aAA4B;AAChC,MAAI,WAAmB;AACvB,WAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AAChC,UAAA,QAAQ,OAAO,CAAC;AAGlB,QAAA,OAAO,MAAM,KAAK,KAAK,QAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK;AAAe,kBAAA;AAGjE,QAAA,MAAM,UAAU,OAAO,QAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK;AAAG,mBAAa,IAAI;AAAA,aACjE,MAAM,UAAU;AAAkB,mBAAA;AAIzC,QAAA,SAAS,MAAM,KAAK,QAClB,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU,SAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU,eACxD,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU,SAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAEhD,kBAAA;AAGV,QAAA,OAAO,MAAM,KAAK,GAAG;AACvB,UAAI,UAAU,UAAU,IAAI,MAAM,KAAK;AACvC;AAAA;AAAA,QAEE,CAAC;AAAA,QAED,cAAc;AAAA,QAEd,MAAM,UAAU,WACf,OAAO,WAAW,YAAY,SAAS,OAAO,OAAO,GAAG,MAAM;AAAA,QAE/D,MAAM,SAAS,iBACd,QAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK,KAAK,MAAM,MAAK,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK,OAAK,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAAA,SAE7F,mBAAoB,CAAC,WAAU,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK,KAAK,CAAC,WAAU,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK;AAAA,QACxF;AACA,eAAO,CAAC,WAAW,QAAQ,IAAI,OAAO,GAAG;AAC7B,oBAAA;AACV;AAEA,cAAI,IAAI;AACR,iBAAO,IAAI,GAAG;AACZ,sBAAU,OAAO,aAAa,MAAO,IAAI,KAAM,EAAE,IAAI;AACjD,gBAAA,KAAK,MAAM,IAAI,EAAE;AAAA,UACvB;AAAA,QACF;AAEU,kBAAA,IAAI,MAAM,OAAO,OAAO;AAAA,MACpC;AAEA,kBAAY,4BAAW,MAAM;AAAA,IAAA,OACxB;AACL,UAAI,MAAM,UAAU,SAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAAkB,oBAAA;AAAA,eAC7D,MAAM,UAAU;AAAkB,oBAAA;AAAA;AACtC,oBAAY,MAAM;AAAA,IACzB;AAAA,EACF;AAEA,SAAO,SAAS;AAClB;;;;;;;"}
package/dist/index.mjs CHANGED
@@ -892,7 +892,7 @@ function tokenize(code, index = 0) {
892
892
  tokens.push({ type: "float", value });
893
893
  else
894
894
  tokens.push({ type: "int", value });
895
- } else if (isAlpha(char)) {
895
+ } else if (isIdent(char)) {
896
896
  while (isIdent(code.charCodeAt(index)))
897
897
  value += code[index++];
898
898
  if (isBool(value))
@@ -919,10 +919,11 @@ function tokenize(code, index = 0) {
919
919
  return tokens;
920
920
  }
921
921
  const isWord = RegExp.prototype.test.bind(/^\w/);
922
+ const isSymbol = RegExp.prototype.test.bind(/[^\w\\]/);
922
923
  const isName = RegExp.prototype.test.bind(/^[_A-Za-z]/);
923
924
  const isStorage = RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/);
924
925
  function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), mangleExternals = false } = {}) {
925
- var _a, _b, _c, _d, _e, _f, _g, _h;
926
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
926
927
  code = code.replace(/(^\s*#[^\\]*?)(\n|\/[\/\*])/gm, "$1\\$2");
927
928
  const exclude = new Set(mangleMap.values());
928
929
  const tokens = tokenize(code).filter((token) => token.type !== "whitespace" && token.type !== "comment");
@@ -937,6 +938,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
937
938
  blockIndex = i - 1;
938
939
  else if (token.value === "}")
939
940
  blockIndex = null;
941
+ if (isSymbol(token.value) && (((_c = tokens[i - 2]) == null ? void 0 : _c.value) === "#" && ((_d = tokens[i - 1]) == null ? void 0 : _d.value) === "include" || ((_e = tokens[i - 3]) == null ? void 0 : _e.value) === "#" && ((_f = tokens[i - 2]) == null ? void 0 : _f.value) === "define"))
942
+ minified += " ";
940
943
  if (isName(token.value)) {
941
944
  let renamed = mangleMap.get(token.value);
942
945
  if (
@@ -944,8 +947,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
944
947
  !renamed && // Skip struct properties
945
948
  blockIndex == null && // Filter variable names
946
949
  token.value !== "main" && (typeof mangle === "boolean" ? mangle : mangle(token, i, tokens)) && // Is declaration, reference, namespace, or comma-separated list
947
- token.type === "identifier" && (isName((_c = tokens[i - 1]) == null ? void 0 : _c.value) || /}|,/.test((_d = tokens[i - 1]) == null ? void 0 : _d.value) || ((_e = tokens[i + 1]) == null ? void 0 : _e.value) === ":") && // Skip shader externals when disabled
948
- (mangleExternals || !isStorage((_f = tokens[i - 1]) == null ? void 0 : _f.value) && !isStorage((_g = tokens[i - 2]) == null ? void 0 : _g.value))
950
+ token.type === "identifier" && (isName((_g = tokens[i - 1]) == null ? void 0 : _g.value) || /}|,/.test((_h = tokens[i - 1]) == null ? void 0 : _h.value) || ((_i = tokens[i + 1]) == null ? void 0 : _i.value) === ":") && // Skip shader externals when disabled
951
+ (mangleExternals || !isStorage((_j = tokens[i - 1]) == null ? void 0 : _j.value) && !isStorage((_k = tokens[i - 2]) == null ? void 0 : _k.value))
949
952
  ) {
950
953
  while (!renamed || exclude.has(renamed)) {
951
954
  renamed = "";
@@ -959,10 +962,8 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
959
962
  mangleMap.set(token.value, renamed);
960
963
  }
961
964
  minified += renamed != null ? renamed : token.value;
962
- if (token.value === "include")
963
- minified += " ";
964
965
  } else {
965
- if (token.value === "#" && ((_h = tokens[i - 1]) == null ? void 0 : _h.value) !== "\\")
966
+ if (token.value === "#" && ((_l = tokens[i - 1]) == null ? void 0 : _l.value) !== "\\")
966
967
  minified += "\n#";
967
968
  else if (token.value === "\\")
968
969
  minified += "\n";
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/constants.ts","../src/tokenizer.ts","../src/minifier.ts"],"sourcesContent":null,"names":["SYMBOLS"],"mappings":"AACO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/constants.ts","../src/tokenizer.ts","../src/minifier.ts"],"sourcesContent":null,"names":["SYMBOLS"],"mappings":"AACO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,gBAAgB;AAAA;AAAA,EAE3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shaderkit",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Tools and IntelliSense for GLSL and WGSL.",
5
5
  "keywords": [
6
6
  "shaders",
package/src/minifier.ts CHANGED
@@ -12,6 +12,7 @@ export interface MinifyOptions {
12
12
  }
13
13
 
14
14
  const isWord = RegExp.prototype.test.bind(/^\w/)
15
+ const isSymbol = RegExp.prototype.test.bind(/[^\w\\]/)
15
16
  const isName = RegExp.prototype.test.bind(/^[_A-Za-z]/)
16
17
  const isStorage = RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/)
17
18
 
@@ -41,6 +42,14 @@ export function minify(
41
42
  if (token.value === '{' && isName(tokens[i - 1]?.value)) blockIndex = i - 1
42
43
  else if (token.value === '}') blockIndex = null
43
44
 
45
+ // Pad symbols around #define and three.js #include (white-space sensitive)
46
+ if (
47
+ isSymbol(token.value) &&
48
+ ((tokens[i - 2]?.value === '#' && tokens[i - 1]?.value === 'include') ||
49
+ (tokens[i - 3]?.value === '#' && tokens[i - 2]?.value === 'define'))
50
+ )
51
+ minified += ' '
52
+
44
53
  // Mangle declarations and their references
45
54
  if (isName(token.value)) {
46
55
  let renamed = mangleMap.get(token.value)
@@ -73,10 +82,6 @@ export function minify(
73
82
  }
74
83
 
75
84
  minified += renamed ?? token.value
76
-
77
- // three.js has a white-space sensitive RegExp
78
- // https://github.com/mrdoob/three.js/blob/dev/src/renderers/webgl/WebGLProgram.js#L206
79
- if (token.value === 'include') minified += ' '
80
85
  } else {
81
86
  if (token.value === '#' && tokens[i - 1]?.value !== '\\') minified += '\n#'
82
87
  else if (token.value === '\\') minified += '\n'
package/src/tokenizer.ts CHANGED
@@ -57,7 +57,7 @@ export function tokenize(code: string, index: number = 0): Token[] {
57
57
  while (isNumber(code.charCodeAt(index))) value += code[index++]
58
58
  if (isFloat(value)) tokens.push({ type: 'float', value })
59
59
  else tokens.push({ type: 'int', value })
60
- } else if (isAlpha(char)) {
60
+ } else if (isIdent(char)) {
61
61
  while (isIdent(code.charCodeAt(index))) value += code[index++]
62
62
  if (isBool(value)) tokens.push({ type: 'bool', value })
63
63
  else if (KEYWORDS.includes(isMacro(prev) ? String.fromCharCode(prev) + value : value))