@lcap/nasl-language-server-core 3.14.0-rc.4 → 3.14.0-rc.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 (79) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +5 -2
  3. package/out/checker.js.map +1 -1
  4. package/out/module/graph.js +6 -6
  5. package/out/module/graph.js.map +1 -1
  6. package/out/module/module.d.ts.map +1 -1
  7. package/out/module/module.js +3 -6
  8. package/out/module/module.js.map +1 -1
  9. package/out/reference-manager/get-q-name.js.map +1 -1
  10. package/out/reference-manager/reference-manager.d.ts +11 -5
  11. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  12. package/out/reference-manager/reference-manager.js +59 -59
  13. package/out/reference-manager/reference-manager.js.map +1 -1
  14. package/out/reference-manager/rename-q-name.d.ts.map +1 -1
  15. package/out/reference-manager/rename-q-name.js +3 -0
  16. package/out/reference-manager/rename-q-name.js.map +1 -1
  17. package/out/reference-manager/symbol-type.d.ts +3 -1
  18. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  19. package/out/reference-manager/symbol-type.js +9 -7
  20. package/out/reference-manager/symbol-type.js.map +1 -1
  21. package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
  22. package/out/reference-manager/update-nasl-fragment.js +5 -4
  23. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  24. package/out/symbol/graph.js +2 -2
  25. package/out/symbol/graph.js.map +1 -1
  26. package/out/typer/component-def-manager/utils.d.ts.map +1 -1
  27. package/out/typer/component-def-manager/utils.js +5 -3
  28. package/out/typer/component-def-manager/utils.js.map +1 -1
  29. package/out/typer/dispatch-def.d.ts.map +1 -1
  30. package/out/typer/dispatch-def.js +6 -6
  31. package/out/typer/dispatch-def.js.map +1 -1
  32. package/out/typer/dispatch-expr.d.ts.map +1 -1
  33. package/out/typer/dispatch-expr.js +80 -29
  34. package/out/typer/dispatch-expr.js.map +1 -1
  35. package/out/typer/dispatch-process.d.ts +0 -1
  36. package/out/typer/dispatch-process.d.ts.map +1 -1
  37. package/out/typer/dispatch-process.js +18 -12
  38. package/out/typer/dispatch-process.js.map +1 -1
  39. package/out/typer/dispatch-stmt.d.ts.map +1 -1
  40. package/out/typer/dispatch-stmt.js +5 -2
  41. package/out/typer/dispatch-stmt.js.map +1 -1
  42. package/out/typer/dispatch-view.d.ts.map +1 -1
  43. package/out/typer/dispatch-view.js +84 -37
  44. package/out/typer/dispatch-view.js.map +1 -1
  45. package/out/typer/incremental-update.d.ts +6 -29
  46. package/out/typer/incremental-update.d.ts.map +1 -1
  47. package/out/typer/incremental-update.js +116 -204
  48. package/out/typer/incremental-update.js.map +1 -1
  49. package/out/typer/subster.d.ts.map +1 -1
  50. package/out/typer/subster.js +6 -9
  51. package/out/typer/subster.js.map +1 -1
  52. package/out/typer/type-manager.d.ts +2 -0
  53. package/out/typer/type-manager.d.ts.map +1 -1
  54. package/out/typer/type-manager.js +8 -3
  55. package/out/typer/type-manager.js.map +1 -1
  56. package/out/typer/type-predicate.d.ts +15 -2
  57. package/out/typer/type-predicate.d.ts.map +1 -1
  58. package/out/typer/type-predicate.js +54 -23
  59. package/out/typer/type-predicate.js.map +1 -1
  60. package/out/typer/typer.d.ts +12 -1
  61. package/out/typer/typer.d.ts.map +1 -1
  62. package/out/typer/typer.js +19 -5
  63. package/out/typer/typer.js.map +1 -1
  64. package/out/utils/parseTsClassType.d.ts.map +1 -1
  65. package/out/utils/parseTsClassType.js +3 -0
  66. package/out/utils/parseTsClassType.js.map +1 -1
  67. package/out/utils/type-operator.d.ts +1 -1
  68. package/out/utils/type-operator.d.ts.map +1 -1
  69. package/out/utils/type-operator.js +6 -4
  70. package/out/utils/type-operator.js.map +1 -1
  71. package/package.json +5 -6
  72. package/out/utils/vue-hack.d.ts +0 -25
  73. package/out/utils/vue-hack.d.ts.map +0 -1
  74. package/out/utils/vue-hack.js +0 -33
  75. package/out/utils/vue-hack.js.map +0 -1
  76. package/out/utils/vue.d.ts +0 -2
  77. package/out/utils/vue.d.ts.map +0 -1
  78. package/out/utils/vue.js +0 -10
  79. package/out/utils/vue.js.map +0 -1
@@ -24,7 +24,6 @@ const dispatch_expr_1 = require("./dispatch-expr");
24
24
  const helper_1 = require("./helper");
25
25
  const reference_hack_1 = require("../utils/reference-hack");
26
26
  const collectGlobalDefs_1 = require("./collectGlobalDefs");
27
- const vue_hack_1 = require("../utils/vue-hack");
28
27
  /**
29
28
  * Entry point for view type checking, using time slicing to prevent UI blocking
30
29
  */
@@ -63,7 +62,7 @@ function* dispatchViewGenerator(env, nd) {
63
62
  console.log(`请使用tpView。不能通过此入口检查ViewElement`);
64
63
  break;
65
64
  case 'BindEvent': {
66
- yield* tpBindEventSimple(env, nd);
65
+ yield* tpBindEventForViewLevelEvent(env, nd);
67
66
  break;
68
67
  }
69
68
  case 'Logic':
@@ -110,7 +109,7 @@ function* tpFrontend(env, nd) {
110
109
  env.isView = true;
111
110
  yield* (0, nasl_utils_1.wrapForEachToGenerator)(nd.bindEvents, function* (be) {
112
111
  env.unifier.clearCs();
113
- yield* tpBindEventSimple(env, be);
112
+ yield* tpBindEventForViewLevelEvent(env, be);
114
113
  (0, subster_1.traverseSubstRunCheck)(env, be);
115
114
  });
116
115
  env.isView = isViewCopy;
@@ -591,7 +590,7 @@ function* tpViewElementFirstPass(env, nd) {
591
590
  }
592
591
  });
593
592
  yield* (0, nasl_utils_1.wrapForEachToGenerator)(nd.bindEvents, function* (be) {
594
- yield* tpBindEvent(env, be, dropList);
593
+ yield* tpBindEventForViewElement(env, be, dropList);
595
594
  });
596
595
  nd.bindStyles.forEach((style) => tpBindStyle(env, style));
597
596
  nd.bindDirectives.forEach((bd) => {
@@ -779,31 +778,41 @@ function* tpViewElementFirstPass(env, nd) {
779
778
  env.unifier.unify(assumedTy, retType);
780
779
  if (!(0, type_predicate_1.isAnyTy)(tTy)) {
781
780
  env.queryManager.asyncQuery(prop).typeLevelEvaluationOf(tTy).then(__x => {
782
- const x = __x.properties?.[0]?.typeAnnotation; // 从匿名数据结构里拿出实体类型
783
- if (!x) {
781
+ const targetProp = commaSplitPropAccess[0];
782
+ if (!targetProp || !__x.properties) {
784
783
  return;
785
784
  }
786
- if (typeof prop.value === 'string' && prop.value.length > 0) {
787
- const [entityName, propName] = prop.value.split('.');
788
- if (entityName) {
789
- const entity = env.refMgr.getNodeDef(x);
790
- if (entity?.concept === 'Entity') {
791
- (0, reference_hack_1.setDataSourceTy)(prop, x);
792
- // Using accessor pattern to allow for input normalization later
793
- const refs = env.refMgr.getSymbolRefs(entity) ?? new Set();
794
- refs.add(prop);
795
- env.refMgr.setSymbolRefs(entity, refs);
796
- if (propName) {
797
- const pp = reference_manager_1.ReferenceManager.getProp(entity, propName);
798
- if (pp) {
799
- // Using accessor pattern to allow for input normalization later
800
- const ppRefs = env.refMgr.getSymbolRefs(pp) ?? new Set();
801
- ppRefs.add(prop);
802
- env.refMgr.setSymbolRefs(pp, ppRefs);
785
+ for (const p of __x.properties) {
786
+ if (p.name !== targetProp) {
787
+ continue;
788
+ }
789
+ const x = p.typeAnnotation; // 从匿名数据结构里拿出实体类型
790
+ if (!x) {
791
+ continue;
792
+ }
793
+ if (typeof prop.value === 'string' && prop.value.length > 0) {
794
+ const [entityName, propName] = prop.value.split('.');
795
+ if (entityName) {
796
+ const entity = env.refMgr.getNodeDef(x);
797
+ if (entity?.concept === 'Entity') {
798
+ (0, reference_hack_1.setDataSourceTy)(prop, x);
799
+ // Using accessor pattern to allow for input normalization later
800
+ const refs = env.refMgr.getSymbolRefs(entity) ?? new Set();
801
+ refs.add(prop);
802
+ env.refMgr.setSymbolRefs(entity, refs);
803
+ if (propName) {
804
+ const pp = reference_manager_1.ReferenceManager.getProp(entity, propName);
805
+ if (pp) {
806
+ // Using accessor pattern to allow for input normalization later
807
+ const ppRefs = env.refMgr.getSymbolRefs(pp) ?? new Set();
808
+ ppRefs.add(prop);
809
+ env.refMgr.setSymbolRefs(pp, ppRefs);
810
+ }
803
811
  }
804
812
  }
805
813
  }
806
814
  }
815
+ break;
807
816
  }
808
817
  });
809
818
  env.queryManager
@@ -833,18 +842,29 @@ function* tpViewElementFirstPass(env, nd) {
833
842
  if (prop.type === 'dynamic') {
834
843
  const expr = prop.expression;
835
844
  if (expr) {
836
- if (env.strict === false && isAttrIgnored({ attrName: prop.name, tag: nd.tag })) {
837
- (0, dispatch_expr_1.dispatchExpr)(env, expr, undefined);
845
+ const args = (0, nasl_type_manipulation_1.extractArgPairsFromFnTy)(tgtTy);
846
+ if (tgtTy.typeKind === 'function' &&
847
+ args &&
848
+ args.length === 1 &&
849
+ args[0].name === 'item' &&
850
+ tgtTy.returnType?.length === 1) {
851
+ // 特殊case: 类型标注为(item: T) => V,但prop里面存了个表达式的情形。需要把 V 拿出来
852
+ (0, dispatch_expr_1.dispatchExpr)(env, expr, tgtTy.returnType[0]);
838
853
  }
839
854
  else {
840
- if (prop.name === 'dataSource') {
841
- env.typeHintManager.setHint(tgtTy, type_hint_manager_1.TypeHintEnum.isFromDataSource);
842
- }
843
- if (prop.name === 'field') {
855
+ if (env.strict === false && isAttrIgnored({ attrName: prop.name, tag: nd.tag })) {
844
856
  (0, dispatch_expr_1.dispatchExpr)(env, expr, undefined);
845
857
  }
846
858
  else {
847
- (0, dispatch_expr_1.dispatchExpr)(env, expr, tgtTy);
859
+ if (prop.name === 'dataSource') {
860
+ env.typeHintManager.setHint(tgtTy, type_hint_manager_1.TypeHintEnum.isFromDataSource);
861
+ }
862
+ if (prop.name === 'field') {
863
+ (0, dispatch_expr_1.dispatchExpr)(env, expr, undefined);
864
+ }
865
+ else {
866
+ (0, dispatch_expr_1.dispatchExpr)(env, expr, tgtTy);
867
+ }
848
868
  }
849
869
  }
850
870
  }
@@ -861,7 +881,12 @@ function* tpViewElementFirstPass(env, nd) {
861
881
  }
862
882
  (0, dispatch_stmt_1.tpSolvingPlayground)(env, prop.playground);
863
883
  }
864
- function* tpBindEvent(env, nd, dropList) {
884
+ /**
885
+ * 处理 ViewElement 级别的事件绑定
886
+ *
887
+ * 根据事件名查定义,生成虚拟参数,并设置类型约束
888
+ */
889
+ function* tpBindEventForViewElement(env, nd, dropList) {
865
890
  // FIXME wudengke 这里的nd.name可能为"select",但dts中将他定义为onSelect。
866
891
  // 选择1. 需要拼on-,再做名字转换(先用这个)
867
892
  // 选择2. 读组件的ViewComponentDeclaration定义来找?
@@ -895,9 +920,9 @@ function* tpViewElementFirstPass(env, nd) {
895
920
  dropList.push(newParam);
896
921
  (0, helper_1.createOnPush)(env.allocatedVirtualNodes, env.getCurFileNode(), newParam);
897
922
  });
898
- l.virtualParams.push(...getContextualVirtualParams((0, vue_hack_1.toRaw)(l)));
923
+ l.virtualParams.push(...getContextualVirtualParams((0, nasl_utils_1.toRaw)(l)));
899
924
  function getContextualVirtualParams(l) {
900
- let parent = (0, vue_hack_1.toRaw)(l.parentNode);
925
+ let parent = (0, nasl_utils_1.toRaw)(l.parentNode);
901
926
  let index = 0;
902
927
  const params = [];
903
928
  const contextBound = nd.likeComponent;
@@ -928,7 +953,7 @@ function* tpViewElementFirstPass(env, nd) {
928
953
  }
929
954
  index++;
930
955
  }
931
- parent = (0, vue_hack_1.toRaw)(parent.parentNode);
956
+ parent = (0, nasl_utils_1.toRaw)(parent.parentNode);
932
957
  }
933
958
  return params;
934
959
  }
@@ -945,9 +970,24 @@ function tpViewValidationRule(env, nd) {
945
970
  return type_manager_1.naslVoidTy;
946
971
  }
947
972
  exports.tpViewValidationRule = tpViewValidationRule;
948
- function* tpBindEventSimple(env, nd) {
949
- yield* (0, nasl_utils_1.wrapForEachToGenerator)(nd.logics, (logic) => {
950
- (0, dispatch_def_1.dispatchDef)(env, logic);
973
+ /**
974
+ * 处理 View 级别(View 和 BusinessComponent)而非 ViewElement 级别事件的绑定
975
+ */
976
+ function* tpBindEventForViewLevelEvent(env, nd) {
977
+ yield* (0, nasl_utils_1.wrapForEachToGenerator)(nd.logics, (l) => {
978
+ // HACK: 对于 View 级别的键盘事件,需要额外塞入参数。
979
+ // 这个事件在旧 LS 也是hardcode的。
980
+ // TODO wudengke 如果还有其他case需要处理,那么就抽成一个机制
981
+ if (l.name === 'keydown' || l.name === 'keyup') {
982
+ const newParam = nasl_concepts_1.Param.createProtoTypeOnly({
983
+ name: 'event',
984
+ typeAnnotation: type_manager_1.naslKeyboardEventTy,
985
+ parentKey: 'virtualParams',
986
+ parentNode: l,
987
+ });
988
+ l.virtualParams = [newParam];
989
+ }
990
+ (0, dispatch_def_1.dispatchDef)(env, l);
951
991
  });
952
992
  }
953
993
  function tpBindStyle(env, nd) {
@@ -979,6 +1019,13 @@ const skipCheckDataBase = {
979
1019
  'van-fieldinput': ['value', 'placeholder'],
980
1020
  'van-stepper-new': ['value', 'placeholder'],
981
1021
  'van-pickerson': ['placeholder'],
1022
+ 'el-form-select': ['modelValue'],
1023
+ 'van-area': ['placeholder'],
1024
+ 'van-cascader': ['placeholder'],
1025
+ 'van-datetime-picker': ['placeholder'],
1026
+ 'van-calendar': ['placeholder'],
1027
+ 'van-fieldtextarea': ['placeholder'],
1028
+ 'van-search': ['placeholder'],
982
1029
  };
983
1030
  function isAttrIgnored(options) {
984
1031
  // 通用规则
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-view.js","sourceRoot":"","sources":["../../src/typer/dispatch-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-view.js","sourceRoot":"","sources":["../../src/typer/dispatch-view.ts"],"names":[],"mappings":"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"}
@@ -11,25 +11,10 @@ export interface PreProcessResult {
11
11
  typerCreateNodes: Set<SyntaxNode>;
12
12
  }
13
13
  /**
14
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
14
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
15
+ * 为了增加效率,直接往 params 的 Set 里加东西
15
16
  */
16
- export declare const preProcessDefCreation: (env: SemEnv, nd: DefConcept) => PreProcessResult;
17
- /**
18
- * 1 扫描 xs 的 qNames
19
- * 2 确定待检查项 ys:xs 引用的 FileNodes,
20
- * 3 删除 xs 中对所有全局符号的引用,更新 symbolRefs
21
- * (1 因为即使通过撤销重做,进来的 refs 对象的内存地址也不一样,无法重用)
22
- * (2 xs 中其他符号的引用如果还在,查找其他符号时依然会找到"消失的xs",然后再找到 xs 被引用的 FileNode,这样不对)
23
- * 4 缓存要删除的 qNames,现在不能删除,因为如果删除了,移除 ys 中的符号时就会报错,例子我不记得了,之后再想想……
24
- *
25
- * 以下不在 preProcess 中做:
26
- * 5 类型检查 ys
27
- * 6 不需要删除 ys 中对 xs 的引用 refs,所以不需要更新 symbolRefs(为了之后做 'relink')
28
- */
29
- /**
30
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
31
- */
32
- export declare const preProcessDefRemoval: (env: SemEnv, nd: DefConcept) => PreProcessResult;
17
+ export declare const preProcessOther: (env: SemEnv, nd: SyntaxNode, typerCheckFiles: Set<SyntaxNode>) => boolean;
33
18
  /**
34
19
  * rename xs:
35
20
  * 1 获取要删除的旧的 qNames1
@@ -41,17 +26,9 @@ export declare const preProcessDefRemoval: (env: SemEnv, nd: DefConcept) => PreP
41
26
  * 7 类型检查 ys 和 zs
42
27
  */
43
28
  /**
44
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
45
- */
46
- export declare const preProcessDefRename: (env: SemEnv, nd: DefConcept, oldName: string, mode: 'rename-only' | 'update' | null, oqlRemoveNodesTsPath: Set<string>) => PreProcessResult;
47
- /**
48
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
49
- */
50
- export declare const preProcessDefUpdate: (env: SemEnv, nd: DefConcept) => PreProcessResult;
51
- /**
52
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
29
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
53
30
  */
54
- export declare const preProcessNonDefAction: (nd: SyntaxNode) => PreProcessResult;
31
+ export declare const preProcessDefRename: (env: SemEnv, nd: DefConcept, typerCheckFiles: Set<SyntaxNode>, oldName: string, mode: 'rename-only' | 'update' | null, oqlRemoveNodesTsPath: Set<string>) => boolean;
55
32
  /**
56
33
  * 1. 符号删除
57
34
  * 2. 运行新的类型标注,额外错误诊断
@@ -69,7 +46,7 @@ export declare const preProcessNonDefAction: (nd: SyntaxNode) => PreProcessResul
69
46
  * @returns 诊断信息列表
70
47
  */
71
48
  /**
72
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
49
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
73
50
  */
74
51
  export declare function checkUpdateRefsDiag(env: SemEnv, diagnosticManager: DiagnosticManager, chkFiles: Set<SyntaxNode>, removeNodes: Set<SyntaxNode>, createNodes: Set<SyntaxNode>, tsDiagnostics: ConcreteOQLDiagnostic[], checkedFiles?: Set<SyntaxNode>): Promise<Array<DiagnosticRecord>>;
75
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqC,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAGpG,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAiC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,UAAU,EAAuD,MAAM,wCAAwC,CAAC;AAMzH,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAG9D,MAAM,WAAW,gBAAgB;IAC7B,eAAe,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAS,MAAM,MAAM,UAAU,KAAG,gBAenE,CAAA;AAED;;;;;;;;;;;GAWG;AACH;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAS,MAAM,MAAM,UAAU,KAAG,gBAqDlE,CAAA;AAED;;;;;;;;;GASG;AACH;;GAEG;AACH,eAAO,MAAM,mBAAmB,QACtB,MAAM,MACJ,UAAU,WACL,MAAM,QACT,aAAa,GAAG,QAAQ,GAAG,IAAI,wBACf,IAAI,MAAM,CAAC,KAClC,gBA0DN,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAS,MAAM,MAAM,UAAU,KAAG,gBAsBjE,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,sBAAsB,OAAQ,UAAU,KAAG,gBAcvD,CAAA;AAGD;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH;;GAEG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,MAAM,EACX,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,EACzB,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,aAAa,EAAE,qBAAqB,EAAE,EACtC,YAAY,GAAE,GAAG,CAAC,UAAU,CAAa,GAC1C,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CA+JlC;AA0KD;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACjB,MAAM,cACC,IAAI,UAAU,CAAC,gBACb,IAAI,UAAU,CAAC,KAC5B,MAAM,UAAU,CAyHlB,CAAA"}
1
+ {"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqC,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAGpG,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAiC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,UAAU,EAAuD,MAAM,wCAAwC,CAAC;AAMzH,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAG9D,MAAM,WAAW,gBAAgB;IAC7B,eAAe,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,MAAM,UAAU,mBAAmB,IAAI,UAAU,CAAC,KAAG,OAO/F,CAAA;AAED;;;;;;;;;GASG;AACH;;GAEG;AACH,eAAO,MAAM,mBAAmB,QACvB,MAAM,MACP,UAAU,mBACG,IAAI,UAAU,CAAC,WACvB,MAAM,QACT,aAAa,GAAG,QAAQ,GAAG,IAAI,wBACf,IAAI,MAAM,CAAC,KAC9B,OAgDN,CAAA;AAyHD;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH;;GAEG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,MAAM,EACX,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,EACzB,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,aAAa,EAAE,qBAAqB,EAAE,EACtC,YAAY,GAAE,GAAG,CAAC,UAAU,CAAa,GAC1C,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CA4FlC;AA0KD;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACjB,MAAM,cACC,IAAI,UAAU,CAAC,gBACb,IAAI,UAAU,CAAC,KAC5B,MAAM,UAAU,CAyHlB,CAAA"}