nodality 1.3.22 → 1.3.24

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 (283) hide show
  1. package/dist/animator.cjs.js +1 -1
  2. package/dist/animator.cjs.js.LICENSE.txt +1 -1
  3. package/dist/animator.esm.js +1 -1
  4. package/dist/animator.esm.js.LICENSE.txt +1 -1
  5. package/dist/audionew.cjs.js +1 -1
  6. package/dist/audionew.cjs.js.LICENSE.txt +1 -1
  7. package/dist/audionew.esm.js +1 -1
  8. package/dist/audionew.esm.js.LICENSE.txt +1 -1
  9. package/dist/base.cjs.js +1 -1
  10. package/dist/base.cjs.js.LICENSE.txt +1 -1
  11. package/dist/base.esm.js +1 -1
  12. package/dist/base.esm.js.LICENSE.txt +1 -1
  13. package/dist/beta-desktop-bar.cjs.js +1 -1
  14. package/dist/beta-desktop-bar.cjs.js.LICENSE.txt +1 -1
  15. package/dist/beta-desktop-bar.esm.js +1 -1
  16. package/dist/beta-desktop-bar.esm.js.LICENSE.txt +1 -1
  17. package/dist/beta-mobile-bar.cjs.js +1 -1
  18. package/dist/beta-mobile-bar.cjs.js.LICENSE.txt +1 -1
  19. package/dist/beta-mobile-bar.esm.js +1 -1
  20. package/dist/beta-mobile-bar.esm.js.LICENSE.txt +1 -1
  21. package/dist/bundle.umd.js +1 -1
  22. package/dist/bundle.umd.js.LICENSE.txt +1 -1
  23. package/dist/button.cjs.js +1 -1
  24. package/dist/button.cjs.js.LICENSE.txt +1 -1
  25. package/dist/button.esm.js +1 -1
  26. package/dist/button.esm.js.LICENSE.txt +1 -1
  27. package/dist/card-getter.cjs.js.LICENSE.txt +1 -1
  28. package/dist/card-getter.esm.js.LICENSE.txt +1 -1
  29. package/dist/center.cjs.js +1 -1
  30. package/dist/center.cjs.js.LICENSE.txt +1 -1
  31. package/dist/center.esm.js +1 -1
  32. package/dist/center.esm.js.LICENSE.txt +1 -1
  33. package/dist/checkbox.cjs.js +1 -1
  34. package/dist/checkbox.cjs.js.LICENSE.txt +1 -1
  35. package/dist/checkbox.esm.js +1 -1
  36. package/dist/checkbox.esm.js.LICENSE.txt +1 -1
  37. package/dist/code.cjs.js +1 -1
  38. package/dist/code.cjs.js.LICENSE.txt +1 -1
  39. package/dist/code.esm.js +1 -1
  40. package/dist/code.esm.js.LICENSE.txt +1 -1
  41. package/dist/container.cjs.js +1 -1
  42. package/dist/container.cjs.js.LICENSE.txt +1 -1
  43. package/dist/container.esm.js +1 -1
  44. package/dist/container.esm.js.LICENSE.txt +1 -1
  45. package/dist/data-list.cjs.js.LICENSE.txt +1 -1
  46. package/dist/data-list.esm.js.LICENSE.txt +1 -1
  47. package/dist/designer.cjs.js +1 -1
  48. package/dist/designer.cjs.js.LICENSE.txt +1 -1
  49. package/dist/designer.esm.js +1 -1
  50. package/dist/designer.esm.js.LICENSE.txt +1 -1
  51. package/dist/element-mapper.cjs.js +1 -1
  52. package/dist/element-mapper.cjs.js.LICENSE.txt +1 -1
  53. package/dist/element-mapper.esm.js +1 -1
  54. package/dist/element-mapper.esm.js.LICENSE.txt +1 -1
  55. package/dist/finalresult.esm.js +1 -1
  56. package/dist/finalresult.esm.js.LICENSE.txt +1 -1
  57. package/dist/flex-card.cjs.js +1 -1
  58. package/dist/flex-card.cjs.js.LICENSE.txt +1 -1
  59. package/dist/flex-card.esm.js +1 -1
  60. package/dist/flex-card.esm.js.LICENSE.txt +1 -1
  61. package/dist/flex-grid.cjs.js +1 -1
  62. package/dist/flex-grid.cjs.js.LICENSE.txt +1 -1
  63. package/dist/flex-grid.esm.js +1 -1
  64. package/dist/flex-grid.esm.js.LICENSE.txt +1 -1
  65. package/dist/flex-row.cjs.js +1 -1
  66. package/dist/flex-row.cjs.js.LICENSE.txt +1 -1
  67. package/dist/flex-row.esm.js +1 -1
  68. package/dist/flex-row.esm.js.LICENSE.txt +1 -1
  69. package/dist/floating-input.cjs.js +1 -1
  70. package/dist/floating-input.cjs.js.LICENSE.txt +1 -1
  71. package/dist/floating-input.esm.js +1 -1
  72. package/dist/floating-input.esm.js.LICENSE.txt +1 -1
  73. package/dist/free.cjs.js +1 -1
  74. package/dist/free.cjs.js.LICENSE.txt +1 -1
  75. package/dist/free.esm.js +1 -1
  76. package/dist/free.esm.js.LICENSE.txt +1 -1
  77. package/dist/horizontal-scroller.cjs.js.LICENSE.txt +1 -1
  78. package/dist/horizontal-scroller.esm.js.LICENSE.txt +1 -1
  79. package/dist/image-picker.cjs.js +1 -1
  80. package/dist/image-picker.cjs.js.LICENSE.txt +1 -1
  81. package/dist/image-picker.esm.js +1 -1
  82. package/dist/image-picker.esm.js.LICENSE.txt +1 -1
  83. package/dist/image.cjs.js +1 -1
  84. package/dist/image.cjs.js.LICENSE.txt +1 -1
  85. package/dist/image.esm.js +1 -1
  86. package/dist/image.esm.js.LICENSE.txt +1 -1
  87. package/dist/index.cjs.js +1 -1
  88. package/dist/index.cjs.js.LICENSE.txt +1 -1
  89. package/dist/index.d.ts +1 -1
  90. package/dist/index.esm.js +1 -1
  91. package/dist/index.esm.js.LICENSE.txt +1 -1
  92. package/dist/keyframe-animation.cjs.js.LICENSE.txt +1 -1
  93. package/dist/keyframe-animation.esm.js.LICENSE.txt +1 -1
  94. package/dist/link-getter.cjs.js +1 -1
  95. package/dist/link-getter.cjs.js.LICENSE.txt +1 -1
  96. package/dist/link-getter.esm.js +1 -1
  97. package/dist/link-getter.esm.js.LICENSE.txt +1 -1
  98. package/dist/link.cjs.js +1 -1
  99. package/dist/link.cjs.js.LICENSE.txt +1 -1
  100. package/dist/link.esm.js +1 -1
  101. package/dist/link.esm.js.LICENSE.txt +1 -1
  102. package/dist/meta-adder.cjs.js +1 -1
  103. package/dist/meta-adder.cjs.js.LICENSE.txt +1 -1
  104. package/dist/meta-adder.esm.js +1 -1
  105. package/dist/meta-adder.esm.js.LICENSE.txt +1 -1
  106. package/dist/modal-2025.cjs.js +1 -1
  107. package/dist/modal-2025.cjs.js.LICENSE.txt +1 -1
  108. package/dist/modal-2025.esm.js +1 -1
  109. package/dist/modal-2025.esm.js.LICENSE.txt +1 -1
  110. package/dist/multiswitcher.cjs.js +1 -1
  111. package/dist/multiswitcher.cjs.js.LICENSE.txt +1 -1
  112. package/dist/multiswitcher.esm.js +1 -1
  113. package/dist/multiswitcher.esm.js.LICENSE.txt +1 -1
  114. package/dist/new-nav-bar.cjs.js +1 -1
  115. package/dist/new-nav-bar.cjs.js.LICENSE.txt +1 -1
  116. package/dist/new-nav-bar.esm.js +1 -1
  117. package/dist/new-nav-bar.esm.js.LICENSE.txt +1 -1
  118. package/dist/picker.cjs.js +1 -1
  119. package/dist/picker.cjs.js.LICENSE.txt +1 -1
  120. package/dist/picker.esm.js +1 -1
  121. package/dist/picker.esm.js.LICENSE.txt +1 -1
  122. package/dist/progress.cjs.js +1 -1
  123. package/dist/progress.cjs.js.LICENSE.txt +1 -1
  124. package/dist/progress.esm.js +1 -1
  125. package/dist/progress.esm.js.LICENSE.txt +1 -1
  126. package/dist/radio.cjs.js.LICENSE.txt +1 -1
  127. package/dist/radio.esm.js.LICENSE.txt +1 -1
  128. package/dist/range.cjs.js.LICENSE.txt +1 -1
  129. package/dist/range.esm.js.LICENSE.txt +1 -1
  130. package/dist/scroll-video.cjs.js.LICENSE.txt +1 -1
  131. package/dist/scroll-video.esm.js.LICENSE.txt +1 -1
  132. package/dist/side-bar.cjs.js +1 -1
  133. package/dist/side-bar.cjs.js.LICENSE.txt +1 -1
  134. package/dist/side-bar.esm.js +1 -1
  135. package/dist/side-bar.esm.js.LICENSE.txt +1 -1
  136. package/dist/side-nav-bar.cjs.js +1 -1
  137. package/dist/side-nav-bar.cjs.js.LICENSE.txt +1 -1
  138. package/dist/side-nav-bar.esm.js +1 -1
  139. package/dist/side-nav-bar.esm.js.LICENSE.txt +1 -1
  140. package/dist/simple-bar.cjs.js +1 -1
  141. package/dist/simple-bar.cjs.js.LICENSE.txt +1 -1
  142. package/dist/simple-bar.esm.js +1 -1
  143. package/dist/simple-bar.esm.js.LICENSE.txt +1 -1
  144. package/dist/slider-2025.cjs.js +1 -1
  145. package/dist/slider-2025.cjs.js.LICENSE.txt +1 -1
  146. package/dist/slider-2025.esm.js +1 -1
  147. package/dist/slider-2025.esm.js.LICENSE.txt +1 -1
  148. package/dist/spacer.cjs.js +1 -1
  149. package/dist/spacer.cjs.js.LICENSE.txt +1 -1
  150. package/dist/spacer.esm.js +1 -1
  151. package/dist/spacer.esm.js.LICENSE.txt +1 -1
  152. package/dist/stack.cjs.js +1 -1
  153. package/dist/stack.cjs.js.LICENSE.txt +1 -1
  154. package/dist/stack.esm.js +1 -1
  155. package/dist/stack.esm.js.LICENSE.txt +1 -1
  156. package/dist/stacker.cjs.js.LICENSE.txt +1 -1
  157. package/dist/stacker.esm.js.LICENSE.txt +1 -1
  158. package/dist/table.cjs.js +1 -1
  159. package/dist/table.cjs.js.LICENSE.txt +1 -1
  160. package/dist/table.esm.js +1 -1
  161. package/dist/table.esm.js.LICENSE.txt +1 -1
  162. package/dist/text-field.cjs.js +1 -1
  163. package/dist/text-field.cjs.js.LICENSE.txt +1 -1
  164. package/dist/text-field.esm.js +1 -1
  165. package/dist/text-field.esm.js.LICENSE.txt +1 -1
  166. package/dist/text.cjs.js +1 -1
  167. package/dist/text.cjs.js.LICENSE.txt +1 -1
  168. package/dist/text.esm.js +1 -1
  169. package/dist/text.esm.js.LICENSE.txt +1 -1
  170. package/dist/theme.cjs.js.LICENSE.txt +1 -1
  171. package/dist/theme.esm.js.LICENSE.txt +1 -1
  172. package/dist/transform-anim.cjs.js.LICENSE.txt +1 -1
  173. package/dist/transform-anim.esm.js.LICENSE.txt +1 -1
  174. package/dist/ulist.cjs.js +1 -1
  175. package/dist/ulist.cjs.js.LICENSE.txt +1 -1
  176. package/dist/ulist.esm.js +1 -1
  177. package/dist/ulist.esm.js.LICENSE.txt +1 -1
  178. package/dist/video.cjs.js +1 -1
  179. package/dist/video.cjs.js.LICENSE.txt +1 -1
  180. package/dist/video.esm.js +1 -1
  181. package/dist/video.esm.js.LICENSE.txt +1 -1
  182. package/dist/wrap.cjs.js +1 -1
  183. package/dist/wrap.cjs.js.LICENSE.txt +1 -1
  184. package/dist/wrap.esm.js +1 -1
  185. package/dist/wrap.esm.js.LICENSE.txt +1 -1
  186. package/dist/zoom-card.cjs.js +1 -1
  187. package/dist/zoom-card.cjs.js.LICENSE.txt +1 -1
  188. package/dist/zoom-card.esm.js +1 -1
  189. package/dist/zoom-card.esm.js.LICENSE.txt +1 -1
  190. package/layout/animator.js +82 -56
  191. package/layout/audio.js +1 -1
  192. package/layout/audionew.js +1 -1
  193. package/layout/base.js +1 -1
  194. package/layout/beta-desktop-bar.js +6 -3
  195. package/layout/beta-mobile-bar.js +6 -4
  196. package/layout/button.js +1 -1
  197. package/layout/center.js +1 -1
  198. package/layout/checkbox.js +1 -1
  199. package/layout/circle.js +1 -1
  200. package/layout/code.js +1 -1
  201. package/layout/container.js +1 -1
  202. package/layout/dropdown-2025.js +1 -1
  203. package/layout/flex-card.js +1 -1
  204. package/layout/flex-grid.js +1 -1
  205. package/layout/flex-row.js +1 -1
  206. package/layout/form-components/custom.js +1 -1
  207. package/layout/form-components/data-list.js +1 -1
  208. package/layout/form-components/floating-input.js +1 -1
  209. package/layout/form-components/form-all.js +1 -1
  210. package/layout/form-components/form.js +1 -1
  211. package/layout/form-components/image-picker.js +1 -1
  212. package/layout/form-components/picker.js +1 -1
  213. package/layout/form-components/radio.js +1 -1
  214. package/layout/form-components/radiogroup.js +1 -1
  215. package/layout/form-components/range.js +1 -1
  216. package/layout/free.js +1 -1
  217. package/layout/grid-overlay.js +1 -1
  218. package/layout/grid-switcher.js +1 -1
  219. package/layout/grid.js +1 -1
  220. package/layout/horizontal-scroller.js +1 -1
  221. package/layout/image.js +2 -2
  222. package/layout/index.js +1 -1
  223. package/layout/link.js +1 -1
  224. package/layout/list.js +1 -1
  225. package/layout/meta-adder.js +1 -1
  226. package/layout/modal-2025.js +1 -1
  227. package/layout/morph.js +1 -1
  228. package/layout/multiswitcher.js +1 -1
  229. package/layout/nav-bar.js +1 -1
  230. package/layout/nav-factor/custom-div.js +1 -1
  231. package/layout/new-nav-bar.js +1 -1
  232. package/layout/polygon.js +1 -1
  233. package/layout/prerender-site.js +1 -1
  234. package/layout/prerender.js +1 -1
  235. package/layout/progress.js +1 -1
  236. package/layout/row.js +1 -1
  237. package/layout/scroll-video.js +1 -1
  238. package/layout/shop.js +1 -1
  239. package/layout/side-bar.js +1 -1
  240. package/layout/side-nav-bar.js +1 -1
  241. package/layout/simple-bar.js +1 -1
  242. package/layout/slider-2025.js +1 -1
  243. package/layout/spacer.js +1 -1
  244. package/layout/stack.js +1 -1
  245. package/layout/svg.js +1 -1
  246. package/layout/switcher.js +16 -32
  247. package/layout/table.js +1 -1
  248. package/layout/text-field.js +1 -1
  249. package/layout/text.js +3 -3
  250. package/layout/ulist.js +1 -1
  251. package/layout/video.js +14 -1
  252. package/layout/wrap.js +1 -1
  253. package/layout/zoom-card.js +1 -1
  254. package/lib/agent-surface.js +1 -1
  255. package/lib/card-getter.js +1 -1
  256. package/lib/check-page.js +1 -1
  257. package/lib/codegen.js +1 -1
  258. package/lib/data.js +1 -1
  259. package/lib/designer.js +1 -1
  260. package/lib/element-mapper.js +13 -11
  261. package/lib/element-params.generated.js +4 -4
  262. package/lib/grid-geometry.js +1 -1
  263. package/lib/keyframe-animation.js +1 -1
  264. package/lib/known-inert.js +1 -1
  265. package/lib/link-getter.js +1 -1
  266. package/lib/morph-node.js +1 -1
  267. package/lib/normalize-spec.js +1 -1
  268. package/lib/parse-html.js +1 -1
  269. package/lib/raster-inspect.js +1 -1
  270. package/lib/raster-ops.js +1 -1
  271. package/lib/raster-presets.js +1 -1
  272. package/lib/resolve-refs.js +1 -1
  273. package/lib/scroll-video.js +1 -1
  274. package/lib/seo.js +1 -1
  275. package/lib/stacker.js +1 -1
  276. package/lib/suggest.js +1 -1
  277. package/lib/theme.js +1 -1
  278. package/lib/transform-anim.js +1 -1
  279. package/lib/transition.js +17 -4
  280. package/lib/validate-nodes.js +2 -2
  281. package/lib/webmcp-adapter.js +1 -1
  282. package/package.json +1 -1
  283. package/schema.json +155 -30
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/free.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/grid.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/image.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -40,7 +40,7 @@ class Image extends Animator {
40
40
 
41
41
 
42
42
  hand(){
43
- this.res.style.cursor = "hand";
43
+ this.res.style.cursor = "pointer";
44
44
  return this;
45
45
  }
46
46
 
package/layout/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/link.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/list.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/morph.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/nav-bar.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/polygon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/row.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/shop.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/spacer.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/stack.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/svg.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -22,17 +22,9 @@ class Switcher extends Animator {
22
22
 
23
23
  }
24
24
 
25
- let area = document.createElement("textarea");
26
- area.style.fontWeight = "bold";
27
- area.style.height = 1000;
28
- area.style.width = 1000;
29
-
30
-
31
-
32
- /* te.value = te.value.replace(".mount('#mount');,", ".mount('#mount');");
33
- te.value = te.value.replace(" ,new Wrapper", "new Wrapper");
34
- */
35
-
25
+ // (A debug <textarea> holding the generated code used to be appended
26
+ // to the page body here, visible on every page that used this.)
27
+
36
28
  this.codeArr = [...this.code];
37
29
 
38
30
  this.code = this.code.toString().replaceAll(", .", ".")
@@ -42,8 +34,6 @@ class Switcher extends Animator {
42
34
  .replaceAll("[,", "[")
43
35
  .replace(/,+/g, ',');
44
36
 
45
- area.value = this.code;
46
- document.body.appendChild(area);
47
37
 
48
38
 
49
39
  /* {
@@ -63,25 +53,19 @@ class Switcher extends Animator {
63
53
  this.res = document.createElement("div"); // move out of the loop
64
54
  // 17:27:15 29/09/23
65
55
 
56
+ // Rebuild only when the matched view CHANGES. This emptied the box and
57
+ // rendered the view again on every resize event, and on a phone the
58
+ // address bar fires one per scroll gesture: the content was torn down
59
+ // and put back (a flash), losing focus, scroll and a playing video.
60
+ let current = null;
66
61
  const innerSwitch = () => {
67
-
68
-
69
- // alert("LK")
70
-
71
-
72
- this.res.innerHTML = "";
73
- // this.code.push(` \n .switchElements()`)
74
- let mq = window.matchMedia(`(max-width: ${this.obj.breakpoint})`).matches;
75
-
76
- if (mq){
77
- // alert("O")
78
-
79
- this.res.appendChild(this.obj.first.render());
80
- } else {
81
-
82
- this.res.appendChild(this.obj.second.render());
83
- }
84
- }
62
+ const mq = window.matchMedia(`(max-width: ${this.obj.breakpoint})`).matches;
63
+ const view = mq ? this.obj.first : this.obj.second;
64
+ if (view === current) return;
65
+ current = view;
66
+ this.res.innerHTML = "";
67
+ this.res.appendChild(view.render());
68
+ };
85
69
 
86
70
  innerSwitch();
87
71
 
package/layout/table.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/text.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -162,8 +162,8 @@ this.res.style.position = "absolute";
162
162
 
163
163
  obj.maxWidth && (this.res.style.maxWidth = obj.maxWidth);
164
164
 
165
- //@ cursor: Show a pointer cursor. Any truthy value; the cursor style itself is fixed.
166
- obj.cursor && (this.res.style.cursor = "hand");
165
+ // `cursor` is applied by commonMethods above. This line used to overwrite
166
+ // it with "hand", which no browser but Internet Explorer accepts.
167
167
 
168
168
  //@ gpos: Grid placement — {col, row}, written to grid-column and grid-row.
169
169
  obj.gpos && this.gpos(obj.gpos);
package/layout/ulist.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/video.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -144,6 +144,19 @@ class Video extends Animator {
144
144
 
145
145
  //@ video.background {color}: CSS background behind the frame — visible while the poster loads.
146
146
  obj.background && (v.style.background = obj.background);
147
+
148
+ //@ video.posterBehind {bool}: Also paint the poster behind the frame, sized like it (objectFit). On by default whenever there is a poster; pass false for a clip with transparency, which would show it through.
149
+ // Browsers stop drawing the poster when play() starts, not when the
150
+ // first frame arrives. In between the element shows only its
151
+ // background, so an autoplaying loop that starts as it scrolls into
152
+ // view flashed blank for a frame or more before the picture.
153
+ if (obj.poster && obj.posterBehind !== false && !/url\(|gradient\(/.test(String(obj.background || ""))) {
154
+ const fit = obj.objectFit || "contain";
155
+ v.style.backgroundImage = `url(${JSON.stringify(String(obj.poster))})`;
156
+ v.style.backgroundSize = fit === "cover" ? "cover" : fit === "fill" ? "100% 100%" : fit === "none" ? "auto" : "contain";
157
+ v.style.backgroundPosition = "center";
158
+ v.style.backgroundRepeat = "no-repeat";
159
+ }
147
160
  //@ video.height {css-length}: CSS height of the element.
148
161
  obj.height && (v.style.height = obj.height);
149
162
  //@ video.maxWidth {css-length}: CSS max-width of the element.
package/layout/wrap.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/lib/check-page.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/lib/codegen.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/lib/data.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/lib/designer.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.3.22
2
+ * nodality v1.3.24
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -967,7 +967,7 @@ animation: {
967
967
  fluidc: "S6",
968
968
  weight: "bold",
969
969
  align: "center",
970
- cursor: "hand",
970
+ cursor: "pointer",
971
971
  icon: {
972
972
  padding: 30,
973
973
  url: "https://cdn-icons-png.flaticon.com/512/60/60995.png"
@@ -1072,6 +1072,8 @@ alert("PP")
1072
1072
  ...(el.pad !== undefined ? { pad: el.pad } : {}),
1073
1073
  ...(el.color !== undefined ? { color: el.color } : {}),
1074
1074
  ...(el.keySet !== undefined ? { keySet: el.keySet } : {}),
1075
+ //@ nav.brandLink {url}: Where the brand leads, e.g. "/". Without it the brand is not a link.
1076
+ ...(el.brandLink ? { brandLink: el.brandLink } : {}),
1075
1077
  };
1076
1078
 
1077
1079
  //@ nav.breakpoint {px-or-length}: Width from which the full bar shows; below it the links collapse behind the menu button. Default "1200px".
@@ -1210,7 +1212,7 @@ if (obj.el.dropdown){
1210
1212
  }).add([
1211
1213
  new Text("First")
1212
1214
  .set({
1213
- cursor: "hand",
1215
+ cursor: "pointer",
1214
1216
  icon: {padding:30,url:"https://cdn-icons-png.flaticon.com/512/60/60995.png"},
1215
1217
  fluidc: "S6",
1216
1218
  pad: [{l:20,r:10}],
@@ -1329,7 +1331,7 @@ if (obj.el.dropdown){
1329
1331
  }).add([
1330
1332
  new Text("More")
1331
1333
  .set({
1332
- cursor: "hand",
1334
+ cursor: "pointer",
1333
1335
  icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1334
1336
  fluidc: "S6",
1335
1337
  pad: [{ l: 10, r: 10 }],
@@ -1341,7 +1343,7 @@ if (obj.el.dropdown){
1341
1343
 
1342
1344
  new Text("Our story")
1343
1345
  .set({
1344
- cursor: "hand",
1346
+ cursor: "pointer",
1345
1347
  // icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1346
1348
  fluidc: "S6",
1347
1349
  pad: [{ l: 10, r: 10 }],
@@ -1353,7 +1355,7 @@ if (obj.el.dropdown){
1353
1355
 
1354
1356
  new Text("Team")
1355
1357
  .set({
1356
- cursor: "hand",
1358
+ cursor: "pointer",
1357
1359
  // icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1358
1360
  fluidc: "S6",
1359
1361
  pad: [{ l: 10, r: 10 }],
@@ -1407,7 +1409,7 @@ if (obj.el.dropdown){
1407
1409
  }).add([
1408
1410
  new Text("More")
1409
1411
  .set({
1410
- cursor: "hand",
1412
+ cursor: "pointer",
1411
1413
  icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1412
1414
  fluidc: "S6",
1413
1415
  pad: [{ l: 10, r: 10 }],
@@ -1430,7 +1432,7 @@ new Wrapper().set({
1430
1432
  .set({
1431
1433
  text: "Who we are", // BEWARE
1432
1434
  url: "jk",
1433
- cursor: "hand",
1435
+ cursor: "pointer",
1434
1436
  // icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1435
1437
  fluidc: "S6",
1436
1438
  pad: [{ l: 10, r: 10 }],
@@ -1443,7 +1445,7 @@ new Wrapper().set({
1443
1445
  .set({
1444
1446
  text: "Info",
1445
1447
  url: "#u",
1446
- cursor: "hand",
1448
+ cursor: "pointer",
1447
1449
  // icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1448
1450
  fluidc: "S6",
1449
1451
  pad: [{ l: 10, r: 10 }],
@@ -1457,7 +1459,7 @@ new Wrapper().set({
1457
1459
  .set({
1458
1460
  text: "About",
1459
1461
  url: "#u",
1460
- cursor: "hand",
1462
+ cursor: "pointer",
1461
1463
  // icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1462
1464
  fluidc: "S6",
1463
1465
  pad: [{ l: 10, r: 10 }],
@@ -1621,7 +1623,7 @@ new Wrapper().set({
1621
1623
  }).add([
1622
1624
  new Text("More")
1623
1625
  .set({
1624
- cursor: "hand",
1626
+ cursor: "pointer",
1625
1627
  icon: { padding: 30, url: "https://cdn-icons-png.flaticon.com/512/60/60995.png" },
1626
1628
  fluidc: "S6",
1627
1629
  pad: [{ l: 10, r: 10 }],