xmlui 0.12.19 → 0.12.21

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.
Files changed (37) hide show
  1. package/dist/lib/{index-WVT6bIgM.js → index-CznbWBUF.js} +3224 -4066
  2. package/dist/lib/index.css +1 -1
  3. package/dist/lib/{initMock-r2IRBsLf.js → initMock-Dj__hABf.js} +2 -2
  4. package/dist/lib/{parser-DpwXEUNb.js → parser-zOoMLvLx.js} +120 -139
  5. package/dist/lib/testing.d.ts +18 -19
  6. package/dist/lib/testing.js +2 -2
  7. package/dist/lib/{xmlui-parser-Cs8kB0VK.js → xmlui-parser-CtU8O3Av.js} +43 -19
  8. package/dist/lib/xmlui-parser.d.ts +23 -19
  9. package/dist/lib/xmlui-parser.js +2 -2
  10. package/dist/lib/{xmlui-serializer-3MPLSsOp.js → xmlui-serializer-C-Iuczzr.js} +9 -8
  11. package/dist/lib/xmlui.d.ts +130 -125
  12. package/dist/lib/xmlui.js +38 -36
  13. package/dist/metadata/TextBox-B-GWiq0J.cjs +1 -0
  14. package/dist/metadata/{TextBox-CwicjBJI.js → TextBox-DHSTy0g0.js} +3407 -4256
  15. package/dist/metadata/behaviors.cjs +1 -1
  16. package/dist/metadata/behaviors.js +1 -1
  17. package/dist/metadata/{initMock-BMq6JN4I.js → initMock-SQIcDMzP.js} +1 -1
  18. package/dist/metadata/{initMock-BKBkbEgr.cjs → initMock-wSFvfKcr.cjs} +1 -1
  19. package/dist/metadata/metadata-utils.cjs +1 -1
  20. package/dist/metadata/metadata-utils.js +1 -1
  21. package/dist/metadata/transform-BOf-UbgP.cjs +1 -0
  22. package/dist/metadata/{transform-D0SWbm8g.js → transform-fGDqiHwH.js} +120 -139
  23. package/dist/metadata/xmlui-metadata.cjs +1 -1
  24. package/dist/metadata/xmlui-metadata.js +12 -8
  25. package/dist/metadata/xmlui.css +2 -2
  26. package/dist/nodejs/bin/index.mjs +63 -79
  27. package/dist/nodejs/index.cjs +63 -79
  28. package/dist/nodejs/index.mjs +63 -79
  29. package/dist/nodejs/server.cjs +1886 -1053
  30. package/dist/nodejs/server.mjs +1886 -1053
  31. package/dist/nodejs/vite-xmlui-plugin.cjs +63 -79
  32. package/dist/nodejs/vite-xmlui-plugin.mjs +63 -79
  33. package/dist/standalone/xmlui-standalone.es.d.ts +192 -179
  34. package/dist/standalone/xmlui-standalone.umd.js +11 -11
  35. package/package.json +1 -1
  36. package/dist/metadata/TextBox-C-4gnBpw.cjs +0 -1
  37. package/dist/metadata/transform-CkTQ-Bfe.cjs +0 -1
@@ -1202,23 +1202,23 @@ let TokenType = /* @__PURE__ */ function(TokenType) {
1202
1202
  TokenType[TokenType["SignedShiftRight"] = 55] = "SignedShiftRight";
1203
1203
  TokenType[TokenType["Dot"] = 56] = "Dot";
1204
1204
  TokenType[TokenType["Spread"] = 57] = "Spread";
1205
- TokenType[TokenType["Global"] = 58] = "Global";
1206
- TokenType[TokenType["Backtick"] = 59] = "Backtick";
1207
- TokenType[TokenType["DollarLBrace"] = 60] = "DollarLBrace";
1208
- TokenType[TokenType["Arrow"] = 61] = "Arrow";
1209
- TokenType[TokenType["DecimalLiteral"] = 62] = "DecimalLiteral";
1210
- TokenType[TokenType["HexadecimalLiteral"] = 63] = "HexadecimalLiteral";
1211
- TokenType[TokenType["BinaryLiteral"] = 64] = "BinaryLiteral";
1212
- TokenType[TokenType["RealLiteral"] = 65] = "RealLiteral";
1213
- TokenType[TokenType["StringLiteral"] = 66] = "StringLiteral";
1214
- TokenType[TokenType["Infinity"] = 67] = "Infinity";
1215
- TokenType[TokenType["NaN"] = 68] = "NaN";
1216
- TokenType[TokenType["True"] = 69] = "True";
1217
- TokenType[TokenType["False"] = 70] = "False";
1218
- TokenType[TokenType["Typeof"] = 71] = "Typeof";
1219
- TokenType[TokenType["Null"] = 72] = "Null";
1220
- TokenType[TokenType["Undefined"] = 73] = "Undefined";
1221
- TokenType[TokenType["In"] = 74] = "In";
1205
+ TokenType[TokenType["Backtick"] = 58] = "Backtick";
1206
+ TokenType[TokenType["DollarLBrace"] = 59] = "DollarLBrace";
1207
+ TokenType[TokenType["Arrow"] = 60] = "Arrow";
1208
+ TokenType[TokenType["DecimalLiteral"] = 61] = "DecimalLiteral";
1209
+ TokenType[TokenType["HexadecimalLiteral"] = 62] = "HexadecimalLiteral";
1210
+ TokenType[TokenType["BinaryLiteral"] = 63] = "BinaryLiteral";
1211
+ TokenType[TokenType["RealLiteral"] = 64] = "RealLiteral";
1212
+ TokenType[TokenType["StringLiteral"] = 65] = "StringLiteral";
1213
+ TokenType[TokenType["Infinity"] = 66] = "Infinity";
1214
+ TokenType[TokenType["NaN"] = 67] = "NaN";
1215
+ TokenType[TokenType["True"] = 68] = "True";
1216
+ TokenType[TokenType["False"] = 69] = "False";
1217
+ TokenType[TokenType["Typeof"] = 70] = "Typeof";
1218
+ TokenType[TokenType["Null"] = 71] = "Null";
1219
+ TokenType[TokenType["Undefined"] = 72] = "Undefined";
1220
+ TokenType[TokenType["In"] = 73] = "In";
1221
+ TokenType[TokenType["Instanceof"] = 74] = "Instanceof";
1222
1222
  TokenType[TokenType["Let"] = 75] = "Let";
1223
1223
  TokenType[TokenType["Const"] = 76] = "Const";
1224
1224
  TokenType[TokenType["Var"] = 77] = "Var";
@@ -1272,48 +1272,47 @@ var LexerPhase = /* @__PURE__ */ function(LexerPhase) {
1272
1272
  LexerPhase[LexerPhase["IdTail"] = 17] = "IdTail";
1273
1273
  LexerPhase[LexerPhase["Dot"] = 18] = "Dot";
1274
1274
  LexerPhase[LexerPhase["DotDot"] = 19] = "DotDot";
1275
- LexerPhase[LexerPhase["Colon"] = 20] = "Colon";
1276
- LexerPhase[LexerPhase["Zero"] = 21] = "Zero";
1277
- LexerPhase[LexerPhase["QuestionMark"] = 22] = "QuestionMark";
1278
- LexerPhase[LexerPhase["HexaFirst"] = 23] = "HexaFirst";
1279
- LexerPhase[LexerPhase["HexaTail"] = 24] = "HexaTail";
1280
- LexerPhase[LexerPhase["BinaryFirst"] = 25] = "BinaryFirst";
1281
- LexerPhase[LexerPhase["BinaryTail"] = 26] = "BinaryTail";
1282
- LexerPhase[LexerPhase["DecimalOrReal"] = 27] = "DecimalOrReal";
1283
- LexerPhase[LexerPhase["RealFractionalFirst"] = 28] = "RealFractionalFirst";
1284
- LexerPhase[LexerPhase["RealFractionalTail"] = 29] = "RealFractionalTail";
1285
- LexerPhase[LexerPhase["RealExponent"] = 30] = "RealExponent";
1286
- LexerPhase[LexerPhase["RealExponentSign"] = 31] = "RealExponentSign";
1287
- LexerPhase[LexerPhase["RealExponentTail"] = 32] = "RealExponentTail";
1288
- LexerPhase[LexerPhase["StringTemplateLiteralBackSlash"] = 33] = "StringTemplateLiteralBackSlash";
1289
- LexerPhase[LexerPhase["StringTemplateLiteral"] = 34] = "StringTemplateLiteral";
1290
- LexerPhase[LexerPhase["String"] = 35] = "String";
1291
- LexerPhase[LexerPhase["StringBackSlash"] = 36] = "StringBackSlash";
1292
- LexerPhase[LexerPhase["StringHexa1"] = 37] = "StringHexa1";
1293
- LexerPhase[LexerPhase["StringHexa2"] = 38] = "StringHexa2";
1294
- LexerPhase[LexerPhase["StringUHexa1"] = 39] = "StringUHexa1";
1295
- LexerPhase[LexerPhase["StringUHexa2"] = 40] = "StringUHexa2";
1296
- LexerPhase[LexerPhase["StringUHexa3"] = 41] = "StringUHexa3";
1297
- LexerPhase[LexerPhase["StringUHexa4"] = 42] = "StringUHexa4";
1298
- LexerPhase[LexerPhase["StringUcp1"] = 43] = "StringUcp1";
1299
- LexerPhase[LexerPhase["StringUcp2"] = 44] = "StringUcp2";
1300
- LexerPhase[LexerPhase["StringUcp3"] = 45] = "StringUcp3";
1301
- LexerPhase[LexerPhase["StringUcp4"] = 46] = "StringUcp4";
1302
- LexerPhase[LexerPhase["StringUcp5"] = 47] = "StringUcp5";
1303
- LexerPhase[LexerPhase["StringUcp6"] = 48] = "StringUcp6";
1304
- LexerPhase[LexerPhase["StringUcpTail"] = 49] = "StringUcpTail";
1305
- LexerPhase[LexerPhase["Exponent"] = 50] = "Exponent";
1306
- LexerPhase[LexerPhase["Plus"] = 51] = "Plus";
1307
- LexerPhase[LexerPhase["Minus"] = 52] = "Minus";
1308
- LexerPhase[LexerPhase["Divide"] = 53] = "Divide";
1309
- LexerPhase[LexerPhase["Remainder"] = 54] = "Remainder";
1310
- LexerPhase[LexerPhase["ShiftLeft"] = 55] = "ShiftLeft";
1311
- LexerPhase[LexerPhase["ShiftRight"] = 56] = "ShiftRight";
1312
- LexerPhase[LexerPhase["LogicalAnd"] = 57] = "LogicalAnd";
1313
- LexerPhase[LexerPhase["BitwiseXor"] = 58] = "BitwiseXor";
1314
- LexerPhase[LexerPhase["LogicalOr"] = 59] = "LogicalOr";
1315
- LexerPhase[LexerPhase["NullCoalesce"] = 60] = "NullCoalesce";
1316
- LexerPhase[LexerPhase["RegEx"] = 61] = "RegEx";
1275
+ LexerPhase[LexerPhase["Zero"] = 20] = "Zero";
1276
+ LexerPhase[LexerPhase["QuestionMark"] = 21] = "QuestionMark";
1277
+ LexerPhase[LexerPhase["HexaFirst"] = 22] = "HexaFirst";
1278
+ LexerPhase[LexerPhase["HexaTail"] = 23] = "HexaTail";
1279
+ LexerPhase[LexerPhase["BinaryFirst"] = 24] = "BinaryFirst";
1280
+ LexerPhase[LexerPhase["BinaryTail"] = 25] = "BinaryTail";
1281
+ LexerPhase[LexerPhase["DecimalOrReal"] = 26] = "DecimalOrReal";
1282
+ LexerPhase[LexerPhase["RealFractionalFirst"] = 27] = "RealFractionalFirst";
1283
+ LexerPhase[LexerPhase["RealFractionalTail"] = 28] = "RealFractionalTail";
1284
+ LexerPhase[LexerPhase["RealExponent"] = 29] = "RealExponent";
1285
+ LexerPhase[LexerPhase["RealExponentSign"] = 30] = "RealExponentSign";
1286
+ LexerPhase[LexerPhase["RealExponentTail"] = 31] = "RealExponentTail";
1287
+ LexerPhase[LexerPhase["StringTemplateLiteralBackSlash"] = 32] = "StringTemplateLiteralBackSlash";
1288
+ LexerPhase[LexerPhase["StringTemplateLiteral"] = 33] = "StringTemplateLiteral";
1289
+ LexerPhase[LexerPhase["String"] = 34] = "String";
1290
+ LexerPhase[LexerPhase["StringBackSlash"] = 35] = "StringBackSlash";
1291
+ LexerPhase[LexerPhase["StringHexa1"] = 36] = "StringHexa1";
1292
+ LexerPhase[LexerPhase["StringHexa2"] = 37] = "StringHexa2";
1293
+ LexerPhase[LexerPhase["StringUHexa1"] = 38] = "StringUHexa1";
1294
+ LexerPhase[LexerPhase["StringUHexa2"] = 39] = "StringUHexa2";
1295
+ LexerPhase[LexerPhase["StringUHexa3"] = 40] = "StringUHexa3";
1296
+ LexerPhase[LexerPhase["StringUHexa4"] = 41] = "StringUHexa4";
1297
+ LexerPhase[LexerPhase["StringUcp1"] = 42] = "StringUcp1";
1298
+ LexerPhase[LexerPhase["StringUcp2"] = 43] = "StringUcp2";
1299
+ LexerPhase[LexerPhase["StringUcp3"] = 44] = "StringUcp3";
1300
+ LexerPhase[LexerPhase["StringUcp4"] = 45] = "StringUcp4";
1301
+ LexerPhase[LexerPhase["StringUcp5"] = 46] = "StringUcp5";
1302
+ LexerPhase[LexerPhase["StringUcp6"] = 47] = "StringUcp6";
1303
+ LexerPhase[LexerPhase["StringUcpTail"] = 48] = "StringUcpTail";
1304
+ LexerPhase[LexerPhase["Exponent"] = 49] = "Exponent";
1305
+ LexerPhase[LexerPhase["Plus"] = 50] = "Plus";
1306
+ LexerPhase[LexerPhase["Minus"] = 51] = "Minus";
1307
+ LexerPhase[LexerPhase["Divide"] = 52] = "Divide";
1308
+ LexerPhase[LexerPhase["Remainder"] = 53] = "Remainder";
1309
+ LexerPhase[LexerPhase["ShiftLeft"] = 54] = "ShiftLeft";
1310
+ LexerPhase[LexerPhase["ShiftRight"] = 55] = "ShiftRight";
1311
+ LexerPhase[LexerPhase["LogicalAnd"] = 56] = "LogicalAnd";
1312
+ LexerPhase[LexerPhase["BitwiseXor"] = 57] = "BitwiseXor";
1313
+ LexerPhase[LexerPhase["LogicalOr"] = 58] = "LogicalOr";
1314
+ LexerPhase[LexerPhase["NullCoalesce"] = 59] = "NullCoalesce";
1315
+ LexerPhase[LexerPhase["RegEx"] = 60] = "RegEx";
1317
1316
  return LexerPhase;
1318
1317
  }(LexerPhase || {});
1319
1318
  /**
@@ -1485,10 +1484,7 @@ var Lexer = class {
1485
1484
  case ",": return completeToken(TokenType.Comma);
1486
1485
  case "(": return completeToken(TokenType.LParent);
1487
1486
  case ")": return completeToken(TokenType.RParent);
1488
- case ":":
1489
- phase = LexerPhase.Colon;
1490
- tokenType = TokenType.Colon;
1491
- break;
1487
+ case ":": return completeToken(TokenType.Colon);
1492
1488
  case "`": return completeToken(TokenType.Backtick);
1493
1489
  case "[": return completeToken(TokenType.LSquare);
1494
1490
  case "]": return completeToken(TokenType.RSquare);
@@ -1551,7 +1547,6 @@ var Lexer = class {
1551
1547
  case LexerPhase.IdTail:
1552
1548
  if (!isIdContinuation(ch)) return makeToken();
1553
1549
  break;
1554
- case LexerPhase.Colon: return ch === ":" ? completeToken(TokenType.Global) : makeToken();
1555
1550
  case LexerPhase.Slash:
1556
1551
  if (ch === "*") phase = LexerPhase.BlockCommentTrail1;
1557
1552
  else if (ch === "/") {
@@ -1962,6 +1957,7 @@ resolverHash.set("false", TokenType.False);
1962
1957
  resolverHash.set("undefined", TokenType.Undefined);
1963
1958
  resolverHash.set("null", TokenType.Null);
1964
1959
  resolverHash.set("in", TokenType.In);
1960
+ resolverHash.set("instanceof", TokenType.Instanceof);
1965
1961
  resolverHash.set("let", TokenType.Let);
1966
1962
  resolverHash.set("const", TokenType.Const);
1967
1963
  resolverHash.set("var", TokenType.Var);
@@ -2127,7 +2123,6 @@ const tokenTraits = {
2127
2123
  expressionStart: true,
2128
2124
  isPropLiteral: true
2129
2125
  },
2130
- [TokenType.Global]: { expressionStart: true },
2131
2126
  [TokenType.DecimalLiteral]: {
2132
2127
  expressionStart: true,
2133
2128
  isPropLiteral: true
@@ -2182,6 +2177,7 @@ const tokenTraits = {
2182
2177
  keywordLike: true
2183
2178
  },
2184
2179
  [TokenType.In]: { keywordLike: true },
2180
+ [TokenType.Instanceof]: { keywordLike: true },
2185
2181
  [TokenType.Let]: { keywordLike: true },
2186
2182
  [TokenType.Const]: { keywordLike: true },
2187
2183
  [TokenType.Var]: { keywordLike: true },
@@ -3742,7 +3738,7 @@ var Parser = class {
3742
3738
  }
3743
3739
  /**
3744
3740
  * relOrInExpr
3745
- * : shiftExpr ( ( "<" | "<=" | ">" | ">=", "in" ) shiftExpr )?
3741
+ * : shiftExpr ( ( "<" | "<=" | ">" | ">=", "in", "instanceof" ) shiftExpr )?
3746
3742
  * ;
3747
3743
  */
3748
3744
  parseRelOrInExpr() {
@@ -3750,7 +3746,7 @@ var Parser = class {
3750
3746
  let leftExpr = this.parseShiftExpr();
3751
3747
  if (!leftExpr) return null;
3752
3748
  let opType;
3753
- while (opType = this.skipTokens(TokenType.LessThan, TokenType.LessThanOrEqual, TokenType.GreaterThan, TokenType.GreaterThanOrEqual, TokenType.In)) {
3749
+ while (opType = this.skipTokens(TokenType.LessThan, TokenType.LessThanOrEqual, TokenType.GreaterThan, TokenType.GreaterThanOrEqual, TokenType.In, TokenType.Instanceof)) {
3754
3750
  const rightExpr = this.parseShiftExpr();
3755
3751
  if (!rightExpr) {
3756
3752
  this.reportError("W001");
@@ -4138,18 +4134,6 @@ var Parser = class {
4138
4134
  const idToken = this._lexer.get();
4139
4135
  return this.createExpressionNode(T_IDENTIFIER, { name: idToken.text }, idToken, idToken);
4140
4136
  }
4141
- case TokenType.Global: {
4142
- this._lexer.get();
4143
- const idToken = this._lexer.get();
4144
- if (idToken.type !== TokenType.Identifier) {
4145
- this.reportError("W003");
4146
- return null;
4147
- }
4148
- return this.createExpressionNode(T_IDENTIFIER, {
4149
- name: idToken.text,
4150
- isGlobal: true
4151
- }, idToken, idToken);
4152
- }
4153
4137
  case TokenType.Backtick: return this.parseTemplateLiteral();
4154
4138
  case TokenType.False:
4155
4139
  case TokenType.True: