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
@@ -1,101 +0,0 @@
1
- import {MessageList} from "../src/MessageList";
2
-
3
- describe('MessageList', () => {
4
- it("should reset properly", () => {
5
- const list = new MessageList();
6
- list.merge({
7
- 'foo': ['bar', 'baz']
8
- });
9
- console.info(list.keys);
10
- expect(list.length).toBe(1);
11
- expect(list['foo']).toEqual(['bar', 'baz']);
12
-
13
- list.reset();
14
-
15
- expect(list.length).toBe(0);
16
- expect(list['foo']).toEqual(undefined);
17
- });
18
-
19
- it("should add messages", () => {
20
- const list = new MessageList({
21
- 'foo': ['bar', 'baz']
22
- });
23
-
24
- // Add list
25
- list.add('foo', ['biz', 'blarg']);
26
- expect(list['foo']).toEqual(['bar', 'baz', 'biz', 'blarg']);
27
-
28
- // Add single error and replace
29
- list.add('foo', 'replaced', true);
30
- expect(list['foo']).toEqual(['replaced']);
31
- });
32
-
33
- it("should merge messages", () => {
34
- const list = new MessageList();
35
- list.merge({
36
- 'foo': ['bar', 'baz'],
37
- 'test': ['test 1', 'test 2']
38
- });
39
-
40
- list.merge({
41
- 'foo': ['merged 1', 'merged 2'],
42
- 'test': ['test 3', 'test 4'],
43
- 'new': ['new 1', 'new 2']
44
- });
45
-
46
- expect(list['foo']).toEqual(['bar', 'baz', 'merged 1', 'merged 2']);
47
- expect(list['test']).toEqual(['test 1', 'test 2', 'test 3', 'test 4']);
48
- expect(list['new']).toEqual(['new 1', 'new 2']);
49
- });
50
-
51
- it("should replace messages", () => {
52
- const list = new MessageList();
53
- list.merge({
54
- 'foo': ['bar', 'baz'],
55
- 'test': ['test 1', 'test 2']
56
- });
57
-
58
- list.merge({
59
- 'foo': ['merged 1', 'merged 2'],
60
- 'test': ['test 3', 'test 4'],
61
- 'new': ['new 1', 'new 2']
62
- }, true);
63
-
64
- expect(list['foo']).toEqual(['merged 1', 'merged 2']);
65
- expect(list['test']).toEqual(['test 3', 'test 4']);
66
- expect(list['new']).toEqual(['new 1', 'new 2']);
67
- });
68
-
69
- it("should return a list", () => {
70
- const list = new MessageList(),
71
- items = {
72
- 'foo': ['bar', 'baz'],
73
- 'test': ['test 1', 'test 2']
74
- };
75
- list.merge(items);
76
- expect(list.list).toEqual(items);
77
- });
78
-
79
- it("should ignore empty additions", () => {
80
- const list = new MessageList();
81
- list.merge({});
82
- list.merge(null);
83
- expect(list.length).toEqual(0);
84
-
85
- list.merge({
86
- 'empty': [],
87
- 'null': null
88
- });
89
- expect(list.length).toEqual(0);
90
- });
91
-
92
- it("should cache list getter result", () => {
93
- const messageList = new MessageList({
94
- 'foo': ['bar', 'baz']
95
- }),
96
- list = messageList.list;
97
- expect(list).toBe(messageList.list);
98
- messageList.add('bar', 'baz');
99
- expect(list).not.toBe(messageList.list);
100
- });
101
- });
File without changes
@@ -1,141 +0,0 @@
1
- import {DynamicScopeData} from "../../src/Scope/DynamicScopeData";
2
-
3
-
4
- describe('DynamicScopeData', () => {
5
- it("Should trigger a change event when any field is changed", () => {
6
- const m = new DynamicScopeData(['foo']);
7
- let value = null,
8
- field = null;
9
-
10
- m.on('change', (_field, values) => {
11
- field = _field;
12
- value = values.value;
13
- });
14
-
15
- m.foo = 'testing';
16
-
17
- expect<string | null>(field).toBe('foo');
18
- expect(value).toBe(m.foo);
19
- });
20
-
21
- it("Should create the given fields from an object", () => {
22
- const m = new DynamicScopeData({
23
- field_1: 1,
24
- field_2: 'yes',
25
- field_3: true
26
- });
27
- expect(m.getProperties().length).toBe(3);
28
-
29
- m.setData({field_4: 4, field_5: 5});
30
- expect(m.getProperties().length).toBe(5);
31
- const data = m.getData();
32
- expect(data['field_1']).toBe(1);
33
- expect(data['field_2']).toBe('yes');
34
- expect(data['field_3']).toBe(true);
35
- expect(data['field_4']).toBe(4);
36
- expect(data['field_5']).toBe(5);
37
- });
38
-
39
- it("Should create the given fields from an array", () => {
40
- const m = new DynamicScopeData([
41
- 'field_1',
42
- 'field_2',
43
- 'field_3'
44
- ]);
45
- expect(m.getProperties().length).toBe(3);
46
- });
47
-
48
- it("Should trigger a change event when a field is changed", () => {
49
- const m = new DynamicScopeData({
50
- field_1: 1,
51
- field_2: 'yes',
52
- field_3: true
53
- });
54
-
55
- let oldValue = null,
56
- oldValueCheck = null,
57
- value = null;
58
-
59
- m.bindToProperties('change', [
60
- 'field_2',
61
- 'field_1'
62
- ], (values) => {
63
- oldValue = values.oldValue;
64
- value = values.value;
65
- });
66
-
67
- // Test to make sure field_1 change event is being called
68
- oldValueCheck = m.field_1;
69
- m.field_1 = 2;
70
- expect(value).toBe(m.field_1);
71
- expect(oldValue).toBe(oldValueCheck);
72
-
73
- // Test to make sure field_2 change event is being called
74
- oldValueCheck = m.field_2;
75
- m.field_2 = 'no';
76
- expect(value).toBe(m.field_2);
77
- expect(oldValue).toBe(oldValueCheck);
78
-
79
- // Test to make sure fields that aren't being listened to aren't
80
- // triggering the event
81
- oldValueCheck = m.foo;
82
- m.foo = false;
83
- expect(value).not.toBe(m.foo);
84
- expect(oldValue).not.toBe(oldValueCheck);
85
- });
86
-
87
- it("Should trigger a change:field event when any field is changed", () => {
88
- const m = new DynamicScopeData(['field_1']);
89
- let value = null;
90
-
91
- m.on('change:field_1', (values) => {
92
- value = values.value;
93
- });
94
-
95
- m.field_1 = 'testing';
96
-
97
- expect(value).toBe(m.field_1);
98
- });
99
-
100
- it("should save last data and return true with is modfied if something is modified", () => {
101
- const m = new DynamicScopeData({
102
- field_1: 1,
103
- field_2: 'foo'
104
- });
105
- m.setLastData();
106
- expect(m.isModified()).toBe(false);
107
- m.field_1 = 2;
108
- m.field_2 = null;
109
- expect(m.isModified()).toBe(true);
110
- m.setLastData();
111
- expect(m.isModified()).toBe(false);
112
- m.field_2 = 'bar';
113
- expect(m.isModified()).toBe(true);
114
- });
115
-
116
- it("should revert to last data correctly", () => {
117
- const m = new DynamicScopeData({
118
- field_1: 1,
119
- field_2: 'bar'
120
- });
121
- m.setLastData();
122
- expect(m.isModified()).toBe(false);
123
- m.field_1 = 2;
124
- m.field_2 = null;
125
- expect(m.isModified()).toBe(true);
126
- m.revert();
127
- expect(m.isModified()).toBe(false);
128
- expect(m.field_1).toBe(1);
129
- expect(m.field_2).toBe('bar');
130
- });
131
-
132
- it("should return the field object", () => {
133
- const m = new DynamicScopeData({
134
- field_1: 1,
135
- field_2: 'string field!'
136
- }),
137
- field = m.getProperty('field_2');
138
- expect(field.value).toBe('string field!');
139
-
140
- });
141
- });
@@ -1,58 +0,0 @@
1
- import {ScopeData} from "../../src/Scope/ScopeData";
2
- import {Property} from "../../src/Scope/properties/Property";
3
-
4
-
5
- describe('ScopeData', () => {
6
- it("should set tags correctly", async () => {
7
- const data = new ScopeData();
8
- data.createProperty('test', Property, {
9
- labels: ['test']
10
- });
11
-
12
- data.createProperty('test_int', Property, {
13
- labels: ['test']
14
- });
15
-
16
- data.createProperty('not_test', Property, {
17
- labels: ['not_test']
18
- });
19
-
20
- data['test'] = 'test';
21
- data['test_int'] = 1;
22
- data['not_test'] = 'not_test';
23
-
24
- const taggedTestData = data.getData('test');
25
- expect(taggedTestData).toEqual({
26
- test: 'test',
27
- test_int: 1
28
- });
29
-
30
- const taggedNotTestData = data.getData('not_test');
31
- expect(taggedNotTestData).toEqual({
32
- not_test: 'not_test'
33
- });
34
-
35
- const allData = data.getData();
36
- expect(allData).toEqual({
37
- test: 'test',
38
- test_int: 1,
39
- not_test: 'not_test'
40
- });
41
-
42
- const notTestProp = data.getProperty('not_test');
43
- notTestProp.addLabel('test');
44
- const taggedNotTestData2 = data.getData('test');
45
- expect(taggedNotTestData2).toEqual({
46
- test: 'test',
47
- test_int: 1,
48
- not_test: 'not_test'
49
- });
50
-
51
- notTestProp.removeLabel('test');
52
- const taggedNotTestData3 = data.getData('test');
53
- expect(taggedNotTestData3).toEqual({
54
- test: 'test',
55
- test_int: 1
56
- });
57
- });
58
- });
@@ -1,11 +0,0 @@
1
- import {WrappedArray} from "../../src/Scope/WrappedArray";
2
-
3
- describe('WrappedArray', () => {
4
- it("Should return a wrapped array when filtered", () => {
5
- const a = new WrappedArray<number>(1, 2, 3, 4, 5);
6
- const even = a.filter(x => x % 2 === 0);
7
- const odd = a.filter(x => x % 2 !== 0);
8
- expect(even.length).toBe(2);
9
- expect(odd.length).toBe(3);
10
- });
11
- });
@@ -1,23 +0,0 @@
1
- import {ScopeData} from "../../../src/Scope/ScopeData";
2
- import {ArrayProperty} from "../../../src/Scope/properties/_imports";
3
- import {WrappedArray} from "../../../src/vsn";
4
-
5
- describe('ArrayProperty', () => {
6
- it("should do array things.", () => {
7
- const d = new ScopeData();
8
- d.createProperty('test', ArrayProperty);
9
- d['test'] = [1, 2, 3];
10
- expect(d['test'] instanceof WrappedArray).toBe(true);
11
- expect(d['test'].indexOf(1)).toBe(0);
12
- expect(d['test'].indexOf(2)).toBe(1);
13
- expect(d['test'].indexOf(3)).toBe(2);
14
- expect(d['test'].indexOf(4)).toBe(-1);
15
- let calls = 0;
16
- d.on('change:test', () => {
17
- calls++;
18
- });
19
- d['test'].push(4);
20
- expect(calls).toBeGreaterThanOrEqual(1); // push fires more than one event
21
- expect(d['test'].indexOf(4)).toBe(3);
22
- });
23
- });
@@ -1,69 +0,0 @@
1
- import {Scope} from "../src/Scope";
2
- import {WrappedArray} from "../src/Scope/WrappedArray";
3
-
4
- class Test {
5
- public testing: string = 'test';
6
-
7
- constructor() {
8
- }
9
-
10
- test(): boolean {
11
- return this.testing === 'test';
12
- }
13
- }
14
-
15
- describe('Scope', () => {
16
- it("should wrap objects correctly", async () => {
17
- const scope = new Scope();
18
- const obj = new Test();
19
- scope.wrap(obj);
20
-
21
- expect(obj.test()).toBe(true);
22
- scope.set('testing', 'yes');
23
- expect(obj.test()).toBe(false);
24
- obj.testing = 'test';
25
- expect(scope.get('testing')).toBe('test');
26
- expect(scope.get('test').call(scope.wrapped)).toBe(true);
27
- });
28
- });
29
-
30
- describe('WrappedArray', () => {
31
- it("should behave like an array", async () => {
32
- const a = new WrappedArray();
33
- let removes: number = 0;
34
- a.on('remove', (e) => {
35
- removes += 1;
36
- });
37
- a.push(1);
38
- a.push(2);
39
- a.push(3);
40
- a.splice(1, 2);
41
- expect(removes).toBe(2);
42
- expect(a.length).toBe(1);
43
- });
44
-
45
- it("should trigger change events", async () => {
46
- const a = new WrappedArray();
47
- let changes: number = 0;
48
- a.on('change', (e) => {
49
- changes += 1;
50
- });
51
- a.push(1);
52
- a.push(2);
53
- a.push(3);
54
- a.setLength(0);
55
- expect(changes).toBe(6);
56
- expect(a.length).toBe(0);
57
- });
58
-
59
- it("should set types correctly", async () => {
60
- const scope = new Scope();
61
- scope.setType('test', 'integer');
62
- scope.set('test', '1');
63
- expect(scope.get('test')).toBe(1);
64
-
65
- scope.setType('testing', 'string');
66
- scope.set('testing', 2);
67
- expect(scope.get('testing')).toBe('2');
68
- });
69
- });
@@ -1,21 +0,0 @@
1
- import {DOM} from "../../src/DOM";
2
- import {Query} from "../../src/Query";
3
- import {TagList} from "../../src/Tag/TagList";
4
- import {DOMObject} from "../../src/DOM/DOMObject";
5
-
6
- describe('TagList', () => {
7
- it("should be able to fail properly", (done) => {
8
- document.body.innerHTML = `
9
- <p class="testing test">Test 1</p>
10
- <div class="testing test">Test 2</div>
11
- <p class="test">Test 3</p>
12
- <p class="testing">Test 4</p>
13
- `;
14
- const dom = new DOM(document.body);
15
- dom.once('built', async () => {
16
- let tags: TagList | DOMObject = await Query('p.test', dom) as TagList;
17
- expect(tags.length).toBe(2);
18
- done();
19
- });
20
- });
21
- });
package/test/Tag.spec.ts DELETED
@@ -1,4 +0,0 @@
1
-
2
- describe('Tag', () => {
3
-
4
- });
@@ -1,174 +0,0 @@
1
- import "../../src/Types";
2
- import "../../src/attributes/_imports";
3
- import {DOM} from "../../src/DOM";
4
-
5
-
6
- describe('Bind', () => {
7
- it("vsn-bind to work with inner text", (done) => {
8
- document.body.innerHTML = `
9
- <span id="test" vsn-name="test" vsn-bind="test.value">testing</span>
10
- `;
11
- const dom = new DOM(document.body);
12
- dom.once('built', async () => {
13
- const tag = await dom.getTagForElement(document.getElementById('test'));
14
- expect(tag).toBeTruthy();
15
- expect(tag.getParsedAttributeValue('vsn-name', 1)).toBe('test');
16
- expect(tag.scope.get('value')).toBe('testing');
17
- done();
18
- });
19
- });
20
-
21
- it("vsn-bind to work with inner text with @text", (done) => {
22
- document.body.innerHTML = `
23
- <span id="test" test="testing" vsn-bind="@test"></span>
24
- `;
25
- const dom = new DOM(document.body);
26
- dom.once('built', async () => {
27
- const tag = await dom.getTagForElement(document.getElementById('test'));
28
- expect(tag).toBeTruthy();
29
- expect(tag.scope.get('@test')).toBe('testing');
30
- done();
31
- });
32
- });
33
-
34
- it("vsn-bind order of execution to be left to right and top to bottom", (done) => {
35
- document.body.innerHTML = `
36
- <span id="test" vsn-name="test" vsn-bind:id="test.id" vsn-bind="test.id">testing</span>
37
- <span id="test2" vsn-bind="test.id">arg</span>
38
- `;
39
-
40
- const dom = new DOM(document.body);
41
- dom.once('built', async () => {
42
- const test = document.getElementById('arg');
43
- const tag = await dom.getTagForElement(test);
44
- const test2 = document.getElementById('test2');
45
- expect(tag).toBeTruthy();
46
- expect(tag.scope.get('id')).toBe('arg');
47
- expect(test.innerText).toBe('arg');
48
- expect(test2.innerText).toBe('arg');
49
- done();
50
- });
51
- });
52
-
53
- it("vsn-bind attribute changes trigger updating scope with new value", (done) => {
54
- document.body.innerHTML = `
55
- <span id="test" vsn-name="test" vsn-bind:id="test.id"></span>
56
- `;
57
-
58
- const dom = new DOM(document.body);
59
- dom.once('built', async () => {
60
- const test = document.getElementById('test');
61
- const tag = await dom.getTagForElement(test);
62
-
63
- tag.scope.on('change:id', () => {
64
- expect(test.getAttribute('id')).toBe('new-id');
65
- expect(tag.scope.get('id')).toBe('new-id');
66
- done();
67
- });
68
-
69
- test.setAttribute('id', 'new-id');
70
- });
71
- });
72
-
73
- it("vsn-bind innerHTML changes trigger updating scope with new value", (done) => {
74
- document.body.innerHTML = `
75
- <span id="test" vsn-name="test" vsn-bind="test.val">testing</span>
76
- `;
77
-
78
- const dom = new DOM(document.body, false);
79
- dom.once('built', async () => {
80
- const test = document.getElementById('test');
81
- const tag = await dom.getTagForElement(test);
82
- expect(tag.scope.get('val')).toBe('testing');
83
-
84
- tag.scope.get('test').on('change:val', () => {
85
- expect(tag.scope.get('val')).toBe('new-val');
86
- done();
87
- });
88
-
89
- test.innerHTML = 'new-val';
90
- });
91
- dom.buildFrom(document.body, true);
92
- });
93
-
94
- it("vsn-bind input value changes trigger updating scope with new value", (done) => {
95
- document.body.innerHTML = `
96
- <input id="test" value="testing" vsn-name="test" vsn-bind="test.val"/>
97
- `;
98
-
99
- const dom = new DOM(document.body, false);
100
- dom.once('built', async () => {
101
- const test = document.getElementById('test');
102
- const tag = await dom.getTagForElement(test);
103
- expect(tag.scope.get('val')).toBe('testing');
104
-
105
- tag.scope.get('test').on('change:val', () => {
106
- expect(tag.scope.get('val')).toBe('new-val');
107
- done();
108
- });
109
-
110
- test.setAttribute('value', 'new-val');
111
- (test as any).value = 'new-val';
112
- test.dispatchEvent(new Event('focus'));
113
- test.dispatchEvent(new KeyboardEvent('keyup', {key: 'w'}));
114
- });
115
-
116
- dom.buildFrom(document.body, true);
117
- });
118
-
119
- it("vsn-bind element innerHTML should change when scope value is changed", (done) => {
120
- document.body.innerHTML = `
121
- <span id="test" vsn-name="test" vsn-bind="test.val">testing</span>
122
- `;
123
-
124
- const dom = new DOM(document.body, false);
125
- dom.once('built', async () => {
126
- const test = document.getElementById('test');
127
- const tag = await dom.getTagForElement(test);
128
- expect(tag.scope.get('val')).toBe('testing');
129
-
130
- tag.scope.get('test').on('change:val', () => {
131
- expect(test.innerHTML).toBe('new-val');
132
- done();
133
- });
134
-
135
- tag.scope.get('test').set('val', 'new-val');
136
- });
137
- dom.buildFrom(document.body, true);
138
- });
139
-
140
- it("vsn-bind input value should change when scope value is changed", (done) => {
141
- document.body.innerHTML = `
142
- <input id="test" value="testing" vsn-name="test" vsn-bind="test.val" />
143
- `;
144
-
145
- const dom = new DOM(document.body);
146
- dom.once('built', async () => {
147
- const test = document.getElementById('test');
148
- const tag = await dom.getTagForElement(test);
149
- expect(tag.scope.get('val')).toBe('testing');
150
-
151
- tag.on('mutate', () => {
152
- expect(test.getAttribute('value')).toBe('new-val');
153
- done();
154
- });
155
-
156
- tag.scope.set('val', 'new-val');
157
- });
158
- });
159
-
160
- it("vsn-bind should work with currency formatter", (done) => {
161
- document.body.innerHTML = `
162
- <span id="test" vsn-name="test" vsn-bind="test.value" vsn-format="currency" vsn-type:test.value="float">1.5</span>
163
- `;
164
- const dom = new DOM(document.body);
165
- dom.once('built', async () => {
166
- const tag = await dom.getTagForElement(document.getElementById('test'));
167
- expect(tag).toBeTruthy();
168
- expect(tag.getParsedAttributeValue('vsn-name', 1)).toBe('test');
169
- expect(tag.scope.get('value')).toBe(1.5);
170
- expect(tag.element.innerText).toBe('$1.50');
171
- done();
172
- });
173
- });
174
- });