shaderkit 0.1.8 → 0.1.10

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
@@ -851,7 +851,8 @@ const WGSL_SYMBOLS = [
851
851
  "@"
852
852
  ];
853
853
  const isWGSL = RegExp.prototype.test.bind(/\bfn\s+\w+\s*\(|\b(var|let)\s+\w+\s*[:=]/);
854
- const isFloat = RegExp.prototype.test.bind(/\.|[eEpP][-+]?\d|[fFhH]$/);
854
+ const isFloat = RegExp.prototype.test.bind(/^(\d+\.\d*|\d*\.\d+)([eEpP][-+]?\d+)?[fFhH]?$/);
855
+ const isInt = RegExp.prototype.test.bind(/^(0[xX][\w\d]+|\d+)[iIuU]?$/);
855
856
  const isBool = RegExp.prototype.test.bind(/^(true|false)$/);
856
857
  const ZERO = 48;
857
858
  const NINE = 57;
@@ -861,9 +862,6 @@ const LF = 10;
861
862
  const CR = 13;
862
863
  const TAB = 9;
863
864
  const SPACE = 32;
864
- const PLUS = 43;
865
- const MINUS = 45;
866
- const DOT = 46;
867
865
  const UNDERSCORE = 95;
868
866
  const SLASH = 47;
869
867
  const STAR = 42;
@@ -873,7 +871,6 @@ const isDigit = (c) => ZERO <= c && c <= NINE;
873
871
  const isAlpha = (c) => (c &= ~32, A <= c && c <= Z);
874
872
  const isLine = (c) => c === LF || c === CR;
875
873
  const isSpace = (c) => isLine(c) || c === TAB || c === SPACE;
876
- const isNumber = (c) => isAlpha(c) || isDigit(c) || c === PLUS || c === MINUS || c === DOT;
877
874
  const isIdent = (c) => isAlpha(c) || isDigit(c) || c === UNDERSCORE;
878
875
  const isMacro = (c) => c === HASH || c === AT;
879
876
  function tokenize(code, index = 0) {
@@ -888,7 +885,7 @@ function tokenize(code, index = 0) {
888
885
  value += code[index++];
889
886
  tokens.push({ type: "whitespace", value });
890
887
  } else if (isDigit(char)) {
891
- while (isNumber(code.charCodeAt(index)))
888
+ while (isFloat(value + code[index]) || isInt(value + code[index]))
892
889
  value += code[index++];
893
890
  if (isFloat(value))
894
891
  tokens.push({ type: "float", value });
@@ -925,7 +922,7 @@ const isSymbol = RegExp.prototype.test.bind(/[^\w\\]/);
925
922
  const isName = RegExp.prototype.test.bind(/^[_A-Za-z]/);
926
923
  const isStorage = RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/);
927
924
  function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), mangleExternals = false } = {}) {
928
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
925
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n;
929
926
  code = code.replace(/(^\s*#[^\\]*?)(\n|\/[\/\*])/gm, "$1\\$2");
930
927
  const exclude = new Set(mangleMap.values());
931
928
  const tokens = tokenize(code).filter((token) => token.type !== "whitespace" && token.type !== "comment");
@@ -949,8 +946,11 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
949
946
  // no-op
950
947
  !renamed && // Skip struct properties
951
948
  blockIndex == null && // Is declaration, reference, namespace, or comma-separated list
952
- (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))
949
+ (isName((_g = tokens[i - 1]) == null ? void 0 : _g.value) || // uniform Type { ... } name;
950
+ ((_h = tokens[i - 1]) == null ? void 0 : _h.value) === "}" && ((_i = tokens[i + 1]) == null ? void 0 : _i.value) === ";" || // float foo, bar;
951
+ ((_j = tokens[i - 1]) == null ? void 0 : _j.value) === "," || // fn (arg: type) -> void
952
+ ((_k = tokens[i + 1]) == null ? void 0 : _k.value) === ":") && // Skip shader externals when disabled
953
+ (mangleExternals || !isStorage((_l = tokens[i - 1]) == null ? void 0 : _l.value) && !isStorage((_m = tokens[i - 2]) == null ? void 0 : _m.value))
954
954
  ) {
955
955
  while (!renamed || exclude.has(renamed)) {
956
956
  renamed = "";
@@ -965,7 +965,7 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
965
965
  }
966
966
  minified += renamed != null ? renamed : token.value;
967
967
  } else {
968
- if (token.value === "#" && ((_l = tokens[i - 1]) == null ? void 0 : _l.value) !== "\\")
968
+ if (token.value === "#" && ((_n = tokens[i - 1]) == null ? void 0 : _n.value) !== "\\")
969
969
  minified += "\n#";
970
970
  else if (token.value === "\\")
971
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,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;AAGd,QACE,MAAM,SAAS;AAAA,IAEf,MAAM,UAAU,WACf,OAAO,WAAW,YAAY,SAAS,OAAO,OAAO,GAAG,MAAM,IAC/D;AACA,UAAI,UAAU,UAAU,IAAI,MAAM,KAAK;AACvC;AAAA;AAAA,QAEE,CAAC;AAAA,QAED,cAAc;AAAA,SAEb,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,KAAK,EAAG,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;;;;;;;"}
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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"}
package/dist/index.mjs CHANGED
@@ -849,7 +849,8 @@ const WGSL_SYMBOLS = [
849
849
  "@"
850
850
  ];
851
851
  const isWGSL = RegExp.prototype.test.bind(/\bfn\s+\w+\s*\(|\b(var|let)\s+\w+\s*[:=]/);
852
- const isFloat = RegExp.prototype.test.bind(/\.|[eEpP][-+]?\d|[fFhH]$/);
852
+ const isFloat = RegExp.prototype.test.bind(/^(\d+\.\d*|\d*\.\d+)([eEpP][-+]?\d+)?[fFhH]?$/);
853
+ const isInt = RegExp.prototype.test.bind(/^(0[xX][\w\d]+|\d+)[iIuU]?$/);
853
854
  const isBool = RegExp.prototype.test.bind(/^(true|false)$/);
854
855
  const ZERO = 48;
855
856
  const NINE = 57;
@@ -859,9 +860,6 @@ const LF = 10;
859
860
  const CR = 13;
860
861
  const TAB = 9;
861
862
  const SPACE = 32;
862
- const PLUS = 43;
863
- const MINUS = 45;
864
- const DOT = 46;
865
863
  const UNDERSCORE = 95;
866
864
  const SLASH = 47;
867
865
  const STAR = 42;
@@ -871,7 +869,6 @@ const isDigit = (c) => ZERO <= c && c <= NINE;
871
869
  const isAlpha = (c) => (c &= ~32, A <= c && c <= Z);
872
870
  const isLine = (c) => c === LF || c === CR;
873
871
  const isSpace = (c) => isLine(c) || c === TAB || c === SPACE;
874
- const isNumber = (c) => isAlpha(c) || isDigit(c) || c === PLUS || c === MINUS || c === DOT;
875
872
  const isIdent = (c) => isAlpha(c) || isDigit(c) || c === UNDERSCORE;
876
873
  const isMacro = (c) => c === HASH || c === AT;
877
874
  function tokenize(code, index = 0) {
@@ -886,7 +883,7 @@ function tokenize(code, index = 0) {
886
883
  value += code[index++];
887
884
  tokens.push({ type: "whitespace", value });
888
885
  } else if (isDigit(char)) {
889
- while (isNumber(code.charCodeAt(index)))
886
+ while (isFloat(value + code[index]) || isInt(value + code[index]))
890
887
  value += code[index++];
891
888
  if (isFloat(value))
892
889
  tokens.push({ type: "float", value });
@@ -923,7 +920,7 @@ const isSymbol = RegExp.prototype.test.bind(/[^\w\\]/);
923
920
  const isName = RegExp.prototype.test.bind(/^[_A-Za-z]/);
924
921
  const isStorage = RegExp.prototype.test.bind(/^(uniform|in|out|attribute|varying|,)$/);
925
922
  function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), mangleExternals = false } = {}) {
926
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
923
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n;
927
924
  code = code.replace(/(^\s*#[^\\]*?)(\n|\/[\/\*])/gm, "$1\\$2");
928
925
  const exclude = new Set(mangleMap.values());
929
926
  const tokens = tokenize(code).filter((token) => token.type !== "whitespace" && token.type !== "comment");
@@ -947,8 +944,11 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
947
944
  // no-op
948
945
  !renamed && // Skip struct properties
949
946
  blockIndex == null && // Is declaration, reference, namespace, or comma-separated list
950
- (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))
947
+ (isName((_g = tokens[i - 1]) == null ? void 0 : _g.value) || // uniform Type { ... } name;
948
+ ((_h = tokens[i - 1]) == null ? void 0 : _h.value) === "}" && ((_i = tokens[i + 1]) == null ? void 0 : _i.value) === ";" || // float foo, bar;
949
+ ((_j = tokens[i - 1]) == null ? void 0 : _j.value) === "," || // fn (arg: type) -> void
950
+ ((_k = tokens[i + 1]) == null ? void 0 : _k.value) === ":") && // Skip shader externals when disabled
951
+ (mangleExternals || !isStorage((_l = tokens[i - 1]) == null ? void 0 : _l.value) && !isStorage((_m = tokens[i - 2]) == null ? void 0 : _m.value))
952
952
  ) {
953
953
  while (!renamed || exclude.has(renamed)) {
954
954
  renamed = "";
@@ -963,7 +963,7 @@ function minify(code, { mangle = false, mangleMap = /* @__PURE__ */ new Map(), m
963
963
  }
964
964
  minified += renamed != null ? renamed : token.value;
965
965
  } else {
966
- if (token.value === "#" && ((_l = tokens[i - 1]) == null ? void 0 : _l.value) !== "\\")
966
+ if (token.value === "#" && ((_n = tokens[i - 1]) == null ? void 0 : _n.value) !== "\\")
967
967
  minified += "\n#";
968
968
  else if (token.value === "\\")
969
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;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,+CAA+C;AAC1F,MAAM,QAAQ,OAAO,UAAU,KAAK,KAAK,6BAA6B;AACtE,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,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,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;AACjB,aAAA,QAAQ,QAAQ,KAAK,KAAK,CAAC,KAAK,MAAM,QAAQ,KAAK,KAAK,CAAC;AAAG,iBAAS,KAAK,OAAO;AACxF,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;AChEA,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;AFvBH;AEyBE,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;AAGd,QACE,MAAM,SAAS;AAAA,IAEf,MAAM,UAAU,WACf,OAAO,WAAW,YAAY,SAAS,OAAO,OAAO,GAAG,MAAM,IAC/D;AACA,UAAI,UAAU,UAAU,IAAI,MAAM,KAAK;AACvC;AAAA;AAAA,QAEE,CAAC;AAAA,QAED,cAAc;AAAA,SAEb,QAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,KAAK;AAAA,UAEzB,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU,SAAO,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAAA,UAE1D,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAAA,UAEzB,YAAO,IAAI,CAAC,MAAZ,mBAAe,WAAU;AAAA,SAE1B,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,KAAK,EAAG,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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shaderkit",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "description": "Tools and IntelliSense for GLSL and WGSL.",
5
5
  "keywords": [
6
6
  "shaders",
package/src/minifier.ts CHANGED
@@ -64,7 +64,13 @@ export function minify(
64
64
  // Skip struct properties
65
65
  blockIndex == null &&
66
66
  // Is declaration, reference, namespace, or comma-separated list
67
- (isName(tokens[i - 1]?.value) || /}|,/.test(tokens[i - 1]?.value) || tokens[i + 1]?.value === ':') &&
67
+ (isName(tokens[i - 1]?.value) ||
68
+ // uniform Type { ... } name;
69
+ (tokens[i - 1]?.value === '}' && tokens[i + 1]?.value === ';') ||
70
+ // float foo, bar;
71
+ tokens[i - 1]?.value === ',' ||
72
+ // fn (arg: type) -> void
73
+ tokens[i + 1]?.value === ':') &&
68
74
  // Skip shader externals when disabled
69
75
  (mangleExternals || (!isStorage(tokens[i - 1]?.value) && !isStorage(tokens[i - 2]?.value)))
70
76
  ) {
package/src/tokenizer.ts CHANGED
@@ -10,7 +10,8 @@ export interface Token<T = TokenType, V = string> {
10
10
  // Checks for WGSL-specific `fn foo(`, `var bar =`, and `let baz =`
11
11
  const isWGSL = RegExp.prototype.test.bind(/\bfn\s+\w+\s*\(|\b(var|let)\s+\w+\s*[:=]/)
12
12
 
13
- const isFloat = RegExp.prototype.test.bind(/\.|[eEpP][-+]?\d|[fFhH]$/)
13
+ const isFloat = RegExp.prototype.test.bind(/^(\d+\.\d*|\d*\.\d+)([eEpP][-+]?\d+)?[fFhH]?$/)
14
+ const isInt = RegExp.prototype.test.bind(/^(0[xX][\w\d]+|\d+)[iIuU]?$/)
14
15
  const isBool = RegExp.prototype.test.bind(/^(true|false)$/)
15
16
 
16
17
  const ZERO = 48
@@ -21,9 +22,6 @@ const LF = 10
21
22
  const CR = 13
22
23
  const TAB = 9
23
24
  const SPACE = 32
24
- const PLUS = 43
25
- const MINUS = 45
26
- const DOT = 46
27
25
  const UNDERSCORE = 95
28
26
  const SLASH = 47
29
27
  const STAR = 42
@@ -34,7 +32,6 @@ const isDigit = (c: number) => ZERO <= c && c <= NINE
34
32
  const isAlpha = (c: number) => ((c &= ~32), A <= c && c <= Z)
35
33
  const isLine = (c: number) => c === LF || c === CR
36
34
  const isSpace = (c: number) => isLine(c) || c === TAB || c === SPACE
37
- const isNumber = (c: number) => isAlpha(c) || isDigit(c) || c === PLUS || c === MINUS || c === DOT
38
35
  const isIdent = (c: number) => isAlpha(c) || isDigit(c) || c === UNDERSCORE
39
36
  const isMacro = (c: number) => c === HASH || c === AT
40
37
 
@@ -54,7 +51,7 @@ export function tokenize(code: string, index: number = 0): Token[] {
54
51
  while (isSpace(code.charCodeAt(index))) value += code[index++]
55
52
  tokens.push({ type: 'whitespace', value })
56
53
  } else if (isDigit(char)) {
57
- while (isNumber(code.charCodeAt(index))) value += code[index++]
54
+ while (isFloat(value + code[index]) || isInt(value + code[index])) value += code[index++]
58
55
  if (isFloat(value)) tokens.push({ type: 'float', value })
59
56
  else tokens.push({ type: 'int', value })
60
57
  } else if (isIdent(char)) {