nodality 1.2.9 → 1.2.11

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 (205) hide show
  1. package/bin/mcp-server.mjs +86 -0
  2. package/bin/nodality.js +12 -0
  3. package/bin/schema-cli.mjs +72 -0
  4. package/dist/animator.cjs.js.LICENSE.txt +1 -1
  5. package/dist/animator.esm.js.LICENSE.txt +1 -1
  6. package/dist/audionew.cjs.js.LICENSE.txt +1 -1
  7. package/dist/audionew.esm.js.LICENSE.txt +1 -1
  8. package/dist/base.cjs.js.LICENSE.txt +1 -1
  9. package/dist/base.esm.js.LICENSE.txt +1 -1
  10. package/dist/beta-desktop-bar.cjs.js.LICENSE.txt +1 -1
  11. package/dist/beta-desktop-bar.esm.js.LICENSE.txt +1 -1
  12. package/dist/beta-mobile-bar.cjs.js.LICENSE.txt +1 -1
  13. package/dist/beta-mobile-bar.esm.js.LICENSE.txt +1 -1
  14. package/dist/bundle.umd.js +1 -1
  15. package/dist/bundle.umd.js.LICENSE.txt +1 -28
  16. package/dist/button.cjs.js.LICENSE.txt +1 -1
  17. package/dist/button.esm.js.LICENSE.txt +1 -1
  18. package/dist/card-getter.cjs.js.LICENSE.txt +1 -1
  19. package/dist/card-getter.esm.js.LICENSE.txt +1 -1
  20. package/dist/center.cjs.js.LICENSE.txt +1 -1
  21. package/dist/center.esm.js.LICENSE.txt +1 -1
  22. package/dist/checkbox.cjs.js.LICENSE.txt +1 -1
  23. package/dist/checkbox.esm.js.LICENSE.txt +1 -1
  24. package/dist/code.cjs.js.LICENSE.txt +1 -1
  25. package/dist/code.esm.js.LICENSE.txt +1 -1
  26. package/dist/container.cjs.js.LICENSE.txt +1 -1
  27. package/dist/container.esm.js.LICENSE.txt +1 -1
  28. package/dist/data-list.cjs.js.LICENSE.txt +1 -1
  29. package/dist/data-list.esm.js.LICENSE.txt +1 -1
  30. package/dist/designer.cjs.js +1 -1
  31. package/dist/designer.cjs.js.LICENSE.txt +1 -28
  32. package/dist/designer.esm.js +1 -1
  33. package/dist/designer.esm.js.LICENSE.txt +1 -28
  34. package/dist/element-mapper.cjs.js +1 -1
  35. package/dist/element-mapper.cjs.js.LICENSE.txt +1 -1
  36. package/dist/element-mapper.esm.js +1 -1
  37. package/dist/element-mapper.esm.js.LICENSE.txt +1 -1
  38. package/dist/finalresult.esm.js +1 -1
  39. package/dist/finalresult.esm.js.LICENSE.txt +1 -28
  40. package/dist/flex-card.cjs.js.LICENSE.txt +1 -1
  41. package/dist/flex-card.esm.js.LICENSE.txt +1 -1
  42. package/dist/flex-grid.cjs.js.LICENSE.txt +1 -1
  43. package/dist/flex-grid.esm.js.LICENSE.txt +1 -1
  44. package/dist/flex-row.cjs.js.LICENSE.txt +1 -1
  45. package/dist/flex-row.esm.js.LICENSE.txt +1 -1
  46. package/dist/floating-input.cjs.js.LICENSE.txt +1 -1
  47. package/dist/floating-input.esm.js.LICENSE.txt +1 -1
  48. package/dist/free.cjs.js.LICENSE.txt +1 -1
  49. package/dist/free.esm.js.LICENSE.txt +1 -1
  50. package/dist/horizontal-scroller.cjs.js.LICENSE.txt +1 -1
  51. package/dist/horizontal-scroller.esm.js.LICENSE.txt +1 -1
  52. package/dist/image-picker.cjs.js.LICENSE.txt +1 -1
  53. package/dist/image-picker.esm.js.LICENSE.txt +1 -1
  54. package/dist/image.cjs.js.LICENSE.txt +1 -1
  55. package/dist/image.esm.js.LICENSE.txt +1 -1
  56. package/dist/index.cjs.js +1 -1
  57. package/dist/index.cjs.js.LICENSE.txt +1 -28
  58. package/dist/index.d.ts +1 -1
  59. package/dist/index.esm.js +1 -1
  60. package/dist/index.esm.js.LICENSE.txt +1 -28
  61. package/dist/keyframe-animation.cjs.js.LICENSE.txt +1 -1
  62. package/dist/keyframe-animation.esm.js.LICENSE.txt +1 -1
  63. package/dist/link-getter.cjs.js.LICENSE.txt +1 -1
  64. package/dist/link-getter.esm.js.LICENSE.txt +1 -1
  65. package/dist/link.cjs.js.LICENSE.txt +1 -1
  66. package/dist/link.esm.js.LICENSE.txt +1 -1
  67. package/dist/meta-adder.cjs.js.LICENSE.txt +1 -1
  68. package/dist/meta-adder.esm.js.LICENSE.txt +1 -1
  69. package/dist/modal-2025.cjs.js.LICENSE.txt +1 -1
  70. package/dist/modal-2025.esm.js.LICENSE.txt +1 -1
  71. package/dist/multiswitcher.cjs.js.LICENSE.txt +1 -1
  72. package/dist/multiswitcher.esm.js.LICENSE.txt +1 -1
  73. package/dist/new-nav-bar.cjs.js.LICENSE.txt +1 -1
  74. package/dist/new-nav-bar.esm.js.LICENSE.txt +1 -1
  75. package/dist/picker.cjs.js.LICENSE.txt +1 -1
  76. package/dist/picker.esm.js.LICENSE.txt +1 -1
  77. package/dist/progress.cjs.js.LICENSE.txt +1 -1
  78. package/dist/progress.esm.js.LICENSE.txt +1 -1
  79. package/dist/radio.cjs.js.LICENSE.txt +1 -1
  80. package/dist/radio.esm.js.LICENSE.txt +1 -1
  81. package/dist/range.cjs.js.LICENSE.txt +1 -1
  82. package/dist/range.esm.js.LICENSE.txt +1 -1
  83. package/dist/scroll-video.cjs.js.LICENSE.txt +1 -1
  84. package/dist/scroll-video.esm.js.LICENSE.txt +1 -1
  85. package/dist/side-bar.cjs.js.LICENSE.txt +1 -1
  86. package/dist/side-bar.esm.js.LICENSE.txt +1 -1
  87. package/dist/side-nav-bar.cjs.js.LICENSE.txt +1 -1
  88. package/dist/side-nav-bar.esm.js.LICENSE.txt +1 -1
  89. package/dist/simple-bar.cjs.js.LICENSE.txt +1 -1
  90. package/dist/simple-bar.esm.js.LICENSE.txt +1 -1
  91. package/dist/slider-2025.cjs.js.LICENSE.txt +1 -1
  92. package/dist/slider-2025.esm.js.LICENSE.txt +1 -1
  93. package/dist/spacer.cjs.js.LICENSE.txt +1 -1
  94. package/dist/spacer.esm.js.LICENSE.txt +1 -1
  95. package/dist/stack.cjs.js.LICENSE.txt +1 -1
  96. package/dist/stack.esm.js.LICENSE.txt +1 -1
  97. package/dist/stacker.cjs.js.LICENSE.txt +1 -1
  98. package/dist/stacker.esm.js.LICENSE.txt +1 -1
  99. package/dist/table.cjs.js.LICENSE.txt +1 -1
  100. package/dist/table.esm.js.LICENSE.txt +1 -1
  101. package/dist/text-field.cjs.js.LICENSE.txt +1 -1
  102. package/dist/text-field.esm.js.LICENSE.txt +1 -1
  103. package/dist/text.cjs.js.LICENSE.txt +1 -1
  104. package/dist/text.esm.js.LICENSE.txt +1 -1
  105. package/dist/theme.cjs.js.LICENSE.txt +1 -1
  106. package/dist/theme.esm.js.LICENSE.txt +1 -1
  107. package/dist/transform-anim.cjs.js.LICENSE.txt +1 -1
  108. package/dist/transform-anim.esm.js.LICENSE.txt +1 -1
  109. package/dist/ulist.cjs.js.LICENSE.txt +1 -1
  110. package/dist/ulist.esm.js.LICENSE.txt +1 -1
  111. package/dist/video.cjs.js.LICENSE.txt +1 -1
  112. package/dist/video.esm.js.LICENSE.txt +1 -1
  113. package/dist/wrap.cjs.js.LICENSE.txt +1 -1
  114. package/dist/wrap.esm.js.LICENSE.txt +1 -1
  115. package/dist/zoom-card.cjs.js.LICENSE.txt +1 -1
  116. package/dist/zoom-card.esm.js.LICENSE.txt +1 -1
  117. package/layout/animator.js +1 -1
  118. package/layout/audio.js +1 -1
  119. package/layout/audionew.js +1 -1
  120. package/layout/base.js +1 -1
  121. package/layout/beta-desktop-bar.js +1 -1
  122. package/layout/beta-mobile-bar.js +1 -1
  123. package/layout/button.js +1 -1
  124. package/layout/center.js +1 -1
  125. package/layout/checkbox.js +1 -1
  126. package/layout/circle.js +1 -1
  127. package/layout/code.js +1 -1
  128. package/layout/container.js +1 -1
  129. package/layout/dropdown-2025.js +1 -1
  130. package/layout/flex-card.js +1 -1
  131. package/layout/flex-grid.js +1 -1
  132. package/layout/flex-row.js +1 -1
  133. package/layout/form-components/custom.js +1 -1
  134. package/layout/form-components/data-list.js +1 -1
  135. package/layout/form-components/floating-input.js +1 -1
  136. package/layout/form-components/form-all.js +1 -1
  137. package/layout/form-components/form.js +1 -1
  138. package/layout/form-components/image-picker.js +1 -1
  139. package/layout/form-components/picker.js +1 -1
  140. package/layout/form-components/radio.js +1 -1
  141. package/layout/form-components/radiogroup.js +1 -1
  142. package/layout/form-components/range.js +1 -1
  143. package/layout/free.js +1 -1
  144. package/layout/grid-switcher.js +1 -1
  145. package/layout/grid.js +1 -1
  146. package/layout/horizontal-scroller.js +1 -1
  147. package/layout/image.js +1 -1
  148. package/layout/index.js +1 -1
  149. package/layout/link.js +1 -1
  150. package/layout/list.js +1 -1
  151. package/layout/meta-adder.js +1 -1
  152. package/layout/modal-2025.js +1 -1
  153. package/layout/morph.js +1 -1
  154. package/layout/multiswitcher.js +1 -1
  155. package/layout/nav-bar.js +1 -1
  156. package/layout/nav-factor/custom-div.js +1 -1
  157. package/layout/new-nav-bar.js +1 -1
  158. package/layout/polygon.js +1 -1
  159. package/layout/prerender-site.js +1 -1
  160. package/layout/prerender.js +1 -1
  161. package/layout/progress.js +1 -1
  162. package/layout/row.js +1 -1
  163. package/layout/scroll-video.js +1 -1
  164. package/layout/side-bar.js +1 -1
  165. package/layout/side-nav-bar.js +1 -1
  166. package/layout/simple-bar.js +1 -1
  167. package/layout/slider-2025.js +1 -1
  168. package/layout/spacer.js +1 -1
  169. package/layout/stack.js +1 -1
  170. package/layout/svg.js +1 -1
  171. package/layout/switcher.js +1 -1
  172. package/layout/table.js +1 -1
  173. package/layout/text-field.js +1 -1
  174. package/layout/text.js +1 -1
  175. package/layout/ulist.js +1 -1
  176. package/layout/video.js +1 -1
  177. package/layout/wrap.js +1 -1
  178. package/layout/zoom-card.js +1 -1
  179. package/lib/agent-surface.js +1 -1
  180. package/lib/card-getter.js +1 -1
  181. package/lib/codegen.js +1 -1
  182. package/lib/data.js +1 -1
  183. package/lib/designer.js +21 -1
  184. package/lib/element-mapper.js +173 -16
  185. package/lib/element-params.generated.js +11 -0
  186. package/lib/keyframe-animation.js +1 -1
  187. package/lib/link-getter.js +1 -1
  188. package/lib/morph-node.js +1 -1
  189. package/lib/parse-html.js +151 -0
  190. package/lib/raster-inspect.js +1 -1
  191. package/lib/raster-ops.js +1 -1
  192. package/lib/raster-presets.js +1 -1
  193. package/lib/scroll-video.js +1 -1
  194. package/lib/seo.js +1 -1
  195. package/lib/stacker.js +1 -1
  196. package/lib/suggest.js +1 -1
  197. package/lib/theme.js +1 -1
  198. package/lib/transform-anim.js +1 -1
  199. package/lib/transition.js +1 -1
  200. package/lib/validate-nodes.js +112 -2
  201. package/lib/webmcp-adapter.js +1 -1
  202. package/package.json +5 -2
  203. package/schema.json +7953 -0
  204. package/scripts/generate-schema.mjs +251 -0
  205. package/skills/nodality/SKILL.md +71 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/table.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/ulist.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
package/layout/wrap.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * nodality v1.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
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.2.9
2
+ * nodality v1.2.11
3
3
  * (c) 2026 Filip Vabrousek
4
4
  * License: MIT
5
5
  */
@@ -12,6 +12,7 @@ ElementMapper
12
12
  import { ElementMapper } from "../lib/element-mapper.js";
13
13
  import { applyMorphNodes } from "../lib/morph-node.js";
14
14
  import { installAgentSurface } from "../lib/webmcp-adapter.js";
15
+ import { annotateRoundTrip } from "../lib/parse-html.js";
15
16
  import { Animator } from "../layout/animator.js";
16
17
  import { Base } from "../layout/base.js";
17
18
  import { Text } from "../layout/text.js";
@@ -1430,6 +1431,25 @@ const components = {
1430
1431
  } catch (e) {
1431
1432
  console.warn("[nodality] agent surface skipped:", e);
1432
1433
  }
1434
+
1435
+ // Stage 5. The round-trip needs the page to say what it was made
1436
+ // from: 13 of the 35 types render as a bare <div> with nothing to
1437
+ // tell them apart, so a parser reading the DOM alone would have to
1438
+ // guess which composite produced one — and the caller re-renders
1439
+ // whatever it is handed.
1440
+ //
1441
+ // Opt-in, and it must stay that way. This writes attributes into the
1442
+ // output, and every page that exists renders byte for byte as it
1443
+ // always did precisely because nobody asked for them.
1444
+ try {
1445
+ if (obj && obj.annotate) {
1446
+ annotateRoundTrip(
1447
+ document.querySelector((obj && obj.mount) || "#mount"),
1448
+ this._elements);
1449
+ }
1450
+ } catch (e) {
1451
+ console.warn("[nodality] round-trip annotation skipped:", e);
1452
+ }
1433
1453
  }
1434
1454
  }
1435
1455