nodality 1.3.10 → 1.3.12
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.
- package/dist/animator.cjs.js +1 -1
- package/dist/animator.cjs.js.LICENSE.txt +1 -1
- package/dist/animator.esm.js +1 -1
- package/dist/animator.esm.js.LICENSE.txt +1 -1
- package/dist/audionew.cjs.js +1 -1
- package/dist/audionew.cjs.js.LICENSE.txt +1 -1
- package/dist/audionew.esm.js +1 -1
- package/dist/audionew.esm.js.LICENSE.txt +1 -1
- package/dist/base.cjs.js +1 -1
- package/dist/base.cjs.js.LICENSE.txt +1 -1
- package/dist/base.esm.js +1 -1
- package/dist/base.esm.js.LICENSE.txt +1 -1
- package/dist/beta-desktop-bar.cjs.js +1 -1
- package/dist/beta-desktop-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/beta-desktop-bar.esm.js +1 -1
- package/dist/beta-desktop-bar.esm.js.LICENSE.txt +1 -1
- package/dist/beta-mobile-bar.cjs.js +1 -1
- package/dist/beta-mobile-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/beta-mobile-bar.esm.js +1 -1
- package/dist/beta-mobile-bar.esm.js.LICENSE.txt +1 -1
- package/dist/bundle.umd.js +1 -1
- package/dist/bundle.umd.js.LICENSE.txt +1 -1
- package/dist/button.cjs.js +1 -1
- package/dist/button.cjs.js.LICENSE.txt +1 -1
- package/dist/button.esm.js +1 -1
- package/dist/button.esm.js.LICENSE.txt +1 -1
- package/dist/card-getter.cjs.js.LICENSE.txt +1 -1
- package/dist/card-getter.esm.js.LICENSE.txt +1 -1
- package/dist/center.cjs.js +1 -1
- package/dist/center.cjs.js.LICENSE.txt +1 -1
- package/dist/center.esm.js +1 -1
- package/dist/center.esm.js.LICENSE.txt +1 -1
- package/dist/checkbox.cjs.js +1 -1
- package/dist/checkbox.cjs.js.LICENSE.txt +1 -1
- package/dist/checkbox.esm.js +1 -1
- package/dist/checkbox.esm.js.LICENSE.txt +1 -1
- package/dist/code.cjs.js +1 -1
- package/dist/code.cjs.js.LICENSE.txt +1 -1
- package/dist/code.esm.js +1 -1
- package/dist/code.esm.js.LICENSE.txt +1 -1
- package/dist/container.cjs.js +1 -1
- package/dist/container.cjs.js.LICENSE.txt +1 -1
- package/dist/container.esm.js +1 -1
- package/dist/container.esm.js.LICENSE.txt +1 -1
- package/dist/data-list.cjs.js.LICENSE.txt +1 -1
- package/dist/data-list.esm.js.LICENSE.txt +1 -1
- package/dist/designer.cjs.js +1 -1
- package/dist/designer.cjs.js.LICENSE.txt +1 -1
- package/dist/designer.esm.js +1 -1
- package/dist/designer.esm.js.LICENSE.txt +1 -1
- package/dist/element-mapper.cjs.js +1 -1
- package/dist/element-mapper.cjs.js.LICENSE.txt +1 -1
- package/dist/element-mapper.esm.js +1 -1
- package/dist/element-mapper.esm.js.LICENSE.txt +1 -1
- package/dist/finalresult.esm.js +1 -1
- package/dist/finalresult.esm.js.LICENSE.txt +1 -1
- package/dist/flex-card.cjs.js +1 -1
- package/dist/flex-card.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-card.esm.js +1 -1
- package/dist/flex-card.esm.js.LICENSE.txt +1 -1
- package/dist/flex-grid.cjs.js +1 -1
- package/dist/flex-grid.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-grid.esm.js +1 -1
- package/dist/flex-grid.esm.js.LICENSE.txt +1 -1
- package/dist/flex-row.cjs.js +1 -1
- package/dist/flex-row.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-row.esm.js +1 -1
- package/dist/flex-row.esm.js.LICENSE.txt +1 -1
- package/dist/floating-input.cjs.js +1 -1
- package/dist/floating-input.cjs.js.LICENSE.txt +1 -1
- package/dist/floating-input.esm.js +1 -1
- package/dist/floating-input.esm.js.LICENSE.txt +1 -1
- package/dist/free.cjs.js +1 -1
- package/dist/free.cjs.js.LICENSE.txt +1 -1
- package/dist/free.esm.js +1 -1
- package/dist/free.esm.js.LICENSE.txt +1 -1
- package/dist/horizontal-scroller.cjs.js.LICENSE.txt +1 -1
- package/dist/horizontal-scroller.esm.js.LICENSE.txt +1 -1
- package/dist/image-picker.cjs.js +1 -1
- package/dist/image-picker.cjs.js.LICENSE.txt +1 -1
- package/dist/image-picker.esm.js +1 -1
- package/dist/image-picker.esm.js.LICENSE.txt +1 -1
- package/dist/image.cjs.js +1 -1
- package/dist/image.cjs.js.LICENSE.txt +1 -1
- package/dist/image.esm.js +1 -1
- package/dist/image.esm.js.LICENSE.txt +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.LICENSE.txt +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.LICENSE.txt +1 -1
- package/dist/keyframe-animation.cjs.js.LICENSE.txt +1 -1
- package/dist/keyframe-animation.esm.js.LICENSE.txt +1 -1
- package/dist/link-getter.cjs.js +1 -1
- package/dist/link-getter.cjs.js.LICENSE.txt +1 -1
- package/dist/link-getter.esm.js +1 -1
- package/dist/link-getter.esm.js.LICENSE.txt +1 -1
- package/dist/link.cjs.js +1 -1
- package/dist/link.cjs.js.LICENSE.txt +1 -1
- package/dist/link.esm.js +1 -1
- package/dist/link.esm.js.LICENSE.txt +1 -1
- package/dist/meta-adder.cjs.js +1 -1
- package/dist/meta-adder.cjs.js.LICENSE.txt +1 -1
- package/dist/meta-adder.esm.js +1 -1
- package/dist/meta-adder.esm.js.LICENSE.txt +1 -1
- package/dist/modal-2025.cjs.js +1 -1
- package/dist/modal-2025.cjs.js.LICENSE.txt +1 -1
- package/dist/modal-2025.esm.js +1 -1
- package/dist/modal-2025.esm.js.LICENSE.txt +1 -1
- package/dist/multiswitcher.cjs.js +1 -1
- package/dist/multiswitcher.cjs.js.LICENSE.txt +1 -1
- package/dist/multiswitcher.esm.js +1 -1
- package/dist/multiswitcher.esm.js.LICENSE.txt +1 -1
- package/dist/new-nav-bar.cjs.js +1 -1
- package/dist/new-nav-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/new-nav-bar.esm.js +1 -1
- package/dist/new-nav-bar.esm.js.LICENSE.txt +1 -1
- package/dist/picker.cjs.js +1 -1
- package/dist/picker.cjs.js.LICENSE.txt +1 -1
- package/dist/picker.esm.js +1 -1
- package/dist/picker.esm.js.LICENSE.txt +1 -1
- package/dist/progress.cjs.js +1 -1
- package/dist/progress.cjs.js.LICENSE.txt +1 -1
- package/dist/progress.esm.js +1 -1
- package/dist/progress.esm.js.LICENSE.txt +1 -1
- package/dist/radio.cjs.js +1 -1
- package/dist/radio.cjs.js.LICENSE.txt +1 -1
- package/dist/radio.esm.js +1 -1
- package/dist/radio.esm.js.LICENSE.txt +1 -1
- package/dist/range.cjs.js.LICENSE.txt +1 -1
- package/dist/range.esm.js.LICENSE.txt +1 -1
- package/dist/scroll-video.cjs.js.LICENSE.txt +1 -1
- package/dist/scroll-video.esm.js.LICENSE.txt +1 -1
- package/dist/side-bar.cjs.js +1 -1
- package/dist/side-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/side-bar.esm.js +1 -1
- package/dist/side-bar.esm.js.LICENSE.txt +1 -1
- package/dist/side-nav-bar.cjs.js +1 -1
- package/dist/side-nav-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/side-nav-bar.esm.js +1 -1
- package/dist/side-nav-bar.esm.js.LICENSE.txt +1 -1
- package/dist/simple-bar.cjs.js +1 -1
- package/dist/simple-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/simple-bar.esm.js +1 -1
- package/dist/simple-bar.esm.js.LICENSE.txt +1 -1
- package/dist/slider-2025.cjs.js +1 -1
- package/dist/slider-2025.cjs.js.LICENSE.txt +1 -1
- package/dist/slider-2025.esm.js +1 -1
- package/dist/slider-2025.esm.js.LICENSE.txt +1 -1
- package/dist/spacer.cjs.js +1 -1
- package/dist/spacer.cjs.js.LICENSE.txt +1 -1
- package/dist/spacer.esm.js +1 -1
- package/dist/spacer.esm.js.LICENSE.txt +1 -1
- package/dist/stack.cjs.js +1 -1
- package/dist/stack.cjs.js.LICENSE.txt +1 -1
- package/dist/stack.esm.js +1 -1
- package/dist/stack.esm.js.LICENSE.txt +1 -1
- package/dist/stacker.cjs.js.LICENSE.txt +1 -1
- package/dist/stacker.esm.js.LICENSE.txt +1 -1
- package/dist/table.cjs.js +1 -1
- package/dist/table.cjs.js.LICENSE.txt +1 -1
- package/dist/table.esm.js +1 -1
- package/dist/table.esm.js.LICENSE.txt +1 -1
- package/dist/text-field.cjs.js +1 -1
- package/dist/text-field.cjs.js.LICENSE.txt +1 -1
- package/dist/text-field.esm.js +1 -1
- package/dist/text-field.esm.js.LICENSE.txt +1 -1
- package/dist/text.cjs.js +1 -1
- package/dist/text.cjs.js.LICENSE.txt +1 -1
- package/dist/text.esm.js +1 -1
- package/dist/text.esm.js.LICENSE.txt +1 -1
- package/dist/theme.cjs.js.LICENSE.txt +1 -1
- package/dist/theme.esm.js.LICENSE.txt +1 -1
- package/dist/transform-anim.cjs.js.LICENSE.txt +1 -1
- package/dist/transform-anim.esm.js.LICENSE.txt +1 -1
- package/dist/ulist.cjs.js +1 -1
- package/dist/ulist.cjs.js.LICENSE.txt +1 -1
- package/dist/ulist.esm.js +1 -1
- package/dist/ulist.esm.js.LICENSE.txt +1 -1
- package/dist/video.cjs.js +1 -1
- package/dist/video.cjs.js.LICENSE.txt +1 -1
- package/dist/video.esm.js +1 -1
- package/dist/video.esm.js.LICENSE.txt +1 -1
- package/dist/wrap.cjs.js +1 -1
- package/dist/wrap.cjs.js.LICENSE.txt +1 -1
- package/dist/wrap.esm.js +1 -1
- package/dist/wrap.esm.js.LICENSE.txt +1 -1
- package/dist/zoom-card.cjs.js +1 -1
- package/dist/zoom-card.cjs.js.LICENSE.txt +1 -1
- package/dist/zoom-card.esm.js +1 -1
- package/dist/zoom-card.esm.js.LICENSE.txt +1 -1
- package/layout/animator.js +85 -23
- package/layout/audio.js +21 -1
- package/layout/audionew.js +1 -1
- package/layout/base.js +1 -1
- package/layout/beta-desktop-bar.js +1 -1
- package/layout/beta-mobile-bar.js +1 -1
- package/layout/button.js +4 -2
- package/layout/center.js +1 -1
- package/layout/checkbox.js +1 -1
- package/layout/circle.js +1 -1
- package/layout/code.js +2 -2
- package/layout/container.js +2 -2
- package/layout/dropdown-2025.js +1 -1
- package/layout/flex-card.js +1 -1
- package/layout/flex-grid.js +1 -1
- package/layout/flex-row.js +1 -1
- package/layout/form-components/custom.js +1 -1
- package/layout/form-components/data-list.js +1 -1
- package/layout/form-components/floating-input.js +1 -1
- package/layout/form-components/form-all.js +1 -1
- package/layout/form-components/form.js +1 -1
- package/layout/form-components/image-picker.js +1 -1
- package/layout/form-components/picker.js +1 -1
- package/layout/form-components/radio.js +6 -1
- package/layout/form-components/radiogroup.js +1 -1
- package/layout/form-components/range.js +1 -1
- package/layout/free.js +1 -1
- package/layout/grid-overlay.js +19 -19
- package/layout/grid-switcher.js +3 -1
- package/layout/grid.js +1 -1
- package/layout/horizontal-scroller.js +1 -1
- package/layout/image.js +2 -2
- package/layout/index.js +1 -1
- package/layout/link.js +1 -1
- package/layout/list.js +1 -1
- package/layout/meta-adder.js +1 -1
- package/layout/modal-2025.js +1 -1
- package/layout/morph.js +1 -1
- package/layout/multiswitcher.js +6 -2
- package/layout/nav-bar.js +1 -1
- package/layout/nav-factor/custom-div.js +1 -1
- package/layout/new-nav-bar.js +1 -1
- package/layout/polygon.js +1 -1
- package/layout/prerender-site.js +1 -1
- package/layout/prerender.js +1 -1
- package/layout/progress.js +1 -1
- package/layout/row.js +1 -1
- package/layout/scroll-video.js +1 -1
- package/layout/side-bar.js +1 -1
- package/layout/side-nav-bar.js +6 -1
- package/layout/simple-bar.js +1 -1
- package/layout/slider-2025.js +1 -1
- package/layout/spacer.js +1 -1
- package/layout/stack.js +5 -2
- package/layout/svg.js +1 -1
- package/layout/switcher.js +1 -1
- package/layout/table.js +1 -1
- package/layout/text-field.js +1 -1
- package/layout/text.js +1 -1
- package/layout/ulist.js +1 -1
- package/layout/video.js +22 -22
- package/layout/wrap.js +1 -1
- package/layout/zoom-card.js +1 -1
- package/lib/agent-surface.js +1 -1
- package/lib/card-getter.js +1 -1
- package/lib/check-page.js +1 -1
- package/lib/codegen.js +1 -1
- package/lib/data.js +1 -1
- package/lib/designer.js +1 -1
- package/lib/element-mapper.js +103 -15
- package/lib/element-params.generated.js +13 -2
- package/lib/grid-geometry.js +1 -1
- package/lib/keyframe-animation.js +1 -1
- package/lib/link-getter.js +1 -1
- package/lib/morph-node.js +1 -1
- package/lib/normalize-spec.js +1 -1
- package/lib/parse-html.js +1 -1
- package/lib/raster-inspect.js +1 -1
- package/lib/raster-ops.js +1 -1
- package/lib/raster-presets.js +1 -1
- package/lib/resolve-refs.js +1 -1
- package/lib/scroll-video.js +1 -1
- package/lib/seo.js +1 -1
- package/lib/stacker.js +1 -1
- package/lib/suggest.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/transform-anim.js +1 -1
- package/lib/transition.js +1 -1
- package/lib/validate-nodes.js +146 -4
- package/lib/webmcp-adapter.js +1 -1
- package/package.json +1 -1
- package/schema.json +1391 -2263
- package/scripts/generate-schema.mjs +135 -15
- package/skills/nodality/SKILL.md +15 -0
package/dist/zoom-card.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see zoom-card.esm.js.LICENSE.txt */
|
|
2
|
-
import{applyRasterPipeline as e}from"../lib/raster-ops.js";var t={};function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}t.d=(e,r)=>{for(var n in r)t.o(r,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n="nodality.theme.mode",i="nodality:theme",s={mode:function(){try{var e=localStorage.getItem(n);if("light"===e||"dark"===e)return e}catch(e){}return"undefined"!=typeof window&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}(),tokens:{light:{},dark:{}},defaults:{light:{color:"#111"},dark:{}},setDefaults:function(e){return e&&"object"===r(e)&&(e.light&&(this.defaults.light=Object.assign({},this.defaults.light,e.light)),e.dark&&(this.defaults.dark=Object.assign({},this.defaults.dark,e.dark)),this._broadcast()),this},setTokens:function(e){return e&&"object"===r(e)&&(e.light&&Object.assign(this.tokens.light,e.light),e.dark&&Object.assign(this.tokens.dark,e.dark)),this},get current(){return this.tokens[this.mode]||{}},set:function(e){if("light"!==e&&"dark"!==e)return this;if(e===this.mode)return this;this.mode=e;try{localStorage.setItem(n,e)}catch(e){}return this._broadcast(),this},toggle:function(){return this.set("dark"===this.mode?"light":"dark")},subscribe:function(e){if("undefined"==typeof document)return function(){};var t=function(t){return e(t.detail.mode,t.detail.tokens)};document.addEventListener(i,t);try{e(this.mode,this.current)}catch(e){}return function(){return document.removeEventListener(i,t)}},_broadcast:function(){"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent(i,{detail:{mode:this.mode,tokens:this.current}}))}};function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,s,o,a=[],l=!0,c=!1;try{if(s=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=s.call(r)).done)&&(a.push(n.value),a.length!==t);l=!0);}catch(e){c=!0,i=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw i}}return a}}(e,t)||l(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=l(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw s}}}}function l(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function h(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,d(n.key),n)}}function d(e){var t=function(e){if("object"!=u(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=u(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==u(t)?t:t+""}var f=new Set,p=function(){function t(){var e,r,n,i=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,n=function(e){if(e.transform||e.op){var t=e.op;e.transform||(t=e.op),t.duration||(t.duration="3s-ease-in-out"),i.setDefault=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"0px";return 0===e.length?t+" ":e};var r=function(){var r="",n="",s="",o="",a="",l="",c="",u="",h="";if(0!==t.values.length){t.values.forEach(function(e){e.startsWith("tx:")&&(r=e.replace("tx:","")),e.startsWith("ty:")&&(n=e.replace("ty:","")),e.startsWith("tz:")?s=e.replace("tz:",""):e.startsWith("scale(")?o=e:e.startsWith("skew(")?a=e:e.startsWith("rotate(")?l=function(e){var t=e.match(/rotate\(([^)]+)\)/);if(!t)return e;var r=t[1].split(",").map(function(e){return e.trim()});return 1===r.length?"rotate(".concat(r[0],")"):2===r.length?"rotateX(".concat(r[0],") rotateY(").concat(r[1],")"):3===r.length?"rotateX(".concat(r[0],") rotateY(").concat(r[1],") rotate(").concat(r[2],")"):e}(e):e.startsWith("perspective(")?c=e:e.startsWith("matrix(")?u=e:e.startsWith("opacity:")&&(h=e.replace("opacity:",""))}),r=i.setDefault(r),n=i.setDefault(n),s=i.setDefault(s);var d="";if("0px"!=n&&"0px"!=r&&"0px"!=s?d+="translate3d(".concat(r,", ").concat(n,", ").concat(s,")"):"0px"==n&&"0px"==r||(d+="translate(".concat(r,", ").concat(n,")")),o&&(d+=" ".concat(o)),l&&(d+=" ".concat(l)),a&&(d+=" ".concat(a)),c&&(d+=" ".concat(c)),u&&(d+=" ".concat(u)),d){if(e.op.duration){var f=e.op.duration.replace(/^(\d+)(s)-/,function(e,t,r){return t/2+r+" "}),p="transform ".concat(f,", opacity ").concat(f);i.res.style.transition=p}else i.res.style.transition="transform 3s ease-in-out, opacity 3s ease-in-out";e.op.static&&(i.res.style.transition=""),(i.blastTarget||i.res).style.transform=d,i.res.style.opacity=h}else console.warn("[nodality] transform produced no geometric value - check `values`")}};t.on?i.res.addEventListener(t.on,function(){t.delay?setTimeout(function(){r()},t.delay):r()}):i._on(window,"load",function(){t.delay?setTimeout(function(){r()},t.delay):r()});var n=function(){var e="";t.values.forEach(function(t){t.startsWith("tx:")?e+="translateX(0) ":t.startsWith("ty:")?e+="translateY(0) ":t.startsWith("tz:")?e+="translateZ(0) ":t.startsWith("scale(")?e+="scale(1) ":t.startsWith("skew(")?e+="skew(0, 0) ":t.startsWith("rotate(")?e+="rotate(0) ":t.startsWith("perspective(")?e+="perspective(0) ":t.startsWith("matrix(")&&(e+="matrix(1, 0, 0, 1, 0, 0) "),i.res.style.opacity="1"}),e&&(i.res.style.transform=e.trim())};if(t.on)i.res.addEventListener("mouseout",function(){t.keep||n()});else{var s=1e3*parseFloat(t.duration),o=t.closeAfter?t.closeAfter:0;setTimeout(function(){t.keep||n()},s/2+o)}t.hardCSS&&(i.res.style.transform=t.hardCSS)}else console.warn("[nodality] reactOnTransform: unrecognised transform descriptor - ignored")},(r=d(r="reactOnTransform"))in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,this.state={isExpanded:!1,isMovedUp:!1,isMovedDown:!1},this.openedElements=new WeakMap,"undefined"!=typeof document&&(this._themeUnsub=s.subscribe(function(e){return i._applyTheme(e)}),Promise.resolve().then(function(){return i._applyTheme(s.mode)}))}return r=t,n=[{key:"rasterize",value:function(t){var r=this;if(t&&0!==t.length&&!this._rasterHandle&&!this._rasterCancelled&&"undefined"!=typeof document&&"undefined"!=typeof setTimeout){var n=0,i=function(){if(!r._rasterHandle&&!r._rasterCancelled){if(r.res&&r.res.isConnected){try{r._rasterHandle=e(r.res,t)}catch(e){return void console.warn("[nodality] raster pipeline skipped:",e)}if(r._rasterHandle)return}++n<80&&(r._rasterTimer=setTimeout(i,50))}};this._rasterTimer=setTimeout(i,0),this._track(function(){return clearTimeout(r._rasterTimer)})}}},{key:"isHidden",value:function(e){e&&(this.res.style.display="none")}},{key:"theme",value:function(e){var t=this;return e&&"object"===u(e)?(this._themeMap=e,this._applyTheme(s.mode),this._themeUnsub||(this._themeUnsub=s.subscribe(function(e){return t._applyTheme(e)})),this):this}},{key:"_track",value:function(e){return"function"!=typeof e||(this._disposables||(this._disposables=[])).push(e),e}},{key:"_on",value:function(e,t,r,n){return e&&"function"==typeof e.addEventListener?(e.addEventListener(t,r,n),this._track(function(){return e.removeEventListener(t,r,n)}),r):r}},{key:"destroy",value:function(){if("function"==typeof this._themeUnsub&&(this._themeUnsub(),this._themeUnsub=null),this._rasterHandle&&"function"==typeof this._rasterHandle.destroy)try{this._rasterHandle.destroy()}catch(e){}if(this._rasterHandle=null,this._rasterCancelled=!0,this._disposables){var e,t=a(this._disposables);try{for(t.s();!(e=t.n()).done;){var r=e.value;try{r()}catch(e){}}}catch(e){t.e(e)}finally{t.f()}this._disposables.length=0}return this._responsiveTasks=null,this._responsiveHandler=null,this.res&&this.res.parentNode&&this.res.parentNode.removeChild(this.res),this}},{key:"_applyTheme",value:function(e){if(!this._noTheme&&this.res)if(this._themeMap){var t=this._themeMap[e];if(!t)return;for(var r in t)this.res.style[r]=t[r]}else{var n=s.defaults&&s.defaults[e];if(n)for(var i in this._themeOriginal||(this._themeOriginal={}),n)i in this._themeOriginal||(this._themeOriginal[i]=this.res.style[i]||""),this._themeOriginal[i]||(this.res.style[i]=n[i])}}},{key:"vars",value:function(e){if(!e||"object"!==u(e))return this;for(var t in e)this.res.style.setProperty(t,String(e[t]));return this}},{key:"keySet",value:function(e){if(this.temporaryVal=1,Array.isArray(e)){for(var t=0;t<e.length;t++)e[t]&&null!=e[t].key&&(this.res.style[e[t].key]=e[t].value);return this}return this.res.style[e.key]=e.value,this}},{key:"commonMethods",value:function(e){var t={exact:"fontSize",cursor:"cursor",width:"width",maxWidth:"maxWidth",height:"height",maxHeight:"maxHeight",radius:"borderRadius",lineHeight:"lineHeight",background:"background",color:"color",font:"fontFamily",opacity:"opacity",gap:"gap",minHeight:"minHeight",position:"position",inset:"inset",top:"top",right:"right",bottom:"bottom",left:"left",zIndex:"zIndex",flex:"flex",flexShrink:"flexShrink",flexGrow:"flexGrow",flexBasis:"flexBasis",flexWrap:"flexWrap",alignSelf:"alignSelf",display:"display",gridTemplateColumns:"gridTemplateColumns",gridTemplateRows:"gridTemplateRows",rowGap:"rowGap",columnGap:"columnGap",cols:"gridTemplateColumns",rows:"gridTemplateRows",areas:"gridTemplateAreas",area:"gridArea",letterSpacing:"letterSpacing",textTransform:"textTransform",whiteSpace:"whiteSpace",overflowWrap:"overflowWrap",wordBreak:"wordBreak",wordWrap:"wordWrap",boxShadow:"boxShadow",backdropFilter:"backdropFilter",WebkitBackdropFilter:"WebkitBackdropFilter",overflow:"overflow",overflowX:"overflowX",overflowY:"overflowY",WebkitOverflowScrolling:"WebkitOverflowScrolling",WebkitTapHighlightColor:"WebkitTapHighlightColor",minWidth:"minWidth",boxSizing:"boxSizing",pointerEvents:"pointerEvents",userSelect:"userSelect",WebkitUserSelect:"WebkitUserSelect",textAlign:"textAlign",transition:"transition"};for(var r in t)null!=e[r]&&(this.res.style[t[r]]=e[r]);return"string"==typeof e.transform&&(this.res.style.transform=e.transform),e.pad&&this.pad(e.pad),e.mar&&this.mar(e.mar),e.respad&&this.respad(e.respad),e.borderObj&&e.borderObj.width&&this.borderObj(e.borderObj),e.resmar&&this.resmar(e.resmar),e.hover&&this.hover(e.hover),e.size&&this.fluidCopy(e.size),e.resprop&&this.resprop(e.resprop,e),e.vars&&this.vars(e.vars),e.keySet&&this.keySet(e.keySet),e.noTheme&&(this._noTheme=!0),e.theme&&this.theme(e.theme),e.hide&&this.isHidden(e.hide),e.raster&&this.rasterize(e.raster),e.center&&this.center(e.center,{display:e.disp||e.display,flexDirection:e.flexDir||e.flexDirection}),e.transform&&"object"===u(e.transform)&&this.reactOnTransform(e.transform),void 0!==e.opacity&&(this.res.style.opacity=e.opacity),e.bold?this.res.style.fontWeight="bold":null!=e.weight&&(this.res.style.fontWeight=e.weight),this}},{key:"hover",value:function(e){var t=this;if(e.border){var r=e.border.width;this.res.style.border=r?"".concat(r,"px solid transparent"):"1px solid transparent"}var n=this.options&&this.options.borderObj;return n&&(this.res.style.border="".concat(n.width,"px solid ").concat(n.color)),this.prevColor=this.res.style.backgroundColor,this.foreColor=this.res.style.color,this.prevBorder=this.res.style.border,this.prevBoxShadow=this.res.style.boxShadow,e.animation&&(this.res.style.transition="".concat(e.animation),this.res.style.transitionProperty="background-color, color, border, box-shadow, transform"),this.prevTransform=this.res.style.transform,this.res.onmouseout=function(){t.res.style.backgroundColor="".concat(t.prevColor),t.res.style.color="".concat(t.foreColor),t.res.style.border=t.prevBorder,null==e.scale&&null==e.transform||(t.res.style.transform=t.prevTransform||""),null!=e.boxShadow&&(t.res.style.boxShadow=t.prevBoxShadow||"")},this.res.onmouseover=function(){if(t.res.style.color=e.color,t.res.style.backgroundColor=e.background,e.border){var r,n=e.border.width,i=null!==(r=e.border.color)&&void 0!==r?r:"#2ECC71";t.res.style.border=n?"".concat(n,"px solid ").concat(i):"1px solid #2ECC71"}if(null!=e.scale||null!=e.transform){var s=t.prevTransform?"".concat(t.prevTransform," "):"",o=[];null!=e.transform&&o.push(e.transform),null!=e.scale&&o.push("scale(".concat(e.scale,")")),t.res.style.transform="".concat(s).concat(o.join(" "))}null!=e.boxShadow&&(t.res.style.boxShadow=e.boxShadow)},this}},{key:"onScroll",value:function(e){var t=this,r=function(e){if(null==e)return{num:0,unit:"px"};var t=String(e).match(/^(-?[\d.]+)(.*)$/);return t?{num:parseFloat(t[1]),unit:t[2]||"px"}:{num:0,unit:"px"}},n=function(e){var r=e&&null!=e.tx?e.tx:"0px",n=e&&null!=e.ty?e.ty:"0px";t.res.style.transform="translate3d(".concat(r,", ").concat(n,", 0)")};"opacity"===e.value?this.res.style.opacity=e.valMin:"scale"===e.value?this.res.style.transform="scale(".concat(e.valMin,")"):"trn"===e.value&&n(e.valMin);var i=function(){if("trn"!==e.value){var i=t.smartRange(window.scrollY,{min:e.from,max:e.to},{min:e.valMin,max:e.valMax});"opacity"===e.value?t.res.style.opacity=i:"scale"===e.value&&(t.res.style.transform="scale(".concat(i,")"))}else{for(var s={},o=["tx","ty"],a=0;a<o.length;a++){var l=o[a],c=e.valMin&&null!=e.valMin[l],u=e.valMax&&null!=e.valMax[l];if(c||u){var h=r(c?e.valMin[l]:u?e.valMax[l]:"0px"),d=r(u?e.valMax[l]:c?e.valMin[l]:"0px"),f=t.smartRange(window.scrollY,{min:e.from,max:e.to},{min:h.num,max:d.num});s[l]="".concat(f).concat(h.unit)}}n(s)}};this._on(window,"scroll",i),0===e.from&&i()}},{key:"setAny",value:function(e){this[Object.keys(e)[0]]=[Object.values(e)[0]]}},{key:"setID",value:function(e){this.id=e}},{key:"setPrevText",value:function(e){this.prevText=e}},{key:"_setupResponsiveManager",value:function(){var e=this;this._responsiveTasks=this._responsiveTasks||[];var t=function(){e._responsiveTasks.forEach(function(e){e()})};this._responsiveHandler||(this._responsiveHandler=t,this._on(window,"resize",t)),setTimeout(function(){t()},0)}},{key:"resprop",value:function(e,r){var n=this;this.options=r;var i={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]},s=["resprop","breakpoint","value","values","range"],a={flexDir:"flexDirection",dir:"flexDirection",justify:"justifyContent",align:"alignItems",wrap:"flexWrap",bg:"background",radius:"borderRadius",z:"zIndex",exact:"fontSize"},l=function(e){var t=a[e]||e;return"undefined"==typeof console||"function"==typeof n[e]||t in n.res.style||console.warn('[nodality] resprop: "'.concat(e,'" is not a CSS property or component method — ignored.')+(a[e]?"":" Did you mean one of: ".concat(Object.keys(a).join(", "),"?"))),t};e.forEach(function(e){void 0!==i[e.breakpoint]?e.range=i[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[0,parseInt(e.breakpoint,10)]}),e.sort(function(e,t){return e.range[1]-t.range[1]});var c=e.find(function(e){return"default"===e.breakpoint});c||(c={breakpoint:"default",range:i.default},e.unshift(c));var u=new Set;e.forEach(function(e){Object.keys(e).forEach(function(e){s.includes(e)||"range"===e||u.add(e)})}),u.forEach(function(e){void 0===c[e]&&(c[e]=n.options[e]||"initial")}),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var r=t.viewportWidth(),i=c,a=0;a<e.length;a++){var h=e[a],d=o(h.range,2),f=d[0],p=d[1];if("default"!==h.breakpoint&&r>=f&&r<=p){i=h;break}}for(var y in u.forEach(function(e){if("keySet"===e){var t=c[e];t&&t.key&&(n.res.style[t.key]=t.value)}else n.res.style[l(e)]=c[e]}),i)if("exact"!==y){if(!s.includes(y)&&"range"!==y){var v=i[y];"keySet"===y&&v&&v.key?n.res.style[v.key]=v.value:"function"==typeof n[y]?n[y](v):n.res.style[l(y)]=v}}else n.res.style.fontSize=i[y]}),this._setupResponsiveManager()}},{key:"respad",value:function(e){var r=this,n={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]};e.forEach(function(e){void 0!==n[e.breakpoint]?e.range=n[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[parseInt(e.breakpoint,10),1e5]}),e.sort(function(e,t){return e.range[0]-t.range[0]});var i=e.find(function(e){return"default"===e.breakpoint});i||(i={breakpoint:"default",range:n.default},e.unshift(i)),void 0===i.values&&(i.values=this.options&&this.options.pad||null),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var n=t.viewportWidth(),s=i,a=0;a<e.length;a++){var l=e[a],c=o(l.range,2),u=c[0],h=c[1];if("default"!==l.breakpoint&&n>=u&&n<=h){s=l;break}}var d=void 0!==s.values?s.values:i.values;null!=d&&r.pad(d)}),this._setupResponsiveManager()}},{key:"resmar",value:function(e){var r=this,n={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]};e.forEach(function(e){void 0!==n[e.breakpoint]?e.range=n[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[parseInt(e.breakpoint,10),1e5]}),e.sort(function(e,t){return e.range[0]-t.range[0]});var i=e.find(function(e){return"default"===e.breakpoint});i||(i={breakpoint:"default",range:n.default},e.unshift(i)),void 0===i.values&&(i.values=this.options&&(this.options.mar||this.options.pad)||null),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var n=t.viewportWidth(),s=i,a=0;a<e.length;a++){var l=e[a],c=o(l.range,2),u=c[0],h=c[1];if("default"!==l.breakpoint&&n>=u&&n<=h){s=l;break}}var d=void 0!==s.values?s.values:i.values;null!=d&&r.mar(d)}),this._setupResponsiveManager()}},{key:"color",value:function(e){return this.res.style.color=e,this}},{key:"onTap",value:function(e){return this.res.addEventListener("click",e),this}},{key:"setArea",value:function(e){return this.res.style.gridArea=e,this}},{key:"font",value:function(e){return this.res.style.fontFamily=e,this}},{key:"radius",value:function(e){return this.res.style.borderRadius="number"==typeof e?"".concat(e,"px"):e,this}},{key:"width",value:function(e){return this.res.style.width=e,this}},{key:"scale",value:function(e){var t=this;return this.res.style.width,this.res.style.transition="0.5s all",this.res.addEventListener("mouseover",function(){t.res.style.width,t.res.style.transform="scale(1.04)"}),this.res.addEventListener("mouseout",function(){t.res.style.width,t.res.style.transform="scale(1.0)"}),this}},{key:"round",value:function(e){return this.deprecatedOption("round()","radius()"),this.radius(e)}},{key:"toCSS",value:function(){return this.css}},{key:"toHTMLA",value:function(){return this.html}},{key:"background",value:function(e){return this.res.style.background=e,this}},{key:"deprecatedOption",value:function(e,t){var r="nodality: `".concat(e,"` is deprecated — use `").concat(t,"` instead.");return f.has(r)||(f.add(r),console.error(r)),this}},{key:"center",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.res.style,n=r.display||t.display||"",i=r.flexDirection||t.flexDirection||"",s=!0===e||"both"===e||"x"===e,o=!0===e||"both"===e||"y"===e;if(n.includes("grid"))return s&&(r.justifyItems="center",r.justifyContent="center"),o&&(r.alignItems="center",r.alignContent="center"),this;n.includes("flex")||(r.display="flex"),r.flexDirection||(r.flexDirection=i||"column");var a=(r.flexDirection||"column").startsWith("column");return(a?o:s)&&(r.justifyContent="center"),(a?s:o)&&(r.alignItems="center"),this}},{key:"isNumber",value:function(e){return"number"==typeof e&&!isNaN(e)}},{key:"pad",value:function(e){for(var t=0;t<e.length;t++)for(var r=Object.keys(e[t]),n=0;n<r.length;n++)for(var i=r[n],s=e[t][i],o=0;o<i.length;o++)switch(i[o]){case"a":this.res.style.padding=this.isNumber(s)?"".concat(s,"px"):s;break;case"t":this.res.style.paddingTop=this.isNumber(s)?"".concat(s,"px"):s;break;case"l":this.res.style.paddingLeft=this.isNumber(s)?"".concat(s,"px"):s;break;case"r":this.res.style.paddingRight=this.isNumber(s)?"".concat(s,"px"):s;break;case"b":this.res.style.paddingBottom=this.isNumber(s)?"".concat(s,"px"):s}return this}},{key:"as",value:function(e){return this.res.style.alignSelf=e,this}},{key:"mar",value:function(e){if("center"===e)return this.res.style.marginLeft="auto",this.res.style.marginRight="auto",this;for(var t=0;t<e.length;t++)for(var r=Object.keys(e[t]),n=0;n<r.length;n++){for(var i=r[n],s=e[t][i],o=0;o<i.length;o++)switch(i[o]){case"a":"auto"===s?(this.res.style.marginLeft="auto",this.res.style.marginRight="auto"):this.res.style.margin=this.isNumber(s)?"".concat(s,"px"):s;break;case"t":this.res.style.marginTop=this.isNumber(s)?"".concat(s,"px"):s;break;case"l":this.res.style.marginLeft=this.isNumber(s)?"".concat(s,"px"):s;break;case"r":this.res.style.marginRight=this.isNumber(s)?"".concat(s,"px"):s;break;case"b":this.res.style.marginBottom=this.isNumber(s)?"".concat(s,"px"):s}"center"===i&&!0===s&&(this.res.style.marginLeft="auto",this.res.style.marginRight="auto"),"auto"===s&&(i.includes("l")||i.includes("r"))&&(i.includes("l")&&(this.res.style.marginLeft="auto"),i.includes("r")&&(this.res.style.marginRight="auto"))}return this}},{key:"smartRange",value:function(e,t,r){e<t.min&&(e=t.min),e>t.max&&(e=t.max);var n=(e-t.min)/(t.max-t.min);return t.min>t.max&&(n=(e-t.max)/(t.min-t.max)),r.min+(r.max-r.min)*n}},{key:"gpos",value:function(e){return this.res.style.gridColumn=e.col,this.res.style.gridRow=e.row,this}},{key:"fluidCopy",value:function(e){if(e instanceof Object){this.prevStylex=this.res.style,this.res=document.createElement("h1"),this.res.style.cssText=this.prevStylex.cssText;var t=document.createTextNode(this.text);return this.res.appendChild(t),this.res.style.fontSize=e.exact,this}if("S1"===e){this.prevStylex=this.res.style,this.res=document.createElement("h1"),this.res.style.cssText=this.prevStylex.cssText;var r=document.createTextNode(this.text);this.res.appendChild(r),this.res.style.fontSize="calc(1.625rem + 5.075vw)"}if("S2"===e){this.prevStylex=this.res.style,this.res=document.createElement("h2"),this.res.style.cssText=this.prevStylex.cssText;var n=document.createTextNode(this.text);this.res.appendChild(n),this.res.style.fontSize="calc(1.500rem + 4.3vw)"}if("S3"===e){this.prevStylex=this.res.style,this.res=document.createElement("h3"),this.res.style.cssText=this.prevStylex.cssText;var i=document.createTextNode(this.text);this.res.appendChild(i),this.res.style.fontSize="calc(1.375rem + 3.525vw)"}if("S4"===e){this.prevStylex=this.res.style,this.res=document.createElement("h4"),this.res.style.cssText=this.prevStylex.cssText;var s=document.createTextNode(this.text);this.res.appendChild(s),this.res.style.fontSize="calc(1.250rem + 2.75vw)"}if("S5"===e){this.prevStylex=this.res.style,this.res=document.createElement("h5"),this.res.style.cssText=this.prevStylex.cssText;var o=document.createTextNode(this.text);this.res.appendChild(o),this.res.style.fontSize="calc(1.125rem + 1.975vw)"}return"S6"===e&&(this.res.style.fontSize="calc(1rem + 0.5vw)"),this}},{key:"setIndex",value:function(e){this.index=e}},{key:"borderObj",value:function(e){var t,r=null!==(t=e.type)&&void 0!==t?t:"solid";return this.res.style.border="".concat(e.width," ").concat(r," ").concat(e.color),void 0!==e.radius&&(this.res.style.borderRadius=e.radius),this}},{key:"setPref",value:function(e){this.preffersId=e}},{key:"setClass",value:function(e){this.class=e}},{key:"setTags",value:function(e){this.openTag=e.open,this.closeTag=e.close}},{key:"chainReact",value:function(e,r,n){var i=this;this.ap=!1,this.cta=0,this.once=!1;var s,l=a(e);try{for(l.s();!(s=l.n()).done;){var c=s.value;c.range||(c.range=["0px","999999px"])}}catch(e){l.e(e)}finally{l.f()}e.sort(function(e,t){return parseInt(e.range[0])-parseInt(t.range[0])});var u=function(s){var l=t.viewportWidth(),c=[],u=[];i.resCopy=i.res,i.storedQueries=e.map(function(e){return e.target}).filter(function(e){return null!=e});var h,d=a(e);try{for(d.s();!(h=d.n()).done;){var f=h.value;i.counterIndex++;var p=o(f.range,2),y=p[0],v=p[1],m=parseInt(y),b=parseInt(v),g=!0;if(f.target){g=!1;for(var k=0;k<f.target.length;k++){var x=function(e){return"string"==typeof e&&"#"===e.charAt(0)?e.slice(1):e};x(f.target[k])===x(r)&&(g=!0)}}l>=m&&l<=b&&g&&(c.push(f.log),u.push(f),f.op&&f.op.margin&&(i.useMargin=f.op.margin))}}catch(e){d.e(e)}finally{d.f()}if(n&&!n.includes("background")&&(i.res.style.background="",i.res.style.backgroundColor=""),i.res.style.textShadow="",n&&!n.includes("border")&&(i.res.style.border=""),n&&!n.includes("margin")&&(i.res.style.margin=""),i.res.style["-webkit-text-fill-color"]="",i.res.style["-webkit-text-stroke-color"]="",i.res.style["-webkit-text-stroke-width"]="",i.res.style.filter="",i.options.background&&(i.res.style.background=i.options.background),c.includes("gradient"),(c.includes("gradient")||c.includes("shadow"))&&(i.res.style.position="relative"),c.includes("blast")){var w,S=u.filter(function(e){return"blast"===e.log})[0].op.color,T=null!==(w=u.filter(function(e){return"blast"===e.log})[0].op.width)&&void 0!==w?w:"1px";"FlexRowLayoutElement"===i.getType()||"LayoutWrapperElement"===i.getType()?(i.res.style.border="".concat("number"==typeof T?T+"px":T," solid orange"),i.res.style.display="inline-block","FlexRowLayoutElement"===i.getType()&&(i.res.style.display="flex"),i.res.style.boxSizing="border-box",i.res.style.transformOrigin="center",i.blastTarget=i.res):(i.text,i.res.style["-webkit-text-fill-color"]="transparent",i.res.style["-webkit-text-stroke-color"]=S,i.res.style["-webkit-text-stroke-width"]="".concat(T))}if(c.includes("filter")){var _=u.filter(function(e){return"filter"===e.log})[0].op.filter;i.res.style.filter=_}if(c.includes("background")&&(i.res.style.backgroundColor="green"),c.includes("gradient")&&i.globalGradient&&("LayoutWrapperElement"!==i.getType()&&"FlexRowLayoutElement"!==i.getType()&&(i.res.style["-webkit-text-fill-color"]="transparent"),i.res.style.background=i.globalGradient,"LayoutWrapperElement"!==i.getType()&&"FlexRowLayoutElement"!==i.getType()&&(i.res.style["background-clip"]="text")),c.includes("shadow")){var O,C,E,j,W=i.options.shadow.op,A=null!==(O=W.steps)&&void 0!==O?O:1,I=null!==(C=W.colors)&&void 0!==C?C:["gray"],R=null!==(E=W.movements)&&void 0!==E?E:["3px","3px"],z=null!==(j=W.radius)&&void 0!==j?j:"3px";if(1===R.length&&(R=[R[0],R[0]]),"FlexRowLayoutElement"===i.getType()||"LayoutWrapperElement"===i.getType()){for(var L=[],M=0;M<A;M++){var P,B=null!==(P=I[M])&&void 0!==P?P:I[0],H=R[0],N=R[1];L.push("".concat(H," ").concat(N," ").concat(z," ").concat(B))}i.res.style.boxShadow=L.join(", ")}else{for(var D=[],F=0;F<A;F++){var U,G=null!==(U=I[F])&&void 0!==U?U:I[0],Y=R[0],X=R[1];D.push("drop-shadow(".concat(Y," ").concat(X," ").concat(z," ").concat(G,")"))}i.res.style.filter=D.join(" ")}}if(c.includes("margin"))for(k=0;k<e.length;k++)if(e[k].op){var $=e[k].op.offsets;$&&void 0!==i.index&&(i.res.style.margin=$[Number(i.index)]+"px")}if(c.includes("spana")||c.includes("span")){var Z=document.createElement("div");if(Z.setAttribute("id","oroa"),Object.assign(Z.style,{position:"absolute",inset:"0",background:"linear-gradient(90deg, rgb(52,152,219), rgb(26,188,156))",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",pointerEvents:"none"}),i.res&&i.res.querySelector("span"))return;i.res=i.resCopy,i.res.textContent="",i.options.span&&(Array.isArray(i.options.span)?i.options.span:[i.options.span]).forEach(function(e){if(e.op&&"span"===e.op.name&&Array.isArray(e.op.parts)){var t=0,r=i.prevText||"";if(e.op.parts.forEach(function(e){var n=e.text,s=e.style||{};if(t<r.length){var o=r.indexOf(n,t);if(o>t){var a=r.substring(t,o);i.res.appendChild(new i.constructor(a).setup({type:"span",id:s.id,animation:s.animation}).set({}).render())}t=o+n.length}var l=new i.constructor(n).setup({type:"span",id:s.id,animation:s.animation}).set(s).render();i.res.appendChild(l)}),t<r.length){var n=r.substring(t);i.res.appendChild(new i.constructor(n).setup({type:"span"}).set({}).render())}}})}else{var q=new i.constructor(i.prevText).set({}).render();i.prevText&&i.prevText.length>0&&s&&i.res.appendChild(q)}if(c.includes("animation")){if(i.options.animation&&!i.hasAnimated&&!i.options.animation.op.fireAt){i.hasAnimated=!0;var Q=i.options.animation.op;i._on(window,"sidebar:open",function(){i.res.animate(Q.keyframesOpen,Q.openOptions)}),i._on(window,"sidebar:closed",function(){i.res.animate(Q.keyframesClose,Q.closeOptions)}),i.res.animate(Q.keyframesClose,{duration:0,fill:"forwards"}),i.openTag&&i.closeTag&&(i._on(window,i.openTag,function(){i.res.animate(Q.keyframesOpen,Q.openOptions)}),i._on(window,i.closeTag,function(){i.res.animate(Q.keyframesClose,Q.closeOptions)}))}if(i.options.animation&&i.options.animation.op.fireAt&&i.options.animation.op.fireAt.endsWith("px")){var V=i.options.animation.op;i.res.animate(V.keyframesClose,{duration:0,fill:"forwards"});var J=function(){window.scrollY>parseFloat(V.fireAt)&&(i.res.animate(V.keyframesOpen,V.openOptions),window.removeEventListener("scroll",J))};i._on(window,"scroll",J)}if(i.options.animation&&"inview"===i.options.animation.op.fireAt){var K=i.options.animation.op;i.res.animate(K.keyframesClose,{duration:0,fill:"forwards"});var ee=!1,te=new IntersectionObserver(function(e,t){e.forEach(function(e){e.isIntersecting&&!ee&&(ee=!0,i.res.animate(K.keyframesOpen,K.openOptions),t.disconnect())})});te.observe(i.res),i._track(function(){return te.disconnect()})}}};this.options.animation||this._on(window,"resize",function(){return u()}),u()}},{key:"maxWidth",value:function(e){return this.res.style.maxWidth=e,this}},{key:"removeQuotesFromFirstWord",value:function(e){return e.replace(new RegExp('"([A-Za-z_$][A-Za-z0-9_$]*)"\\s*:',"g"),"$1:")}}],i=[{key:"viewportWidth",value:function(){if("undefined"==typeof window)return 0;var e=window.visualViewport;return e&&"number"==typeof e.width?e.width:window.innerWidth}}],n&&h(r.prototype,n),i&&h(r,i),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,i}();function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function v(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,m(n.key),n)}}function m(e){var t=function(e){if("object"!=y(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==y(t)?t:t+""}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function g(e){return g=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},g(e)}function k(e,t){return k=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},k(e,t)}var x=function(){function e(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,r){return t=g(t),function(e,t){if(t&&("object"==y(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,b()?Reflect.construct(t,r||[],g(e).constructor):t.apply(e,r))}(this,e)}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&k(e,t)}(e,p),t=e,(r=[{key:"set",value:function(e){return this.imageUrl=e.url,this.createCard(),e.useBrightness&&(this.useBrightness=!0),e.useBrightness&&"\n useBrightness: ".concat(this.useBrightness),e.pad&&this.pad(e.pad),e.mar&&this.mar(e.mar),e.inpad&&this.inpad(e.inpad),e.inpad&&"\n inpad: {".concat(e.inpad,"}"),e.font&&(this.res.style.fontFamily=e.font),e.inpad&&"\n font: ".concat(e.font),this.addListeners(),this}},{key:"inpad",value:function(e){return this.res.children[1].style.boxSizing="border-box",this.res.children[1].style.padding=e,this}},{key:"items",value:function(e){for(var t=0;t<e.length;t++)this.res.children[1].appendChild(e[t].render());return this}},{key:"createCard",value:function(){var e=document.createElement("div");e.style.display="grid",e.style.width="300px",e.style.height="400px",e.setAttribute("id","AAA");var t=document.createElement("div");t.style.gridArea="1/1",t.style.height="400px",t.style.borderRadius="15px",t.style.boxShadow="0 4px 8px 0 rgba(0,0,0,0.2)",t.style.overflow="hidden";var r=document.createElement("div");r.style.width="100%",r.style.height="100%",r.style.transition="0.9s",r.style.backgroundImage="url(".concat(this.imageUrl,")"),r.style.backgroundSize="cover",r.style.backgroundPostion="cover",r.style.backgroundRepeat="no-repeat",t.appendChild(r);var n=document.createElement("div");return n.style.gridArea="1/1",n.style.zIndex="1",e.appendChild(t),e.appendChild(n),this.res=e,this}},{key:"addListeners",value:function(){var e=this,t=this.res.children[0].children[0];return this.res.onmouseover=function(){t.style.transform="scale(1.3)",e.useBrightness&&(t.style.filter="brightness(31%)")},this.res.onmouseout=function(){t.style.transform="scale(1.0)",e.useBrightness&&(t.style.filter="brightness(100%)")},this}},{key:"render",value:function(e){if(!e)return this.res;this.options.id&&this.res.setAttribute("id",this.options.id),document.querySelector(e).appendChild(this.res)}}])&&v(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,r}();export{x as ZoomCard};
|
|
2
|
+
import{applyRasterPipeline as e}from"../lib/raster-ops.js";var t={};function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}t.d=(e,r)=>{for(var n in r)t.o(r,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n="nodality.theme.mode",i="nodality:theme",s={mode:function(){try{var e=localStorage.getItem(n);if("light"===e||"dark"===e)return e}catch(e){}return"undefined"!=typeof window&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}(),tokens:{light:{},dark:{}},defaults:{light:{color:"#111"},dark:{}},setDefaults:function(e){return e&&"object"===r(e)&&(e.light&&(this.defaults.light=Object.assign({},this.defaults.light,e.light)),e.dark&&(this.defaults.dark=Object.assign({},this.defaults.dark,e.dark)),this._broadcast()),this},setTokens:function(e){return e&&"object"===r(e)&&(e.light&&Object.assign(this.tokens.light,e.light),e.dark&&Object.assign(this.tokens.dark,e.dark)),this},get current(){return this.tokens[this.mode]||{}},set:function(e){if("light"!==e&&"dark"!==e)return this;if(e===this.mode)return this;this.mode=e;try{localStorage.setItem(n,e)}catch(e){}return this._broadcast(),this},toggle:function(){return this.set("dark"===this.mode?"light":"dark")},subscribe:function(e){if("undefined"==typeof document)return function(){};var t=function(t){return e(t.detail.mode,t.detail.tokens)};document.addEventListener(i,t);try{e(this.mode,this.current)}catch(e){}return function(){return document.removeEventListener(i,t)}},_broadcast:function(){"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent(i,{detail:{mode:this.mode,tokens:this.current}}))}};function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,s,o,a=[],l=!0,c=!1;try{if(s=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=s.call(r)).done)&&(a.push(n.value),a.length!==t);l=!0);}catch(e){c=!0,i=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw i}}return a}}(e,t)||l(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=l(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw s}}}}function l(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function h(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,d(n.key),n)}}function d(e){var t=function(e){if("object"!=u(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=u(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==u(t)?t:t+""}var f=new Set,p=function(){function t(){var e,r,n,i=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,n=function(e){if(e.transform||e.op){var t=e.op;if(e.transform||(t=e.op),!t||!Array.isArray(t.values))return void console.warn('[nodality] reactOnTransform: a transform node needs a `values` array, e.g. ["ty:-20px"] - ignored');t.duration||(t.duration="3s-ease-in-out"),i.setDefault=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"0px";return 0===e.length?t+" ":e};var r=function(){var r="",n="",s="",o="",a="",l="",c="",u="",h="";if(0!==t.values.length){t.values.forEach(function(e){e.startsWith("tx:")&&(r=e.replace("tx:","")),e.startsWith("ty:")&&(n=e.replace("ty:","")),e.startsWith("tz:")?s=e.replace("tz:",""):e.startsWith("scale(")?o=e:e.startsWith("skew(")?a=e:e.startsWith("rotate(")?l=function(e){var t=e.match(/rotate\(([^)]+)\)/);if(!t)return e;var r=t[1].split(",").map(function(e){return e.trim()});return 1===r.length?"rotate(".concat(r[0],")"):2===r.length?"rotateX(".concat(r[0],") rotateY(").concat(r[1],")"):3===r.length?"rotateX(".concat(r[0],") rotateY(").concat(r[1],") rotate(").concat(r[2],")"):e}(e):e.startsWith("perspective(")?c=e:e.startsWith("matrix(")?u=e:e.startsWith("opacity:")&&(h=e.replace("opacity:",""))}),r=i.setDefault(r),n=i.setDefault(n),s=i.setDefault(s);var d="";if("0px"!=n&&"0px"!=r&&"0px"!=s?d+="translate3d(".concat(r,", ").concat(n,", ").concat(s,")"):"0px"==n&&"0px"==r||(d+="translate(".concat(r,", ").concat(n,")")),o&&(d+=" ".concat(o)),l&&(d+=" ".concat(l)),a&&(d+=" ".concat(a)),c&&(d+=" ".concat(c)),u&&(d+=" ".concat(u)),d){if(e.op.duration){var f=e.op.duration.replace(/^(\d+)(s)-/,function(e,t,r){return t/2+r+" "}),p="transform ".concat(f,", opacity ").concat(f);i.res.style.transition=p}else i.res.style.transition="transform 3s ease-in-out, opacity 3s ease-in-out";e.op.static&&(i.res.style.transition=""),(i.blastTarget||i.res).style.transform=d,i.res.style.opacity=h}else console.warn("[nodality] transform produced no geometric value - check `values`")}};t.on?i.res.addEventListener(t.on,function(){t.delay?setTimeout(function(){r()},t.delay):r()}):i._on(window,"load",function(){t.delay?setTimeout(function(){r()},t.delay):r()});var n=function(){var e="";t.values.forEach(function(t){t.startsWith("tx:")?e+="translateX(0) ":t.startsWith("ty:")?e+="translateY(0) ":t.startsWith("tz:")?e+="translateZ(0) ":t.startsWith("scale(")?e+="scale(1) ":t.startsWith("skew(")?e+="skew(0, 0) ":t.startsWith("rotate(")?e+="rotate(0) ":t.startsWith("perspective(")?e+="perspective(0) ":t.startsWith("matrix(")&&(e+="matrix(1, 0, 0, 1, 0, 0) "),i.res.style.opacity="1"}),e&&(i.res.style.transform=e.trim())};if(t.on)i.res.addEventListener("mouseout",function(){t.keep||n()});else{var s=1e3*parseFloat(t.duration),o=t.closeAfter?t.closeAfter:0;setTimeout(function(){t.keep||n()},s/2+o)}t.hardCSS&&(i.res.style.transform=t.hardCSS)}else console.warn("[nodality] reactOnTransform: unrecognised transform descriptor - ignored")},(r=d(r="reactOnTransform"))in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,this.state={isExpanded:!1,isMovedUp:!1,isMovedDown:!1};var o=this.set;if("function"==typeof o&&!o.__appliesId){var a=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];var i=o.call.apply(o,[this,e].concat(r)),s=e&&e.id,a=this.res;return null!=s&&""!==s&&a&&"function"==typeof a.setAttribute&&!a.getAttribute("id")&&a.setAttribute("id",String(s)),i};a.__appliesId=!0,this.set=a}this.openedElements=new WeakMap,"undefined"!=typeof document&&(this._themeUnsub=s.subscribe(function(e){return i._applyTheme(e)}),Promise.resolve().then(function(){return i._applyTheme(s.mode)}))}return r=t,n=[{key:"rasterize",value:function(t){var r=this;if(t&&0!==t.length&&!this._rasterHandle&&!this._rasterCancelled&&"undefined"!=typeof document&&"undefined"!=typeof setTimeout){var n=0,i=function(){if(!r._rasterHandle&&!r._rasterCancelled){if(r.res&&r.res.isConnected){try{r._rasterHandle=e(r.res,t)}catch(e){return void console.warn("[nodality] raster pipeline skipped:",e)}if(r._rasterHandle)return}++n<80&&(r._rasterTimer=setTimeout(i,50))}};this._rasterTimer=setTimeout(i,0),this._track(function(){return clearTimeout(r._rasterTimer)})}}},{key:"isHidden",value:function(e){e&&(this.res.style.display="none")}},{key:"theme",value:function(e){var t=this;return e&&"object"===u(e)?(this._themeMap=e,this._applyTheme(s.mode),this._themeUnsub||(this._themeUnsub=s.subscribe(function(e){return t._applyTheme(e)})),this):this}},{key:"_track",value:function(e){return"function"!=typeof e||(this._disposables||(this._disposables=[])).push(e),e}},{key:"_on",value:function(e,t,r,n){return e&&"function"==typeof e.addEventListener?(e.addEventListener(t,r,n),this._track(function(){return e.removeEventListener(t,r,n)}),r):r}},{key:"destroy",value:function(){if("function"==typeof this._themeUnsub&&(this._themeUnsub(),this._themeUnsub=null),this._rasterHandle&&"function"==typeof this._rasterHandle.destroy)try{this._rasterHandle.destroy()}catch(e){}if(this._rasterHandle=null,this._rasterCancelled=!0,this._disposables){var e,t=a(this._disposables);try{for(t.s();!(e=t.n()).done;){var r=e.value;try{r()}catch(e){}}}catch(e){t.e(e)}finally{t.f()}this._disposables.length=0}return this._responsiveTasks=null,this._responsiveHandler=null,this.res&&this.res.parentNode&&this.res.parentNode.removeChild(this.res),this}},{key:"_applyTheme",value:function(e){if(!this._noTheme&&this.res)if(this._themeMap){var t=this._themeMap[e];if(!t)return;for(var r in t)this.res.style[r]=t[r]}else{var n=s.defaults&&s.defaults[e];if(n)for(var i in this._themeOriginal||(this._themeOriginal={}),n)i in this._themeOriginal||(this._themeOriginal[i]=this.res.style[i]||""),this._themeOriginal[i]||(this.res.style[i]=n[i])}}},{key:"vars",value:function(e){if(!e||"object"!==u(e))return this;for(var t in e)this.res.style.setProperty(t,String(e[t]));return this}},{key:"keySet",value:function(e){if(this.temporaryVal=1,Array.isArray(e)){for(var t=0;t<e.length;t++)e[t]&&null!=e[t].key&&(this.res.style[e[t].key]=e[t].value);return this}return this.res.style[e.key]=e.value,this}},{key:"commonMethods",value:function(e){var t={exact:"fontSize",cursor:"cursor",width:"width",maxWidth:"maxWidth",height:"height",maxHeight:"maxHeight",radius:"borderRadius",lineHeight:"lineHeight",background:"background",color:"color",font:"fontFamily",opacity:"opacity",gap:"gap",minHeight:"minHeight",position:"position",inset:"inset",top:"top",right:"right",bottom:"bottom",left:"left",zIndex:"zIndex",flex:"flex",flexShrink:"flexShrink",flexGrow:"flexGrow",flexBasis:"flexBasis",flexWrap:"flexWrap",alignSelf:"alignSelf",display:"display",gridTemplateColumns:"gridTemplateColumns",gridTemplateRows:"gridTemplateRows",rowGap:"rowGap",columnGap:"columnGap",cols:"gridTemplateColumns",rows:"gridTemplateRows",areas:"gridTemplateAreas",area:"gridArea",letterSpacing:"letterSpacing",textTransform:"textTransform",whiteSpace:"whiteSpace",overflowWrap:"overflowWrap",wordBreak:"wordBreak",wordWrap:"wordWrap",boxShadow:"boxShadow",backdropFilter:"backdropFilter",WebkitBackdropFilter:"WebkitBackdropFilter",overflow:"overflow",overflowX:"overflowX",overflowY:"overflowY",WebkitOverflowScrolling:"WebkitOverflowScrolling",WebkitTapHighlightColor:"WebkitTapHighlightColor",minWidth:"minWidth",boxSizing:"boxSizing",pointerEvents:"pointerEvents",userSelect:"userSelect",WebkitUserSelect:"WebkitUserSelect",textAlign:"textAlign",transition:"transition"},r=new Set(["radius","width","height","maxWidth","maxHeight","minWidth","minHeight","top","left","right","bottom","gap"]);for(var n in t)if(null!=e[n]){var i="number"==typeof e[n]&&0!==e[n]&&r.has(n)?"".concat(e[n],"px"):e[n];this.res.style[t[n]]=i}return"string"==typeof e.transform&&(this.res.style.transform=e.transform),e.pad&&this.pad(e.pad),e.mar&&this.mar(e.mar),e.respad&&this.respad(e.respad),e.borderObj&&e.borderObj.width&&this.borderObj(e.borderObj),e.resmar&&this.resmar(e.resmar),e.hover&&this.hover(e.hover),e.size&&this.fluidCopy(e.size),e.resprop&&this.resprop(e.resprop,e),e.vars&&this.vars(e.vars),e.keySet&&this.keySet(e.keySet),e.noTheme&&(this._noTheme=!0),e.theme&&this.theme(e.theme),e.hide&&this.isHidden(e.hide),e.raster&&this.rasterize(e.raster),e.center&&this.center(e.center,{display:e.disp||e.display,flexDirection:e.flexDir||e.flexDirection}),e.transform&&"object"===u(e.transform)&&this.reactOnTransform(e.transform),void 0!==e.opacity&&(this.res.style.opacity=e.opacity),e.bold?this.res.style.fontWeight="bold":null!=e.weight&&(this.res.style.fontWeight=e.weight),this}},{key:"hover",value:function(e){var t=this;if(e.border){var r=e.border.width;this.res.style.border=r?"".concat(r,"px solid transparent"):"1px solid transparent"}var n=this.options&&this.options.borderObj;return n&&(this.res.style.border="".concat(n.width,"px solid ").concat(n.color)),this.prevColor=this.res.style.backgroundColor,this.foreColor=this.res.style.color,this.prevBorder=this.res.style.border,this.prevBoxShadow=this.res.style.boxShadow,e.animation&&(this.res.style.transition="".concat(e.animation),this.res.style.transitionProperty="background-color, color, border, box-shadow, transform"),this.prevTransform=this.res.style.transform,this.res.onmouseout=function(){t.res.style.backgroundColor="".concat(t.prevColor),t.res.style.color="".concat(t.foreColor),t.res.style.border=t.prevBorder,null==e.scale&&null==e.transform||(t.res.style.transform=t.prevTransform||""),null!=e.boxShadow&&(t.res.style.boxShadow=t.prevBoxShadow||"")},this.res.onmouseover=function(){if(t.res.style.color=e.color,t.res.style.backgroundColor=e.background,e.border){var r,n=e.border.width,i=null!==(r=e.border.color)&&void 0!==r?r:"#2ECC71";t.res.style.border=n?"".concat(n,"px solid ").concat(i):"1px solid #2ECC71"}if(null!=e.scale||null!=e.transform){var s=t.prevTransform?"".concat(t.prevTransform," "):"",o=[];null!=e.transform&&o.push(e.transform),null!=e.scale&&o.push("scale(".concat(e.scale,")")),t.res.style.transform="".concat(s).concat(o.join(" "))}null!=e.boxShadow&&(t.res.style.boxShadow=e.boxShadow)},this}},{key:"onScroll",value:function(e){var t=this,r=function(e){if(null==e)return{num:0,unit:"px"};var t=String(e).match(/^(-?[\d.]+)(.*)$/);return t?{num:parseFloat(t[1]),unit:t[2]||"px"}:{num:0,unit:"px"}},n=function(e){var r=e&&null!=e.tx?e.tx:"0px",n=e&&null!=e.ty?e.ty:"0px";t.res.style.transform="translate3d(".concat(r,", ").concat(n,", 0)")};"opacity"===e.value?this.res.style.opacity=e.valMin:"scale"===e.value?this.res.style.transform="scale(".concat(e.valMin,")"):"trn"===e.value&&n(e.valMin);var i=function(){if("trn"!==e.value){var i=t.smartRange(window.scrollY,{min:e.from,max:e.to},{min:e.valMin,max:e.valMax});"opacity"===e.value?t.res.style.opacity=i:"scale"===e.value&&(t.res.style.transform="scale(".concat(i,")"))}else{for(var s={},o=["tx","ty"],a=0;a<o.length;a++){var l=o[a],c=e.valMin&&null!=e.valMin[l],u=e.valMax&&null!=e.valMax[l];if(c||u){var h=r(c?e.valMin[l]:u?e.valMax[l]:"0px"),d=r(u?e.valMax[l]:c?e.valMin[l]:"0px"),f=t.smartRange(window.scrollY,{min:e.from,max:e.to},{min:h.num,max:d.num});s[l]="".concat(f).concat(h.unit)}}n(s)}};this._on(window,"scroll",i),0===e.from&&i()}},{key:"setAny",value:function(e){this[Object.keys(e)[0]]=[Object.values(e)[0]]}},{key:"setID",value:function(e){this.id=e}},{key:"setPrevText",value:function(e){this.prevText=e}},{key:"_setupResponsiveManager",value:function(){var e=this;this._responsiveTasks=this._responsiveTasks||[];var t=function(){e._responsiveTasks.forEach(function(e){e()})};this._responsiveHandler||(this._responsiveHandler=t,this._on(window,"resize",t)),setTimeout(function(){t()},0)}},{key:"resprop",value:function(e,r){var n=this;r&&"object"===u(r)?this.options=r:this.options&&"object"===u(this.options)||(this.options={});var i={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]},s=["resprop","breakpoint","value","values","range"],a={flexDir:"flexDirection",dir:"flexDirection",justify:"justifyContent",align:"alignItems",wrap:"flexWrap",bg:"background",radius:"borderRadius",z:"zIndex",exact:"fontSize"},l=function(e){var t=a[e]||e;return"undefined"==typeof console||"function"==typeof n[e]||t in n.res.style||console.warn('[nodality] resprop: "'.concat(e,'" is not a CSS property or component method — ignored.')+(a[e]?"":" Did you mean one of: ".concat(Object.keys(a).join(", "),"?"))),t};e.forEach(function(e){void 0!==i[e.breakpoint]?e.range=i[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[0,parseInt(e.breakpoint,10)]}),e.sort(function(e,t){return e.range[1]-t.range[1]});var c=e.find(function(e){return"default"===e.breakpoint});c||(c={breakpoint:"default",range:i.default},e.unshift(c));var h=new Set;e.forEach(function(e){Object.keys(e).forEach(function(e){s.includes(e)||"range"===e||h.add(e)})}),h.forEach(function(e){void 0===c[e]&&(c[e]=n.options[e]||"initial")}),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var r=t.viewportWidth(),i=c,a=0;a<e.length;a++){var u=e[a],d=o(u.range,2),f=d[0],p=d[1];if("default"!==u.breakpoint&&r>=f&&r<=p){i=u;break}}for(var y in h.forEach(function(e){if("keySet"===e){var t=c[e];t&&t.key&&(n.res.style[t.key]=t.value)}else n.res.style[l(e)]=c[e]}),i)if("exact"!==y){if(!s.includes(y)&&"range"!==y){var v=i[y];"keySet"===y&&v&&v.key?n.res.style[v.key]=v.value:"function"==typeof n[y]?n[y](v):n.res.style[l(y)]=v}}else n.res.style.fontSize=i[y]}),this._setupResponsiveManager()}},{key:"respad",value:function(e){var r=this,n={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]};e.forEach(function(e){void 0!==n[e.breakpoint]?e.range=n[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[parseInt(e.breakpoint,10),1e5]}),e.sort(function(e,t){return e.range[0]-t.range[0]});var i=e.find(function(e){return"default"===e.breakpoint});i||(i={breakpoint:"default",range:n.default},e.unshift(i)),void 0===i.values&&(i.values=this.options&&this.options.pad||null),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var n=t.viewportWidth(),s=i,a=0;a<e.length;a++){var l=e[a],c=o(l.range,2),u=c[0],h=c[1];if("default"!==l.breakpoint&&n>=u&&n<=h){s=l;break}}var d=void 0!==s.values?s.values:i.values;null!=d&&r.pad(d)}),this._setupResponsiveManager()}},{key:"resmar",value:function(e){var r=this,n={default:[0,1e5],xs:[0,575],sm:[576,767],md:[768,991],lg:[992,1199],xl:[1200,1399],xxl:[1400,1e5]};e.forEach(function(e){void 0!==n[e.breakpoint]?e.range=n[e.breakpoint]:Array.isArray(e.breakpoint)&&2===e.breakpoint.length?e.range=[parseInt(e.breakpoint[0],10),parseInt(e.breakpoint[1],10)]:e.range=[parseInt(e.breakpoint,10),1e5]}),e.sort(function(e,t){return e.range[0]-t.range[0]});var i=e.find(function(e){return"default"===e.breakpoint});i||(i={breakpoint:"default",range:n.default},e.unshift(i)),void 0===i.values&&(i.values=this.options&&(this.options.mar||this.options.pad)||null),this._responsiveTasks=this._responsiveTasks||[],this._responsiveTasks.push(function(){for(var n=t.viewportWidth(),s=i,a=0;a<e.length;a++){var l=e[a],c=o(l.range,2),u=c[0],h=c[1];if("default"!==l.breakpoint&&n>=u&&n<=h){s=l;break}}var d=void 0!==s.values?s.values:i.values;null!=d&&r.mar(d)}),this._setupResponsiveManager()}},{key:"color",value:function(e){return this.res.style.color=e,this}},{key:"onTap",value:function(e){return this.res.addEventListener("click",e),this}},{key:"setArea",value:function(e){return this.res.style.gridArea=e,this}},{key:"font",value:function(e){return this.res.style.fontFamily=e,this}},{key:"radius",value:function(e){return this.res.style.borderRadius="number"==typeof e?"".concat(e,"px"):e,this}},{key:"width",value:function(e){return this.res.style.width=e,this}},{key:"scale",value:function(e){var t=this;return this.res.style.width,this.res.style.transition="0.5s all",this.res.addEventListener("mouseover",function(){t.res.style.width,t.res.style.transform="scale(1.04)"}),this.res.addEventListener("mouseout",function(){t.res.style.width,t.res.style.transform="scale(1.0)"}),this}},{key:"round",value:function(e){return this.deprecatedOption("round()","radius()"),this.radius(e)}},{key:"toCSS",value:function(){return this.css}},{key:"toHTMLA",value:function(){return this.html}},{key:"background",value:function(e){return this.res.style.background=e,this}},{key:"deprecatedOption",value:function(e,t){var r="nodality: `".concat(e,"` is deprecated — use `").concat(t,"` instead.");return f.has(r)||(f.add(r),console.error(r)),this}},{key:"center",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.res.style,n=r.display||t.display||"",i=r.flexDirection||t.flexDirection||"",s=!0===e||"both"===e||"x"===e,o=!0===e||"both"===e||"y"===e;if(n.includes("grid"))return s&&(r.justifyItems="center",r.justifyContent="center"),o&&(r.alignItems="center",r.alignContent="center"),this;n.includes("flex")||(r.display="flex"),r.flexDirection||(r.flexDirection=i||"column");var a=(r.flexDirection||"column").startsWith("column");return(a?o:s)&&(r.justifyContent="center"),(a?s:o)&&(r.alignItems="center"),this}},{key:"isNumber",value:function(e){return"number"==typeof e&&!isNaN(e)}},{key:"pad",value:function(e){for(var t=0;t<e.length;t++)for(var r=Object.keys(e[t]),n=0;n<r.length;n++)for(var i=r[n],s=e[t][i],o=0;o<i.length;o++)switch(i[o]){case"a":this.res.style.padding=this.isNumber(s)?"".concat(s,"px"):s;break;case"t":this.res.style.paddingTop=this.isNumber(s)?"".concat(s,"px"):s;break;case"l":this.res.style.paddingLeft=this.isNumber(s)?"".concat(s,"px"):s;break;case"r":this.res.style.paddingRight=this.isNumber(s)?"".concat(s,"px"):s;break;case"b":this.res.style.paddingBottom=this.isNumber(s)?"".concat(s,"px"):s}return this}},{key:"as",value:function(e){return this.res.style.alignSelf=e,this}},{key:"mar",value:function(e){if("center"===e)return this.res.style.marginLeft="auto",this.res.style.marginRight="auto",this;for(var t=0;t<e.length;t++)for(var r=Object.keys(e[t]),n=0;n<r.length;n++){for(var i=r[n],s=e[t][i],o=0;o<i.length;o++)switch(i[o]){case"a":"auto"===s?(this.res.style.marginLeft="auto",this.res.style.marginRight="auto"):this.res.style.margin=this.isNumber(s)?"".concat(s,"px"):s;break;case"t":this.res.style.marginTop=this.isNumber(s)?"".concat(s,"px"):s;break;case"l":this.res.style.marginLeft=this.isNumber(s)?"".concat(s,"px"):s;break;case"r":this.res.style.marginRight=this.isNumber(s)?"".concat(s,"px"):s;break;case"b":this.res.style.marginBottom=this.isNumber(s)?"".concat(s,"px"):s}"center"===i&&!0===s&&(this.res.style.marginLeft="auto",this.res.style.marginRight="auto"),"auto"===s&&(i.includes("l")||i.includes("r"))&&(i.includes("l")&&(this.res.style.marginLeft="auto"),i.includes("r")&&(this.res.style.marginRight="auto"))}return this}},{key:"smartRange",value:function(e,t,r){e<t.min&&(e=t.min),e>t.max&&(e=t.max);var n=(e-t.min)/(t.max-t.min);return t.min>t.max&&(n=(e-t.max)/(t.min-t.max)),r.min+(r.max-r.min)*n}},{key:"gpos",value:function(e){return this.res.style.gridColumn=e.col,this.res.style.gridRow=e.row,this}},{key:"fluidCopy",value:function(e){if(e instanceof Object){this.prevStylex=this.res.style,this.res=document.createElement("h1"),this.res.style.cssText=this.prevStylex.cssText;var t=document.createTextNode(this.text);return this.res.appendChild(t),this.res.style.fontSize=e.exact,this}if("S1"===e){this.prevStylex=this.res.style,this.res=document.createElement("h1"),this.res.style.cssText=this.prevStylex.cssText;var r=document.createTextNode(this.text);this.res.appendChild(r),this.res.style.fontSize="calc(1.625rem + 5.075vw)"}if("S2"===e){this.prevStylex=this.res.style,this.res=document.createElement("h2"),this.res.style.cssText=this.prevStylex.cssText;var n=document.createTextNode(this.text);this.res.appendChild(n),this.res.style.fontSize="calc(1.500rem + 4.3vw)"}if("S3"===e){this.prevStylex=this.res.style,this.res=document.createElement("h3"),this.res.style.cssText=this.prevStylex.cssText;var i=document.createTextNode(this.text);this.res.appendChild(i),this.res.style.fontSize="calc(1.375rem + 3.525vw)"}if("S4"===e){this.prevStylex=this.res.style,this.res=document.createElement("h4"),this.res.style.cssText=this.prevStylex.cssText;var s=document.createTextNode(this.text);this.res.appendChild(s),this.res.style.fontSize="calc(1.250rem + 2.75vw)"}if("S5"===e){this.prevStylex=this.res.style,this.res=document.createElement("h5"),this.res.style.cssText=this.prevStylex.cssText;var o=document.createTextNode(this.text);this.res.appendChild(o),this.res.style.fontSize="calc(1.125rem + 1.975vw)"}return"S6"===e&&(this.res.style.fontSize="calc(1rem + 0.5vw)"),this}},{key:"setIndex",value:function(e){this.index=e}},{key:"borderObj",value:function(e){var t,r=null!==(t=e.type)&&void 0!==t?t:"solid";return this.res.style.border="".concat(e.width," ").concat(r," ").concat(e.color),void 0!==e.radius&&(this.res.style.borderRadius=e.radius),this}},{key:"setPref",value:function(e){this.preffersId=e}},{key:"setClass",value:function(e){this.class=e}},{key:"setTags",value:function(e){this.openTag=e.open,this.closeTag=e.close}},{key:"chainReact",value:function(e,r,n){var i=this;this.ap=!1,this.cta=0,this.once=!1;var s,l=a(e);try{for(l.s();!(s=l.n()).done;){var c=s.value;c.range||(c.range=["0px","999999px"])}}catch(e){l.e(e)}finally{l.f()}e.sort(function(e,t){return parseInt(e.range[0])-parseInt(t.range[0])});var u=function(s){var l=t.viewportWidth(),c=[],u=[];i.resCopy=i.res,i.storedQueries=e.map(function(e){return e.target}).filter(function(e){return null!=e});var h,d=a(e);try{for(d.s();!(h=d.n()).done;){var f=h.value;i.counterIndex++;var p=o(f.range,2),y=p[0],v=p[1],m=parseInt(y),b=parseInt(v),g=!0;if(f.target){g=!1;for(var k=0;k<f.target.length;k++){var x=function(e){return"string"==typeof e&&"#"===e.charAt(0)?e.slice(1):e};x(f.target[k])===x(r)&&(g=!0)}}l>=m&&l<=b&&g&&(c.push(f.log),u.push(f),f.op&&f.op.margin&&(i.useMargin=f.op.margin))}}catch(e){d.e(e)}finally{d.f()}if(n&&!n.includes("background")&&(i.res.style.background="",i.res.style.backgroundColor=""),i.res.style.textShadow="",n&&!n.includes("border")&&(i.res.style.border=""),n&&!n.includes("margin")&&(i.res.style.margin=""),i.res.style["-webkit-text-fill-color"]="",i.res.style["-webkit-text-stroke-color"]="",i.res.style["-webkit-text-stroke-width"]="",i.res.style.filter="",i.options.background&&(i.res.style.background=i.options.background),c.includes("gradient"),(c.includes("gradient")||c.includes("shadow"))&&(i.res.style.position="relative"),c.includes("blast")){var w,S=u.filter(function(e){return"blast"===e.log})[0].op.color,T=null!==(w=u.filter(function(e){return"blast"===e.log})[0].op.width)&&void 0!==w?w:"1px";"FlexRowLayoutElement"===i.getType()||"LayoutWrapperElement"===i.getType()?(i.res.style.border="".concat("number"==typeof T?T+"px":T," solid orange"),i.res.style.display="inline-block","FlexRowLayoutElement"===i.getType()&&(i.res.style.display="flex"),i.res.style.boxSizing="border-box",i.res.style.transformOrigin="center",i.blastTarget=i.res):(i.text,i.res.style["-webkit-text-fill-color"]="transparent",i.res.style["-webkit-text-stroke-color"]=S,i.res.style["-webkit-text-stroke-width"]="".concat(T))}if(c.includes("filter")){var _=u.filter(function(e){return"filter"===e.log})[0].op.filter;i.res.style.filter=_}if(c.includes("background")&&(i.res.style.backgroundColor="green"),c.includes("gradient")&&i.globalGradient&&("LayoutWrapperElement"!==i.getType()&&"FlexRowLayoutElement"!==i.getType()&&(i.res.style["-webkit-text-fill-color"]="transparent"),i.res.style.background=i.globalGradient,"LayoutWrapperElement"!==i.getType()&&"FlexRowLayoutElement"!==i.getType()&&(i.res.style["background-clip"]="text")),c.includes("shadow")){var O,C,E,j,W=i.options.shadow.op,A=null!==(O=W.steps)&&void 0!==O?O:1,I=null!==(C=W.colors)&&void 0!==C?C:["gray"],R=null!==(E=W.movements)&&void 0!==E?E:["3px","3px"],z=null!==(j=W.radius)&&void 0!==j?j:"3px";if(1===R.length&&(R=[R[0],R[0]]),"FlexRowLayoutElement"===i.getType()||"LayoutWrapperElement"===i.getType()){for(var L=[],M=0;M<A;M++){var H,P=null!==(H=I[M])&&void 0!==H?H:I[0],B=R[0],N=R[1];L.push("".concat(B," ").concat(N," ").concat(z," ").concat(P))}i.res.style.boxShadow=L.join(", ")}else{for(var D=[],F=0;F<A;F++){var U,G=null!==(U=I[F])&&void 0!==U?U:I[0],Y=R[0],X=R[1];D.push("drop-shadow(".concat(Y," ").concat(X," ").concat(z," ").concat(G,")"))}i.res.style.filter=D.join(" ")}}if(c.includes("margin"))for(k=0;k<e.length;k++)if(e[k].op){var $=e[k].op.offsets;$&&void 0!==i.index&&(i.res.style.margin=$[Number(i.index)]+"px")}if(c.includes("spana")||c.includes("span")){var Z=document.createElement("div");if(Z.setAttribute("id","oroa"),Object.assign(Z.style,{position:"absolute",inset:"0",background:"linear-gradient(90deg, rgb(52,152,219), rgb(26,188,156))",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",pointerEvents:"none"}),i.res&&i.res.querySelector("span"))return;i.res=i.resCopy,i.res.textContent="",i.options.span&&(Array.isArray(i.options.span)?i.options.span:[i.options.span]).forEach(function(e){if(e.op&&"span"===e.op.name&&Array.isArray(e.op.parts)){var t=0,r=i.prevText||"";if(e.op.parts.forEach(function(e){var n=e.text,s=e.style||{};if(t<r.length){var o=r.indexOf(n,t);if(o>t){var a=r.substring(t,o);i.res.appendChild(new i.constructor(a).setup({type:"span",id:s.id,animation:s.animation}).set({}).render())}t=o+n.length}var l=new i.constructor(n).setup({type:"span",id:s.id,animation:s.animation}).set(s).render();i.res.appendChild(l)}),t<r.length){var n=r.substring(t);i.res.appendChild(new i.constructor(n).setup({type:"span"}).set({}).render())}}})}else{var q=new i.constructor(i.prevText).set({}).render();i.prevText&&i.prevText.length>0&&s&&i.res.appendChild(q)}if(c.includes("animation")){if(i.options.animation&&!i.hasAnimated&&!i.options.animation.op.fireAt){i.hasAnimated=!0;var Q=i.options.animation.op;i._on(window,"sidebar:open",function(){i.res.animate(Q.keyframesOpen,Q.openOptions)}),i._on(window,"sidebar:closed",function(){i.res.animate(Q.keyframesClose,Q.closeOptions)}),i.res.animate(Q.keyframesClose,{duration:0,fill:"forwards"}),i.openTag&&i.closeTag&&(i._on(window,i.openTag,function(){i.res.animate(Q.keyframesOpen,Q.openOptions)}),i._on(window,i.closeTag,function(){i.res.animate(Q.keyframesClose,Q.closeOptions)}))}if(i.options.animation&&i.options.animation.op.fireAt&&i.options.animation.op.fireAt.endsWith("px")){var V=i.options.animation.op;i.res.animate(V.keyframesClose,{duration:0,fill:"forwards"});var J=function(){window.scrollY>parseFloat(V.fireAt)&&(i.res.animate(V.keyframesOpen,V.openOptions),window.removeEventListener("scroll",J))};i._on(window,"scroll",J)}if(i.options.animation&&"inview"===i.options.animation.op.fireAt){var K=i.options.animation.op;i.res.animate(K.keyframesClose,{duration:0,fill:"forwards"});var ee=!1,te=new IntersectionObserver(function(e,t){e.forEach(function(e){e.isIntersecting&&!ee&&(ee=!0,i.res.animate(K.keyframesOpen,K.openOptions),t.disconnect())})});te.observe(i.res),i._track(function(){return te.disconnect()})}}};this.options.animation||this._on(window,"resize",function(){return u()}),u()}},{key:"maxWidth",value:function(e){return this.res.style.maxWidth=e,this}},{key:"removeQuotesFromFirstWord",value:function(e){return e.replace(new RegExp('"([A-Za-z_$][A-Za-z0-9_$]*)"\\s*:',"g"),"$1:")}}],i=[{key:"viewportWidth",value:function(){if("undefined"==typeof window)return 0;var e=window.visualViewport;return e&&"number"==typeof e.width?e.width:window.innerWidth}}],n&&h(r.prototype,n),i&&h(r,i),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,i}();function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function v(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,m(n.key),n)}}function m(e){var t=function(e){if("object"!=y(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==y(t)?t:t+""}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function g(e){return g=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},g(e)}function k(e,t){return k=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},k(e,t)}var x=function(){function e(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e,t,r){return t=g(t),function(e,t){if(t&&("object"==y(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,b()?Reflect.construct(t,r||[],g(e).constructor):t.apply(e,r))}(this,e)}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&k(e,t)}(e,p),t=e,(r=[{key:"set",value:function(e){return this.imageUrl=e.url,this.createCard(),e.useBrightness&&(this.useBrightness=!0),e.useBrightness&&"\n useBrightness: ".concat(this.useBrightness),e.pad&&this.pad(e.pad),e.mar&&this.mar(e.mar),e.inpad&&this.inpad(e.inpad),e.inpad&&"\n inpad: {".concat(e.inpad,"}"),e.font&&(this.res.style.fontFamily=e.font),e.inpad&&"\n font: ".concat(e.font),this.addListeners(),this}},{key:"inpad",value:function(e){return this.res.children[1].style.boxSizing="border-box",this.res.children[1].style.padding=e,this}},{key:"items",value:function(e){for(var t=0;t<e.length;t++)this.res.children[1].appendChild(e[t].render());return this}},{key:"createCard",value:function(){var e=document.createElement("div");e.style.display="grid",e.style.width="300px",e.style.height="400px",e.setAttribute("id","AAA");var t=document.createElement("div");t.style.gridArea="1/1",t.style.height="400px",t.style.borderRadius="15px",t.style.boxShadow="0 4px 8px 0 rgba(0,0,0,0.2)",t.style.overflow="hidden";var r=document.createElement("div");r.style.width="100%",r.style.height="100%",r.style.transition="0.9s",r.style.backgroundImage="url(".concat(this.imageUrl,")"),r.style.backgroundSize="cover",r.style.backgroundPostion="cover",r.style.backgroundRepeat="no-repeat",t.appendChild(r);var n=document.createElement("div");return n.style.gridArea="1/1",n.style.zIndex="1",e.appendChild(t),e.appendChild(n),this.res=e,this}},{key:"addListeners",value:function(){var e=this,t=this.res.children[0].children[0];return this.res.onmouseover=function(){t.style.transform="scale(1.3)",e.useBrightness&&(t.style.filter="brightness(31%)")},this.res.onmouseout=function(){t.style.transform="scale(1.0)",e.useBrightness&&(t.style.filter="brightness(100%)")},this}},{key:"render",value:function(e){if(!e)return this.res;this.options.id&&this.res.setAttribute("id",this.options.id),document.querySelector(e).appendChild(this.res)}}])&&v(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,r}();export{x as ZoomCard};
|
package/layout/animator.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.3.
|
|
2
|
+
* nodality v1.3.12
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -29,6 +29,30 @@ class Animator {
|
|
|
29
29
|
isMovedDown: false
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
// Every element may carry an `id`, and it has to survive the path a page
|
|
33
|
+
// actually takes: Des does not mount the instance the mapper built, it
|
|
34
|
+
// re-runs that instance's generated code. So the id cannot be written
|
|
35
|
+
// once onto a node; it has to be applied by `set()` whenever it runs.
|
|
36
|
+
// Rather than trust thirty-odd subclasses to remember — seventeen did
|
|
37
|
+
// not — the base class wraps whatever `set` the subclass defines and
|
|
38
|
+
// applies `obj.id` afterwards, unless the subclass already set one.
|
|
39
|
+
// `this.set` here resolves to the most-derived prototype, because the
|
|
40
|
+
// prototype chain exists before any constructor runs.
|
|
41
|
+
const ownSet = this.set;
|
|
42
|
+
if (typeof ownSet === "function" && !ownSet.__appliesId) {
|
|
43
|
+
const wrapped = function (obj, ...rest) {
|
|
44
|
+
const out = ownSet.call(this, obj, ...rest);
|
|
45
|
+
const id = obj && obj.id;
|
|
46
|
+
const node = this.res;
|
|
47
|
+
if (id != null && id !== "" && node && typeof node.setAttribute === "function" && !node.getAttribute("id")) {
|
|
48
|
+
node.setAttribute("id", String(id));
|
|
49
|
+
}
|
|
50
|
+
return out;
|
|
51
|
+
};
|
|
52
|
+
wrapped.__appliesId = true;
|
|
53
|
+
this.set = wrapped;
|
|
54
|
+
}
|
|
55
|
+
|
|
32
56
|
this.openedElements = new WeakMap();
|
|
33
57
|
|
|
34
58
|
// Auto-subscribe every component to Theme so dark-mode "just works"
|
|
@@ -285,13 +309,13 @@ class Animator {
|
|
|
285
309
|
// only on the three components that happened to dispatch it
|
|
286
310
|
// themselves (Wrapper, Text, Image) — those now set the same
|
|
287
311
|
// property to the same value, and everything else gains it.
|
|
288
|
-
//@ cols: grid-template-columns, verbatim — e.g. "240px 1fr".
|
|
312
|
+
//@ cols {css-track-list}: grid-template-columns, verbatim — e.g. "240px 1fr".
|
|
289
313
|
cols: "gridTemplateColumns",
|
|
290
|
-
//@ rows: grid-template-rows, verbatim.
|
|
314
|
+
//@ rows {css-track-list}: grid-template-rows, verbatim.
|
|
291
315
|
rows: "gridTemplateRows",
|
|
292
|
-
//@ areas: grid-template-areas, verbatim — e.g. '"nav main" "nav main"'.
|
|
316
|
+
//@ areas {css-areas}: grid-template-areas, verbatim — e.g. '"nav main" "nav main"'.
|
|
293
317
|
areas: "gridTemplateAreas",
|
|
294
|
-
//@ area: This element's grid-area — the name of a cell declared in the parent's `areas`.
|
|
318
|
+
//@ area {text}: This element's grid-area — the name of a cell declared in the parent's `areas`.
|
|
295
319
|
area: "gridArea",
|
|
296
320
|
|
|
297
321
|
// ── Typography (extended) ──────────────────────────────────────
|
|
@@ -335,9 +359,21 @@ class Animator {
|
|
|
335
359
|
};
|
|
336
360
|
|
|
337
361
|
// Apply styles safely
|
|
362
|
+
// A bare number where CSS wants a length is dropped by the CSSOM without
|
|
363
|
+
// a word, so `radius: 12` did nothing while `radius: "12px"` worked — and
|
|
364
|
+
// the documentation promised the opposite ("a bare number, not a CSS
|
|
365
|
+
// length"). Rather than correct the docs to match an awkward behaviour,
|
|
366
|
+
// the number is read as pixels, which is what every caller meant.
|
|
367
|
+
const PIXELS_WHEN_BARE = new Set([
|
|
368
|
+
"radius", "width", "height", "maxWidth", "maxHeight", "minWidth",
|
|
369
|
+
"minHeight", "top", "left", "right", "bottom", "gap",
|
|
370
|
+
]);
|
|
338
371
|
for (const key in styleMap) {
|
|
339
372
|
if (obj[key] != null) {
|
|
340
|
-
|
|
373
|
+
const value = (typeof obj[key] === "number" && obj[key] !== 0 && PIXELS_WHEN_BARE.has(key))
|
|
374
|
+
? `${obj[key]}px`
|
|
375
|
+
: obj[key];
|
|
376
|
+
this.res.style[styleMap[key]] = value;
|
|
341
377
|
}
|
|
342
378
|
}
|
|
343
379
|
|
|
@@ -350,11 +386,22 @@ class Animator {
|
|
|
350
386
|
}
|
|
351
387
|
//alert(obj.respad);
|
|
352
388
|
// Special methods
|
|
353
|
-
//@
|
|
389
|
+
//@ width {css-length}: CSS width — a length with a unit, e.g. "100%" or "320px". A bare number is not a CSS length and is ignored.
|
|
390
|
+
//@ height {css-length}: CSS height — a length with a unit.
|
|
391
|
+
//@ maxWidth {css-length}: CSS max-width — a length with a unit.
|
|
392
|
+
//@ maxHeight {css-length}: CSS max-height — a length with a unit.
|
|
393
|
+
//@ color {color}: Text colour — any CSS colour.
|
|
394
|
+
//@ background {color}: Background — any CSS colour or background shorthand.
|
|
395
|
+
//@ opacity {ratio}: 0 to 1.
|
|
396
|
+
//@ zIndex {count}: Stacking order, a whole number.
|
|
397
|
+
//@ radius {px-or-length}: Corner radius. A bare number is read as pixels; a string is used verbatim.
|
|
398
|
+
//@ exact {css-length}: Font size as an exact CSS length, e.g. "0.875rem".
|
|
399
|
+
//@ cursor {css-cursor}: CSS cursor keyword, e.g. "pointer".
|
|
400
|
+
//@ pad {sides}: Padding. An array of side objects: `pad: [{a: 40}]`. Keys are `a` all, `t` top, `r` right, `b` bottom, `l` left. Keys combine, so `{tb: 12}` sets top and bottom. A bare number is treated as px; any string is passed through, so `{a: "2rem"}` works.
|
|
354
401
|
obj.pad && this.pad(obj.pad);
|
|
355
|
-
//@ mar: Margin. The same array-of-side-objects form as `pad`: `mar: [{a: 40}]`, keys `a t r b l`, combinable. Additionally `mar: "center"` sets left and right to auto, as does `{a: "auto"}` or `{center: true}`.
|
|
402
|
+
//@ mar {sides}: Margin. The same array-of-side-objects form as `pad`: `mar: [{a: 40}]`, keys `a t r b l`, combinable. Additionally `mar: "center"` sets left and right to auto, as does `{a: "auto"}` or `{center: true}`.
|
|
356
403
|
obj.mar && this.mar(obj.mar);
|
|
357
|
-
//@ respad: Responsive padding — per-breakpoint overrides of `pad`, in the same form.
|
|
404
|
+
//@ respad {breakpoints}: Responsive padding — per-breakpoint overrides of `pad`, in the same form.
|
|
358
405
|
obj.respad && this.respad(obj.respad);
|
|
359
406
|
|
|
360
407
|
// `borderObj` was never dispatched from here, so a component with no
|
|
@@ -376,27 +423,27 @@ class Animator {
|
|
|
376
423
|
// component that understands it. Components that already apply this
|
|
377
424
|
// option set the same property to the same value, so it stays
|
|
378
425
|
// idempotent for them.
|
|
379
|
-
//@ borderObj: Border as {width, color, type?, radius?}. Width carries its unit, e.g. "1px".
|
|
426
|
+
//@ borderObj {object}: Border as {width, color, type?, radius?}. Width carries its unit, e.g. "1px".
|
|
380
427
|
obj.borderObj && obj.borderObj.width && this.borderObj(obj.borderObj);
|
|
381
|
-
//@ resmar: Responsive margin — per-breakpoint overrides of `mar`, in the same form.
|
|
428
|
+
//@ resmar {breakpoints}: Responsive margin — per-breakpoint overrides of `mar`, in the same form.
|
|
382
429
|
obj.resmar && this.resmar(obj.resmar);
|
|
383
|
-
//@ hover: Styles applied on hover, e.g. {color, background, animation: "0.2s ease"}.
|
|
430
|
+
//@ hover {object}: Styles applied on hover, e.g. {color, background, animation: "0.2s ease"}.
|
|
384
431
|
obj.hover && this.hover(obj.hover);
|
|
385
|
-
//@ size: Fluid type scale step (S1…S6) — font size that scales with the viewport.
|
|
432
|
+
//@ size {scale-step}: Fluid type scale step (S1…S6) — font size that scales with the viewport. On a text element (h1…h6, p) the element TYPE picks the step and this is ignored; use `tag` to change the heading level without changing the size.
|
|
386
433
|
obj.size && this.fluidCopy(obj.size);
|
|
387
|
-
//@ resprop: Per-breakpoint style overrides — [{breakpoint, ...css}]. `exact` is font size.
|
|
434
|
+
//@ resprop {breakpoints}: Per-breakpoint style overrides — [{breakpoint, ...css}]. `exact` is font size.
|
|
388
435
|
obj.resprop && this.resprop(obj.resprop, obj);
|
|
389
|
-
//@ vars: Custom CSS properties on this element — {"--nod-split": 0.2}. Custom properties inherit, so writing them on a root drives its whole subtree with one declaration; that is how the morph axes reach every generated element without a stylesheet.
|
|
436
|
+
//@ vars {object}: Custom CSS properties on this element — {"--nod-split": 0.2}. Custom properties inherit, so writing them on a root drives its whole subtree with one declaration; that is how the morph axes reach every generated element without a stylesheet.
|
|
390
437
|
obj.vars && this.vars(obj.vars);
|
|
391
|
-
//@ keySet: Escape hatch — {key, value} written straight to element.style, or an array of them.
|
|
438
|
+
//@ keySet {keyset}: Escape hatch — {key, value} written straight to element.style, or an array of them.
|
|
392
439
|
obj.keySet && this.keySet(obj.keySet);
|
|
393
|
-
//@ noTheme: Opt this element out of Theme.setDefaults light/dark colouring.
|
|
440
|
+
//@ noTheme {bool}: Opt this element out of Theme.setDefaults light/dark colouring.
|
|
394
441
|
obj.noTheme && (this._noTheme = true);
|
|
395
|
-
//@ theme: Explicit light/dark overrides — {light: {...}, dark: {...}}.
|
|
442
|
+
//@ theme {object}: Explicit light/dark overrides — {light: {...}, dark: {...}}.
|
|
396
443
|
obj.theme && this.theme(obj.theme);
|
|
397
|
-
//@ hide: Hide the element without removing it from the tree.
|
|
444
|
+
//@ hide {bool}: Hide the element without removing it from the tree.
|
|
398
445
|
obj.hide && this.isHidden(obj.hide);
|
|
399
|
-
//@ raster: Attach a WebGL raster pipeline. Array of op nodes; see the Raster section.
|
|
446
|
+
//@ raster {nodes}: Attach a WebGL raster pipeline. Array of op nodes; see the Raster section.
|
|
400
447
|
obj.raster && this.rasterize(obj.raster);
|
|
401
448
|
|
|
402
449
|
//@ center: Centres this element's CHILDREN. `true` for both axes, `"x"` horizontal, `"y"` vertical. Axis-aware: in a flex column `"y"` is justify-content, in a row it is align-items; a grid uses justify-items/align-items. To centre the element itself inside its parent, use `mar: "center"`.
|
|
@@ -407,7 +454,7 @@ class Animator {
|
|
|
407
454
|
obj.center && this.center(obj.center, {display: obj.disp || obj.display, flexDirection: obj.flexDir || obj.flexDirection});
|
|
408
455
|
// Only route to the animation system for object-shaped transforms.
|
|
409
456
|
// String transforms are applied above via the styleMap path.
|
|
410
|
-
//@ transform: A CSS transform string applied verbatim, or an object handled by reactOnTransform(). Composed with `scale` when both are given.
|
|
457
|
+
//@ transform {css-transform}: A CSS transform string applied verbatim, or an object handled by reactOnTransform(). Composed with `scale` when both are given.
|
|
411
458
|
(obj.transform && typeof obj.transform === "object") && this.reactOnTransform(obj.transform);
|
|
412
459
|
|
|
413
460
|
(obj.opacity !== undefined) && (this.res.style.opacity = obj.opacity);
|
|
@@ -653,8 +700,14 @@ _setupResponsiveManager() {
|
|
|
653
700
|
|
|
654
701
|
resprop(arr, op) {
|
|
655
702
|
|
|
656
|
-
//
|
|
657
|
-
this
|
|
703
|
+
// The second argument is the component's options. Three components called
|
|
704
|
+
// this with the breakpoints alone — image, code and container (`wrap`) —
|
|
705
|
+
// which set this.options to undefined. For an image that crashed the page:
|
|
706
|
+
// its toCode() then ran Object.entries(undefined), Des threw during
|
|
707
|
+
// hydration, and the whole mount was left empty. Passing the breakpoints
|
|
708
|
+
// alone must not wipe what set() just stored.
|
|
709
|
+
if (op && typeof op === "object") this.options = op;
|
|
710
|
+
else if (!this.options || typeof this.options !== "object") this.options = {};
|
|
658
711
|
|
|
659
712
|
// --- 1. CONFIGURATION & NORMALIZATION ---
|
|
660
713
|
const breakpoints = {
|
|
@@ -1881,6 +1934,15 @@ this._on(window, this.openTag, () => {
|
|
|
1881
1934
|
transform = obj.op;
|
|
1882
1935
|
}
|
|
1883
1936
|
|
|
1937
|
+
// A transform node without a `values` array used to be dereferenced
|
|
1938
|
+
// here and again inside a timer, so the crash surfaced seconds later,
|
|
1939
|
+
// as an uncaught exception far from the node that caused it — in every
|
|
1940
|
+
// release back to at least 1.3.10.
|
|
1941
|
+
if (!transform || !Array.isArray(transform.values)) {
|
|
1942
|
+
console.warn('[nodality] reactOnTransform: a transform node needs a `values` array, e.g. ["ty:-20px"] - ignored');
|
|
1943
|
+
return;
|
|
1944
|
+
}
|
|
1945
|
+
|
|
1884
1946
|
if (!transform.duration){
|
|
1885
1947
|
transform.duration = "3s-ease-in-out";
|
|
1886
1948
|
}
|
package/layout/audio.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.3.
|
|
2
|
+
* nodality v1.3.12
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -12,9 +12,29 @@ import {Animator} from "./animator.js";
|
|
|
12
12
|
super();
|
|
13
13
|
this.url = url;
|
|
14
14
|
this.res = null;
|
|
15
|
+
// An object the mapper can write the element's id into, so that it
|
|
16
|
+
// reaches the generated code below.
|
|
17
|
+
this.options = {};
|
|
15
18
|
|
|
16
19
|
this.setup();
|
|
17
20
|
}
|
|
21
|
+
|
|
22
|
+
// Options come from the generated code; the base class applies `id`
|
|
23
|
+
// after this returns, as it does for every element.
|
|
24
|
+
set(obj = {}) {
|
|
25
|
+
this.options = obj || {};
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// There was none. Des mounts an element by running its generated code, and
|
|
30
|
+
// with no toCode() it interpolated the instance itself — emitting
|
|
31
|
+
// "[object Object].render(...)", which is a syntax error, so every
|
|
32
|
+
// {type: "audio"} threw at render.
|
|
33
|
+
toCode() {
|
|
34
|
+
const opts = Object.fromEntries(Object.entries(this.options || {}).filter(([, v]) => v != null));
|
|
35
|
+
const set = Object.keys(opts).length ? `.set(${JSON.stringify(opts)})` : "";
|
|
36
|
+
return [`new Audio(${JSON.stringify(this.url)})${set}`];
|
|
37
|
+
}
|
|
18
38
|
|
|
19
39
|
|
|
20
40
|
|
package/layout/audionew.js
CHANGED
package/layout/base.js
CHANGED
package/layout/button.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.3.
|
|
2
|
+
* nodality v1.3.12
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -270,7 +270,9 @@ this.options = obj;
|
|
|
270
270
|
|
|
271
271
|
|
|
272
272
|
borderRadius(radius){
|
|
273
|
-
|
|
273
|
+
// A bare number is pixels, as everywhere else in the library; the
|
|
274
|
+
// CSSOM drops a unitless radius, so `radius: 999` did nothing.
|
|
275
|
+
this.res.style.borderRadius = typeof radius === "number" ? `${radius}px` : radius;
|
|
274
276
|
return this;
|
|
275
277
|
}
|
|
276
278
|
|
package/layout/center.js
CHANGED
package/layout/checkbox.js
CHANGED
package/layout/circle.js
CHANGED
package/layout/code.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.3.
|
|
2
|
+
* nodality v1.3.12
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -124,7 +124,7 @@ class Code extends Animator {
|
|
|
124
124
|
obj.mar && this.mar(obj.mar);
|
|
125
125
|
obj.respad && this.respad(obj.respad);
|
|
126
126
|
obj.resmar && this.resmar(obj.resmar);
|
|
127
|
-
obj.resprop && this.resprop(obj.resprop);
|
|
127
|
+
obj.resprop && this.resprop(obj.resprop, obj);
|
|
128
128
|
obj.width && (this.res.style.width = obj.width);
|
|
129
129
|
obj.background && (this.res.style.background = obj.background);
|
|
130
130
|
obj.color && (this.res.style.color = obj.color);
|
package/layout/container.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.3.
|
|
2
|
+
* nodality v1.3.12
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -80,7 +80,7 @@ code = `${pad}new Wrapper()`;
|
|
|
80
80
|
obj.scale && (this.res.style.scale=obj.scale);
|
|
81
81
|
obj.scale && (stra += `scale: ${obj.scale}`);
|
|
82
82
|
obj.keySet && this.keySet(obj.keySet);
|
|
83
|
-
obj.resprop && this.resprop(obj.resprop);
|
|
83
|
+
obj.resprop && this.resprop(obj.resprop, obj);
|
|
84
84
|
obj.position && (this.res.style.position = obj.position);
|
|
85
85
|
obj.top !== undefined && (this.res.style.top = obj.top);
|
|
86
86
|
// ------
|
package/layout/dropdown-2025.js
CHANGED
package/layout/flex-card.js
CHANGED
package/layout/flex-grid.js
CHANGED
package/layout/flex-row.js
CHANGED