@aiot-toolkit/parser 2.0.5-widget-provider-beta.2 → 2.0.5

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 (49) hide show
  1. package/README.md +11 -11
  2. package/lib/utils/ParserUtil.js +15 -15
  3. package/lib/ux/config/ExtensionConfig.js +2 -2
  4. package/lib/ux/config/FeatureConfig.js +19 -19
  5. package/lib/ux/config/vela/ElementConfig.js +0 -8
  6. package/lib/ux/config/vela/StyleAttributeConfig.js +134 -88
  7. package/lib/ux/enum/StyleSelectorType.js +6 -6
  8. package/lib/ux/enum/TemplateNodeType.js +2 -2
  9. package/lib/ux/enum/android/StyleSelectorName.js +2 -2
  10. package/lib/ux/interface/IUxAst.d.ts +2 -0
  11. package/lib/ux/parser/ScriptParser.js +2 -2
  12. package/lib/ux/parser/StyleParser.js +79 -72
  13. package/lib/ux/parser/TemplateValueParser.js +49 -49
  14. package/lib/ux/parser/UxParser.js +18 -12
  15. package/lib/ux/translate/android/StyleToTypescript.js +51 -51
  16. package/lib/ux/translate/android/TemplateToTypescript.js +51 -51
  17. package/lib/ux/translate/android/UxToTypescript.js +14 -14
  18. package/lib/ux/translate/android/attributeTranslate/ForTranslate.js +17 -17
  19. package/lib/ux/translate/android/attributeTranslate/IfTranslate.js +9 -9
  20. package/lib/ux/translate/vela/ScriptToTypescript.js +10 -10
  21. package/lib/ux/translate/vela/StyleToTypescript.js +10 -10
  22. package/lib/ux/translate/vela/TemplateToTypescript.js +74 -74
  23. package/lib/ux/translate/vela/TranslateCache.js +2 -2
  24. package/lib/ux/translate/vela/UxToTypescript.js +6 -6
  25. package/lib/ux/translate/vela/VelaContext.js +2 -2
  26. package/lib/ux/translate/vela/plugins/e2e.js +63 -62
  27. package/lib/ux/translate/vela/plugins/startPage.js +1 -1
  28. package/lib/ux/translate/vela/protobuf/BinaryPlugin.js +172 -172
  29. package/lib/ux/translate/vela/protobuf/protobuf.js +235 -235
  30. package/lib/ux/translate/vela/protobuf/protobufControl.js +159 -159
  31. package/lib/ux/translate/vela/protobuf/vdom_pb.js +2374 -2374
  32. package/lib/ux/translate/vela/runtime/velaTestLibrary.js +104 -104
  33. package/lib/ux/translate/vela/utils/AttributeConfig.js +15 -15
  34. package/lib/ux/translate/vela/utils/ExtendedBoxStyle.js +38 -38
  35. package/lib/ux/translate/vela/utils/SourceMapUtil.d.ts +0 -4
  36. package/lib/ux/translate/vela/utils/SourceMapUtil.js +30 -36
  37. package/lib/ux/translate/vela/utils/TemplateUtil.js +180 -180
  38. package/lib/ux/translate/vela/wrap/CbTranslate.js +8 -8
  39. package/lib/ux/translate/vela/wrap/CfTranslate.js +14 -14
  40. package/lib/ux/translate/vela/wrap/CiTranslate.js +11 -11
  41. package/lib/ux/utils/BabelUtil.js +35 -35
  42. package/lib/ux/utils/ElementConfigUtil.js +24 -24
  43. package/lib/ux/utils/StyleMapUtil.js +15 -15
  44. package/lib/ux/utils/StyleUtil.d.ts +1 -1
  45. package/lib/ux/utils/StyleUtil.js +192 -248
  46. package/lib/ux/utils/UxUtil.js +32 -32
  47. package/lib/ux/validate/ElementValidate.js +2 -2
  48. package/lib/ux/validate/UxFileValidate.js +2 -2
  49. package/package.json +4 -4
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # `parser`
2
-
3
- > TODO: description
4
-
5
- ## Usage
6
-
7
- ```
8
- const parser = require('parser');
9
-
10
- // TODO: DEMONSTRATE API
11
- ```
1
+ # `parser`
2
+
3
+ > TODO: description
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ const parser = require('parser');
9
+
10
+ // TODO: DEMONSTRATE API
11
+ ```
@@ -5,15 +5,15 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _tsMorph = require("ts-morph");
8
- /**
9
- * ParserUtil
8
+ /**
9
+ * ParserUtil
10
10
  */
11
11
  class ParserUtil {
12
- /**
13
- * 根据偏移列表,查找 pos 对应的偏移量
14
- * @param pos
15
- * @param offsetList
16
- * @returns
12
+ /**
13
+ * 根据偏移列表,查找 pos 对应的偏移量
14
+ * @param pos
15
+ * @param offsetList
16
+ * @returns
17
17
  */
18
18
  static getOffsetPos(pos, offsetList) {
19
19
  if (!offsetList.length) {
@@ -26,14 +26,14 @@ class ParserUtil {
26
26
  return item ? item.offset : 0;
27
27
  }
28
28
 
29
- /**
30
- * 获取指定位置的列偏移量
31
- *
32
- * 偏移量= 从offsetList 中获取 (在同一行 且 位置小于 position ) 的项,偏移量进行累加。
33
- *
34
- * 确保同一行有多个偏移项也可获取正确的偏移量
35
- * @param position
36
- * @param offsetList
29
+ /**
30
+ * 获取指定位置的列偏移量
31
+ *
32
+ * 偏移量= 从offsetList 中获取 (在同一行 且 位置小于 position ) 的项,偏移量进行累加。
33
+ *
34
+ * 确保同一行有多个偏移项也可获取正确的偏移量
35
+ * @param position
36
+ * @param offsetList
37
37
  */
38
38
  static getOffsetColumn(position, offsetList) {
39
39
  if (!offsetList?.length) {
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- /**
8
- * ExtensionConfig
7
+ /**
8
+ * ExtensionConfig
9
9
  */
10
10
  class ExtensionConfig {
11
11
  static UX = '.ux';
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- /**
8
- * FeatureConfig
7
+ /**
8
+ * FeatureConfig
9
9
  */
10
- /**
11
- * FeatureConfig
10
+ /**
11
+ * FeatureConfig
12
12
  */
13
13
  class FeatureConfig {
14
14
  SYSTEM = 'system';
@@ -18,14 +18,14 @@ class FeatureConfig {
18
18
  SYSTEM_FEATURE = ['app', 'model', 'router', 'configuration', 'alarm', 'audio', 'barcode', 'bluetooth', 'brightness', 'calendar', 'cipher', 'clipboard', 'contact', 'device', 'fetch', 'file', 'geolocation', 'image', 'keyguard', 'media', 'network', 'notification', 'package', 'prompt', 'record', 'request', 'resident', 'sensor', 'share', 'shortcut', 'sms', 'storage', 'vibrator', 'volume', 'websocketfactory', 'webview', 'battery', 'wifi', 'mediaquery', 'zip', 'telecom', 'decode', 'uploadtask', 'downloadtask', 'interconnect', 'crypto', 'exchange', 'internal.message', 'microphone', 'internal.ota', 'internal.power', 'internal.settings', 'internal.micamera', 'serviceUtil', 'event'].map(item => `${this.SYSTEM}.${item}`);
19
19
  SERVICE_FEATURE = ['account', 'alipay', 'ad', 'wxaccount', 'qqaccount', 'wbaccount', 'exchange', 'health', 'pay', 'push', 'qqaccount', 'share', 'stats', 'wbaccount', 'wxaccount', 'wxpay', 'biometriverify', 'texttoaudio', 'wechat', 'internal.audiosync', 'internal.audiofocus', 'internal.alarm', 'mihome', 'bootstrap', 'miai'].map(item => `${this.SERVICE}.${item}`);
20
20
 
21
- /**
22
- * 是否为系统模块
23
- *
24
- * 以特定名称开头的为系统模块
25
- *
26
- * @example isSystemModule("@system.route")
27
- * @param modulePath
28
- * @returns
21
+ /**
22
+ * 是否为系统模块
23
+ *
24
+ * 以特定名称开头的为系统模块
25
+ *
26
+ * @example isSystemModule("@system.route")
27
+ * @param modulePath
28
+ * @returns
29
29
  */
30
30
  isSystemModule(modulePath) {
31
31
  if (!modulePath) {
@@ -35,13 +35,13 @@ class FeatureConfig {
35
35
  return name.findIndex(item => modulePath.startsWith(`@${item}`)) >= 0;
36
36
  }
37
37
 
38
- /**
39
- * 是否为有效的系统模块
40
- *
41
- * 有效系统模块指:显式配置的模块
42
- *
43
- * @param modulePath
44
- * @returns
38
+ /**
39
+ * 是否为有效的系统模块
40
+ *
41
+ * 有效系统模块指:显式配置的模块
42
+ *
43
+ * @param modulePath
44
+ * @returns
45
45
  */
46
46
  isEffectSystemModule(modulePath) {
47
47
  if (!modulePath) {
@@ -798,14 +798,6 @@ const elementConfig = {
798
798
  enums: ['none', 'forwards']
799
799
  }
800
800
  }
801
- },
802
- 'widget-container': {
803
- events: ['load'],
804
- attributes: {
805
- uri: {},
806
- size: {},
807
- uidata: {}
808
- }
809
801
  }
810
802
  }
811
803
  };
@@ -333,7 +333,10 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
333
333
  // 按照一般转换即可,无需额外转换
334
334
  },
335
335
  zIndex: {
336
- // csstree-validator可校验
336
+ // csstree-validator可校验,但与1.0校验原理不同,目前按照1.0逻辑进行校验
337
+ validate: sourceNode => {
338
+ return validIntegerNode(sourceNode);
339
+ }
337
340
  // 按照一般转换即可,无需额外转换
338
341
  },
339
342
  // common
@@ -343,10 +346,10 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
343
346
  },
344
347
  background: {
345
348
  // csstree-validator可校验,但与1.0校验原理不同,目前按照1.0逻辑进行校验
346
- /**
347
- * 验证属性值每个参数的格式
348
- * @param sourceNode
349
- * @returns
349
+ /**
350
+ * 验证属性值每个参数的格式
351
+ * @param sourceNode
352
+ * @returns
350
353
  */
351
354
  validate: sourceNode => {
352
355
  let validateInfo = {
@@ -357,11 +360,11 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
357
360
  value,
358
361
  name: attributeName
359
362
  } = sourceNode;
360
- /**
361
- * 创建线性渐变背景的函数
362
- * 参数分为两类:direction渐变的方向、color-stop渐变颜色的位置
363
- * @param valueStr
364
- * @returns
363
+ /**
364
+ * 创建线性渐变背景的函数
365
+ * 参数分为两类:direction渐变的方向、color-stop渐变颜色的位置
366
+ * @param valueStr
367
+ * @returns
365
368
  */
366
369
  const validLinearGradient = sourceNode => {
367
370
  let validInfo = {
@@ -502,23 +505,23 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
502
505
  }
503
506
  return validInfo;
504
507
  };
505
- /**
506
- * 创建径向渐变背景的函数
507
- * 参数分为四类:
508
- * 1. sharp 圆的类型,可选参数
509
- * 1.1 ellipse
510
- * 1.2 circle
511
- * 2. size 渐变尺寸,可选参数
512
- * 2.1 [farthest-corner、closest-side、closest-corner、farthest-side]
513
- * 2.2 50% 60px
514
- * 2.3 30%
515
- * 3. position 渐变位置,可选参数
516
- * 3.1 at [center、top、left、right、bottom]
517
- * 3.2 at 30% 20%
518
- * 3.3 at center top
519
- * 4. color 渐变颜色
520
- * @param sourceNode
521
- * @returns
508
+ /**
509
+ * 创建径向渐变背景的函数
510
+ * 参数分为四类:
511
+ * 1. sharp 圆的类型,可选参数
512
+ * 1.1 ellipse
513
+ * 1.2 circle
514
+ * 2. size 渐变尺寸,可选参数
515
+ * 2.1 [farthest-corner、closest-side、closest-corner、farthest-side]
516
+ * 2.2 50% 60px
517
+ * 2.3 30%
518
+ * 3. position 渐变位置,可选参数
519
+ * 3.1 at [center、top、left、right、bottom]
520
+ * 3.2 at 30% 20%
521
+ * 3.3 at center top
522
+ * 4. color 渐变颜色
523
+ * @param sourceNode
524
+ * @returns
522
525
  */
523
526
  const validRadialGradient = sourceNode => {
524
527
  let validInfo = {
@@ -837,17 +840,17 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
837
840
  // 转换扩展,待实现translate
838
841
  },
839
842
  display: {
840
- /**
841
- * sourceNode 示例:
842
- * {
843
- * name: 'display',
844
- * value: [{
845
- * unit: '',
846
- * value: 'flex'
847
- * }]
848
- * }
849
- * @param sourceNode
850
- * @returns
843
+ /**
844
+ * sourceNode 示例:
845
+ * {
846
+ * name: 'display',
847
+ * value: [{
848
+ * unit: '',
849
+ * value: 'flex'
850
+ * }]
851
+ * }
852
+ * @param sourceNode
853
+ * @returns
851
854
  */
852
855
  validate: function (sourceNode) {
853
856
  const supportValues = ['flex', 'none'];
@@ -1320,10 +1323,10 @@ const STYLE_ATTRIBUTE_CONFIG = exports.STYLE_ATTRIBUTE_CONFIG = {
1320
1323
  // 按照一般转换即可,无需额外转换
1321
1324
  }
1322
1325
  };
1323
- /**
1324
- * 校验节点的长度值
1325
- * @param sourceNode
1326
- * @returns
1326
+ /**
1327
+ * 校验节点的长度值
1328
+ * @param sourceNode
1329
+ * @returns
1327
1330
  */
1328
1331
  function validateLengthNode(sourceNode) {
1329
1332
  const {
@@ -1349,10 +1352,10 @@ function validateLengthNode(sourceNode) {
1349
1352
  }
1350
1353
  return validateInfo;
1351
1354
  }
1352
- /**
1353
- * 使用css-tree的语法解析来做校验
1354
- * @param value
1355
- * @returns
1355
+ /**
1356
+ * 使用css-tree的语法解析来做校验
1357
+ * @param value
1358
+ * @returns
1356
1359
  */
1357
1360
  function validLength(value) {
1358
1361
  let validateInfo = {
@@ -1368,8 +1371,8 @@ function validLength(value) {
1368
1371
  }
1369
1372
  return validateInfo;
1370
1373
  }
1371
- /**
1372
- * 校验枚举值
1374
+ /**
1375
+ * 校验枚举值
1373
1376
  */
1374
1377
  function enumValidate(enumList, sourceNode) {
1375
1378
  const {
@@ -1399,8 +1402,8 @@ function enumValidate(enumList, sourceNode) {
1399
1402
  }
1400
1403
  return validateInfo;
1401
1404
  }
1402
- /**
1403
- * 校验ValueType[]数组中的仅有一个值,且结构为SimpleValueType
1405
+ /**
1406
+ * 校验ValueType[]数组中的仅有一个值,且结构为SimpleValueType
1404
1407
  */
1405
1408
  function validSimpleValue(sourceNode) {
1406
1409
  const {
@@ -1428,9 +1431,9 @@ function validSimpleValue(sourceNode) {
1428
1431
  }
1429
1432
  return validateInfo;
1430
1433
  }
1431
- /**
1432
- * 颜色值校验, 支持 rgb, rgba, hsl, hsla, #fff, #fffa, #ffffff, #ffffffaa, named-color
1433
- * @param value
1434
+ /**
1435
+ * 颜色值校验, 支持 rgb, rgba, hsl, hsla, #fff, #fffa, #ffffff, #ffffffaa, named-color
1436
+ * @param value
1434
1437
  */
1435
1438
  function validColorNode(sourceNode) {
1436
1439
  const {
@@ -1457,10 +1460,35 @@ function validColorNode(sourceNode) {
1457
1460
  return validateInfo;
1458
1461
  }
1459
1462
  }
1460
- /**
1461
- * 使用css-tree的语法解析来做校验
1462
- * @param value
1463
- * @returns
1463
+ function validIntegerNode(sourceNode) {
1464
+ const {
1465
+ value,
1466
+ name: attributeName
1467
+ } = sourceNode;
1468
+ const simpleValueInfo = validSimpleValue(sourceNode);
1469
+ let validateInfo = {
1470
+ level: _sharedUtils.Loglevel.WARN,
1471
+ message: []
1472
+ };
1473
+ if (simpleValueInfo.message.length > 0) {
1474
+ return simpleValueInfo;
1475
+ } else {
1476
+ // 符合单值要求,继续校验
1477
+ value[0] = value[0];
1478
+ const valueStr = value[0].value;
1479
+ const validResult = validInteger(valueStr);
1480
+ if (validResult.message.length > 0) {
1481
+ validateInfo.message = [`The value verification of attribute `, {
1482
+ word: attributeName
1483
+ }, `failed.`, ...validResult.message];
1484
+ }
1485
+ return validateInfo;
1486
+ }
1487
+ }
1488
+ /**
1489
+ * 使用css-tree的语法解析来做校验
1490
+ * @param value
1491
+ * @returns
1464
1492
  */
1465
1493
  function validColor(value) {
1466
1494
  let validateInfo = {
@@ -1474,10 +1502,10 @@ function validColor(value) {
1474
1502
  }
1475
1503
  return validateInfo;
1476
1504
  }
1477
- /**
1478
- * 校验值符合REGEXP_NAME正则表达式
1479
- * @param sourceNode
1480
- * @returns
1505
+ /**
1506
+ * 校验值符合REGEXP_NAME正则表达式
1507
+ * @param sourceNode
1508
+ * @returns
1481
1509
  */
1482
1510
  function validName(sourceNode) {
1483
1511
  const {
@@ -1504,12 +1532,12 @@ function validName(sourceNode) {
1504
1532
  }
1505
1533
  return validateInfo;
1506
1534
  }
1507
- /**
1508
- * 校验位置
1509
- * 1. 位置值长度最多为3
1510
- * 2. 每一个(旧版本中要求值类型必须为长度值)
1511
- * @param sourceNode
1512
- * @returns
1535
+ /**
1536
+ * 校验位置
1537
+ * 1. 位置值长度最多为3
1538
+ * 2. 每一个(旧版本中要求值类型必须为长度值)
1539
+ * @param sourceNode
1540
+ * @returns
1513
1541
  */
1514
1542
  function validPosition(sourceNode) {
1515
1543
  let validateInfo = {
@@ -1548,16 +1576,16 @@ function validPosition(sourceNode) {
1548
1576
  }
1549
1577
  return validateInfo;
1550
1578
  }
1551
- /**
1552
- * 校验mylocation属性
1553
- * 1. 属性值最多有三个
1554
- * 2. 扩展值
1555
- * 2.1 第一次出现的颜色为mylocationFillColor属性值
1556
- * 2.2 第二次出现的颜色为mylocationStrokeColor属性值
1557
- * 2.3 url值为mylocationIconPath属性值
1558
- *
1559
- * @param sourceNode
1560
- * @returns
1579
+ /**
1580
+ * 校验mylocation属性
1581
+ * 1. 属性值最多有三个
1582
+ * 2. 扩展值
1583
+ * 2.1 第一次出现的颜色为mylocationFillColor属性值
1584
+ * 2.2 第二次出现的颜色为mylocationStrokeColor属性值
1585
+ * 2.3 url值为mylocationIconPath属性值
1586
+ *
1587
+ * @param sourceNode
1588
+ * @returns
1561
1589
  */
1562
1590
  function validMyLocation(sourceNode) {
1563
1591
  let validateInfo = {
@@ -1602,13 +1630,13 @@ function validMyLocation(sourceNode) {
1602
1630
  }
1603
1631
  return validateInfo;
1604
1632
  }
1605
- /**
1606
- * 校验url值,由于parser时已转换了url值,所以校验步骤修改如下:
1607
- * 1. 是否绝对路径
1608
- * 2. 是否为网络值
1609
- * 3. 是否为none
1610
- * @param sourceNode
1611
- * @returns
1633
+ /**
1634
+ * 校验url值,由于parser时已转换了url值,所以校验步骤修改如下:
1635
+ * 1. 是否绝对路径
1636
+ * 2. 是否为网络值
1637
+ * 3. 是否为none
1638
+ * @param sourceNode
1639
+ * @returns
1612
1640
  */
1613
1641
  function validUrl(sourceNode) {
1614
1642
  let validateInfo = {
@@ -1636,10 +1664,10 @@ function validUrl(sourceNode) {
1636
1664
  }
1637
1665
  return validateInfo;
1638
1666
  }
1639
- /**
1640
- * 校验单位
1641
- * @param sourceNode
1642
- * @returns
1667
+ /**
1668
+ * 校验单位
1669
+ * @param sourceNode
1670
+ * @returns
1643
1671
  */
1644
1672
  function validAngleNode(sourceNode) {
1645
1673
  let validateInfo = {
@@ -1700,4 +1728,22 @@ function translateMyLocation(sourceNode) {
1700
1728
  });
1701
1729
  return targetNode;
1702
1730
  }
1731
+
1732
+ /**
1733
+ * 整数校验
1734
+ * @param value 待校验的值
1735
+ * @returns 校验结果信息
1736
+ */
1737
+ function validInteger(value) {
1738
+ let validateInfo = {
1739
+ level: _sharedUtils.Loglevel.WARN,
1740
+ message: []
1741
+ };
1742
+ if (!Number.isInteger(Number(value))) {
1743
+ validateInfo.message = [`The value`, {
1744
+ word: `'${value}'`
1745
+ }, `is not an integer`];
1746
+ }
1747
+ return validateInfo;
1748
+ }
1703
1749
  const STYLE_ATTRIBUTE_LIST = exports.STYLE_ATTRIBUTE_LIST = Object.keys(STYLE_ATTRIBUTE_CONFIG);
@@ -58,12 +58,12 @@ function findSelectorIndex(type) {
58
58
  function isMeidaType(type) {
59
59
  return Object.values(MediaType).includes(type);
60
60
  }
61
- /**
62
- * 安卓快应用支持所有的媒体类型,只需要判断媒体类型是否合法
63
- * vela快应用仅支持 MediaType.SCREEN
64
- * @param type
65
- * @param projectType
66
- * @returns
61
+ /**
62
+ * 安卓快应用支持所有的媒体类型,只需要判断媒体类型是否合法
63
+ * vela快应用仅支持 MediaType.SCREEN
64
+ * @param type
65
+ * @param projectType
66
+ * @returns
67
67
  */
68
68
  function isSupportMediaType(type, projectType) {
69
69
  let supportedMediaList = [];
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- /**
8
- * TemplateNode 类型枚举
7
+ /**
8
+ * TemplateNode 类型枚举
9
9
  */
10
10
  var TemplateNodeType = /*#__PURE__*/function (TemplateNodeType) {
11
11
  TemplateNodeType["TEMPLATE"] = "template";
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- /**
8
- * StyleSelectorName
7
+ /**
8
+ * StyleSelectorName
9
9
  */
10
10
  var StyleSelectorName = /*#__PURE__*/function (StyleSelectorName) {
11
11
  StyleSelectorName["FONT_FACE"] = "@FONT-FACE";
@@ -11,4 +11,6 @@ export default interface IUxAst {
11
11
  style: IStyleAst;
12
12
  script: IScriptAst;
13
13
  data?: any;
14
+ comments?: any;
15
+ texts?: any;
14
16
  }
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- /**
8
- * ScriptParser
7
+ /**
8
+ * ScriptParser
9
9
  */
10
10
  class ScriptParser {
11
11
  constructor(options) {