vsn 0.1.149 → 1.0.1

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