nodality 1.0.215 → 1.0.217

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 (275) 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.esm.js +1 -1
  90. package/dist/index.esm.js.LICENSE.txt +1 -1
  91. package/dist/keyframe-animation.cjs.js.LICENSE.txt +1 -1
  92. package/dist/keyframe-animation.esm.js.LICENSE.txt +1 -1
  93. package/dist/link-getter.cjs.js +1 -1
  94. package/dist/link-getter.cjs.js.LICENSE.txt +1 -1
  95. package/dist/link-getter.esm.js +1 -1
  96. package/dist/link-getter.esm.js.LICENSE.txt +1 -1
  97. package/dist/link.cjs.js +1 -1
  98. package/dist/link.cjs.js.LICENSE.txt +1 -1
  99. package/dist/link.esm.js +1 -1
  100. package/dist/link.esm.js.LICENSE.txt +1 -1
  101. package/dist/meta-adder.cjs.js.LICENSE.txt +1 -1
  102. package/dist/meta-adder.esm.js.LICENSE.txt +1 -1
  103. package/dist/modal-2025.cjs.js.LICENSE.txt +1 -1
  104. package/dist/modal-2025.esm.js.LICENSE.txt +1 -1
  105. package/dist/multiswitcher.cjs.js +1 -1
  106. package/dist/multiswitcher.cjs.js.LICENSE.txt +1 -1
  107. package/dist/multiswitcher.esm.js +1 -1
  108. package/dist/multiswitcher.esm.js.LICENSE.txt +1 -1
  109. package/dist/new-nav-bar.cjs.js +1 -1
  110. package/dist/new-nav-bar.cjs.js.LICENSE.txt +1 -1
  111. package/dist/new-nav-bar.esm.js +1 -1
  112. package/dist/new-nav-bar.esm.js.LICENSE.txt +1 -1
  113. package/dist/picker.cjs.js +1 -1
  114. package/dist/picker.cjs.js.LICENSE.txt +1 -1
  115. package/dist/picker.esm.js +1 -1
  116. package/dist/picker.esm.js.LICENSE.txt +1 -1
  117. package/dist/progress.cjs.js.LICENSE.txt +1 -1
  118. package/dist/progress.esm.js.LICENSE.txt +1 -1
  119. package/dist/radio.cjs.js.LICENSE.txt +1 -1
  120. package/dist/radio.esm.js.LICENSE.txt +1 -1
  121. package/dist/range.cjs.js.LICENSE.txt +1 -1
  122. package/dist/range.esm.js.LICENSE.txt +1 -1
  123. package/dist/scroll-video.cjs.js.LICENSE.txt +1 -1
  124. package/dist/scroll-video.esm.js.LICENSE.txt +1 -1
  125. package/dist/side-bar.cjs.js.LICENSE.txt +1 -1
  126. package/dist/side-bar.esm.js.LICENSE.txt +1 -1
  127. package/dist/side-nav-bar.cjs.js +1 -1
  128. package/dist/side-nav-bar.cjs.js.LICENSE.txt +1 -1
  129. package/dist/side-nav-bar.esm.js +1 -1
  130. package/dist/side-nav-bar.esm.js.LICENSE.txt +1 -1
  131. package/dist/simple-bar.cjs.js +1 -1
  132. package/dist/simple-bar.cjs.js.LICENSE.txt +1 -1
  133. package/dist/simple-bar.esm.js +1 -1
  134. package/dist/simple-bar.esm.js.LICENSE.txt +1 -1
  135. package/dist/slider-2025.cjs.js +1 -1
  136. package/dist/slider-2025.cjs.js.LICENSE.txt +1 -1
  137. package/dist/slider-2025.esm.js +1 -1
  138. package/dist/slider-2025.esm.js.LICENSE.txt +1 -1
  139. package/dist/spacer.cjs.js.LICENSE.txt +1 -1
  140. package/dist/spacer.esm.js.LICENSE.txt +1 -1
  141. package/dist/stack.cjs.js.LICENSE.txt +1 -1
  142. package/dist/stack.esm.js.LICENSE.txt +1 -1
  143. package/dist/stacker.cjs.js.LICENSE.txt +1 -1
  144. package/dist/stacker.esm.js.LICENSE.txt +1 -1
  145. package/dist/table.cjs.js +1 -1
  146. package/dist/table.cjs.js.LICENSE.txt +1 -1
  147. package/dist/table.esm.js +1 -1
  148. package/dist/table.esm.js.LICENSE.txt +1 -1
  149. package/dist/text-field.cjs.js +1 -1
  150. package/dist/text-field.cjs.js.LICENSE.txt +1 -1
  151. package/dist/text-field.esm.js +1 -1
  152. package/dist/text-field.esm.js.LICENSE.txt +1 -1
  153. package/dist/text.cjs.js +1 -1
  154. package/dist/text.cjs.js.LICENSE.txt +1 -1
  155. package/dist/text.esm.js +1 -1
  156. package/dist/text.esm.js.LICENSE.txt +1 -1
  157. package/dist/theme.cjs.js.LICENSE.txt +1 -1
  158. package/dist/theme.esm.js.LICENSE.txt +1 -1
  159. package/dist/transform-anim.cjs.js.LICENSE.txt +1 -1
  160. package/dist/transform-anim.esm.js.LICENSE.txt +1 -1
  161. package/dist/ulist.cjs.js +1 -1
  162. package/dist/ulist.cjs.js.LICENSE.txt +1 -1
  163. package/dist/ulist.esm.js +1 -1
  164. package/dist/ulist.esm.js.LICENSE.txt +1 -1
  165. package/dist/video.cjs.js +1 -1
  166. package/dist/video.cjs.js.LICENSE.txt +1 -1
  167. package/dist/video.esm.js +1 -1
  168. package/dist/video.esm.js.LICENSE.txt +1 -1
  169. package/dist/wrap.cjs.js.LICENSE.txt +1 -1
  170. package/dist/wrap.esm.js.LICENSE.txt +1 -1
  171. package/dist/zoom-card.cjs.js +1 -1
  172. package/dist/zoom-card.cjs.js.LICENSE.txt +1 -1
  173. package/dist/zoom-card.esm.js +1 -1
  174. package/dist/zoom-card.esm.js.LICENSE.txt +1 -1
  175. package/layout/animator.js +321 -1987
  176. package/layout/audio.js +1 -5
  177. package/layout/audionew.js +1 -1
  178. package/layout/base.js +3 -17
  179. package/layout/beta-desktop-bar.js +1 -1
  180. package/layout/beta-mobile-bar.js +2 -9
  181. package/layout/button.js +7 -30
  182. package/layout/center.js +3 -38
  183. package/layout/checkbox.js +1 -5
  184. package/layout/circle.js +9 -8
  185. package/layout/code.js +1 -1
  186. package/layout/container.js +22 -53
  187. package/layout/dropdown-2025.js +1 -1
  188. package/layout/flex-card.js +20 -10
  189. package/layout/flex-grid.js +1 -5
  190. package/layout/flex-row.js +2 -75
  191. package/layout/form-components/custom.js +1 -1
  192. package/layout/form-components/data-list.js +1 -1
  193. package/layout/form-components/floating-input.js +1 -1
  194. package/layout/form-components/form-all.js +1 -1
  195. package/layout/form-components/form.js +1 -1
  196. package/layout/form-components/image-picker.js +1 -1
  197. package/layout/form-components/picker.js +1 -1
  198. package/layout/form-components/radio.js +1 -1
  199. package/layout/form-components/radiogroup.js +1 -1
  200. package/layout/form-components/range.js +1 -1
  201. package/layout/free.js +1 -1
  202. package/layout/grid-switcher.js +5 -12
  203. package/layout/grid.js +1 -40
  204. package/layout/horizontal-scroller.js +1 -1
  205. package/layout/image.js +24 -115
  206. package/layout/index.js +1 -1
  207. package/layout/link.js +19 -64
  208. package/layout/list.js +1 -1
  209. package/layout/meta-adder.js +1 -1
  210. package/layout/modal-2025.js +1 -1
  211. package/layout/multiswitcher.js +1 -1
  212. package/layout/nav-bar.js +4 -20
  213. package/layout/nav-factor/custom-div.js +1 -1
  214. package/layout/new-nav-bar.js +1 -16
  215. package/layout/polygon.js +7 -12
  216. package/layout/prerender-site.js +1 -1
  217. package/layout/prerender.js +1 -1
  218. package/layout/progress.js +1 -1
  219. package/layout/row.js +1 -4
  220. package/layout/scroll-video.js +1 -1
  221. package/layout/side-bar.js +1 -1
  222. package/layout/side-nav-bar.js +1 -1
  223. package/layout/simple-bar.js +1 -1
  224. package/layout/slider-2025.js +1 -1
  225. package/layout/spacer.js +1 -1
  226. package/layout/stack.js +1 -1
  227. package/layout/svg.js +1 -1
  228. package/layout/switcher.js +1 -1
  229. package/layout/table.js +1 -1
  230. package/layout/text-field.js +18 -38
  231. package/layout/text.js +4 -617
  232. package/layout/ulist.js +1 -25
  233. package/layout/video.js +1 -1
  234. package/layout/wrap.js +1 -1
  235. package/layout/zoom-card.js +1 -1
  236. package/lib/card-getter.js +1 -1
  237. package/lib/data.js +1 -1
  238. package/lib/designer.js +1 -1
  239. package/lib/element-mapper.js +1 -1
  240. package/lib/keyframe-animation.js +1 -1
  241. package/lib/link-getter.js +1 -1
  242. package/lib/raster-ops.js +1 -1
  243. package/lib/scroll-video.js +1 -1
  244. package/lib/seo.js +1 -1
  245. package/lib/stacker.js +1 -1
  246. package/lib/theme.js +1 -1
  247. package/lib/transform-anim.js +1 -1
  248. package/package.json +1 -1
  249. package/dist/dropdown.cjs.js +0 -2
  250. package/dist/dropdown.cjs.js.LICENSE.txt +0 -5
  251. package/dist/dropdown.esm.js +0 -2
  252. package/dist/dropdown.esm.js.LICENSE.txt +0 -5
  253. package/layout/base-2.js +0 -97
  254. package/layout/box.js +0 -35
  255. package/layout/cards.js +0 -143
  256. package/layout/clean-row.js +0 -686
  257. package/layout/custom.js +0 -297
  258. package/layout/div-image.js +0 -167
  259. package/layout/dropdown.js +0 -158
  260. package/layout/empty-element.js +0 -27
  261. package/layout/external-stylesheet.js +0 -25
  262. package/layout/footer.js +0 -89
  263. package/layout/grid-new.js +0 -301
  264. package/layout/group.js +0 -129
  265. package/layout/header.js +0 -181
  266. package/layout/image-old.js +0 -453
  267. package/layout/label.js +0 -56
  268. package/layout/list-OLD.js +0 -6
  269. package/layout/modernwrap.js +0 -97
  270. package/layout/multiswitcherBeta.js +0 -69
  271. package/layout/navBar-OLD.js +0 -266
  272. package/layout/new-flat-adder.js +0 -47
  273. package/layout/offset-container.js +0 -394
  274. package/layout/saved-new-nav-bar.js +0 -437
  275. package/layout/without-new.js +0 -66
package/layout/audio.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -28,10 +28,6 @@ import {Animator} from "./animator.js";
28
28
  return this;
29
29
  }
30
30
 
31
- padding(value){
32
- this.res.style.padding = `${value}px`;
33
- return this;
34
- }
35
31
 
36
32
  size(w, h){
37
33
  this.w = w;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/base.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -138,22 +138,8 @@ class Base {
138
138
  // Change this to div.childNodes to support multiple top-level nodes
139
139
  return div.firstChild;
140
140
  }
141
-
142
- reactState(){
143
-
144
- /*let nodess = document.querySelector(this.el);
145
-
146
- while (nodess.firstChild){
147
- nodess.removeChild(nodess.lastChild);
148
- }*/
149
-
150
-
151
- let node = document.querySelector("#res");
152
-
153
-
154
- let nodes = this.toNode(this.toHTML());
155
- node.appendChild(nodes);
156
- }
141
+
142
+
157
143
 
158
144
  mount(el){
159
145
  this.el = el;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -15,14 +15,7 @@ class /*Beta*/MobileBar extends Animator {
15
15
  // this.setStyles();
16
16
  }
17
17
 
18
- removeQuotesFromBoth(jsonString) {
19
- if (!jsonString) {
20
- return;
21
- }
22
- // Remove quotes from both keys and values
23
- const modifiedJSON = jsonString.replace(/"([^"]+)":\s*"([^"]+)"/g, '$1: $2');
24
- return modifiedJSON;
25
- }
18
+
26
19
 
27
20
 
28
21
  removeQuotesFromFirstWord(jsonString) {
package/layout/button.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -123,11 +123,13 @@ this.options = obj;
123
123
  }
124
124
 
125
125
  if (obj.padding){
126
- this.padding(obj.padding);
126
+ this.deprecatedOption("padding", "pad");
127
+ this.pad([{a: obj.padding}]);
127
128
  }
128
129
 
129
130
  if (obj.margin){
130
- this.margin(obj.margin);
131
+ this.deprecatedOption("margin", "mar");
132
+ this.mar([{a: obj.margin}]);
131
133
  }
132
134
 
133
135
  // Plain `mar` / `pad` are handled implicitly by the
@@ -203,8 +205,8 @@ this.options = obj;
203
205
  // Before S25 Ultra redesign!
204
206
 
205
207
  /*.background("#1abc9c")
206
- .padding("10px")
207
- .margin("10px")
208
+ .pad([{a: "10px"}])
209
+ .mar([{a: "10px"}])
208
210
  .border("none")
209
211
  .borderRadius("7px")*/
210
212
 
@@ -327,32 +329,7 @@ this.options = obj;
327
329
  return this;
328
330
  }
329
331
 
330
- padding(L, T, R, B){
331
- if (L && T && R && B){
332
- this.res.style.paddingLeft = L;
333
- this.res.style.paddingTop = T;
334
- this.res.style.paddingRight = R;
335
- this.res.style.paddingBottom = B;
336
- } else {
337
- this.res.style.padding = L;
338
- }
339
-
340
- return this;
341
- }
342
332
 
343
- margin(L, T, R, B){
344
-
345
- if (L && T && R && B){
346
- this.res.style.marginLeft = L;
347
- this.res.style.marginTop = T;
348
- this.res.style.marginRight = R;
349
- this.res.style.marginBottom = B;
350
- } else {
351
- this.res.style.margin = L;
352
- }
353
-
354
- return this;
355
- }
356
333
 
357
334
  auto() {
358
335
  const adj = () => {
package/layout/center.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -74,31 +74,10 @@ return this;
74
74
 
75
75
  return this;
76
76
  }
77
-
78
- itemWidth(w){
79
- for (var i = 0; i < this.res.childNodes.length; i++){
80
- let el = this.res.childNodes[i];
81
- el.style.width = w;
82
- }
83
-
84
- return this;
85
- }
77
+
78
+
86
79
 
87
80
 
88
- margin(L, T, R, B) {
89
- if (L || T || R || B){ // CAUGHT MYSELF
90
- this.res.style.marginLeft = L;
91
- this.res.style.marginTop = T;
92
- this.res.style.marginRight = R;
93
- this.res.style.marginBottom = B;
94
- }
95
-
96
- if (!T && !R && !B){
97
- this.res.style.margin = L;
98
- }
99
-
100
- return this;
101
- }
102
81
 
103
82
 
104
83
  itemWidth(w){
@@ -111,20 +90,6 @@ return this;
111
90
  }
112
91
 
113
92
 
114
- margin(L, T, R, B) {
115
- if (L || T || R || B){ // CAUGHT MYSELF
116
- this.res.style.marginLeft = L;
117
- this.res.style.marginTop = T;
118
- this.res.style.marginRight = R;
119
- this.res.style.marginBottom = B;
120
- }
121
-
122
- if (!T && !R && !B){
123
- this.res.style.margin = L;
124
- }
125
-
126
- return this;
127
- }
128
93
 
129
94
  /*arrayPadding(arr, value) {
130
95
  if (arr.includes("left")){
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -170,10 +170,6 @@ obj.resmar && this.resmar(obj.resmar);
170
170
  return [`new Checkbox().set({\n ${entries}\n})`];
171
171
  }
172
172
 
173
- margin(amount) {
174
- this.el.style.margin = amount;
175
- return this;
176
- }
177
173
 
178
174
  render(div) {
179
175
  if (div) {
package/layout/circle.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -40,18 +40,19 @@ class Circle extends Animator {
40
40
  return [`new Circle().set(${objString})`];
41
41
  }
42
42
 
43
- // --- Layout helpers ---
44
- flexOne() { this.res.style.flex = "1"; return this; }
45
- setGridWithoutCode() { this.res.style.border = "1px solid white"; return this; }
43
+
46
44
  setArea(area) { this.res.style.gridArea = area; return this; }
47
- rowCol(row, col) { this.res.style.gridRow = row; this.res.style.gridColumn = col; return this; }
48
- setGridRow(row) { this.res.style.gridRow = row; return this; }
49
- setGridCol(col) { this.res.style.gridColumn = col; return this; }
45
+
46
+
50
47
 
51
48
  // --- Circle-specific API ---
52
49
  diameter(px) { this.res.style.width = this.res.style.height = typeof px === "number" ? px + "px" : px; this.res.style.borderRadius = "50%"; return this; }
53
50
  size(w, h = w) { this.res.style.width = typeof w === "number" ? w + "px" : w; this.res.style.height = typeof h === "number" ? h + "px" : h; this.res.style.borderRadius = "50%"; return this; }
54
- color(c) { this.res.style.backgroundColor = c; return this; }
51
+ // `color` is the text colour on every component (it is a styleMap key on
52
+ // Animator). It used to set backgroundColor here, which made `color:` and
53
+ // `background:` do the same thing and left no way to set text colour.
54
+ color(c) { this.res.style.color = c; return this; }
55
+ background(c) { this.res.style.background = c; return this; }
55
56
  border(spec) { this.res.style.border = typeof spec === "string" ? spec : `${spec?.width || 1}px solid ${spec?.color || "black"}`; return this; }
56
57
  radius(r) { this.res.style.borderRadius = typeof r === "number" ? r + "px" : r; return this; }
57
58
 
package/layout/code.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -18,10 +18,7 @@ class Wrapper extends Animator { // 12:10:02 found grep 06/03
18
18
  this.code.push("\n new Wrapper() \n");
19
19
  }
20
20
 
21
- isLasta(){
22
- this.isLast = true;
23
- return this;
24
- }
21
+
25
22
 
26
23
 
27
24
 
@@ -71,29 +68,17 @@ code = `${pad}new Wrapper()`;
71
68
  this.res.style.gridArea = area;
72
69
  return this;
73
70
  }
74
-
75
- removeQuotesFromFirstWord(jsonString) {
76
- const modifiedJSON = jsonString.replace(/"([^"]+)":/g, '$1:');
77
- return modifiedJSON;
78
- }
79
71
 
80
- clicked(handler){
81
- this.res.addEventListener("click", handler);
82
- return this;
83
- }
72
+
73
+
74
+
84
75
 
85
76
  onTap(handler){
86
77
  this.res.addEventListener("click", handler);
87
78
  return this;
88
79
  }
89
80
 
90
- gpos(obj){
91
- //alert(obj.col);
92
- this.res.style.gridColumn = obj.col;
93
- this.res.style.gridRow = obj.row;
94
- //this.res.style.border = "1px solid green";
95
- return this;
96
- }
81
+
97
82
 
98
83
  set(obj){
99
84
  this.obj = obj;
@@ -576,12 +561,6 @@ code = `${pad}new Wrapper()`;
576
561
 
577
562
 
578
563
 
579
-
580
- maxWidth(w){
581
- this.res.style.maxWidth = w;
582
- return this;
583
- }
584
-
585
564
  font(font){
586
565
  this.res.style.fontFamily = font;
587
566
  return this;
@@ -771,8 +750,14 @@ code = `${pad}new Wrapper()`;
771
750
  this.res.style.height = `${h}`;
772
751
  return this;
773
752
  }
753
+ /**
754
+ * Width and height. Renamed from size(), which collided with the `size`
755
+ * OPTION — on any component that calls commonMethods, `size:` is the
756
+ * fluid type scale (S1…S6), so `.size()` meaning width read as the same
757
+ * word doing two unrelated jobs in one call chain.
758
+ */
774
759
 
775
- size(w, h){
760
+ dimensions(w, h) {
776
761
  this.w = w;
777
762
  this.h = h;
778
763
 
@@ -792,6 +777,13 @@ code = `${pad}new Wrapper()`;
792
777
  return this;
793
778
  }
794
779
 
780
+ //@deprecated size: on this component `size()` set width and height, which collided with the `size` option (fluid type scale). Use `dimensions(w, h)`.
781
+ size(w, h) {
782
+ this.deprecatedOption("size() on this component", "dimensions(w, h)");
783
+ return this.dimensions(w, h);
784
+ }
785
+
786
+
795
787
  background(color) {
796
788
  this.res.style.background = color;
797
789
  return this;
@@ -802,31 +794,8 @@ code = `${pad}new Wrapper()`;
802
794
  this.res.style.borderRadius = corner;
803
795
  return this;
804
796
  }
805
-
806
- padding(L, T, R, B){
807
- this.res.style.paddingLeft = L;
808
- this.res.style.paddingTop = T;
809
- this.res.style.paddingRight = R;
810
- this.res.style.paddingBottom = B;
811
- return this;
812
- }
813
-
814
- margin(L, T, R, B){
815
- this.res.style.marginLeft = L;
816
- this.res.style.marginTop = T;
817
- this.res.style.marginRight = R;
818
- this.res.style.marginBottom = B;
819
- return this;
820
- }
821
-
822
- itemWidth(w){
823
- for (var i = 0; i < this.res.childNodes.length; i++){
824
- let el = this.res.childNodes[i];
825
- el.style.width = w;
826
- }
827
-
828
- return this;
829
- }
797
+
798
+
830
799
 
831
800
 
832
801
  apply(arr) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -159,7 +159,11 @@ this.options = obj;
159
159
  }
160
160
 
161
161
  background(color){
162
- this.res.style.backgroundColor = color;
162
+ // The shorthand, not backgroundColor: it also resets background-image,
163
+ // so setting a flat colour after a gradient clears the gradient. The
164
+ // longhand left it in place, so the same call behaved differently
165
+ // depending on which component you happened to hold.
166
+ this.res.style.background = color;
163
167
  return this;
164
168
  }
165
169
 
@@ -168,10 +172,6 @@ this.options = obj;
168
172
  return this;
169
173
  }
170
174
 
171
- padding(pad){
172
- this.res.style.padding = `${pad}px`;
173
- return this;
174
- }
175
175
 
176
176
  items(els){
177
177
  for (var i = 0; i < els.length; i++){
@@ -185,11 +185,21 @@ this.options = obj;
185
185
  this.res.style.boxShadow = "1px 1px 20px rgba(0, 0, 0, 0.60)";
186
186
  return this;
187
187
  }
188
-
189
- round(value){
190
- this.res.style.borderRadius = `${value}px`;
191
- return this;
188
+ /**
189
+ * Corner radius. A number is pixels; a string is passed through, so
190
+ * `radius("50%")` and `radius(12)` both work.
191
+ */
192
+ radius(v) {
193
+ this.res.style.borderRadius = typeof v === "number" ? `${v}px` : v;
194
+ return this;
195
+ }
196
+
197
+ //@deprecated round: superseded by `radius()`, which is the same thing under the name the option already uses.
198
+ round(v) {
199
+ this.deprecatedOption("round()", "radius()");
200
+ return this.radius(v);
192
201
  }
202
+
193
203
 
194
204
  render(div){
195
205
  if (div){
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -204,10 +204,6 @@ class FlexGrid extends Animator {
204
204
  }
205
205
 
206
206
 
207
- padding(value){
208
- this.res.style.padding = `${value}px`;
209
- return this;
210
- }
211
207
 
212
208
 
213
209
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -65,7 +65,7 @@ class FlexRow extends Animator {
65
65
 
66
66
  //this.code.push(`\n .set({`);
67
67
  if (options.padding){
68
- this.padding(options.padding);
68
+ this.pad([{a: options.padding}]);
69
69
  }
70
70
 
71
71
  //alert(options.opacity);
@@ -563,10 +563,6 @@ let stringified = JSON.stringify(options.borderObj);
563
563
  }
564
564
 
565
565
 
566
- borderAround(data){
567
- this.res.style.border = data;
568
- return this;
569
- }
570
566
 
571
567
 
572
568
 
@@ -621,10 +617,6 @@ let stringified = JSON.stringify(options.borderObj);
621
617
 
622
618
 
623
619
 
624
- padding(vals){
625
- this.res.style.padding = vals;
626
- return this;
627
- }
628
620
 
629
621
 
630
622
  toColumn(){
@@ -660,19 +652,6 @@ let stringified = JSON.stringify(options.borderObj);
660
652
  }
661
653
 
662
654
 
663
- noSpaceAround(){
664
- this.res.style.justifyContent = "";
665
- return this;
666
- }
667
-
668
-
669
-
670
-
671
- itemAlignCenter(){
672
- this.res.style.justifyContent = "center";
673
- this.res.style.alignItems = "center";
674
- return this;
675
- }
676
655
 
677
656
 
678
657
  /*
@@ -816,58 +795,6 @@ let stringified = JSON.stringify(options.borderObj);
816
795
  }
817
796
 
818
797
 
819
-
820
- /*
821
-
822
- this.code.push(".add([ \n");
823
- for (var i = 0; i < els.length; i++){
824
- let item = els[i].render();//.render();
825
- this.res.appendChild(item);
826
-
827
-
828
- if (els[i].toCode !== undefined){
829
-
830
- this.code.push(els[i].toCode().flatMap(l=>l)); // 20:10:00 Nice!
831
- // 12:25:10 Wow!!!
832
-
833
-
834
- }
835
- }
836
-
837
- //122616 06/03 Houdini M2 chip
838
- this.code.push("])");
839
-
840
-
841
- return this;
842
- */
843
-
844
-
845
-
846
-
847
- adjustRatiosForLayout(){
848
-
849
- if (this.els[1].getWidth == undefined){
850
- return this;
851
- }
852
-
853
- if (this.els[1].getHeight == undefined){
854
- return this; // 171653 fix
855
- } // 171354
856
-
857
- window.addEventListener("resize", () => {
858
- this.resizeValues();
859
- });
860
-
861
-
862
- this.resizeValues();
863
-
864
-
865
-
866
-
867
- // 18:29:04
868
-
869
- return this;
870
- }
871
798
 
872
799
 
873
800
  resizeValues(){
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.0.215
2
+ * nodality v1.0.217
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.0.215
2
+ * nodality v1.0.217
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */