vsn 0.1.149 → 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 -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
package/dist/vsn.js DELETED
@@ -1,201 +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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
25
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
26
- };
27
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
28
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
29
- return new (P || (P = Promise))(function (resolve, reject) {
30
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
31
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
32
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
33
- step((generator = generator.apply(thisArg, _arguments || [])).next());
34
- });
35
- };
36
- var __generator = (this && this.__generator) || function (thisArg, body) {
37
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
38
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
39
- function verb(n) { return function (v) { return step([n, v]); }; }
40
- function step(op) {
41
- if (f) throw new TypeError("Generator is already executing.");
42
- while (_) try {
43
- 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;
44
- if (y = 0, t) op = [op[0] & 2, t.value];
45
- switch (op[0]) {
46
- case 0: case 1: t = op; break;
47
- case 4: _.label++; return { value: op[1], done: false };
48
- case 5: _.label++; y = op[1]; op = [0]; continue;
49
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
50
- default:
51
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
52
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
53
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
54
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
55
- if (t[2]) _.ops.pop();
56
- _.trys.pop(); continue;
57
- }
58
- op = body.call(thisArg, _);
59
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
60
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
61
- }
62
- };
63
- Object.defineProperty(exports, "__esModule", { value: true });
64
- exports.vision = exports.Tag = exports.MessageList = exports.EventDispatcher = exports.Service = exports.Model = exports.Controller = exports.WrappedArray = exports.ScopeReference = exports.Scope = exports.DOM = exports.Validators = exports.Types = exports.Formats = exports.Vision = void 0;
65
- var DOM_1 = require("./DOM");
66
- var WrappedArray_1 = require("./Scope/WrappedArray");
67
- var Registry_1 = require("./Registry");
68
- var Configuration_1 = require("./Configuration");
69
- var VisionHelper_1 = require("./helpers/VisionHelper");
70
- var AST_1 = require("./AST");
71
- var EventDispatcher_1 = require("./EventDispatcher");
72
- var DynamicScopeData_1 = require("./Scope/DynamicScopeData");
73
- var Scope_1 = require("./Scope");
74
- var version_1 = require("./version");
75
- require("./custom-elements");
76
- var Vision = /** @class */ (function (_super) {
77
- __extends(Vision, _super);
78
- function Vision() {
79
- var _this = _super.call(this) || this;
80
- _this.registry = Registry_1.Registry.instance;
81
- _this.config = Configuration_1.Configuration.instance;
82
- document.ondragover = function (e) { return e.cancelable && e.preventDefault(); }; // Allow dragging over document
83
- Registry_1.Registry.instance.tags.on('register', _this.defineComponent, _this);
84
- if (VisionHelper_1.VisionHelper.document) {
85
- document.addEventListener("DOMContentLoaded", _this.setup.bind(_this));
86
- }
87
- else {
88
- console.warn('No dom, running in CLI mode.');
89
- }
90
- _this.registry.functions.register('log', console.log);
91
- _this.registry.functions.register('warn', console.warn);
92
- _this.registry.functions.register('error', console.error);
93
- _this.registry.functions.register('info', console.info);
94
- _this.registry.functions.register('wait', VisionHelper_1.VisionHelper.wait);
95
- _this.registry.models.register('Object', Object);
96
- _this.registry.controllers.register('WrappedArray', WrappedArray_1.WrappedArray);
97
- _this.registry.controllers.register('Data', DynamicScopeData_1.DynamicScopeData);
98
- if (VisionHelper_1.VisionHelper.window) {
99
- window['Vision'] = Vision;
100
- window['Registry'] = Registry_1.Registry;
101
- window['vision'] = window['vsn'] = _this;
102
- window['Tree'] = AST_1.Tree;
103
- window['Scope'] = Scope_1.Scope;
104
- window['$'] = _this.exec.bind(_this);
105
- VisionHelper_1.VisionHelper.window.dispatchEvent(new Event('vsn'));
106
- }
107
- return _this;
108
- }
109
- Vision.prototype.defineComponent = function (name, cls) {
110
- if (DOM_1.DOM.instance.built) {
111
- customElements.define(name, cls);
112
- }
113
- else {
114
- DOM_1.DOM.instance.once('built', function () {
115
- customElements.define(name, cls);
116
- });
117
- }
118
- };
119
- Object.defineProperty(Vision.prototype, "dom", {
120
- get: function () {
121
- return this._dom;
122
- },
123
- enumerable: false,
124
- configurable: true
125
- });
126
- Vision.prototype.exec = function (code, data) {
127
- return __awaiter(this, void 0, void 0, function () {
128
- return __generator(this, function (_a) {
129
- switch (_a.label) {
130
- case 0: return [4 /*yield*/, this._dom.exec(code, data)];
131
- case 1: return [2 /*return*/, _a.sent()];
132
- }
133
- });
134
- });
135
- };
136
- Vision.prototype.setup = function () {
137
- return __awaiter(this, void 0, void 0, function () {
138
- var body, startTime, now, setupTime;
139
- return __generator(this, function (_a) {
140
- switch (_a.label) {
141
- case 0:
142
- body = document.body;
143
- body.setAttribute('vsn-root', '');
144
- this._dom = DOM_1.DOM.instance;
145
- startTime = new Date().getTime();
146
- return [4 /*yield*/, this._dom.buildFrom(document, true)];
147
- case 1:
148
- _a.sent();
149
- now = (new Date()).getTime();
150
- setupTime = now - startTime;
151
- console.info("Took " + setupTime + "ms to start up VisionJS. https://www.vsnjs.com/", "v" + version_1.VERSION);
152
- return [2 /*return*/];
153
- }
154
- });
155
- });
156
- };
157
- Object.defineProperty(Vision, "instance", {
158
- get: function () {
159
- if (!Vision._instance)
160
- Vision._instance = new Vision();
161
- return Vision._instance;
162
- },
163
- enumerable: false,
164
- configurable: true
165
- });
166
- return Vision;
167
- }(EventDispatcher_1.EventDispatcher));
168
- exports.Vision = Vision;
169
- __exportStar(require("./Registry"), exports);
170
- __exportStar(require("./attributes/_imports"), exports);
171
- __exportStar(require("./Scope/properties/_imports"), exports);
172
- __exportStar(require("./Attribute"), exports);
173
- __exportStar(require("./AST"), exports);
174
- var Formats_1 = require("./Formats");
175
- Object.defineProperty(exports, "Formats", { enumerable: true, get: function () { return Formats_1.Formats; } });
176
- var Types_1 = require("./Types");
177
- Object.defineProperty(exports, "Types", { enumerable: true, get: function () { return Types_1.Types; } });
178
- var Validators_1 = require("./Validators");
179
- Object.defineProperty(exports, "Validators", { enumerable: true, get: function () { return Validators_1.Validators; } });
180
- var DOM_2 = require("./DOM");
181
- Object.defineProperty(exports, "DOM", { enumerable: true, get: function () { return DOM_2.DOM; } });
182
- var Scope_2 = require("./Scope");
183
- Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { return Scope_2.Scope; } });
184
- var ScopeReference_1 = require("./Scope/ScopeReference");
185
- Object.defineProperty(exports, "ScopeReference", { enumerable: true, get: function () { return ScopeReference_1.ScopeReference; } });
186
- var WrappedArray_2 = require("./Scope/WrappedArray");
187
- Object.defineProperty(exports, "WrappedArray", { enumerable: true, get: function () { return WrappedArray_2.WrappedArray; } });
188
- var Controller_1 = require("./Controller");
189
- Object.defineProperty(exports, "Controller", { enumerable: true, get: function () { return Controller_1.Controller; } });
190
- var Model_1 = require("./Model");
191
- Object.defineProperty(exports, "Model", { enumerable: true, get: function () { return Model_1.Model; } });
192
- var Service_1 = require("./Service");
193
- Object.defineProperty(exports, "Service", { enumerable: true, get: function () { return Service_1.Service; } });
194
- var EventDispatcher_2 = require("./EventDispatcher");
195
- Object.defineProperty(exports, "EventDispatcher", { enumerable: true, get: function () { return EventDispatcher_2.EventDispatcher; } });
196
- var MessageList_1 = require("./MessageList");
197
- Object.defineProperty(exports, "MessageList", { enumerable: true, get: function () { return MessageList_1.MessageList; } });
198
- var Tag_1 = require("./Tag");
199
- Object.defineProperty(exports, "Tag", { enumerable: true, get: function () { return Tag_1.Tag; } });
200
- exports.vision = Vision.instance;
201
- //# sourceMappingURL=vsn.js.map
package/dist/vsn.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"vsn.js","sourceRoot":"","sources":["../src/vsn.ts"],"names":[],"mappings":"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"}
package/karma.conf.js DELETED
@@ -1,34 +0,0 @@
1
- "use strict";
2
- module.exports = function (config) {
3
- config.set({
4
- frameworks: ['jasmine', 'karma-typescript'],
5
- files: [
6
- './test/globals.js',
7
- {pattern: './src/**/*.ts'},
8
- {pattern: './test/**/*.ts'}
9
- ],
10
-
11
- preprocessors: {
12
- '**/*.ts': ['karma-typescript']
13
- },
14
-
15
- reporters: ['progress', 'karma-typescript', 'coverage'],
16
- coverageReporter: {
17
- reporters: [{type: 'lcov'}]
18
- },
19
-
20
- karmaTypescriptConfig: {
21
- tsconfig: './tsconfig.test.json'
22
- },
23
-
24
- logLevel: config.LOG_DEBUG,
25
-
26
- browsers: ['ChromeHeadlessNoSandbox'],
27
- customLaunchers: {
28
- ChromeHeadlessNoSandbox: {
29
- base: 'ChromeHeadless',
30
- flags: ['--no-sandbox']
31
- }
32
- },
33
- });
34
- };
@@ -1,52 +0,0 @@
1
- import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
3
- import {Tag} from "../Tag";
4
- import {Token, TokenType, Tree, TreeNode} from "../AST";
5
- import {Node} from "./Node";
6
-
7
- export class ArithmeticNode extends Node implements TreeNode {
8
- constructor(
9
- public readonly left: TreeNode,
10
- public readonly right: TreeNode,
11
- public readonly type: TokenType
12
- ) {
13
- super();
14
- }
15
-
16
- protected _getChildNodes(): Node[] {
17
- return [
18
- this.left as Node,
19
- this.right as Node
20
- ]
21
- }
22
-
23
- public async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
24
- const left: any = await this.left.evaluate(scope, dom, tag);
25
- const right: any = await this.right.evaluate(scope, dom, tag);
26
-
27
- switch (this.type) {
28
- case TokenType.ADD:
29
- return left + right;
30
- case TokenType.SUBTRACT:
31
- return left - right;
32
- case TokenType.MULTIPLY:
33
- return left * right;
34
- case TokenType.DIVIDE:
35
- return left / right;
36
- }
37
- }
38
-
39
- public static match(tokens: Token[]): boolean {
40
- return [
41
- TokenType.ADD,
42
- TokenType.SUBTRACT,
43
- TokenType.MULTIPLY,
44
- TokenType.DIVIDE
45
- ].indexOf(tokens[0].type) > -1
46
- }
47
-
48
- public static parse(lastNode, token, tokens: Token[]) {
49
- tokens.splice(0, 1); // Remove arithmetic operator
50
- return new ArithmeticNode(lastNode, Tree.processTokens(Tree.getNextStatementTokens(tokens)), token.type)
51
- }
52
- }
@@ -1,39 +0,0 @@
1
- import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
3
- import {Tag} from "../Tag";
4
- import {WrappedArray} from "../Scope/WrappedArray";
5
- import {Token, TokenType, Tree, TreeNode} from "../AST";
6
- import {Node} from "./Node";
7
-
8
- export class ArrayNode extends Node implements TreeNode {
9
- constructor(
10
- public readonly values: Node[]
11
- ) {
12
- super();
13
- }
14
-
15
- protected _getChildNodes(): Node[] {
16
- return new Array(...this.values);
17
- }
18
-
19
- async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
20
- const arr: WrappedArray<any> = new WrappedArray();
21
- for (const val of this.values) {
22
- arr.push(await val.evaluate(scope, dom, tag));
23
- }
24
- return arr;
25
- }
26
-
27
- public static match(tokens: Token[]): boolean {
28
- return tokens[0].type === TokenType.L_BRACKET;
29
- }
30
-
31
- public static parse(lastNode, token, tokens: Token[]): ArrayNode {
32
- const valueTokens: Token[][] = Tree.getBlockTokens(tokens);
33
- const values: Node[] = [];
34
- for (const arg of valueTokens) {
35
- values.push(Tree.processTokens(arg));
36
- }
37
- return new ArrayNode(values);
38
- }
39
- }
package/src/AST/AsNode.ts DELETED
@@ -1,32 +0,0 @@
1
- import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
3
- import {Tag} from "../Tag";
4
- import {Token, TreeNode} from "../AST";
5
- import {Node} from "./Node";
6
-
7
- export class AsNode extends Node implements TreeNode {
8
- constructor(
9
- public readonly context: Node,
10
- public readonly name: string
11
- ) {
12
- super();
13
- }
14
-
15
- protected _getChildNodes(): Node[] {
16
- return [
17
- this.context
18
- ]
19
- }
20
-
21
- public async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
22
- const context = await this.context.evaluate(scope, dom, tag);
23
- scope.set(this.name, context);
24
- return context;
25
- }
26
-
27
- public static parse(lastNode, token, tokens: Token[]) {
28
- tokens.shift(); // Consume as
29
- const name = tokens.shift();
30
- return new AsNode(lastNode, name.value);
31
- }
32
- }
@@ -1,256 +0,0 @@
1
- import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
3
- import {Tag} from "../Tag";
4
- import {DOMObject} from "../DOM/DOMObject";
5
- import {BlockType, Token, TokenType, Tree, TreeNode} from "../AST";
6
- import {Node} from "./Node";
7
- import {RootScopeMemberNode} from "./RootScopeMemberNode";
8
- import {ScopeMemberNode} from "./ScopeMemberNode";
9
- import {ElementQueryNode} from "./ElementQueryNode";
10
- import {ElementAttributeNode} from "./ElementAttributeNode";
11
- import {ElementStyleNode} from "./ElementStyleNode";
12
- import {UnitLiteral} from "./UnitLiteralNode";
13
- import {ScopeObject} from "../Scope/ScopeObject";
14
-
15
- export class AssignmentNode extends Node implements TreeNode {
16
- constructor(
17
- public readonly left: RootScopeMemberNode | ScopeMemberNode,
18
- public readonly right: TreeNode,
19
- public readonly type: TokenType
20
- ) {
21
- super();
22
- }
23
-
24
- protected _getChildNodes(): Node[] {
25
- return [
26
- this.left as Node,
27
- this.right as Node
28
- ]
29
- }
30
-
31
- async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
32
- let scopes = [];
33
- const name: string = await this.left.name.evaluate(scope, dom, tag);
34
-
35
- if (this.left instanceof ScopeMemberNode) {
36
- const inner = await this.left.scope.evaluate(scope, dom, tag);
37
- if (this.left.scope instanceof ElementQueryNode) {
38
- if (this.left.scope.first) {
39
- scopes.push(inner);
40
- } else {
41
- scopes.push(...inner);
42
- }
43
- } else if (inner instanceof Scope) {
44
- scopes.push(inner);
45
- } else if (inner instanceof ScopeObject) {
46
- scopes.push(inner.scope);
47
- } else {
48
- scopes.push(scope)
49
- }
50
- } else if ((this.left instanceof ElementAttributeNode || this.left instanceof ElementStyleNode) && this.left.elementRef) {
51
- const elements = await this.left.elementRef.evaluate(scope, dom, tag);
52
- if (this.left.elementRef.first || elements instanceof DOMObject) {
53
- scopes.push(elements);
54
- } else {
55
- scopes = elements;
56
- }
57
- } else {
58
- scopes.push(scope);
59
- }
60
-
61
- const values = [];
62
- for (let localScope of scopes) {
63
- if (!localScope) continue;
64
- if (localScope instanceof DOMObject) {
65
- await this.handleDOMObject(name, dom, scope, localScope, tag);
66
- } else {
67
- if (localScope['$wrapped'] && localScope['$scope']) {
68
- localScope = localScope['$scope'];
69
- }
70
-
71
- // We get the values from the passed scope, but set the value on the local scope
72
- let left: number | Array<any> | string = await this.left.evaluate(scope, dom, tag);
73
- let right: number | Array<any> | string = await this.right.evaluate(scope, dom, tag);
74
- left = this.handle(name, left, right, localScope);
75
-
76
- values.push(left);
77
- }
78
- }
79
- return values.length > 1 ? values : values[0];
80
- }
81
-
82
- public handle(name, left, right, localScope) {
83
- if (left instanceof Array) {
84
- left = this.handleArray(name, left, right, localScope);
85
- } else if ((left as any) instanceof UnitLiteral || right instanceof UnitLiteral) {
86
- left = this.handleUnit(name, left, right, localScope);
87
- } else if (Number.isFinite(left)) {
88
- left = this.handleNumber(name, left, right, localScope);
89
- } else {
90
- left = this.handleString(name, left, right, localScope);
91
- }
92
-
93
- return left;
94
- }
95
-
96
- public handleNumber(key, left, right, scope) {
97
- if (right !== null && !Number.isFinite(right))
98
- right = parseFloat(`${right}`);
99
-
100
- left = left as number;
101
- right = right as number;
102
-
103
- switch (this.type) {
104
- case TokenType.ASSIGN:
105
- left = right;
106
- break;
107
- case TokenType.ADD_ASSIGN:
108
- left += right;
109
- break;
110
- case TokenType.SUBTRACT_ASSIGN:
111
- left -= right;
112
- break;
113
- case TokenType.MULTIPLY_ASSIGN:
114
- left *= right;
115
- break;
116
- case TokenType.DIVIDE_ASSIGN:
117
- left /= right;
118
- break;
119
- }
120
-
121
- scope.set(key, left);
122
- return left;
123
- }
124
-
125
- public handleString(key, left, right, scope) {
126
- switch (this.type) {
127
- case TokenType.ASSIGN:
128
- left = right;
129
- break;
130
- case TokenType.ADD_ASSIGN:
131
- left = `${left}${right}`;
132
- break;
133
- case TokenType.SUBTRACT_ASSIGN:
134
- left.replace(right, '');
135
- break;
136
- case TokenType.MULTIPLY_ASSIGN:
137
- left *= right;
138
- break;
139
- case TokenType.DIVIDE_ASSIGN:
140
- left /= right;
141
- break;
142
- }
143
- scope.set(key, left);
144
- return left;
145
- }
146
-
147
- public handleUnit(key, left, right, scope) {
148
- if (!(left instanceof UnitLiteral)) {
149
- left = new UnitLiteral(left);
150
- }
151
-
152
- if (!(right instanceof UnitLiteral)) {
153
- right = new UnitLiteral(right);
154
- }
155
- const unit = left.unit || right.unit || 'px';
156
-
157
- switch (this.type) {
158
- case TokenType.ASSIGN:
159
- left = right;
160
- break;
161
- case TokenType.ADD_ASSIGN:
162
- left = new UnitLiteral(`${left.amount+right.amount}${unit}`);
163
- break;
164
- case TokenType.SUBTRACT_ASSIGN:
165
- left = new UnitLiteral(`${left.amount-right.amount}${unit}`);
166
- break;
167
- case TokenType.MULTIPLY_ASSIGN:
168
- left = new UnitLiteral(`${left.amount*right.amount}${unit}`);
169
- break;
170
- case TokenType.DIVIDE_ASSIGN:
171
- left = new UnitLiteral(`${left.amount/right.amount}${unit}`);
172
- break;
173
- }
174
-
175
- scope.set(key, left);
176
- return left;
177
- }
178
-
179
- public async handleDOMObject(key: string, dom: DOM, scope: Scope, domObject: DOMObject, tag: Tag) {
180
- let left = domObject.scope.get(key);
181
- let right: number | Array<any> | string = await this.right.evaluate(scope, dom, tag);
182
- return this.handle(key, left, right, domObject.scope);
183
- }
184
-
185
- public handleArray(key, left, right, scope) {
186
- if (!(right instanceof Array))
187
- right = [right];
188
- switch (this.type) {
189
- case TokenType.ASSIGN:
190
- left.splice(0, left.length);
191
- left.push(...right);
192
- break;
193
- case TokenType.ADD_ASSIGN:
194
- left.push(...right);
195
- break;
196
- case TokenType.SUBTRACT_ASSIGN:
197
- for (let i = left.length - 1; i >= 0; i--) {
198
- if (right.indexOf(left[i]) > -1) {
199
- left.splice(i, 1);
200
- i++;
201
- }
202
- }
203
- break;
204
- case TokenType.TILDE:
205
- for (const toggle of right) {
206
- const index = left.indexOf(toggle);
207
- if (index > -1) {
208
- left.splice(index, 1);
209
- } else {
210
- left.push(toggle);
211
- }
212
- }
213
- break;
214
- }
215
-
216
- /*
217
- We have to trigger a change manually here. Setting the variable on the scope with an array won't trigger
218
- it since we are modifying values inside of the array instance.
219
- */
220
- scope.dispatch(`change:${key}`);
221
-
222
- return left;
223
- }
224
-
225
- public static match(tokens: Token[]): boolean {
226
- return [
227
- TokenType.ASSIGN,
228
- TokenType.ADD_ASSIGN,
229
- TokenType.SUBTRACT_ASSIGN,
230
- TokenType.MULTIPLY_ASSIGN,
231
- TokenType.DIVIDE_ASSIGN,
232
- TokenType.TILDE,
233
- ].indexOf(tokens[0].type) > -1;
234
- }
235
-
236
- public static parse(lastNode: any, token, tokens: Token[]): AssignmentNode {
237
- if (!(lastNode instanceof RootScopeMemberNode) && !(lastNode instanceof ScopeMemberNode) && !(lastNode instanceof ElementAttributeNode) && !(lastNode instanceof ElementStyleNode)) {
238
- throw SyntaxError(`Invalid assignment syntax near ${Tree.toCode(tokens.splice(0, 10))}`);
239
- }
240
- tokens.splice(0, 1); // consume =
241
- //const assignmentTokens: Token[] = Tree.getNextStatementTokens(tokens, false, false, true);
242
- const assignmentTokens: Token[] = Tree.getTokensUntil(tokens, TokenType.SEMICOLON, false, true, true, {
243
- type: BlockType.STATEMENT,
244
- open: TokenType.NULL,
245
- close: TokenType.SEMICOLON,
246
- openCharacter: '',
247
- closeCharacter: ';',
248
- });
249
-
250
- return new AssignmentNode(
251
- lastNode as RootScopeMemberNode,
252
- Tree.processTokens(assignmentTokens),
253
- token.type
254
- );
255
- }
256
- }
@@ -1,25 +0,0 @@
1
- import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
3
- import {Tag} from "../Tag";
4
- import {TreeNode} from "../AST";
5
- import {Node} from "./Node";
6
-
7
- export class BlockNode extends Node implements TreeNode {
8
- constructor(
9
- public readonly statements: Node[]
10
- ) {
11
- super();
12
- }
13
-
14
- protected _getChildNodes(): Node[] {
15
- return [...(this.statements as Node[])];
16
- }
17
-
18
- protected async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
19
- let returnValue: any = null;
20
- for (let i = 0; i < this.statements.length; i++) {
21
- returnValue = await this.statements[i].evaluate(scope, dom, tag);
22
- }
23
- return returnValue;
24
- }
25
- }
@@ -1,10 +0,0 @@
1
- import {LiteralNode} from "./LiteralNode";
2
-
3
- export class BooleanLiteralNode extends LiteralNode<number> {
4
- constructor(
5
- public readonly value: any
6
- ) {
7
- super(value);
8
- this.value = value === 'true';
9
- }
10
- }