vsn 0.1.148 → 1.0.0

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 (587) hide show
  1. package/README.md +7 -6
  2. package/dist/index.cjs +5011 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +630 -0
  5. package/dist/index.d.ts +630 -0
  6. package/dist/index.js +4942 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/index.min.js +9 -0
  9. package/dist/index.min.js.map +1 -0
  10. package/package.json +30 -48
  11. package/.gitattributes +0 -2
  12. package/.travis.yml +0 -28
  13. package/demo/demo.html +0 -237
  14. package/demo/examples/cascading-function-sheets.html +0 -39
  15. package/demo/examples/component-slots.html +0 -29
  16. package/demo/examples/events.html +0 -21
  17. package/demo/examples/item-filtering.html +0 -45
  18. package/demo/examples/loop.html +0 -21
  19. package/demo/examples/persist.html +0 -17
  20. package/demo/examples/replace-html.html +0 -19
  21. package/demo/markup-default.html +0 -2
  22. package/demo/markup.html +0 -2
  23. package/demo/memory-leak-test.html +0 -82
  24. package/demo/named-stack.html +0 -34
  25. package/demo/resources/xhr-animations.html +0 -24
  26. package/demo/resources/xhr-cfs.html +0 -1
  27. package/demo/resources/xhr-html.html +0 -1
  28. package/demo/resources/xhr-lazy.html +0 -60
  29. package/demo/resources/xhr-memory-leak-test.html +0 -14
  30. package/demo/resources/xhr-persist.html +0 -40
  31. package/demo/resources/xhr-test-component.html +0 -4
  32. package/demo/service.html +0 -22
  33. package/demo/silly-animations.html +0 -27
  34. package/demo/vsn.js +0 -3
  35. package/demo/xhr-response.html +0 -1
  36. package/demo/xhr-test.html +0 -32
  37. package/dist/AST/ArithmeticNode.d.ts +0 -15
  38. package/dist/AST/ArithmeticNode.js +0 -114
  39. package/dist/AST/ArithmeticNode.js.map +0 -1
  40. package/dist/AST/ArrayNode.d.ts +0 -14
  41. package/dist/AST/ArrayNode.js +0 -166
  42. package/dist/AST/ArrayNode.js.map +0 -1
  43. package/dist/AST/AsNode.d.ts +0 -13
  44. package/dist/AST/AsNode.js +0 -92
  45. package/dist/AST/AsNode.js.map +0 -1
  46. package/dist/AST/AssignmentNode.d.ts +0 -24
  47. package/dist/AST/AssignmentNode.js +0 -392
  48. package/dist/AST/AssignmentNode.js.map +0 -1
  49. package/dist/AST/BlockNode.d.ts +0 -11
  50. package/dist/AST/BlockNode.js +0 -114
  51. package/dist/AST/BlockNode.js.map +0 -1
  52. package/dist/AST/BooleanLiteralNode.d.ts +0 -5
  53. package/dist/AST/BooleanLiteralNode.js +0 -31
  54. package/dist/AST/BooleanLiteralNode.js.map +0 -1
  55. package/dist/AST/ClassNode.d.ts +0 -47
  56. package/dist/AST/ClassNode.js +0 -593
  57. package/dist/AST/ClassNode.js.map +0 -1
  58. package/dist/AST/ComparisonNode.d.ts +0 -15
  59. package/dist/AST/ComparisonNode.js +0 -120
  60. package/dist/AST/ComparisonNode.js.map +0 -1
  61. package/dist/AST/ConditionalNode.d.ts +0 -13
  62. package/dist/AST/ConditionalNode.js +0 -95
  63. package/dist/AST/ConditionalNode.js.map +0 -1
  64. package/dist/AST/DispatchEventNode.d.ts +0 -17
  65. package/dist/AST/DispatchEventNode.js +0 -152
  66. package/dist/AST/DispatchEventNode.js.map +0 -1
  67. package/dist/AST/ElementAttributeNode.d.ts +0 -20
  68. package/dist/AST/ElementAttributeNode.js +0 -242
  69. package/dist/AST/ElementAttributeNode.js.map +0 -1
  70. package/dist/AST/ElementQueryNode.d.ts +0 -17
  71. package/dist/AST/ElementQueryNode.js +0 -148
  72. package/dist/AST/ElementQueryNode.js.map +0 -1
  73. package/dist/AST/ElementStyleNode.d.ts +0 -20
  74. package/dist/AST/ElementStyleNode.js +0 -205
  75. package/dist/AST/ElementStyleNode.js.map +0 -1
  76. package/dist/AST/ForStatementNode.d.ts +0 -17
  77. package/dist/AST/ForStatementNode.js +0 -121
  78. package/dist/AST/ForStatementNode.js.map +0 -1
  79. package/dist/AST/FunctionArgumentNode.d.ts +0 -11
  80. package/dist/AST/FunctionArgumentNode.js +0 -142
  81. package/dist/AST/FunctionArgumentNode.js.map +0 -1
  82. package/dist/AST/FunctionCallNode.d.ts +0 -14
  83. package/dist/AST/FunctionCallNode.js +0 -241
  84. package/dist/AST/FunctionCallNode.js.map +0 -1
  85. package/dist/AST/FunctionNode.d.ts +0 -20
  86. package/dist/AST/FunctionNode.js +0 -220
  87. package/dist/AST/FunctionNode.js.map +0 -1
  88. package/dist/AST/IfStatementNode.d.ts +0 -14
  89. package/dist/AST/IfStatementNode.js +0 -168
  90. package/dist/AST/IfStatementNode.js.map +0 -1
  91. package/dist/AST/InNode.d.ts +0 -15
  92. package/dist/AST/InNode.js +0 -107
  93. package/dist/AST/InNode.js.map +0 -1
  94. package/dist/AST/IndexNode.d.ts +0 -16
  95. package/dist/AST/IndexNode.js +0 -152
  96. package/dist/AST/IndexNode.js.map +0 -1
  97. package/dist/AST/LiteralNode.d.ts +0 -10
  98. package/dist/AST/LiteralNode.js +0 -74
  99. package/dist/AST/LiteralNode.js.map +0 -1
  100. package/dist/AST/LoopNode.d.ts +0 -12
  101. package/dist/AST/LoopNode.js +0 -121
  102. package/dist/AST/LoopNode.js.map +0 -1
  103. package/dist/AST/ModifierNode.d.ts +0 -14
  104. package/dist/AST/ModifierNode.js +0 -90
  105. package/dist/AST/ModifierNode.js.map +0 -1
  106. package/dist/AST/NamedStackNode.d.ts +0 -28
  107. package/dist/AST/NamedStackNode.js +0 -142
  108. package/dist/AST/NamedStackNode.js.map +0 -1
  109. package/dist/AST/Node.d.ts +0 -28
  110. package/dist/AST/Node.js +0 -263
  111. package/dist/AST/Node.js.map +0 -1
  112. package/dist/AST/NotNode.d.ts +0 -12
  113. package/dist/AST/NotNode.js +0 -103
  114. package/dist/AST/NotNode.js.map +0 -1
  115. package/dist/AST/NumberLiteralNode.d.ts +0 -5
  116. package/dist/AST/NumberLiteralNode.js +0 -36
  117. package/dist/AST/NumberLiteralNode.js.map +0 -1
  118. package/dist/AST/ObjectNode.d.ts +0 -14
  119. package/dist/AST/ObjectNode.js +0 -147
  120. package/dist/AST/ObjectNode.js.map +0 -1
  121. package/dist/AST/OnNode.d.ts +0 -9
  122. package/dist/AST/OnNode.js +0 -129
  123. package/dist/AST/OnNode.js.map +0 -1
  124. package/dist/AST/RootScopeMemberNode.d.ts +0 -12
  125. package/dist/AST/RootScopeMemberNode.js +0 -90
  126. package/dist/AST/RootScopeMemberNode.js.map +0 -1
  127. package/dist/AST/ScopeMemberNode.d.ts +0 -13
  128. package/dist/AST/ScopeMemberNode.js +0 -165
  129. package/dist/AST/ScopeMemberNode.js.map +0 -1
  130. package/dist/AST/ScopeNodeAbstract.d.ts +0 -8
  131. package/dist/AST/ScopeNodeAbstract.js +0 -105
  132. package/dist/AST/ScopeNodeAbstract.js.map +0 -1
  133. package/dist/AST/StringFormatNode.d.ts +0 -18
  134. package/dist/AST/StringFormatNode.js +0 -151
  135. package/dist/AST/StringFormatNode.js.map +0 -1
  136. package/dist/AST/UnitLiteralNode.d.ts +0 -15
  137. package/dist/AST/UnitLiteralNode.js +0 -72
  138. package/dist/AST/UnitLiteralNode.js.map +0 -1
  139. package/dist/AST/WASM/Context.d.ts +0 -4
  140. package/dist/AST/WASM/Context.js +0 -18
  141. package/dist/AST/WASM/Context.js.map +0 -1
  142. package/dist/AST/WASM/Function.d.ts +0 -22
  143. package/dist/AST/WASM/Function.js +0 -126
  144. package/dist/AST/WASM/Function.js.map +0 -1
  145. package/dist/AST/WASM/Memory.d.ts +0 -12
  146. package/dist/AST/WASM/Memory.js +0 -22
  147. package/dist/AST/WASM/Memory.js.map +0 -1
  148. package/dist/AST/WASM/Section.d.ts +0 -5
  149. package/dist/AST/WASM/Section.js +0 -11
  150. package/dist/AST/WASM/Section.js.map +0 -1
  151. package/dist/AST/WASM.d.ts +0 -58
  152. package/dist/AST/WASM.js +0 -293
  153. package/dist/AST/WASM.js.map +0 -1
  154. package/dist/AST/WithNode.d.ts +0 -15
  155. package/dist/AST/WithNode.js +0 -197
  156. package/dist/AST/WithNode.js.map +0 -1
  157. package/dist/AST/XHRNode.d.ts +0 -15
  158. package/dist/AST/XHRNode.js +0 -151
  159. package/dist/AST/XHRNode.js.map +0 -1
  160. package/dist/AST.d.ts +0 -160
  161. package/dist/AST.js +0 -1156
  162. package/dist/AST.js.map +0 -1
  163. package/dist/Attribute.d.ts +0 -46
  164. package/dist/Attribute.js +0 -262
  165. package/dist/Attribute.js.map +0 -1
  166. package/dist/Bencmark.d.ts +0 -14
  167. package/dist/Bencmark.js +0 -236
  168. package/dist/Bencmark.js.map +0 -1
  169. package/dist/Component.d.ts +0 -7
  170. package/dist/Component.js +0 -179
  171. package/dist/Component.js.map +0 -1
  172. package/dist/Configuration.d.ts +0 -12
  173. package/dist/Configuration.js +0 -64
  174. package/dist/Configuration.js.map +0 -1
  175. package/dist/Controller.d.ts +0 -13
  176. package/dist/Controller.js +0 -60
  177. package/dist/Controller.js.map +0 -1
  178. package/dist/DOM/AbstractDOM.d.ts +0 -56
  179. package/dist/DOM/AbstractDOM.js +0 -1038
  180. package/dist/DOM/AbstractDOM.js.map +0 -1
  181. package/dist/DOM/DOMObject.d.ts +0 -33
  182. package/dist/DOM/DOMObject.js +0 -152
  183. package/dist/DOM/DOMObject.js.map +0 -1
  184. package/dist/DOM/ShadowDOM.d.ts +0 -5
  185. package/dist/DOM/ShadowDOM.js +0 -32
  186. package/dist/DOM/ShadowDOM.js.map +0 -1
  187. package/dist/DOM/WrappedDocument.d.ts +0 -5
  188. package/dist/DOM/WrappedDocument.js +0 -34
  189. package/dist/DOM/WrappedDocument.js.map +0 -1
  190. package/dist/DOM/WrappedWindow.d.ts +0 -6
  191. package/dist/DOM/WrappedWindow.js +0 -45
  192. package/dist/DOM/WrappedWindow.js.map +0 -1
  193. package/dist/DOM.d.ts +0 -5
  194. package/dist/DOM.js +0 -37
  195. package/dist/DOM.js.map +0 -1
  196. package/dist/EventDispatcher.d.ts +0 -36
  197. package/dist/EventDispatcher.js +0 -393
  198. package/dist/EventDispatcher.js.map +0 -1
  199. package/dist/Formats.d.ts +0 -5
  200. package/dist/Formats.js +0 -47
  201. package/dist/Formats.js.map +0 -1
  202. package/dist/MessageList.d.ts +0 -15
  203. package/dist/MessageList.js +0 -127
  204. package/dist/MessageList.js.map +0 -1
  205. package/dist/Model.d.ts +0 -12
  206. package/dist/Model.js +0 -92
  207. package/dist/Model.js.map +0 -1
  208. package/dist/Modifiers.d.ts +0 -17
  209. package/dist/Modifiers.js +0 -100
  210. package/dist/Modifiers.js.map +0 -1
  211. package/dist/Query.d.ts +0 -4
  212. package/dist/Query.js +0 -66
  213. package/dist/Query.js.map +0 -1
  214. package/dist/Registry.d.ts +0 -41
  215. package/dist/Registry.js +0 -165
  216. package/dist/Registry.js.map +0 -1
  217. package/dist/Scope/DynamicScopeData.d.ts +0 -6
  218. package/dist/Scope/DynamicScopeData.js +0 -83
  219. package/dist/Scope/DynamicScopeData.js.map +0 -1
  220. package/dist/Scope/ObjectAccessor.d.ts +0 -7
  221. package/dist/Scope/ObjectAccessor.js +0 -40
  222. package/dist/Scope/ObjectAccessor.js.map +0 -1
  223. package/dist/Scope/QueryReference.d.ts +0 -10
  224. package/dist/Scope/QueryReference.js +0 -103
  225. package/dist/Scope/QueryReference.js.map +0 -1
  226. package/dist/Scope/ScopeAbstract.d.ts +0 -9
  227. package/dist/Scope/ScopeAbstract.js +0 -28
  228. package/dist/Scope/ScopeAbstract.js.map +0 -1
  229. package/dist/Scope/ScopeData.d.ts +0 -4
  230. package/dist/Scope/ScopeData.js +0 -60
  231. package/dist/Scope/ScopeData.js.map +0 -1
  232. package/dist/Scope/ScopeDataAbstract.d.ts +0 -30
  233. package/dist/Scope/ScopeDataAbstract.js +0 -303
  234. package/dist/Scope/ScopeDataAbstract.js.map +0 -1
  235. package/dist/Scope/ScopeObject.d.ts +0 -3
  236. package/dist/Scope/ScopeObject.js +0 -28
  237. package/dist/Scope/ScopeObject.js.map +0 -1
  238. package/dist/Scope/ScopeReference.d.ts +0 -10
  239. package/dist/Scope/ScopeReference.js +0 -73
  240. package/dist/Scope/ScopeReference.js.map +0 -1
  241. package/dist/Scope/ScopedVariableType.d.ts +0 -6
  242. package/dist/Scope/ScopedVariableType.js +0 -14
  243. package/dist/Scope/ScopedVariableType.js.map +0 -1
  244. package/dist/Scope/WrappedArray.d.ts +0 -21
  245. package/dist/Scope/WrappedArray.js +0 -252
  246. package/dist/Scope/WrappedArray.js.map +0 -1
  247. package/dist/Scope/properties/ArrayProperty.d.ts +0 -12
  248. package/dist/Scope/properties/ArrayProperty.js +0 -88
  249. package/dist/Scope/properties/ArrayProperty.js.map +0 -1
  250. package/dist/Scope/properties/FloatProperty.d.ts +0 -4
  251. package/dist/Scope/properties/FloatProperty.js +0 -30
  252. package/dist/Scope/properties/FloatProperty.js.map +0 -1
  253. package/dist/Scope/properties/IntegerProperty.d.ts +0 -4
  254. package/dist/Scope/properties/IntegerProperty.js +0 -30
  255. package/dist/Scope/properties/IntegerProperty.js.map +0 -1
  256. package/dist/Scope/properties/Property.d.ts +0 -30
  257. package/dist/Scope/properties/Property.js +0 -205
  258. package/dist/Scope/properties/Property.js.map +0 -1
  259. package/dist/Scope/properties/_imports.d.ts +0 -4
  260. package/dist/Scope/properties/_imports.js +0 -13
  261. package/dist/Scope/properties/_imports.js.map +0 -1
  262. package/dist/Scope.d.ts +0 -39
  263. package/dist/Scope.js +0 -434
  264. package/dist/Scope.js.map +0 -1
  265. package/dist/Service.d.ts +0 -9
  266. package/dist/Service.js +0 -49
  267. package/dist/Service.js.map +0 -1
  268. package/dist/Tag/ShadowRootTag.d.ts +0 -3
  269. package/dist/Tag/ShadowRootTag.js +0 -28
  270. package/dist/Tag/ShadowRootTag.js.map +0 -1
  271. package/dist/Tag/SlotTag.d.ts +0 -3
  272. package/dist/Tag/SlotTag.js +0 -28
  273. package/dist/Tag/SlotTag.js.map +0 -1
  274. package/dist/Tag/SlottedTag.d.ts +0 -7
  275. package/dist/Tag/SlottedTag.js +0 -78
  276. package/dist/Tag/SlottedTag.js.map +0 -1
  277. package/dist/Tag/TagList.d.ts +0 -13
  278. package/dist/Tag/TagList.js +0 -104
  279. package/dist/Tag/TagList.js.map +0 -1
  280. package/dist/Tag.d.ts +0 -117
  281. package/dist/Tag.js +0 -1471
  282. package/dist/Tag.js.map +0 -1
  283. package/dist/Types.d.ts +0 -8
  284. package/dist/Types.js +0 -54
  285. package/dist/Types.js.map +0 -1
  286. package/dist/Validators.d.ts +0 -7
  287. package/dist/Validators.js +0 -54
  288. package/dist/Validators.js.map +0 -1
  289. package/dist/attributes/AddClassIf.d.ts +0 -4
  290. package/dist/attributes/AddClassIf.js +0 -93
  291. package/dist/attributes/AddClassIf.js.map +0 -1
  292. package/dist/attributes/Bind.d.ts +0 -24
  293. package/dist/attributes/Bind.js +0 -273
  294. package/dist/attributes/Bind.js.map +0 -1
  295. package/dist/attributes/ComponentAttribute.d.ts +0 -5
  296. package/dist/attributes/ComponentAttribute.js +0 -110
  297. package/dist/attributes/ComponentAttribute.js.map +0 -1
  298. package/dist/attributes/ControllerAttribute.d.ts +0 -11
  299. package/dist/attributes/ControllerAttribute.js +0 -127
  300. package/dist/attributes/ControllerAttribute.js.map +0 -1
  301. package/dist/attributes/DisableIf.d.ts +0 -5
  302. package/dist/attributes/DisableIf.js +0 -94
  303. package/dist/attributes/DisableIf.js.map +0 -1
  304. package/dist/attributes/Exec.d.ts +0 -10
  305. package/dist/attributes/Exec.js +0 -133
  306. package/dist/attributes/Exec.js.map +0 -1
  307. package/dist/attributes/Format.d.ts +0 -5
  308. package/dist/attributes/Format.js +0 -99
  309. package/dist/attributes/Format.js.map +0 -1
  310. package/dist/attributes/If.d.ts +0 -11
  311. package/dist/attributes/If.js +0 -159
  312. package/dist/attributes/If.js.map +0 -1
  313. package/dist/attributes/JSONAttribute.d.ts +0 -5
  314. package/dist/attributes/JSONAttribute.js +0 -119
  315. package/dist/attributes/JSONAttribute.js.map +0 -1
  316. package/dist/attributes/KeyAbstract.d.ts +0 -7
  317. package/dist/attributes/KeyAbstract.js +0 -117
  318. package/dist/attributes/KeyAbstract.js.map +0 -1
  319. package/dist/attributes/KeyDown.d.ts +0 -4
  320. package/dist/attributes/KeyDown.js +0 -88
  321. package/dist/attributes/KeyDown.js.map +0 -1
  322. package/dist/attributes/KeyUp.d.ts +0 -4
  323. package/dist/attributes/KeyUp.js +0 -88
  324. package/dist/attributes/KeyUp.js.map +0 -1
  325. package/dist/attributes/LazyAttribute.d.ts +0 -8
  326. package/dist/attributes/LazyAttribute.js +0 -122
  327. package/dist/attributes/LazyAttribute.js.map +0 -1
  328. package/dist/attributes/List.d.ts +0 -18
  329. package/dist/attributes/List.js +0 -396
  330. package/dist/attributes/List.js.map +0 -1
  331. package/dist/attributes/ListItem.d.ts +0 -12
  332. package/dist/attributes/ListItem.js +0 -119
  333. package/dist/attributes/ListItem.js.map +0 -1
  334. package/dist/attributes/ListItemModel.d.ts +0 -4
  335. package/dist/attributes/ListItemModel.js +0 -39
  336. package/dist/attributes/ListItemModel.js.map +0 -1
  337. package/dist/attributes/ModelAttribute.d.ts +0 -5
  338. package/dist/attributes/ModelAttribute.js +0 -41
  339. package/dist/attributes/ModelAttribute.js.map +0 -1
  340. package/dist/attributes/Name.d.ts +0 -6
  341. package/dist/attributes/Name.js +0 -88
  342. package/dist/attributes/Name.js.map +0 -1
  343. package/dist/attributes/On.d.ts +0 -9
  344. package/dist/attributes/On.js +0 -135
  345. package/dist/attributes/On.js.map +0 -1
  346. package/dist/attributes/PersistAttribute.d.ts +0 -15
  347. package/dist/attributes/PersistAttribute.js +0 -215
  348. package/dist/attributes/PersistAttribute.js.map +0 -1
  349. package/dist/attributes/Referenced.d.ts +0 -3
  350. package/dist/attributes/Referenced.js +0 -38
  351. package/dist/attributes/Referenced.js.map +0 -1
  352. package/dist/attributes/RootAttribute.d.ts +0 -7
  353. package/dist/attributes/RootAttribute.js +0 -141
  354. package/dist/attributes/RootAttribute.js.map +0 -1
  355. package/dist/attributes/ScopeAttribute.d.ts +0 -9
  356. package/dist/attributes/ScopeAttribute.js +0 -152
  357. package/dist/attributes/ScopeAttribute.js.map +0 -1
  358. package/dist/attributes/ScopeChange.d.ts +0 -10
  359. package/dist/attributes/ScopeChange.js +0 -153
  360. package/dist/attributes/ScopeChange.js.map +0 -1
  361. package/dist/attributes/ScriptAttribute.d.ts +0 -4
  362. package/dist/attributes/ScriptAttribute.js +0 -45
  363. package/dist/attributes/ScriptAttribute.js.map +0 -1
  364. package/dist/attributes/ServiceAttribute.d.ts +0 -7
  365. package/dist/attributes/ServiceAttribute.js +0 -45
  366. package/dist/attributes/ServiceAttribute.js.map +0 -1
  367. package/dist/attributes/SetAttribute.d.ts +0 -11
  368. package/dist/attributes/SetAttribute.js +0 -146
  369. package/dist/attributes/SetAttribute.js.map +0 -1
  370. package/dist/attributes/StandardAttribute.d.ts +0 -15
  371. package/dist/attributes/StandardAttribute.js +0 -170
  372. package/dist/attributes/StandardAttribute.js.map +0 -1
  373. package/dist/attributes/StyleAttribute.d.ts +0 -14
  374. package/dist/attributes/StyleAttribute.js +0 -218
  375. package/dist/attributes/StyleAttribute.js.map +0 -1
  376. package/dist/attributes/StyleVarAttribute.d.ts +0 -11
  377. package/dist/attributes/StyleVarAttribute.js +0 -124
  378. package/dist/attributes/StyleVarAttribute.js.map +0 -1
  379. package/dist/attributes/TemplateAttribute.d.ts +0 -5
  380. package/dist/attributes/TemplateAttribute.js +0 -89
  381. package/dist/attributes/TemplateAttribute.js.map +0 -1
  382. package/dist/attributes/TypeAttribute.d.ts +0 -5
  383. package/dist/attributes/TypeAttribute.js +0 -104
  384. package/dist/attributes/TypeAttribute.js.map +0 -1
  385. package/dist/attributes/XHRAttribute.d.ts +0 -14
  386. package/dist/attributes/XHRAttribute.js +0 -242
  387. package/dist/attributes/XHRAttribute.js.map +0 -1
  388. package/dist/attributes/_imports.d.ts +0 -32
  389. package/dist/attributes/_imports.js +0 -68
  390. package/dist/attributes/_imports.js.map +0 -1
  391. package/dist/contrib/XHR.d.ts +0 -21
  392. package/dist/contrib/XHR.js +0 -78
  393. package/dist/contrib/XHR.js.map +0 -1
  394. package/dist/contrib/_imports.d.ts +0 -1
  395. package/dist/contrib/_imports.js +0 -6
  396. package/dist/contrib/_imports.js.map +0 -1
  397. package/dist/custom-elements.d.ts +0 -9
  398. package/dist/custom-elements.js +0 -44
  399. package/dist/custom-elements.js.map +0 -1
  400. package/dist/demo/ServiceDemo.d.ts +0 -5
  401. package/dist/demo/ServiceDemo.js +0 -87
  402. package/dist/demo/ServiceDemo.js.map +0 -1
  403. package/dist/demo.d.ts +0 -2
  404. package/dist/demo.js +0 -17
  405. package/dist/demo.js.map +0 -1
  406. package/dist/helpers/DOMHelper.d.ts +0 -3
  407. package/dist/helpers/DOMHelper.js +0 -81
  408. package/dist/helpers/DOMHelper.js.map +0 -1
  409. package/dist/helpers/ElementHelper.d.ts +0 -4
  410. package/dist/helpers/ElementHelper.js +0 -53
  411. package/dist/helpers/ElementHelper.js.map +0 -1
  412. package/dist/helpers/VisionHelper.d.ts +0 -13
  413. package/dist/helpers/VisionHelper.js +0 -148
  414. package/dist/helpers/VisionHelper.js.map +0 -1
  415. package/dist/helpers/decorators.d.ts +0 -5
  416. package/dist/helpers/decorators.js +0 -59
  417. package/dist/helpers/decorators.js.map +0 -1
  418. package/dist/version.d.ts +0 -1
  419. package/dist/version.js +0 -5
  420. package/dist/version.js.map +0 -1
  421. package/dist/vsn.d.ts +0 -36
  422. package/dist/vsn.js +0 -201
  423. package/dist/vsn.js.map +0 -1
  424. package/karma.conf.js +0 -34
  425. package/src/AST/ArithmeticNode.ts +0 -52
  426. package/src/AST/ArrayNode.ts +0 -39
  427. package/src/AST/AsNode.ts +0 -32
  428. package/src/AST/AssignmentNode.ts +0 -256
  429. package/src/AST/BlockNode.ts +0 -25
  430. package/src/AST/BooleanLiteralNode.ts +0 -10
  431. package/src/AST/ClassNode.ts +0 -267
  432. package/src/AST/ComparisonNode.ts +0 -57
  433. package/src/AST/ConditionalNode.ts +0 -36
  434. package/src/AST/DispatchEventNode.ts +0 -58
  435. package/src/AST/ElementAttributeNode.ts +0 -97
  436. package/src/AST/ElementQueryNode.ts +0 -48
  437. package/src/AST/ElementStyleNode.ts +0 -74
  438. package/src/AST/ForStatementNode.ts +0 -59
  439. package/src/AST/FunctionArgumentNode.ts +0 -27
  440. package/src/AST/FunctionCallNode.ts +0 -93
  441. package/src/AST/FunctionNode.ts +0 -82
  442. package/src/AST/IfStatementNode.ts +0 -67
  443. package/src/AST/InNode.ts +0 -46
  444. package/src/AST/IndexNode.ts +0 -64
  445. package/src/AST/LiteralNode.ts +0 -17
  446. package/src/AST/LoopNode.ts +0 -35
  447. package/src/AST/ModifierNode.ts +0 -32
  448. package/src/AST/NamedStackNode.ts +0 -83
  449. package/src/AST/Node.ts +0 -104
  450. package/src/AST/NotNode.ts +0 -41
  451. package/src/AST/NumberLiteralNode.ts +0 -14
  452. package/src/AST/ObjectNode.ts +0 -55
  453. package/src/AST/OnNode.ts +0 -23
  454. package/src/AST/RootScopeMemberNode.ts +0 -27
  455. package/src/AST/ScopeMemberNode.ts +0 -63
  456. package/src/AST/ScopeNodeAbstract.ts +0 -21
  457. package/src/AST/StringFormatNode.ts +0 -43
  458. package/src/AST/UnitLiteralNode.ts +0 -51
  459. package/src/AST/WASM/Context.ts +0 -12
  460. package/src/AST/WASM/Function.ts +0 -67
  461. package/src/AST/WASM/Memory.ts +0 -21
  462. package/src/AST/WASM/Section.ts +0 -6
  463. package/src/AST/WASM.ts +0 -244
  464. package/src/AST/WithNode.ts +0 -68
  465. package/src/AST/XHRNode.ts +0 -85
  466. package/src/AST.ts +0 -969
  467. package/src/Attribute.ts +0 -130
  468. package/src/Bencmark.ts +0 -184
  469. package/src/Component.ts +0 -63
  470. package/src/Configuration.ts +0 -47
  471. package/src/Controller.ts +0 -36
  472. package/src/DOM/AbstractDOM.ts +0 -462
  473. package/src/DOM/DOMObject.ts +0 -77
  474. package/src/DOM/ShadowDOM.ts +0 -15
  475. package/src/DOM/WrappedDocument.ts +0 -9
  476. package/src/DOM/WrappedWindow.ts +0 -21
  477. package/src/DOM.ts +0 -13
  478. package/src/EventDispatcher.ts +0 -234
  479. package/src/Formats.ts +0 -33
  480. package/src/MessageList.ts +0 -85
  481. package/src/Model.ts +0 -44
  482. package/src/Modifiers.ts +0 -54
  483. package/src/Query.ts +0 -17
  484. package/src/Registry.ts +0 -141
  485. package/src/Scope/DynamicScopeData.ts +0 -27
  486. package/src/Scope/ObjectAccessor.ts +0 -21
  487. package/src/Scope/QueryReference.ts +0 -29
  488. package/src/Scope/ScopeAbstract.ts +0 -11
  489. package/src/Scope/ScopeData.ts +0 -20
  490. package/src/Scope/ScopeDataAbstract.ts +0 -200
  491. package/src/Scope/ScopeObject.ts +0 -3
  492. package/src/Scope/ScopeReference.ts +0 -30
  493. package/src/Scope/ScopedVariableType.ts +0 -7
  494. package/src/Scope/WrappedArray.ts +0 -134
  495. package/src/Scope/properties/ArrayProperty.ts +0 -46
  496. package/src/Scope/properties/FloatProperty.ts +0 -5
  497. package/src/Scope/properties/IntegerProperty.ts +0 -5
  498. package/src/Scope/properties/Property.ts +0 -173
  499. package/src/Scope/properties/_imports.ts +0 -4
  500. package/src/Scope.ts +0 -333
  501. package/src/Service.ts +0 -24
  502. package/src/Tag/ShadowRootTag.ts +0 -5
  503. package/src/Tag/SlotTag.ts +0 -5
  504. package/src/Tag/SlottedTag.ts +0 -17
  505. package/src/Tag/TagList.ts +0 -52
  506. package/src/Tag.ts +0 -838
  507. package/src/Types.ts +0 -34
  508. package/src/Validators.ts +0 -45
  509. package/src/attributes/AddClassIf.ts +0 -14
  510. package/src/attributes/Bind.ts +0 -144
  511. package/src/attributes/ComponentAttribute.ts +0 -23
  512. package/src/attributes/ControllerAttribute.ts +0 -50
  513. package/src/attributes/DisableIf.ts +0 -16
  514. package/src/attributes/Exec.ts +0 -32
  515. package/src/attributes/Format.ts +0 -18
  516. package/src/attributes/If.ts +0 -40
  517. package/src/attributes/JSONAttribute.ts +0 -40
  518. package/src/attributes/KeyAbstract.ts +0 -28
  519. package/src/attributes/KeyDown.ts +0 -10
  520. package/src/attributes/KeyUp.ts +0 -10
  521. package/src/attributes/LazyAttribute.ts +0 -30
  522. package/src/attributes/List.ts +0 -210
  523. package/src/attributes/ListItem.ts +0 -30
  524. package/src/attributes/ListItemModel.ts +0 -7
  525. package/src/attributes/ModelAttribute.ts +0 -8
  526. package/src/attributes/Name.ts +0 -16
  527. package/src/attributes/On.ts +0 -39
  528. package/src/attributes/PersistAttribute.ts +0 -83
  529. package/src/attributes/Referenced.ts +0 -5
  530. package/src/attributes/RootAttribute.ts +0 -24
  531. package/src/attributes/ScopeAttribute.ts +0 -40
  532. package/src/attributes/ScopeChange.ts +0 -35
  533. package/src/attributes/ScriptAttribute.ts +0 -9
  534. package/src/attributes/ServiceAttribute.ts +0 -13
  535. package/src/attributes/SetAttribute.ts +0 -44
  536. package/src/attributes/StandardAttribute.ts +0 -72
  537. package/src/attributes/StyleAttribute.ts +0 -90
  538. package/src/attributes/StyleVarAttribute.ts +0 -40
  539. package/src/attributes/TemplateAttribute.ts +0 -12
  540. package/src/attributes/TypeAttribute.ts +0 -23
  541. package/src/attributes/XHRAttribute.ts +0 -109
  542. package/src/attributes/_imports.ts +0 -32
  543. package/src/contrib/XHR.ts +0 -46
  544. package/src/contrib/_imports.ts +0 -1
  545. package/src/custom-elements.ts +0 -46
  546. package/src/demo/ServiceDemo.ts +0 -12
  547. package/src/demo.ts +0 -2
  548. package/src/helpers/DOMHelper.ts +0 -17
  549. package/src/helpers/ElementHelper.ts +0 -26
  550. package/src/helpers/VisionHelper.ts +0 -88
  551. package/src/helpers/decorators.ts +0 -11
  552. package/src/version.ts +0 -2
  553. package/src/vsn.ts +0 -106
  554. package/test/AST/ArithmeticAssignmentNode.spec.ts +0 -45
  555. package/test/AST/ClassNode.spec.ts +0 -175
  556. package/test/AST/FunctionNode.spec.ts +0 -51
  557. package/test/AST/StringFormatNode.spec.ts +0 -12
  558. package/test/AST/WASM.spec.ts +0 -63
  559. package/test/AST/XHRNode.spec.ts +0 -10
  560. package/test/AST.spec.ts +0 -353
  561. package/test/Controller.spec.ts +0 -42
  562. package/test/DOM.spec.ts +0 -63
  563. package/test/EventDispatcher.spec.ts +0 -191
  564. package/test/MessageList.spec.ts +0 -101
  565. package/test/Model/DataModel.spec.ts +0 -0
  566. package/test/Scope/DynamicScopeData.spec.ts +0 -141
  567. package/test/Scope/ScopeData.spec.ts +0 -58
  568. package/test/Scope/WrappedArray.spec.ts +0 -11
  569. package/test/Scope/properties/ArrayProperty.spec.ts +0 -23
  570. package/test/Scope.spec.ts +0 -69
  571. package/test/Tag/TagList.spec.ts +0 -21
  572. package/test/Tag.spec.ts +0 -4
  573. package/test/attributes/Bind.spec.ts +0 -174
  574. package/test/attributes/JSONAttribute.spec.ts +0 -91
  575. package/test/attributes/ListItem.spec.ts +0 -118
  576. package/test/attributes/ScopeAttribute.spec.ts +0 -35
  577. package/test/attributes/ServiceAttribute.spec.ts +0 -41
  578. package/test/attributes/SetAttribute.spec.ts +0 -55
  579. package/test/attributes/Styles.spec.ts +0 -43
  580. package/test/globals.js +0 -2
  581. package/tsconfig.base.json +0 -17
  582. package/tsconfig.json +0 -6
  583. package/tsconfig.test.json +0 -7
  584. package/types/vsn-component.d.ts +0 -5
  585. package/webpack.config.js +0 -48
  586. package/webpack.development.js +0 -6
  587. package/webpack.production.js +0 -5
@@ -1,1038 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (_) try {
33
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
- var __values = (this && this.__values) || function(o) {
54
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
55
- if (m) return m.call(o);
56
- if (o && typeof o.length === "number") return {
57
- next: function () {
58
- if (o && i >= o.length) o = void 0;
59
- return { value: o && o[i++], done: !o };
60
- }
61
- };
62
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
63
- };
64
- var __read = (this && this.__read) || function (o, n) {
65
- var m = typeof Symbol === "function" && o[Symbol.iterator];
66
- if (!m) return o;
67
- var i = m.call(o), r, ar = [], e;
68
- try {
69
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
70
- }
71
- catch (error) { e = { error: error }; }
72
- finally {
73
- try {
74
- if (r && !r.done && (m = i["return"])) m.call(i);
75
- }
76
- finally { if (e) throw e.error; }
77
- }
78
- return ar;
79
- };
80
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
81
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
82
- to[j] = from[i];
83
- return to;
84
- };
85
- Object.defineProperty(exports, "__esModule", { value: true });
86
- exports.AbstractDOM = exports.EQuerySelectDirection = void 0;
87
- var Tag_1 = require("../Tag");
88
- var WrappedWindow_1 = require("./WrappedWindow");
89
- var WrappedDocument_1 = require("./WrappedDocument");
90
- var Configuration_1 = require("../Configuration");
91
- var TagList_1 = require("../Tag/TagList");
92
- var AST_1 = require("../AST");
93
- var ClassNode_1 = require("../AST/ClassNode");
94
- var Registry_1 = require("../Registry");
95
- var ElementHelper_1 = require("../helpers/ElementHelper");
96
- var SlotTag_1 = require("../Tag/SlotTag");
97
- var SlottedTag_1 = require("../Tag/SlottedTag");
98
- var Scope_1 = require("../Scope");
99
- var EventDispatcher_1 = require("../EventDispatcher");
100
- var EQuerySelectDirection;
101
- (function (EQuerySelectDirection) {
102
- EQuerySelectDirection[EQuerySelectDirection["ALL"] = 0] = "ALL";
103
- EQuerySelectDirection[EQuerySelectDirection["UP"] = 1] = "UP";
104
- EQuerySelectDirection[EQuerySelectDirection["DOWN"] = 2] = "DOWN";
105
- })(EQuerySelectDirection = exports.EQuerySelectDirection || (exports.EQuerySelectDirection = {}));
106
- var AbstractDOM = /** @class */ (function (_super) {
107
- __extends(AbstractDOM, _super);
108
- function AbstractDOM(rootElement, build, debug) {
109
- if (build === void 0) { build = true; }
110
- if (debug === void 0) { debug = false; }
111
- var _this = _super.call(this) || this;
112
- _this.rootElement = rootElement;
113
- _this.debug = debug;
114
- _this.queued = [];
115
- _this._built = false;
116
- _this._ready = new Promise(function (resolve) {
117
- _this.once('built', function () {
118
- resolve(true);
119
- });
120
- });
121
- _this.observer = new MutationObserver(_this.mutation.bind(_this));
122
- _this.tags = [];
123
- _this.tagsToDeconstruct = [];
124
- _this.scopesToDeconstruct = [];
125
- _this.window = new WrappedWindow_1.WrappedWindow(window);
126
- _this.document = new WrappedDocument_1.WrappedDocument(window.document);
127
- if (build) {
128
- _this.buildFrom(rootElement, true);
129
- }
130
- _this.evaluate();
131
- Configuration_1.Configuration.instance.on('change', _this.evaluate.bind(_this));
132
- return _this;
133
- }
134
- Object.defineProperty(AbstractDOM.prototype, "built", {
135
- get: function () {
136
- return this._built;
137
- },
138
- enumerable: false,
139
- configurable: true
140
- });
141
- Object.defineProperty(AbstractDOM.prototype, "root", {
142
- get: function () {
143
- return this._root;
144
- },
145
- enumerable: false,
146
- configurable: true
147
- });
148
- Object.defineProperty(AbstractDOM.prototype, "ready", {
149
- get: function () {
150
- return this.promise('builtRoot');
151
- },
152
- enumerable: false,
153
- configurable: true
154
- });
155
- AbstractDOM.prototype.get = function (selector, create, tag, direction) {
156
- if (create === void 0) { create = false; }
157
- if (tag === void 0) { tag = null; }
158
- if (direction === void 0) { direction = EQuerySelectDirection.DOWN; }
159
- return __awaiter(this, void 0, void 0, function () {
160
- var _a, nodes;
161
- return __generator(this, function (_b) {
162
- switch (_b.label) {
163
- case 0:
164
- _a = selector;
165
- switch (_a) {
166
- case 'window': return [3 /*break*/, 1];
167
- case 'document': return [3 /*break*/, 2];
168
- case 'body': return [3 /*break*/, 3];
169
- }
170
- return [3 /*break*/, 4];
171
- case 1: return [2 /*return*/, new TagList_1.TagList(this.window)];
172
- case 2: return [2 /*return*/, new TagList_1.TagList(this.document)];
173
- case 3: return [2 /*return*/, new TagList_1.TagList(this.root)];
174
- case 4:
175
- nodes = void 0;
176
- if (direction === EQuerySelectDirection.DOWN) {
177
- nodes = this.querySelectorAll(selector, tag);
178
- }
179
- else if (direction === EQuerySelectDirection.UP) {
180
- nodes = [this.querySelectorClosest(selector, tag)];
181
- }
182
- else {
183
- nodes = this.querySelectorAll(selector);
184
- }
185
- return [4 /*yield*/, this.getTagsForElements(Array.from(nodes), create)];
186
- case 5: return [2 /*return*/, _b.sent()];
187
- }
188
- });
189
- });
190
- };
191
- AbstractDOM.prototype.getFromTag = function (tag, selector, create) {
192
- if (create === void 0) { create = false; }
193
- return __awaiter(this, void 0, void 0, function () {
194
- var nodes;
195
- return __generator(this, function (_a) {
196
- switch (_a.label) {
197
- case 0:
198
- nodes = this.querySelectorElement(tag.element, selector);
199
- return [4 /*yield*/, this.getTagsForElements(Array.from(nodes), create)];
200
- case 1: return [2 /*return*/, _a.sent()];
201
- }
202
- });
203
- });
204
- };
205
- AbstractDOM.prototype.registerElementInRoot = function (tag) {
206
- var id = tag.element.getAttribute('id');
207
- if (!!id)
208
- this.root.scope.set("#" + id, tag.scope);
209
- };
210
- AbstractDOM.prototype.deregisterElementInRoot = function (tag) {
211
- if (!tag.element || !this.root)
212
- return;
213
- var id = tag.element.getAttribute('id');
214
- if (!!id)
215
- this.root.scope.remove("#" + id);
216
- };
217
- AbstractDOM.prototype.querySelectorClosest = function (q, tag) {
218
- if (tag === void 0) { tag = null; }
219
- return tag.element.closest(q);
220
- };
221
- AbstractDOM.prototype.querySelectPath = function (path, element) {
222
- var e_1, _a;
223
- if (element === void 0) { element = null; }
224
- var current = path.shift();
225
- if (!current)
226
- return [];
227
- var elements = Array.from(element ? this.querySelectorElement(element, current) : this.querySelectorAll(current));
228
- if (path.length > 0) {
229
- var result = [];
230
- try {
231
- for (var elements_1 = __values(elements), elements_1_1 = elements_1.next(); !elements_1_1.done; elements_1_1 = elements_1.next()) {
232
- var _element = elements_1_1.value;
233
- result.push.apply(result, __spreadArray([], __read(this.querySelectPath(__spreadArray([], __read(path)), _element))));
234
- }
235
- }
236
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
237
- finally {
238
- try {
239
- if (elements_1_1 && !elements_1_1.done && (_a = elements_1.return)) _a.call(elements_1);
240
- }
241
- finally { if (e_1) throw e_1.error; }
242
- }
243
- return result;
244
- }
245
- return elements;
246
- };
247
- AbstractDOM.prototype.querySelectorAll = function (q, tag) {
248
- if (tag === void 0) { tag = null; }
249
- var element = tag && !q.startsWith('#') ? tag.element : this.rootElement;
250
- return this.querySelectorElement(element, q);
251
- };
252
- AbstractDOM.prototype.querySelectorElement = function (element, q) {
253
- var e_2, _a;
254
- var parentIndex = q.indexOf(':parent');
255
- if (parentIndex > -1) {
256
- var _q = q.substring(0, parentIndex);
257
- var rest = q.substring(parentIndex + 7);
258
- if (_q.length > 0) {
259
- var nodeList = [];
260
- try {
261
- for (var _b = __values(Array.from(this.querySelectorElement(element, _q))), _c = _b.next(); !_c.done; _c = _b.next()) {
262
- var _element = _c.value;
263
- if (rest.length > 0) {
264
- nodeList.push.apply(nodeList, __spreadArray([], __read(Array.from(this.querySelectorElement(AbstractDOM.getParentElement(_element), rest)))));
265
- }
266
- else {
267
- nodeList.push(AbstractDOM.getParentElement(_element));
268
- }
269
- }
270
- }
271
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
272
- finally {
273
- try {
274
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
275
- }
276
- finally { if (e_2) throw e_2.error; }
277
- }
278
- return nodeList;
279
- }
280
- else if (rest.length === 0) {
281
- return [AbstractDOM.getParentElement(element)];
282
- }
283
- else {
284
- return this.querySelectorElement(AbstractDOM.getParentElement(element), rest);
285
- }
286
- }
287
- var matches = element.querySelectorAll(q);
288
- if (matches.length === 0 && element.shadowRoot) {
289
- matches = element.shadowRoot.querySelectorAll(q);
290
- }
291
- return matches;
292
- };
293
- AbstractDOM.prototype.querySelector = function (q) {
294
- return this.rootElement.querySelector(q);
295
- };
296
- AbstractDOM.prototype.exec = function (code, data, cleanupScope) {
297
- if (data === void 0) { data = null; }
298
- if (cleanupScope === void 0) { cleanupScope = false; }
299
- return __awaiter(this, void 0, void 0, function () {
300
- var scope, tree;
301
- return __generator(this, function (_a) {
302
- switch (_a.label) {
303
- case 0:
304
- scope = this.root.scope;
305
- if (data !== null) {
306
- if (data instanceof Scope_1.Scope) {
307
- scope = data;
308
- }
309
- else {
310
- scope = new Scope_1.Scope();
311
- scope.wrap(data);
312
- cleanupScope = true;
313
- }
314
- }
315
- tree = new AST_1.Tree(code);
316
- return [4 /*yield*/, tree.prepare(scope, this)];
317
- case 1:
318
- _a.sent();
319
- if (cleanupScope)
320
- this.scopesToDeconstruct.push(scope);
321
- return [4 /*yield*/, tree.evaluate(scope, this)];
322
- case 2: return [2 /*return*/, _a.sent()];
323
- }
324
- });
325
- });
326
- };
327
- AbstractDOM.prototype.evaluate = function () {
328
- return __awaiter(this, void 0, void 0, function () {
329
- var _a, _b, tag, e_3_1;
330
- var e_3, _c;
331
- return __generator(this, function (_d) {
332
- switch (_d.label) {
333
- case 0:
334
- clearTimeout(this.evaluateTimeout);
335
- _d.label = 1;
336
- case 1:
337
- _d.trys.push([1, 6, 7, 8]);
338
- _a = __values(this.tags), _b = _a.next();
339
- _d.label = 2;
340
- case 2:
341
- if (!!_b.done) return [3 /*break*/, 5];
342
- tag = _b.value;
343
- return [4 /*yield*/, tag.evaluate()];
344
- case 3:
345
- _d.sent();
346
- _d.label = 4;
347
- case 4:
348
- _b = _a.next();
349
- return [3 /*break*/, 2];
350
- case 5: return [3 /*break*/, 8];
351
- case 6:
352
- e_3_1 = _d.sent();
353
- e_3 = { error: e_3_1 };
354
- return [3 /*break*/, 8];
355
- case 7:
356
- try {
357
- if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
358
- }
359
- finally { if (e_3) throw e_3.error; }
360
- return [7 /*endfinally*/];
361
- case 8: return [2 /*return*/];
362
- }
363
- });
364
- });
365
- };
366
- AbstractDOM.prototype.getTagsFromParent = function (parent, includeParent) {
367
- var e_4, _a;
368
- if (includeParent === void 0) { includeParent = true; }
369
- var tags = [];
370
- if (includeParent && parent[Tag_1.Tag.TaggedVariable]) {
371
- tags.push(parent[Tag_1.Tag.TaggedVariable]);
372
- }
373
- try {
374
- for (var _b = __values(Array.from(parent.childNodes)), _c = _b.next(); !_c.done; _c = _b.next()) {
375
- var ele = _c.value;
376
- tags.push.apply(tags, __spreadArray([], __read(this.getTagsFromParent(ele, true))));
377
- }
378
- }
379
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
380
- finally {
381
- try {
382
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
383
- }
384
- finally { if (e_4) throw e_4.error; }
385
- }
386
- return tags;
387
- };
388
- AbstractDOM.prototype.mutation = function (mutations) {
389
- return __awaiter(this, void 0, void 0, function () {
390
- var mutations_1, mutations_1_1, mutation, tag, _a, _b, ele, _c, _d, tag_1, e_5_1;
391
- var e_5, _e, e_6, _f, e_7, _g;
392
- return __generator(this, function (_h) {
393
- switch (_h.label) {
394
- case 0:
395
- _h.trys.push([0, 7, 8, 9]);
396
- mutations_1 = __values(mutations), mutations_1_1 = mutations_1.next();
397
- _h.label = 1;
398
- case 1:
399
- if (!!mutations_1_1.done) return [3 /*break*/, 6];
400
- mutation = mutations_1_1.value;
401
- return [4 /*yield*/, this.getTagForElement(mutation.target)];
402
- case 2:
403
- tag = _h.sent();
404
- if (tag) {
405
- tag.mutate(mutation);
406
- }
407
- if (!(mutation.type === 'attributes' && mutation.attributeName === 'class')) return [3 /*break*/, 4];
408
- return [4 /*yield*/, ClassNode_1.ClassNode.checkForClassChanges(mutation.target, this, tag)];
409
- case 3:
410
- _h.sent();
411
- _h.label = 4;
412
- case 4:
413
- try {
414
- for (_a = (e_6 = void 0, __values(Array.from(mutation.removedNodes))), _b = _a.next(); !_b.done; _b = _a.next()) {
415
- ele = _b.value;
416
- try {
417
- for (_c = (e_7 = void 0, __values(this.getTagsFromParent(ele))), _d = _c.next(); !_d.done; _d = _c.next()) {
418
- tag_1 = _d.value;
419
- if (tag_1.hasAttribute('vsn-template'))
420
- continue;
421
- this.tagsToDeconstruct.push(tag_1);
422
- }
423
- }
424
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
425
- finally {
426
- try {
427
- if (_d && !_d.done && (_g = _c.return)) _g.call(_c);
428
- }
429
- finally { if (e_7) throw e_7.error; }
430
- }
431
- }
432
- }
433
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
434
- finally {
435
- try {
436
- if (_b && !_b.done && (_f = _a.return)) _f.call(_a);
437
- }
438
- finally { if (e_6) throw e_6.error; }
439
- }
440
- _h.label = 5;
441
- case 5:
442
- mutations_1_1 = mutations_1.next();
443
- return [3 /*break*/, 1];
444
- case 6: return [3 /*break*/, 9];
445
- case 7:
446
- e_5_1 = _h.sent();
447
- e_5 = { error: e_5_1 };
448
- return [3 /*break*/, 9];
449
- case 8:
450
- try {
451
- if (mutations_1_1 && !mutations_1_1.done && (_e = mutations_1.return)) _e.call(mutations_1);
452
- }
453
- finally { if (e_5) throw e_5.error; }
454
- return [7 /*endfinally*/];
455
- case 9: return [2 /*return*/];
456
- }
457
- });
458
- });
459
- };
460
- AbstractDOM.prototype.discover = function (ele, forComponent) {
461
- if (forComponent === void 0) { forComponent = false; }
462
- return __awaiter(this, void 0, void 0, function () {
463
- var discovered, checkElement, scanChildren;
464
- var _this = this;
465
- return __generator(this, function (_a) {
466
- discovered = [];
467
- checkElement = function (e) {
468
- var _a, _b;
469
- if (!forComponent && ((_a = e === null || e === void 0 ? void 0 : e.tagName) === null || _a === void 0 ? void 0 : _a.includes('-'))) {
470
- return false;
471
- }
472
- if (Registry_1.Registry.instance.tags.has((_b = e === null || e === void 0 ? void 0 : e.tagName) === null || _b === void 0 ? void 0 : _b.toLowerCase())) {
473
- return false;
474
- }
475
- if (ElementHelper_1.ElementHelper.hasVisionAttribute(e)) {
476
- if ((!forComponent && e.hasAttribute('slot')))
477
- return false;
478
- if (_this.queued.indexOf(e) > -1)
479
- return false;
480
- _this.queued.push(e);
481
- discovered.push(e);
482
- }
483
- return true;
484
- };
485
- scanChildren = function (e) {
486
- var e_8, _a;
487
- try {
488
- for (var _b = __values(Array.from(e.children)), _c = _b.next(); !_c.done; _c = _b.next()) {
489
- var element = _c.value;
490
- if (!checkElement(element))
491
- continue;
492
- if (element.tagName.toLowerCase() !== 'template')
493
- scanChildren(element);
494
- }
495
- }
496
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
497
- finally {
498
- try {
499
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
500
- }
501
- finally { if (e_8) throw e_8.error; }
502
- }
503
- };
504
- checkElement(ele);
505
- scanChildren(ele);
506
- return [2 /*return*/, discovered];
507
- });
508
- });
509
- };
510
- AbstractDOM.prototype.buildTag = function (element, returnExisting, cls) {
511
- if (returnExisting === void 0) { returnExisting = false; }
512
- if (cls === void 0) { cls = Tag_1.Tag; }
513
- return __awaiter(this, void 0, void 0, function () {
514
- var tag;
515
- return __generator(this, function (_a) {
516
- if (element[Tag_1.Tag.TaggedVariable]) {
517
- this.removedQueued(element);
518
- return [2 /*return*/, returnExisting ? element[Tag_1.Tag.TaggedVariable] : null];
519
- }
520
- if (element.tagName.toLowerCase() === 'slot')
521
- cls = SlotTag_1.SlotTag;
522
- else if (element.hasAttribute('slot'))
523
- cls = SlottedTag_1.SlottedTag;
524
- tag = new cls(element, this);
525
- this.tags.push(tag);
526
- tag.once('deconstruct', this.removeTag, this);
527
- return [2 /*return*/, tag];
528
- });
529
- });
530
- };
531
- AbstractDOM.prototype.removeTag = function (tag) {
532
- var index = this.tags.indexOf(tag);
533
- if (index > -1)
534
- this.tags.splice(index, 1);
535
- };
536
- AbstractDOM.prototype.setupTags = function (tags) {
537
- return __awaiter(this, void 0, void 0, function () {
538
- var tags_1, tags_1_1, tag, e_9_1, tags_2, tags_2_1, tag, e_10_1, tags_3, tags_3_1, tag, e_11_1, tags_4, tags_4_1, tag, e_12_1, tags_5, tags_5_1, tag, e_13_1, tags_6, tags_6_1, tag, e_14_1, tags_7, tags_7_1, tag;
539
- var e_9, _a, e_10, _b, e_11, _c, e_12, _d, e_13, _e, e_14, _f, e_15, _g;
540
- return __generator(this, function (_h) {
541
- switch (_h.label) {
542
- case 0:
543
- _h.trys.push([0, 5, 6, 7]);
544
- tags_1 = __values(tags), tags_1_1 = tags_1.next();
545
- _h.label = 1;
546
- case 1:
547
- if (!!tags_1_1.done) return [3 /*break*/, 4];
548
- tag = tags_1_1.value;
549
- return [4 /*yield*/, tag.buildAttributes()];
550
- case 2:
551
- _h.sent();
552
- _h.label = 3;
553
- case 3:
554
- tags_1_1 = tags_1.next();
555
- return [3 /*break*/, 1];
556
- case 4: return [3 /*break*/, 7];
557
- case 5:
558
- e_9_1 = _h.sent();
559
- e_9 = { error: e_9_1 };
560
- return [3 /*break*/, 7];
561
- case 6:
562
- try {
563
- if (tags_1_1 && !tags_1_1.done && (_a = tags_1.return)) _a.call(tags_1);
564
- }
565
- finally { if (e_9) throw e_9.error; }
566
- return [7 /*endfinally*/];
567
- case 7:
568
- _h.trys.push([7, 12, 13, 14]);
569
- tags_2 = __values(tags), tags_2_1 = tags_2.next();
570
- _h.label = 8;
571
- case 8:
572
- if (!!tags_2_1.done) return [3 /*break*/, 11];
573
- tag = tags_2_1.value;
574
- return [4 /*yield*/, tag.compileAttributes()];
575
- case 9:
576
- _h.sent();
577
- _h.label = 10;
578
- case 10:
579
- tags_2_1 = tags_2.next();
580
- return [3 /*break*/, 8];
581
- case 11: return [3 /*break*/, 14];
582
- case 12:
583
- e_10_1 = _h.sent();
584
- e_10 = { error: e_10_1 };
585
- return [3 /*break*/, 14];
586
- case 13:
587
- try {
588
- if (tags_2_1 && !tags_2_1.done && (_b = tags_2.return)) _b.call(tags_2);
589
- }
590
- finally { if (e_10) throw e_10.error; }
591
- return [7 /*endfinally*/];
592
- case 14:
593
- _h.trys.push([14, 19, 20, 21]);
594
- tags_3 = __values(tags), tags_3_1 = tags_3.next();
595
- _h.label = 15;
596
- case 15:
597
- if (!!tags_3_1.done) return [3 /*break*/, 18];
598
- tag = tags_3_1.value;
599
- return [4 /*yield*/, tag.setupAttributes()];
600
- case 16:
601
- _h.sent();
602
- _h.label = 17;
603
- case 17:
604
- tags_3_1 = tags_3.next();
605
- return [3 /*break*/, 15];
606
- case 18: return [3 /*break*/, 21];
607
- case 19:
608
- e_11_1 = _h.sent();
609
- e_11 = { error: e_11_1 };
610
- return [3 /*break*/, 21];
611
- case 20:
612
- try {
613
- if (tags_3_1 && !tags_3_1.done && (_c = tags_3.return)) _c.call(tags_3);
614
- }
615
- finally { if (e_11) throw e_11.error; }
616
- return [7 /*endfinally*/];
617
- case 21:
618
- _h.trys.push([21, 26, 27, 28]);
619
- tags_4 = __values(tags), tags_4_1 = tags_4.next();
620
- _h.label = 22;
621
- case 22:
622
- if (!!tags_4_1.done) return [3 /*break*/, 25];
623
- tag = tags_4_1.value;
624
- return [4 /*yield*/, tag.extractAttributes()];
625
- case 23:
626
- _h.sent();
627
- _h.label = 24;
628
- case 24:
629
- tags_4_1 = tags_4.next();
630
- return [3 /*break*/, 22];
631
- case 25: return [3 /*break*/, 28];
632
- case 26:
633
- e_12_1 = _h.sent();
634
- e_12 = { error: e_12_1 };
635
- return [3 /*break*/, 28];
636
- case 27:
637
- try {
638
- if (tags_4_1 && !tags_4_1.done && (_d = tags_4.return)) _d.call(tags_4);
639
- }
640
- finally { if (e_12) throw e_12.error; }
641
- return [7 /*endfinally*/];
642
- case 28:
643
- _h.trys.push([28, 33, 34, 35]);
644
- tags_5 = __values(tags), tags_5_1 = tags_5.next();
645
- _h.label = 29;
646
- case 29:
647
- if (!!tags_5_1.done) return [3 /*break*/, 32];
648
- tag = tags_5_1.value;
649
- return [4 /*yield*/, tag.connectAttributes()];
650
- case 30:
651
- _h.sent();
652
- _h.label = 31;
653
- case 31:
654
- tags_5_1 = tags_5.next();
655
- return [3 /*break*/, 29];
656
- case 32: return [3 /*break*/, 35];
657
- case 33:
658
- e_13_1 = _h.sent();
659
- e_13 = { error: e_13_1 };
660
- return [3 /*break*/, 35];
661
- case 34:
662
- try {
663
- if (tags_5_1 && !tags_5_1.done && (_e = tags_5.return)) _e.call(tags_5);
664
- }
665
- finally { if (e_13) throw e_13.error; }
666
- return [7 /*endfinally*/];
667
- case 35:
668
- _h.trys.push([35, 40, 41, 42]);
669
- tags_6 = __values(tags), tags_6_1 = tags_6.next();
670
- _h.label = 36;
671
- case 36:
672
- if (!!tags_6_1.done) return [3 /*break*/, 39];
673
- tag = tags_6_1.value;
674
- return [4 /*yield*/, tag.finalize()];
675
- case 37:
676
- _h.sent();
677
- this.removedQueued(tag.element);
678
- _h.label = 38;
679
- case 38:
680
- tags_6_1 = tags_6.next();
681
- return [3 /*break*/, 36];
682
- case 39: return [3 /*break*/, 42];
683
- case 40:
684
- e_14_1 = _h.sent();
685
- e_14 = { error: e_14_1 };
686
- return [3 /*break*/, 42];
687
- case 41:
688
- try {
689
- if (tags_6_1 && !tags_6_1.done && (_f = tags_6.return)) _f.call(tags_6);
690
- }
691
- finally { if (e_14) throw e_14.error; }
692
- return [7 /*endfinally*/];
693
- case 42:
694
- try {
695
- for (tags_7 = __values(tags), tags_7_1 = tags_7.next(); !tags_7_1.done; tags_7_1 = tags_7.next()) {
696
- tag = tags_7_1.value;
697
- this.observer.observe(tag.element, {
698
- attributes: true,
699
- characterData: true,
700
- childList: true,
701
- subtree: true
702
- });
703
- }
704
- }
705
- catch (e_15_1) { e_15 = { error: e_15_1 }; }
706
- finally {
707
- try {
708
- if (tags_7_1 && !tags_7_1.done && (_g = tags_7.return)) _g.call(tags_7);
709
- }
710
- finally { if (e_15) throw e_15.error; }
711
- }
712
- return [2 /*return*/];
713
- }
714
- });
715
- });
716
- };
717
- AbstractDOM.prototype.removedQueued = function (element) {
718
- var index = this.queued.indexOf(element);
719
- if (index > -1)
720
- this.queued.splice(index, 1);
721
- };
722
- AbstractDOM.prototype.buildFrom = function (ele, isRoot, forComponent) {
723
- if (isRoot === void 0) { isRoot = false; }
724
- if (forComponent === void 0) { forComponent = false; }
725
- return __awaiter(this, void 0, void 0, function () {
726
- var _a, templateNodes, components, _b, _c, n, tag, e_16_1, newTags, toBuild, toBuild_1, toBuild_1_1, element, tag, e_17_1;
727
- var e_16, _d, e_17, _e;
728
- return __generator(this, function (_f) {
729
- switch (_f.label) {
730
- case 0:
731
- if (!isRoot) return [3 /*break*/, 3];
732
- this.rootElement.setAttribute('vsn-root', '');
733
- _a = this;
734
- return [4 /*yield*/, this.buildTag(this.rootElement, true)];
735
- case 1:
736
- _a._root = _f.sent();
737
- this._root.createScope(true);
738
- return [4 /*yield*/, this.setupTags([this._root])];
739
- case 2:
740
- _f.sent();
741
- _f.label = 3;
742
- case 3:
743
- templateNodes = this.querySelectorElement(ele, 'template');
744
- components = [];
745
- _f.label = 4;
746
- case 4:
747
- _f.trys.push([4, 9, 10, 11]);
748
- _b = __values(Array.from(templateNodes)), _c = _b.next();
749
- _f.label = 5;
750
- case 5:
751
- if (!!_c.done) return [3 /*break*/, 8];
752
- n = _c.value;
753
- if (!ElementHelper_1.ElementHelper.hasVisionAttribute(n))
754
- return [3 /*break*/, 7];
755
- return [4 /*yield*/, this.buildTag(n)];
756
- case 6:
757
- tag = _f.sent();
758
- if (tag)
759
- components.push(tag);
760
- _f.label = 7;
761
- case 7:
762
- _c = _b.next();
763
- return [3 /*break*/, 5];
764
- case 8: return [3 /*break*/, 11];
765
- case 9:
766
- e_16_1 = _f.sent();
767
- e_16 = { error: e_16_1 };
768
- return [3 /*break*/, 11];
769
- case 10:
770
- try {
771
- if (_c && !_c.done && (_d = _b.return)) _d.call(_b);
772
- }
773
- finally { if (e_16) throw e_16.error; }
774
- return [7 /*endfinally*/];
775
- case 11:
776
- if (!components.length) return [3 /*break*/, 13];
777
- return [4 /*yield*/, this.setupTags(components)];
778
- case 12:
779
- _f.sent();
780
- _f.label = 13;
781
- case 13:
782
- newTags = [];
783
- return [4 /*yield*/, this.discover(ele, forComponent)];
784
- case 14:
785
- toBuild = _f.sent();
786
- _f.label = 15;
787
- case 15:
788
- _f.trys.push([15, 20, 21, 22]);
789
- toBuild_1 = __values(toBuild), toBuild_1_1 = toBuild_1.next();
790
- _f.label = 16;
791
- case 16:
792
- if (!!toBuild_1_1.done) return [3 /*break*/, 19];
793
- element = toBuild_1_1.value;
794
- return [4 /*yield*/, this.buildTag(element)];
795
- case 17:
796
- tag = _f.sent();
797
- if (tag)
798
- newTags.push(tag);
799
- _f.label = 18;
800
- case 18:
801
- toBuild_1_1 = toBuild_1.next();
802
- return [3 /*break*/, 16];
803
- case 19: return [3 /*break*/, 22];
804
- case 20:
805
- e_17_1 = _f.sent();
806
- e_17 = { error: e_17_1 };
807
- return [3 /*break*/, 22];
808
- case 21:
809
- try {
810
- if (toBuild_1_1 && !toBuild_1_1.done && (_e = toBuild_1.return)) _e.call(toBuild_1);
811
- }
812
- finally { if (e_17) throw e_17.error; }
813
- return [7 /*endfinally*/];
814
- case 22: return [4 /*yield*/, this.setupTags(newTags)];
815
- case 23:
816
- _f.sent();
817
- if (isRoot) {
818
- this._built = true;
819
- this.dispatch('builtRoot');
820
- }
821
- this.dispatch('built', newTags);
822
- return [2 /*return*/, newTags];
823
- }
824
- });
825
- });
826
- };
827
- AbstractDOM.prototype.addGarbage = function (garbage) {
828
- if (garbage instanceof Scope_1.Scope) {
829
- this.scopesToDeconstruct.push(garbage);
830
- }
831
- else if (garbage instanceof Tag_1.Tag) {
832
- this.tagsToDeconstruct.push(garbage);
833
- }
834
- };
835
- AbstractDOM.prototype.cleanup = function () {
836
- var e_18, _a, e_19, _b;
837
- try {
838
- for (var _c = __values(this.tagsToDeconstruct), _d = _c.next(); !_d.done; _d = _c.next()) {
839
- var tag = _d.value;
840
- if (tag.state !== Tag_1.TagState.Deconstructed)
841
- tag.deconstruct();
842
- }
843
- }
844
- catch (e_18_1) { e_18 = { error: e_18_1 }; }
845
- finally {
846
- try {
847
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
848
- }
849
- finally { if (e_18) throw e_18.error; }
850
- }
851
- this.tagsToDeconstruct.length = 0;
852
- try {
853
- for (var _e = __values(this.scopesToDeconstruct), _f = _e.next(); !_f.done; _f = _e.next()) {
854
- var scope = _f.value;
855
- scope.deconstruct();
856
- }
857
- }
858
- catch (e_19_1) { e_19 = { error: e_19_1 }; }
859
- finally {
860
- try {
861
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
862
- }
863
- finally { if (e_19) throw e_19.error; }
864
- }
865
- this.tagsToDeconstruct.length = 0;
866
- };
867
- AbstractDOM.prototype.getTagsForElements = function (elements, create) {
868
- if (create === void 0) { create = false; }
869
- return __awaiter(this, void 0, void 0, function () {
870
- var tags, found, elements_2, elements_2_1, element, notFound, i, element, notFound_1, notFound_1_1, element, _a, _b, e_20_1;
871
- var e_21, _c, e_20, _d;
872
- return __generator(this, function (_e) {
873
- switch (_e.label) {
874
- case 0:
875
- tags = new TagList_1.TagList();
876
- found = [];
877
- try {
878
- for (elements_2 = __values(elements), elements_2_1 = elements_2.next(); !elements_2_1.done; elements_2_1 = elements_2.next()) {
879
- element = elements_2_1.value;
880
- if (element && element[Tag_1.Tag.TaggedVariable]) {
881
- tags.push(element[Tag_1.Tag.TaggedVariable]);
882
- found.push(element);
883
- }
884
- }
885
- }
886
- catch (e_21_1) { e_21 = { error: e_21_1 }; }
887
- finally {
888
- try {
889
- if (elements_2_1 && !elements_2_1.done && (_c = elements_2.return)) _c.call(elements_2);
890
- }
891
- finally { if (e_21) throw e_21.error; }
892
- }
893
- if (!create) return [3 /*break*/, 8];
894
- notFound = __spreadArray([], __read(elements));
895
- for (i = notFound.length; i >= 0; i--) {
896
- element = notFound[i];
897
- if (found.indexOf(element) > -1) {
898
- notFound.splice(i, 1);
899
- }
900
- }
901
- _e.label = 1;
902
- case 1:
903
- _e.trys.push([1, 6, 7, 8]);
904
- notFound_1 = __values(notFound), notFound_1_1 = notFound_1.next();
905
- _e.label = 2;
906
- case 2:
907
- if (!!notFound_1_1.done) return [3 /*break*/, 5];
908
- element = notFound_1_1.value;
909
- _b = (_a = tags).push;
910
- return [4 /*yield*/, this.getTagForElement(element, create)];
911
- case 3:
912
- _b.apply(_a, [_e.sent()]);
913
- _e.label = 4;
914
- case 4:
915
- notFound_1_1 = notFound_1.next();
916
- return [3 /*break*/, 2];
917
- case 5: return [3 /*break*/, 8];
918
- case 6:
919
- e_20_1 = _e.sent();
920
- e_20 = { error: e_20_1 };
921
- return [3 /*break*/, 8];
922
- case 7:
923
- try {
924
- if (notFound_1_1 && !notFound_1_1.done && (_d = notFound_1.return)) _d.call(notFound_1);
925
- }
926
- finally { if (e_20) throw e_20.error; }
927
- return [7 /*endfinally*/];
928
- case 8: return [2 /*return*/, tags];
929
- }
930
- });
931
- });
932
- };
933
- AbstractDOM.prototype.getTagForElement = function (element, create, forComponent) {
934
- if (create === void 0) { create = false; }
935
- if (forComponent === void 0) { forComponent = false; }
936
- return __awaiter(this, void 0, void 0, function () {
937
- return __generator(this, function (_a) {
938
- switch (_a.label) {
939
- case 0:
940
- if (element && element[Tag_1.Tag.TaggedVariable])
941
- return [2 /*return*/, element[Tag_1.Tag.TaggedVariable]];
942
- if (!(element && create)) return [3 /*break*/, 3];
943
- if (element instanceof HTMLElement)
944
- element.setAttribute('vsn-ref', '');
945
- return [4 /*yield*/, this.buildFrom(element.parentElement || element, false, forComponent)];
946
- case 1:
947
- _a.sent();
948
- return [4 /*yield*/, this.getTagForElement(element, false)];
949
- case 2: return [2 /*return*/, _a.sent()];
950
- case 3: return [2 /*return*/, null];
951
- }
952
- });
953
- });
954
- };
955
- AbstractDOM.prototype.getTagForScope = function (scope) {
956
- return __awaiter(this, void 0, void 0, function () {
957
- var _a, _b, tag;
958
- var e_22, _c;
959
- return __generator(this, function (_d) {
960
- try {
961
- for (_a = __values(this.tags), _b = _a.next(); !_b.done; _b = _a.next()) {
962
- tag = _b.value;
963
- if (tag.uniqueScope && tag.scope === scope)
964
- return [2 /*return*/, tag];
965
- }
966
- }
967
- catch (e_22_1) { e_22 = { error: e_22_1 }; }
968
- finally {
969
- try {
970
- if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
971
- }
972
- finally { if (e_22) throw e_22.error; }
973
- }
974
- return [2 /*return*/, null];
975
- });
976
- });
977
- };
978
- AbstractDOM.prototype.resetBranch = function (e) {
979
- return __awaiter(this, void 0, void 0, function () {
980
- var tag, children, children_1, children_1_1, t, e_23_1;
981
- var e_23, _a;
982
- return __generator(this, function (_b) {
983
- switch (_b.label) {
984
- case 0:
985
- if (e instanceof Tag_1.Tag)
986
- e = e.element;
987
- tag = e[Tag_1.Tag.TaggedVariable];
988
- if (tag) {
989
- tag.findParentTag();
990
- }
991
- children = Array.from(e.children);
992
- _b.label = 1;
993
- case 1:
994
- _b.trys.push([1, 6, 7, 8]);
995
- children_1 = __values(children), children_1_1 = children_1.next();
996
- _b.label = 2;
997
- case 2:
998
- if (!!children_1_1.done) return [3 /*break*/, 5];
999
- t = children_1_1.value;
1000
- return [4 /*yield*/, this.resetBranch(t)];
1001
- case 3:
1002
- _b.sent();
1003
- _b.label = 4;
1004
- case 4:
1005
- children_1_1 = children_1.next();
1006
- return [3 /*break*/, 2];
1007
- case 5: return [3 /*break*/, 8];
1008
- case 6:
1009
- e_23_1 = _b.sent();
1010
- e_23 = { error: e_23_1 };
1011
- return [3 /*break*/, 8];
1012
- case 7:
1013
- try {
1014
- if (children_1_1 && !children_1_1.done && (_a = children_1.return)) _a.call(children_1);
1015
- }
1016
- finally { if (e_23) throw e_23.error; }
1017
- return [7 /*endfinally*/];
1018
- case 8: return [2 /*return*/];
1019
- }
1020
- });
1021
- });
1022
- };
1023
- AbstractDOM.getParentElement = function (element) {
1024
- if (element.parentElement) {
1025
- return element.parentElement;
1026
- }
1027
- else if (element.assignedSlot) {
1028
- return element.assignedSlot.parentElement;
1029
- }
1030
- else if (element['shadowParent']) {
1031
- return element['shadowParent'];
1032
- }
1033
- return null;
1034
- };
1035
- return AbstractDOM;
1036
- }(EventDispatcher_1.EventDispatcher));
1037
- exports.AbstractDOM = AbstractDOM;
1038
- //# sourceMappingURL=AbstractDOM.js.map