nuclo 0.1.47 → 0.1.49
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/core/attributeManager.d.ts +1 -1
- package/dist/core/attributeManager.d.ts.map +1 -1
- package/dist/core/runtimeBootstrap.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/nuclo.cjs +1 -1
- package/dist/nuclo.cjs.map +1 -1
- package/dist/nuclo.js +1 -1
- package/dist/nuclo.js.map +1 -1
- package/dist/nuclo.umd.js +1 -1
- package/dist/nuclo.umd.js.map +1 -1
- package/dist/style/index.d.ts +87 -1
- package/dist/style/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/types/features/style.d.ts +133 -0
- package/types/index.d.ts +1 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare function applyAttributes<TTagName extends ElementTagName>(element: ExpandedElement<TTagName>, attributes: ExpandedElementAttributes<TTagName
|
|
1
|
+
export declare function applyAttributes<TTagName extends ElementTagName>(element: ExpandedElement<TTagName>, attributes: ExpandedElementAttributes<TTagName>, mergeClassName?: boolean): void;
|
|
2
2
|
export { createReactiveTextNode } from "./reactive";
|
|
3
3
|
//# sourceMappingURL=attributeManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attributeManager.d.ts","sourceRoot":"","sources":["../../src/core/attributeManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"attributeManager.d.ts","sourceRoot":"","sources":["../../src/core/attributeManager.ts"],"names":[],"mappings":"AA0EA,wBAAgB,eAAe,CAAC,QAAQ,SAAS,cAAc,EAC7D,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC,EAClC,UAAU,EAAE,yBAAyB,CAAC,QAAQ,CAAC,EAC/C,cAAc,UAAO,GACpB,IAAI,CASN;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeBootstrap.d.ts","sourceRoot":"","sources":["../../src/core/runtimeBootstrap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtimeBootstrap.d.ts","sourceRoot":"","sources":["../../src/core/runtimeBootstrap.ts"],"names":[],"mappings":"AA8BA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAkCxC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,5 +12,6 @@ export { render } from "./utility/render";
|
|
|
12
12
|
export { isBoolean, isFunction, isNode, isObject, isPrimitive, isTagLike, isZeroArityFunction } from "./utility/typeGuards";
|
|
13
13
|
export { isBrowser } from "./utility/environment";
|
|
14
14
|
export { createElementWithModifiers } from "./internal/applyModifiers";
|
|
15
|
+
export { createCSSClass, createBreakpoints, bg, color, fontSize, flex, center, bold, padding, margin, width, height, border, borderRadius, textAlign, gap, flexDirection, grid, position, opacity, cursor } from "./style";
|
|
15
16
|
import "./core/runtimeBootstrap";
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvG,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvG,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,EAAE,EACF,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,EACN,YAAY,EACZ,SAAS,EACT,GAAG,EACH,aAAa,EACb,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,SAAS,CAAC;AAGjB,OAAO,yBAAyB,CAAC"}
|
package/dist/nuclo.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return null===e||"object"!=typeof e&&"function"!=typeof e}function t(e){return e instanceof Node}function n(e){return"object"==typeof e&&null!==e}function r(e){return n(e)&&"tagName"in e}function o(e){return"function"==typeof e}function i(e){return o(e)&&0===e.length}function c(e,t){"undefined"!=typeof console&&console.error(`nuclo: ${e}`,t)}function u(e,t){try{return e()}catch(e){return c("Operation failed",e),t}}const s="undefined"!=typeof window&&"undefined"!=typeof document;function a(e){if(!e?.parentNode)return!1;try{return e.parentNode.removeChild(e),!0}catch(e){return c("Failed to remove child node",e),!1}}function l(e){if(!s)return null;try{return document.createComment(e)}catch(e){return c("Failed to create comment node",e),null}}function d(e){return l(e)}function f(e,t="hidden"){try{return document.createComment(`conditional-${e}-${t}`)}catch(e){return c("Failed to create conditional comment",e),null}}function p(e){if(!s)throw new Error("Cannot create comment in non-browser environment");const t=l(`${e}-${Math.random().toString(36).slice(2)}`);if(!t)throw new Error("Failed to create comment");return t}function h(e){const t=l(`${e}-end`);if(!t)throw new Error("Failed to create end comment");return{start:p(`${e}-start`),end:t}}function m(e,t){const n=t.parentNode;n&&e.forEach(e=>function(e,t,n){if(!e||!t)return!1;try{return e.insertBefore(t,n),!0}catch(e){return c("Failed to insert node before reference",e),!1}}(n,e,t))}function g(e){return!!e&&("boolean"==typeof e.isConnected?e.isConnected:!(!s||"undefined"==typeof document)&&document.contains(e))}function y(e,t){if(!e?.parentNode)return!1;try{return e.parentNode.replaceChild(t,e),!0}catch(e){return c("Error replacing conditional node",e),!1}}const b=new Map,v=new Map;function x(e,t){t.attributeResolvers.forEach(({resolver:e,applyValue:t},n)=>{try{t(u(e))}catch(e){c(`Failed to update reactive attribute: ${n}`,e)}})}function E(e,t,n,r){if(!(e instanceof Element&&t&&"function"==typeof n))return void c("Invalid parameters for registerAttributeResolver");const o=function(e){let t=v.get(e);return t||(t={attributeResolvers:new Map},v.set(e,t)),t}(e);o.attributeResolvers.set(t,{resolver:n,applyValue:r});try{r(u(n))}catch(e){c("Failed to apply initial attribute value",e)}if(!o.updateListener){const t=()=>x(0,o);e.addEventListener("update",t),o.updateListener=t}}function w(e,t,n){try{if(null==n||""===n)return e.style[t]="",!0;const r=String(n);return e.style[t]=r,!0}catch{return!1}}function C(e,t){if(e?.style&&t)for(const[n,r]of Object.entries(t)){w(e,n,r)||c(`Failed to set style property '${n}'`)}}function S(e,t,n){if(null==n)return;if("style"===t)return i=n,void((r=e)&&(o(i)?E(r,"style",()=>{try{return i()}catch(e){return c("Error in style resolver function",e),null}},e=>{C(r,e)}):C(r,i)));var r,i;const u=n=>{if(null==n)return;if(e instanceof Element&&"http://www.w3.org/2000/svg"===e.namespaceURI)e.setAttribute(String(t),String(n));else if(t in e)try{e[t]=n}catch{e instanceof Element&&e.setAttribute(String(t),String(n))}else e instanceof Element&&e.setAttribute(String(t),String(n))};if(o(n)&&0===n.length){const r=n;E(e,String(t),r,u)}else u(n)}function M(e,t){if(t)for(const n of Object.keys(t)){S(e,n,t[n])}}const N=new WeakMap;function k(e){const{value:t,error:n}=function(e){const t=N.get(e);if(t)return t;try{const t={value:e(),error:!1};return N.set(e,t),t}catch{const t={value:void 0,error:!0};return N.set(e,t),t}}(e);return!n&&"boolean"==typeof t}function F(e,r,i){if(!o(e)||0!==e.length)return!1;if(!k(e))return!1;const c=r.filter((e,t)=>t!==i);if(0===c.length)return!1;return c.some(e=>!(!n(e)&&!t(e))||!!(o(e)&&e.length>0))}function T(r,u,s){if(null==u)return null;if(o(u)){if(i(u))try{let t=N.get(u);if(!t){t={value:u(),error:!1},N.set(u,t)}if(t.error)return I(s,()=>"");const n=t.value;return e(n)&&null!=n?I(s,u,n):null}catch(e){return N.set(u,{value:void 0,error:!0}),c("Error evaluating reactive text function:",e),I(s,()=>"")}const o=u(r,s);return null==o?null:e(o)?L(s,o):t(o)?o:(n(o)&&M(r,o),null)}const a=u;return null==a?null:e(a)?L(s,a):t(a)?a:(n(a)&&M(r,a),null)}function I(e,t,n){const r=document.createDocumentFragment(),o=d(` text-${e} `);o&&r.appendChild(o);const i=function(e,t){if("function"!=typeof e)return c("Invalid resolver provided to createReactiveTextNode"),document.createTextNode("");const n=arguments.length>1?t:u(e,""),r=void 0===n?"":String(n),o=document.createTextNode(r);return b.set(o,{resolver:e,lastValue:r}),o}(t,n);return r.appendChild(i),r}function L(e,t){const n=document.createDocumentFragment(),r=d(` text-${e} `);r&&n.appendChild(r);const o=document.createTextNode(String(t));return n.appendChild(o),n}const $=new Set;function _(e,t){e._conditionalInfo=t,$.add(e)}function B(e,t,n=0){if(!t||0===t.length)return{element:e,nextIndex:n,appended:0};let r=n,o=0;const i=e;for(let n=0;n<t.length;n+=1){const c=t[n];if(null==c)continue;const u=T(e,c,r);u&&(u.parentNode!==i&&i.appendChild(u),r+=1,o+=1)}return{element:e,nextIndex:r,appended:o}}function A(e,t){const n=document.createElement(e);return B(n,t,0),n}function G(e){const t=function(e){for(let t=0;t<e.length;t+=1)if(F(e[t],e,t))return t;return-1}(e);return-1===t?{condition:null,otherModifiers:e}:{condition:e[t],otherModifiers:e.filter((e,n)=>n!==t)}}function O(e){return function(e){return P.includes(e)}(e)?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}function j(e,...t){return(n,r)=>{const{condition:o,otherModifiers:i}=G(t);if(o)return function(e,t,n){const r=t();if(!s)return r?A(e,n):f(e,"ssr");const o={condition:t,tagName:e,modifiers:n};if(r){const t=A(e,n);return _(t,o),t}const i=f(e);if(!i)throw new Error(`Failed to create conditional comment for ${e}`);return _(i,o),i}(e,o,i);const c=O(e);return B(c,i,r),c}}function R(e){return(...t)=>j(e,...t)}const D=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","script","search","section","select","slot","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],P=["a","animate","animateMotion","animateTransform","circle","clipPath","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","image","line","linearGradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tspan","use","view"];function V(e=globalThis){const t="__nuclo_tags_registered";e[t]||(P.forEach(t=>function(e,t){let n=t;["a","script","style","title","text"].includes(t)?n=`${t}_svg`:["stop"].includes(t)&&(n=`${t}_`),n in e||(e[n]=R(t))}(e,t)),D.forEach(t=>function(e,t){t in e&&"function"!=typeof e[t]||(e[t]=R(t))}(e,t)),e[t]=!0)}const q=new Set;function W(e,t,n){return function(e,t,n){if(o(e)){const o=e(t,n);return o&&r(o)?o:null}return e&&r(e)?e:null}(e.renderItem(t,n),e.host,n)}function z(e){a(e.element)}function H(e){const{host:t,startMarker:n,endMarker:r}=e,o=n.parentNode??t,i=e.itemsProvider();if(function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if((n in e?e[n]:void 0)!==(n in t?t[n]:void 0))return!1;return!0}(e.lastSyncedItems,i))return;const c=new Map,u=new Map;e.records.forEach(e=>{const t=u.get(e.item);t?t.push(e):u.set(e.item,[e])}),i.forEach((t,n)=>{if(n<e.lastSyncedItems.length&&e.lastSyncedItems[n]===t){const r=e.records[n];if(r&&r.item===t){c.set(n,r);const e=u.get(t);if(e){const n=e.indexOf(r);n>=0&&(e.splice(n,1),0===e.length&&u.delete(t))}}}});const s=[],a=new Set(e.records);let l=r;for(let t=i.length-1;t>=0;t--){const n=i[t];let r=c.get(t);if(!r){const e=u.get(n);e&&e.length>0&&(r=e.shift(),0===e.length&&u.delete(n))}if(r)a.delete(r);else{const o=W(e,n,t);if(!o)continue;r={item:n,element:o}}s.unshift(r);const d=r.element;d.nextSibling!==l&&o.insertBefore(d,l),l=d}a.forEach(z),e.records=s,e.lastSyncedItems=[...i]}function U(e,t){return(n,r)=>{const o=function(e,t,n){const{start:r,end:o}=h("list"),i={itemsProvider:e,renderItem:t,startMarker:r,endMarker:o,records:[],host:n,lastSyncedItems:[]},c=n;return c.appendChild(r),c.appendChild(o),q.add(i),H(i),i}(e,t,n);return o.startMarker}}function Z(e,t){try{return e()}catch(e){if(t)return t(e),!1;throw e}}function J(e,t){return"function"==typeof e?Z(e,t):Boolean(e)}const K=new Set;function Q(e,t,n,r){return o(e)?i(e)?(N.delete(e),T(t,e,n)):function(e,t,n){const r=e,o=r.appendChild.bind(r),i=r.insertBefore.bind(r);r.appendChild=function(e){return i(e,t)};try{return n()}finally{r.appendChild=o}}(t,r,()=>{const r=T(t,e,n);return r&&!r.parentNode?r:null}):T(t,e,n)}function X(e){const{groups:t,elseContent:n,host:r,index:o,endMarker:i}=e,c=function(e,t){for(let t=0;t<e.length;t++)if(J(e[t].condition))return t;return t.length>0?-1:null}(t,n);if(c===e.activeIndex)return;if(function(e,t){let n=e.nextSibling;for(;n&&n!==t;){const e=n.nextSibling;a(n),n=e}}(e.startMarker,e.endMarker),e.activeIndex=c,null===c)return;const u=function(e,t,n,r){const o=[];for(const i of e){const e=Q(i,t,n,r);e&&o.push(e)}return o}(c>=0?t[c].content:n,r,o,i);m(u,i)}class Y{groups=[];elseContent=[];constructor(e,...t){this.groups.push({condition:e,content:t})}when(e,...t){return this.groups.push({condition:e,content:t}),this}else(...e){return this.elseContent=e,this}render(e,t){if(!s){return d("when-ssr")||null}const{start:n,end:r}=h("when"),o={startMarker:n,endMarker:r,host:e,index:t,groups:[...this.groups],elseContent:[...this.elseContent],activeIndex:null,update:()=>X(o)};K.add(o);const i=e;return i.appendChild(n),i.appendChild(r),X(o),n}}function ee(e){return Object.assign((t,n)=>e.render(t,n),{when:(t,...n)=>(e.when(t,...n),ee(e)),else:(...t)=>(e.else(...t),ee(e))})}function te(e,...t){return ee(new Y(e,...t))}function ne(e){const t=function(e){return e._conditionalInfo??null}(e);if(!t)return;const n=Z(t.condition,e=>{c("Error evaluating conditional condition",e)}),r=e.nodeType===Node.ELEMENT_NODE;if(n&&!r){const n=function(e){try{return A(e.tagName,e.modifiers)}catch(t){return c(`Error applying modifiers in conditional element "${e.tagName}"`,t),document.createElement(e.tagName)}}(t);_(n,t),y(e,n)}else if(!n&&r){const n=f(t.tagName);n&&(_(n,t),y(e,n))}}const re=[function(){q.forEach(e=>{e.startMarker.isConnected&&e.endMarker.isConnected?H(e):q.delete(e)})},function(){K.forEach(e=>{try{e.update()}catch(t){K.delete(e)}})},function(){if(s)try{$.forEach(e=>{e.isConnected?ne(e):function(e){$.delete(e)}(e)})}catch(e){c("Error during conditional elements update",e)}},function(){v.forEach((e,t)=>{if(!g(t))return e.updateListener&&t.removeEventListener("update",e.updateListener),void v.delete(t);x(0,e)})},function(){b.forEach((e,t)=>{if(g(t))try{const n=u(e.resolver),r=void 0===n?"":String(n);r!==e.lastValue&&(t.textContent=r,e.lastValue=r)}catch(e){c("Failed to update reactive text node",e)}else b.delete(t)})},function(){if("undefined"==typeof document)return;const e=document.body?[document.body,document]:[document];for(const t of e)try{t.dispatchEvent(new Event("update",{bubbles:!0}))}catch(e){c("Error dispatching global update event",e)}}];function oe(){for(const e of re)e()}function ie(e,t,n){return r=>{if(!r||"function"!=typeof r.addEventListener)return;const o=r;o.addEventListener(e,n=>{try{t.call(o,n)}catch(t){c(`Error in '${e}' listener`,t)}},n)}}function ce(e,t,n=0){const r=e(t||document.body,n);return(t||document.body).appendChild(r),r}function ue(){if(V(),"undefined"!=typeof globalThis){const e=globalThis;e.list=U,e.update=oe,e.when=te,e.on=ie,e.render=ce}}"undefined"!=typeof globalThis&&ue(),exports.HTML_TAGS=D,exports.SELF_CLOSING_TAGS=["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"],exports.SVG_TAGS=P,exports.appendChildren=function(e,...t){return e?(t.forEach(t=>{if(null!=t){let n;if("string"==typeof t){const e=function(e){if(!s)return null;try{return document.createTextNode(String(e))}catch(e){return c("Failed to create text node",e),null}}(t);if(!e)return;n=e}else n=t;!function(e,t){if(!e||!t)return!1;try{return e.appendChild(t),!0}catch(e){return c("Failed to append child node",e),!1}}(e,n)}}),e):e},exports.applyAttributes=M,exports.applyNodeModifier=T,exports.createComment=d,exports.createConditionalComment=f,exports.createElementFactory=j,exports.createElementWithModifiers=A,exports.createTagBuilder=R,exports.initializeRuntime=ue,exports.isBoolean=function(e){return"boolean"==typeof e},exports.isBrowser=s,exports.isFunction=o,exports.isNode=t,exports.isObject=n,exports.isPrimitive=e,exports.isTagLike=r,exports.isZeroArityFunction=i,exports.list=U,exports.on=ie,exports.registerGlobalTagBuilders=V,exports.render=ce,exports.replaceNodeSafely=y,exports.update=oe,exports.when=te;
|
|
1
|
+
"use strict";function e(e){return null===e||"object"!=typeof e&&"function"!=typeof e}function t(e){return e instanceof Node}function n(e){return"object"==typeof e&&null!==e}function r(e){return n(e)&&"tagName"in e}function o(e){return"function"==typeof e}function i(e){return o(e)&&0===e.length}function s(e,t){"undefined"!=typeof console&&console.error(`nuclo: ${e}`,t)}function c(e,t){try{return e()}catch(e){return s("Operation failed",e),t}}const a="undefined"!=typeof window&&"undefined"!=typeof document;function l(e){if(!e?.parentNode)return!1;try{return e.parentNode.removeChild(e),!0}catch(e){return s("Failed to remove child node",e),!1}}function u(e){if(!a)return null;try{return document.createComment(e)}catch(e){return s("Failed to create comment node",e),null}}function d(e){return u(e)}function f(e,t="hidden"){try{return document.createComment(`conditional-${e}-${t}`)}catch(e){return s("Failed to create conditional comment",e),null}}function p(e){if(!a)throw new Error("Cannot create comment in non-browser environment");const t=u(`${e}-${Math.random().toString(36).slice(2)}`);if(!t)throw new Error("Failed to create comment");return t}function h(e){const t=u(`${e}-end`);if(!t)throw new Error("Failed to create end comment");return{start:p(`${e}-start`),end:t}}function m(e,t){const n=t.parentNode;n&&e.forEach(e=>function(e,t,n){if(!e||!t)return!1;try{return e.insertBefore(t,n),!0}catch(e){return s("Failed to insert node before reference",e),!1}}(n,e,t))}function g(e){return!!e&&("boolean"==typeof e.isConnected?e.isConnected:!(!a||"undefined"==typeof document)&&document.contains(e))}function y(e,t){if(!e?.parentNode)return!1;try{return e.parentNode.replaceChild(t,e),!0}catch(e){return s("Error replacing conditional node",e),!1}}const x=new Map,b=new Map;function C(e,t){t.attributeResolvers.forEach(({resolver:e,applyValue:t},n)=>{try{t(c(e))}catch(e){s(`Failed to update reactive attribute: ${n}`,e)}})}function w(e,t,n,r){if(!(e instanceof Element&&t&&"function"==typeof n))return void s("Invalid parameters for registerAttributeResolver");const o=function(e){let t=b.get(e);return t||(t={attributeResolvers:new Map},b.set(e,t)),t}(e);o.attributeResolvers.set(t,{resolver:n,applyValue:r});try{r(c(n))}catch(e){s("Failed to apply initial attribute value",e)}if(!o.updateListener){const t=()=>C(0,o);e.addEventListener("update",t),o.updateListener=t}}function v(e,t,n){try{if(null==n||""===n)return e.style[t]="",!0;const r=String(n);return e.style[t]=r,!0}catch{return!1}}function S(e,t){if(e?.style&&t)for(const[n,r]of Object.entries(t)){v(e,n,r)||s(`Failed to set style property '${n}'`)}}function E(e,t,n,r=!1){if(null==n)return;if("style"===t)return c=n,void((i=e)&&(o(c)?w(i,"style",()=>{try{return c()}catch(e){return s("Error in style resolver function",e),null}},e=>{S(i,e)}):S(i,c)));var i,c;const a=(n,r=!1)=>{if(null==n)return;if("className"===t&&e instanceof HTMLElement&&r){const t=String(n),r=e.className;if(r&&r!==t){const n=new Set(r.split(" ").filter(e=>e));t.split(" ").filter(e=>e).forEach(e=>n.add(e)),e.className=Array.from(n).join(" ")}else t&&(e.className=t);return}if(e instanceof Element&&"http://www.w3.org/2000/svg"===e.namespaceURI)e.setAttribute(String(t),String(n));else if(t in e)try{e[t]=n}catch{e instanceof Element&&e.setAttribute(String(t),String(n))}else e instanceof Element&&e.setAttribute(String(t),String(n))};if(o(n)&&0===n.length){const r=n;w(e,String(t),r,e=>a(e,!1))}else a(n,r)}function N(e,t,n=!0){if(t)for(const r of Object.keys(t)){E(e,r,t[r],n&&"className"===r)}}const M=new WeakMap;function $(e){const{value:t,error:n}=function(e){const t=M.get(e);if(t)return t;try{const t={value:e(),error:!1};return M.set(e,t),t}catch{const t={value:void 0,error:!0};return M.set(e,t),t}}(e);return!n&&"boolean"==typeof t}function k(e,r,i){if(!o(e)||0!==e.length)return!1;if(!$(e))return!1;const s=r.filter((e,t)=>t!==i);if(0===s.length)return!1;return s.some(e=>!(!n(e)&&!t(e))||!!(o(e)&&e.length>0))}function R(r,c,a){if(null==c)return null;if(o(c)){if(i(c))try{let t=M.get(c);if(!t){t={value:c(),error:!1},M.set(c,t)}if(t.error)return T(a,()=>"");const n=t.value;return e(n)&&null!=n?T(a,c,n):null}catch(e){return M.set(c,{value:void 0,error:!0}),s("Error evaluating reactive text function:",e),T(a,()=>"")}const o=c(r,a);return null==o?null:e(o)?F(a,o):t(o)?o:(n(o)&&N(r,o),null)}const l=c;return null==l?null:e(l)?F(a,l):t(l)?l:(n(l)&&N(r,l),null)}function T(e,t,n){const r=document.createDocumentFragment(),o=d(` text-${e} `);o&&r.appendChild(o);const i=function(e,t){if("function"!=typeof e)return s("Invalid resolver provided to createReactiveTextNode"),document.createTextNode("");const n=arguments.length>1?t:c(e,""),r=void 0===n?"":String(n),o=document.createTextNode(r);return x.set(o,{resolver:e,lastValue:r}),o}(t,n);return r.appendChild(i),r}function F(e,t){const n=document.createDocumentFragment(),r=d(` text-${e} `);r&&n.appendChild(r);const o=document.createTextNode(String(t));return n.appendChild(o),n}const j=new Set;function I(e,t){e._conditionalInfo=t,j.add(e)}function L(e,t,n=0){if(!t||0===t.length)return{element:e,nextIndex:n,appended:0};let r=n,o=0;const i=e;for(let n=0;n<t.length;n+=1){const s=t[n];if(null==s)continue;const c=R(e,s,r);c&&(c.parentNode!==i&&i.appendChild(c),r+=1,o+=1)}return{element:e,nextIndex:r,appended:o}}function A(e,t){const n=document.createElement(e);return L(n,t,0),n}function D(e){const t=function(e){for(let t=0;t<e.length;t+=1)if(k(e[t],e,t))return t;return-1}(e);return-1===t?{condition:null,otherModifiers:e}:{condition:e[t],otherModifiers:e.filter((e,n)=>n!==t)}}function O(e){return function(e){return z.includes(e)}(e)?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}function B(e,...t){return(n,r)=>{const{condition:o,otherModifiers:i}=D(t);if(o)return function(e,t,n){const r=t();if(!a)return r?A(e,n):f(e,"ssr");const o={condition:t,tagName:e,modifiers:n};if(r){const t=A(e,n);return I(t,o),t}const i=f(e);if(!i)throw new Error(`Failed to create conditional comment for ${e}`);return I(i,o),i}(e,o,i);const s=O(e);return L(s,i,r),s}}function _(e){return(...t)=>B(e,...t)}const G=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","script","search","section","select","slot","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],z=["a","animate","animateMotion","animateTransform","circle","clipPath","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","image","line","linearGradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tspan","use","view"];function P(e=globalThis){const t="__nuclo_tags_registered";e[t]||(z.forEach(t=>function(e,t){let n=t;["a","script","style","title","text"].includes(t)?n=`${t}_svg`:["stop"].includes(t)&&(n=`${t}_`),n in e||(e[n]=_(t))}(e,t)),G.forEach(t=>function(e,t){t in e&&"function"!=typeof e[t]||(e[t]=_(t))}(e,t)),e[t]=!0)}const V=new Set;function q(e,t,n){return function(e,t,n){if(o(e)){const o=e(t,n);return o&&r(o)?o:null}return e&&r(e)?e:null}(e.renderItem(t,n),e.host,n)}function W(e){l(e.element)}function H(e){const{host:t,startMarker:n,endMarker:r}=e,o=n.parentNode??t,i=e.itemsProvider();if(function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if((n in e?e[n]:void 0)!==(n in t?t[n]:void 0))return!1;return!0}(e.lastSyncedItems,i))return;const s=new Map,c=new Map;e.records.forEach(e=>{const t=c.get(e.item);t?t.push(e):c.set(e.item,[e])}),i.forEach((t,n)=>{if(n<e.lastSyncedItems.length&&e.lastSyncedItems[n]===t){const r=e.records[n];if(r&&r.item===t){s.set(n,r);const e=c.get(t);if(e){const n=e.indexOf(r);n>=0&&(e.splice(n,1),0===e.length&&c.delete(t))}}}});const a=[],l=new Set(e.records);let u=r;for(let t=i.length-1;t>=0;t--){const n=i[t];let r=s.get(t);if(!r){const e=c.get(n);e&&e.length>0&&(r=e.shift(),0===e.length&&c.delete(n))}if(r)l.delete(r);else{const o=q(e,n,t);if(!o)continue;r={item:n,element:o}}a.unshift(r);const d=r.element;d.nextSibling!==u&&o.insertBefore(d,u),u=d}l.forEach(W),e.records=a,e.lastSyncedItems=[...i]}function Z(e,t){return(n,r)=>{const o=function(e,t,n){const{start:r,end:o}=h("list"),i={itemsProvider:e,renderItem:t,startMarker:r,endMarker:o,records:[],host:n,lastSyncedItems:[]},s=n;return s.appendChild(r),s.appendChild(o),V.add(i),H(i),i}(e,t,n);return o.startMarker}}function U(e,t){try{return e()}catch(e){if(t)return t(e),!1;throw e}}function J(e,t){return"function"==typeof e?U(e,t):Boolean(e)}const K=new Set;function Q(e,t,n,r){return o(e)?i(e)?(M.delete(e),R(t,e,n)):function(e,t,n){const r=e,o=r.appendChild.bind(r),i=r.insertBefore.bind(r);r.appendChild=function(e){return i(e,t)};try{return n()}finally{r.appendChild=o}}(t,r,()=>{const r=R(t,e,n);return r&&!r.parentNode?r:null}):R(t,e,n)}function X(e){const{groups:t,elseContent:n,host:r,index:o,endMarker:i}=e,s=function(e,t){for(let t=0;t<e.length;t++)if(J(e[t].condition))return t;return t.length>0?-1:null}(t,n);if(s===e.activeIndex)return;if(function(e,t){let n=e.nextSibling;for(;n&&n!==t;){const e=n.nextSibling;l(n),n=e}}(e.startMarker,e.endMarker),e.activeIndex=s,null===s)return;const c=function(e,t,n,r){const o=[];for(const i of e){const e=Q(i,t,n,r);e&&o.push(e)}return o}(s>=0?t[s].content:n,r,o,i);m(c,i)}class Y{groups=[];elseContent=[];constructor(e,...t){this.groups.push({condition:e,content:t})}when(e,...t){return this.groups.push({condition:e,content:t}),this}else(...e){return this.elseContent=e,this}render(e,t){if(!a){return d("when-ssr")||null}const{start:n,end:r}=h("when"),o={startMarker:n,endMarker:r,host:e,index:t,groups:[...this.groups],elseContent:[...this.elseContent],activeIndex:null,update:()=>X(o)};K.add(o);const i=e;return i.appendChild(n),i.appendChild(r),X(o),n}}function ee(e){return Object.assign((t,n)=>e.render(t,n),{when:(t,...n)=>(e.when(t,...n),ee(e)),else:(...t)=>(e.else(...t),ee(e))})}function te(e,...t){return ee(new Y(e,...t))}function ne(e){const t=function(e){return e._conditionalInfo??null}(e);if(!t)return;const n=U(t.condition,e=>{s("Error evaluating conditional condition",e)}),r=e.nodeType===Node.ELEMENT_NODE;if(n&&!r){const n=function(e){try{return A(e.tagName,e.modifiers)}catch(t){return s(`Error applying modifiers in conditional element "${e.tagName}"`,t),document.createElement(e.tagName)}}(t);I(n,t),y(e,n)}else if(!n&&r){const n=f(t.tagName);n&&(I(n,t),y(e,n))}}const re=[function(){V.forEach(e=>{e.startMarker.isConnected&&e.endMarker.isConnected?H(e):V.delete(e)})},function(){K.forEach(e=>{try{e.update()}catch(t){K.delete(e)}})},function(){if(a)try{j.forEach(e=>{e.isConnected?ne(e):function(e){j.delete(e)}(e)})}catch(e){s("Error during conditional elements update",e)}},function(){b.forEach((e,t)=>{if(!g(t))return e.updateListener&&t.removeEventListener("update",e.updateListener),void b.delete(t);C(0,e)})},function(){x.forEach((e,t)=>{if(g(t))try{const n=c(e.resolver),r=void 0===n?"":String(n);r!==e.lastValue&&(t.textContent=r,e.lastValue=r)}catch(e){s("Failed to update reactive text node",e)}else x.delete(t)})},function(){if("undefined"==typeof document)return;const e=document.body?[document.body,document]:[document];for(const t of e)try{t.dispatchEvent(new Event("update",{bubbles:!0}))}catch(e){s("Error dispatching global update event",e)}}];function oe(){for(const e of re)e()}function ie(e,t,n){return r=>{if(!r||"function"!=typeof r.addEventListener)return;const o=r;o.addEventListener(e,n=>{try{t.call(o,n)}catch(t){s(`Error in '${e}' listener`,t)}},n)}}function se(e,t,n=0){const r=e(t||document.body,n);return(t||document.body).appendChild(r),r}const ce=new Map;function ae(e,t,n){let r=document.querySelector("#nuclo-styles");r||(r=document.createElement("style"),r.id="nuclo-styles",document.head.appendChild(r));Array.from(r.sheet?.cssRules||[]).some(t=>t instanceof CSSStyleRule&&t.selectorText===`.${e}`)||r.sheet?.insertRule(`.${e} { ${t}: ${n}; }`,r.sheet.cssRules.length)}function le(e,t,n,r){let o=document.querySelector("#nuclo-styles");o||(o=document.createElement("style"),o.id="nuclo-styles",document.head.appendChild(o));const i=Array.from(o.sheet?.cssRules||[]);let s=null;for(const e of i)if(e instanceof CSSMediaRule&&e.media.mediaText===r){s=e;break}if(!s){const e=o.sheet?.cssRules.length||0;o.sheet?.insertRule(`@media ${r} {}`,e),s=o.sheet?.cssRules[e]}Array.from(s.cssRules).some(t=>t instanceof CSSStyleRule&&t.selectorText===`.${e}`)||s.insertRule(`.${e} { ${t}: ${n}; }`,s.cssRules.length)}class ue{classNames=[];classDefinitions=[];getClassNames(){return[...this.classNames]}getClassDefinitions(){return[...this.classDefinitions]}toString(){return this.classNames.join(" ")}addClass(e,t){const n=function(e,t){const n=`${e}:${t}`;if(ce.has(n))return ce.get(n);let r;const o={"background-color":"bg",color:"text","font-size":"text",display:"display",flex:"flex","justify-content":"justify","align-items":"items","font-weight":"font",padding:"p",margin:"m",width:"w",height:"h",border:"border","border-radius":"rounded","text-align":"text",gap:"gap","flex-direction":"flex",position:"position",opacity:"opacity",cursor:"cursor","box-shadow":"shadow",transition:"transition","text-decoration":"underline","letter-spacing":"tracking","min-width":"min-w","max-width":"max-w","min-height":"min-h","accent-color":"accent","line-height":"leading","font-family":"font",outline:"outline"}[e]||e.replace(/-/g,"-"),i=function(e){return(e=(e=(e=e.replace(/^#/,"")).replace(/[^a-zA-Z0-9]/g,"-")).replace(/^-+|-+$/g,"").replace(/-+/g,"-")).toLowerCase()}(t);return r="display"===e&&"flex"===t?"flex":"display"===e&&"grid"===t?"grid":"display"===e&&"block"===t?"display-block":"display"===e&&"none"===t?"display-none":"justify-content"===e&&"center"===t&&"justify"===o?"justify-center":"align-items"===e&&"center"===t&&"items"===o?"items-center":"font-weight"===e&&"bold"===t?"font-bold":"text-align"===e&&"center"===t?"text-center":"flex-direction"===e&&"column"===t?"flex-col":"flex-direction"===e&&"row"===t?"flex-row":"cursor"===e&&"pointer"===t?"cursor-pointer":"text-decoration"===e&&"line-through"===t?"line-through":`${o}-${i}`,ce.set(n,r),r}(e,t);return de.set(n,{property:e,value:t}),this.classDefinitions.push({className:n,property:e,value:t}),ae(n,e,t),this.classNames.includes(n)||this.classNames.push(n),this}add(e,t){return this.addClass(e,t)}bg(e){return this.addClass("background-color",e)}color(e){return this.addClass("color",e)}fontSize(e){return this.addClass("font-size",e)}display(e){return this.addClass("display",e)}flex(e){return void 0!==e?this.addClass("flex",e):this.addClass("display","flex")}center(){return this.addClass("justify-content","center"),this.addClass("align-items","center")}bold(){return this.addClass("font-weight","bold")}padding(e){return this.addClass("padding",e)}margin(e){return this.addClass("margin",e)}width(e){return this.addClass("width",e)}height(e){return this.addClass("height",e)}border(e){return this.addClass("border",e)}borderRadius(e){return this.addClass("border-radius",e)}textAlign(e){return this.addClass("text-align",e)}gap(e){return this.addClass("gap",e)}flexDirection(e){return this.addClass("flex-direction",e)}grid(){return this.addClass("display","grid")}position(e){return this.addClass("position",e)}opacity(e){return this.addClass("opacity",e)}cursor(e){return this.addClass("cursor",e)}boxShadow(e){return this.addClass("box-shadow",e)}transition(e){return this.addClass("transition",e)}textDecoration(e){return this.addClass("text-decoration",e)}letterSpacing(e){return this.addClass("letter-spacing",e)}fontWeight(e){return this.addClass("font-weight",e)}alignItems(e){return this.addClass("align-items",e)}justifyContent(e){return this.addClass("justify-content",e)}minWidth(e){return this.addClass("min-width",e)}maxWidth(e){return this.addClass("max-width",e)}minHeight(e){return this.addClass("min-height",e)}accentColor(e){return this.addClass("accent-color",e)}lineHeight(e){return this.addClass("line-height",e)}fontFamily(e){return this.addClass("font-family",e)}outline(e){return this.addClass("outline",e)}}const de=new Map;function fe(e){return function(t,n){let r,o;if(void 0!==n?(r=t,o=n):t instanceof ue?(r=t,o=void 0):(r=void 0,o=t),!(r||o&&0!==Object.keys(o).length))return"";const i=[];if(r){const e=r.getClassDefinitions();for(const{className:t,property:n,value:r}of e)ae(t,n,r),i.push(t)}if(o&&Object.keys(o).length>0){const t=Object.entries(e);for(const[e,n]of t){const t=o[e];if(t){const r=t.getClassDefinitions();for(const{className:t,property:o,value:s}of r){const r=`${e}-${t}`;le(r,o,s,n),i.push(r)}}}}return{className:i.join(" ")}}}function pe(e,t){let n=document.querySelector("#nuclo-styles");n||(n=document.createElement("style"),n.id="nuclo-styles",document.head.appendChild(n));const r=Object.entries(t).map(([e,t])=>`${e}: ${t}`).join("; ");n.sheet?.insertRule(`.${e} { ${r} }`,n.sheet.cssRules.length)}function he(e){return(new ue).bg(e)}function me(e){return(new ue).color(e)}function ge(e){return(new ue).fontSize(e)}function ye(e){return(new ue).flex(e)}function xe(){return(new ue).center()}function be(){return(new ue).bold()}function Ce(e){return(new ue).padding(e)}function we(e){return(new ue).margin(e)}function ve(e){return(new ue).width(e)}function Se(e){return(new ue).height(e)}function Ee(e){return(new ue).border(e)}function Ne(e){return(new ue).borderRadius(e)}function Me(e){return(new ue).textAlign(e)}function $e(e){return(new ue).gap(e)}function ke(e){return(new ue).flexDirection(e)}function Re(){return(new ue).grid()}function Te(e){return(new ue).position(e)}function Fe(e){return(new ue).opacity(e)}function je(e){return(new ue).cursor(e)}function Ie(){if(P(),"undefined"!=typeof globalThis){const e=globalThis;e.list=Z,e.update=oe,e.when=te,e.on=ie,e.render=se,e.createCSSClass=pe,e.createBreakpoints=fe,e.bg=he,e.color=me,e.fontSize=ge,e.flex=ye,e.center=xe,e.bold=be,e.padding=Ce,e.margin=we,e.width=ve,e.height=Se,e.border=Ee,e.borderRadius=Ne,e.textAlign=Me,e.gap=$e,e.flexDirection=ke,e.grid=Re,e.position=Te,e.opacity=Fe,e.cursor=je}}"undefined"!=typeof globalThis&&Ie(),exports.HTML_TAGS=G,exports.SELF_CLOSING_TAGS=["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"],exports.SVG_TAGS=z,exports.appendChildren=function(e,...t){return e?(t.forEach(t=>{if(null!=t){let n;if("string"==typeof t){const e=function(e){if(!a)return null;try{return document.createTextNode(String(e))}catch(e){return s("Failed to create text node",e),null}}(t);if(!e)return;n=e}else n=t;!function(e,t){if(!e||!t)return!1;try{return e.appendChild(t),!0}catch(e){return s("Failed to append child node",e),!1}}(e,n)}}),e):e},exports.applyAttributes=N,exports.applyNodeModifier=R,exports.bg=he,exports.bold=be,exports.border=Ee,exports.borderRadius=Ne,exports.center=xe,exports.color=me,exports.createBreakpoints=fe,exports.createCSSClass=pe,exports.createComment=d,exports.createConditionalComment=f,exports.createElementFactory=B,exports.createElementWithModifiers=A,exports.createTagBuilder=_,exports.cursor=je,exports.flex=ye,exports.flexDirection=ke,exports.fontSize=ge,exports.gap=$e,exports.grid=Re,exports.height=Se,exports.initializeRuntime=Ie,exports.isBoolean=function(e){return"boolean"==typeof e},exports.isBrowser=a,exports.isFunction=o,exports.isNode=t,exports.isObject=n,exports.isPrimitive=e,exports.isTagLike=r,exports.isZeroArityFunction=i,exports.list=Z,exports.margin=we,exports.on=ie,exports.opacity=Fe,exports.padding=Ce,exports.position=Te,exports.registerGlobalTagBuilders=P,exports.render=se,exports.replaceNodeSafely=y,exports.textAlign=Me,exports.update=oe,exports.when=te,exports.width=ve;
|
|
2
2
|
//# sourceMappingURL=nuclo.cjs.map
|