@reactive-web-components/rwc 2.55.0 → 2.55.2

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/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@reactive-web-components/rwc",
3
- "version": "2.55.0",
3
+ "version": "2.55.2",
4
4
  "type": "module",
5
5
  "types": "./shared/index.d.ts",
6
6
  "exports": {
7
7
  ".": {
8
8
  "types": "./shared/index.d.ts",
9
- "import": "./reactive-web-component.DGlwUwL8.js",
10
- "require": "./reactive-web-component.DftPSBwc.umd.cjs"
9
+ "import": "./reactive-web-component.T7i2PANY.js",
10
+ "require": "./reactive-web-component.CYztSrk-.umd.cjs"
11
11
  }
12
12
  },
13
13
  "author": "tamazyanarsen",
@@ -34,6 +34,6 @@
34
34
  "ui",
35
35
  "frontend"
36
36
  ],
37
- "module": "./reactive-web-component.DGlwUwL8.js",
38
- "main": "./reactive-web-component.DftPSBwc.umd.cjs"
37
+ "module": "./reactive-web-component.T7i2PANY.js",
38
+ "main": "./reactive-web-component.CYztSrk-.umd.cjs"
39
39
  }
@@ -0,0 +1,2 @@
1
+ (function(o,y){typeof exports=="object"&&typeof module<"u"?y(exports):typeof define=="function"&&define.amd?define(["exports"],y):(o=typeof globalThis<"u"?globalThis:o||self,y(o.ReactiveComponent={}))})(this,function(o){"use strict";var Ze=Object.defineProperty;var Qe=(o,y,A)=>y in o?Ze(o,y,{enumerable:!0,configurable:!0,writable:!0,value:A}):o[y]=A;var d=(o,y,A)=>Qe(o,typeof y!="symbol"?y+"":y,A);const y=t=>t&&typeof t=="object"&&("classList"in t||"attributes"in t||"customAttributes"in t||"reactiveClassList"in t||"listeners"in t||"customListeners"in t||"children"in t||"effects"in t||"style"in t||Object.keys(t).some(e=>e.startsWith(".")||e.startsWith("@")||e.startsWith("$")))&&!("hostElement"in t),A=t=>t&&typeof t=="object"&&"hostElement"in t&&"append"in t&&"set"in t&&"addStyle"in t&&"setAttribute"in t&&"addClass"in t&&"addEffect"in t&&"addReactiveContent"in t&&"setReactiveContent"in t&&"clear"in t,F=(t,e,...s)=>{e&&e.apply(t,s)};let W=!0;const m=(...t)=>{W&&console.debug(["[rwc]",...t].join(" | "),...Array.from(t.join("").matchAll(/%c/gm)).map((e,s)=>s%2===0?"color:red":"color:inherit"))},$=t=>t.replace(/([A-Z])/gm,e=>`-${e.toLowerCase()}`),X=t=>t.replace(/-(\w)/gm,(e,s)=>s.toUpperCase()),L=(t,...e)=>{if(!W)return;const s={r:"color: #ff0000",g:"color: #00ff00",b:"color: #0000ff",y:"color: #ffff00",p:"color: #800080",c:"color: #00ffff",o:"color: #ffa500",w:"color: #808080"},n=t.match(/@[rgbpycow]/g)||[],r=n.map(c=>{const l=c.slice(1);return s[l]||"color: inherit"});let i=t;n.forEach(c=>{const l=new RegExp(`\\${c}([^\\s,]+)`,"g");i=i.replace(l,"%c$1")}),console.log(i,...r,...e)},Et=()=>{W=!0},Z=()=>{W=!1};Z();const O=[];let D=!1;const yt=t=>{D=t},z=new Map,R=new WeakMap,_=[],I=[];function v(t,e){const s=new Set;let n=(e==null?void 0:e.signalCompareFn)||(()=>!0);function r(){var c;const i=_[_.length-1];if(i&&!("fake"in i&&i.fake)){const l=R.get(i),u=l==null?void 0:l.parent;if(u){const h=R.get(u);h==null||h.cleanupFns.add(()=>{l==null||l.cleanupFns.forEach(p=>p()),l==null||l.cleanupFns.clear(),s.delete(i)})}"selfCleanup"in i||(i.selfCleanup=[]),i.selfCleanup.push(()=>{s.delete(i)}),s.add(i),D&&((c=z.get(i.effectId))==null||c.signals.push(r))}return t}return r.signalId=`${(e==null?void 0:e.name)||""}_${Math.random().toString(36).substring(2,15)}`,r.getSubscribers=()=>[...s],r.setCompareFn=function(i){return n=i,r},r.clearSubscribers=function(){s.clear()},r.peek=function(){return Object.freeze(t)},r.initValue=Object.freeze(t),r.forceSet=function(i){t=i,s.forEach(c=>{Promise.resolve(c).then(l=>{const u=R.get(l);u&&u.cleanupFns.size>0&&(u.cleanupFns.forEach(h=>h()),u.cleanupFns.clear()),I.push(l),l(),I.pop()})})},r.set=function(i,c=n){t!==i&&c(t,i)&&r.forceSet(i)},r.update=function(i){r.set(i(t))},r.pipe=(i,c)=>{const l=v(null);return b(()=>{const u=r();b(()=>{const h=i(u);h instanceof Promise?h.then(p=>l.set(p)):w(h)?b(()=>l.set(h())):l.set(h)},c)}),l},r}function b(t,e){var i;const s=`${(e==null?void 0:e.name)||""}_${Math.random().toString(36).substring(2,15)}`;m("current effect",`%c${s}%c`),t.effectId=s;const n=I[I.length-1];D&&z.set(s,{signals:[],parent:(n==null?void 0:n.effectId)||null}),R.has(t)||R.set(t,{cleanupFns:new Set,children:new Set});const r=R.get(t);if(n){r.parent=n;const c=R.get(n);c==null||c.children.add(t)}else delete r.parent;I.push(t),_.push(t),t(),(i=O[O.length-1])==null||i.call(O,t),_.pop(),I.pop()}const w=t=>!!t&&["object","function"].includes(typeof t)&&"set"in t&&"update"in t&&"forceSet"in t;function St(t,...e){const s=v("");return b(()=>{const n=e.map(i=>w(i)?String(i()):String(i)),r=[t[0]];n.forEach((i,c)=>{r.push(i,t[c+1])}),s.set(r.join(""))}),s}function wt(t,e){const s=v(e??null),n=r=>s.set(r);return t instanceof Promise?t.then(n):typeof t=="function"&&b(()=>{const r=t();r instanceof Promise?r.then(n):w(r)?b(()=>n(r())):n(r)}),s}function vt(t,e){let s=t(),n=e();b(()=>{const r=t(),i=e();r!==i&&(r!==s?e.set(r):i!==n&&t.set(i)),s=r,n=i})}function gt(...t){let e=t.map(n=>n());const s=v(e);return t.forEach((n,r)=>{b(()=>{const i=()=>e.filter(c=>c!==void 0).length;i()===t.length&&(e=Array.from(e).fill(void 0)),e[r]=n(),i()===t.length&&s.set([...e])})}),s}const At=(...t)=>{const e=v([]);return b(()=>{e.set(t.map(s=>s()))}),e};class T extends HTMLElement{constructor(s=!1){super();d(this,"isSlotLazyLoading",!1);d(this,"slotTemplate");d(this,"slotContext");d(this,"rootStyle");d(this,"modelValue");d(this,"providers");d(this,"appendAllSlotContent");d(this,"allSlotContent",[]);d(this,"slotContent",{});d(this,"htmlSlotContent",{});d(this,"shadow");d(this,"injects",{});this.shadow=this.attachShadow({mode:s?"closed":"open"})}appendChild(s,n=!0){var r;if(this.isSlotLazyLoading&&n){if(s instanceof HTMLElement){const i=s.slot||"default";this.htmlSlotContent[i]||(this.htmlSlotContent[i]=[]),(r=this.htmlSlotContent[i])==null||r.push(s)}}else return super.appendChild(s)}appendSlotContent(){var s;(s=this.appendAllSlotContent)==null||s.call(this)}inject(s){return m("%cinject%c",s),this.injects[s]||(this.injects[s]=v(null)),this.injects[s]}checkInjects(){Object.entries(this.injects).forEach(([s,n])=>{m("%cinject%c",`%c${s}%c`,"from BaseElement (dispatch event)"),this.shadow.dispatchEvent(new CustomEvent(s,{detail:{context:s,callback:r=>b(()=>{n.set(r())})},bubbles:!0,composed:!0}))})}setReactiveValue(s){this.modelValue=s}}d(T,"observedAttributes",[]),d(T,"renderTagName",""),d(T,"styles");const Lt=t=>"render"in t&&"setReactiveValue"in t,Rt="handleSlotContext",Q="onConnected",Y=t=>typeof t=="string"?t:JSON.stringify(t),Tt=t=>{const e=document.createElement("span");return e.textContent=Y(t),e},K=(t,e)=>(t.appendChild(Tt(e)),t),jt=(t,e)=>(t.innerHTML="",K(t,e)),x=t=>{const e=document.createElement("span");return b(()=>{const s=t();e.textContent=Y(s)}),e};class tt{constructor(e){d(this,"wrapper");d(this,"hostElement");d(this,"append",(...e)=>(e.forEach(s=>{this.wrapper.appendChild(s.hostElement),Q in s.hostElement&&setTimeout(()=>{var n,r;(r=(n=s.hostElement).onConnected)==null||r.call(n,s,s.hostElement)})}),this));d(this,"set",(...e)=>{this.clear();const s=document.createDocumentFragment();return e.forEach(n=>{s.appendChild(n.hostElement)}),this.wrapper.appendChild(s),this});d(this,"removeChild",(...e)=>(e.forEach(s=>{Array.from(this.wrapper.childNodes.values()).some(n=>n===s.hostElement)&&this.wrapper.removeChild(s.hostElement)}),this));d(this,"addHtmlContent",e=>(K(this.wrapper,e),this));d(this,"setHtmlContent",e=>(jt(this.wrapper,e),this));d(this,"setAttribute",(e,s)=>{let n;if(typeof s=="boolean"&&!(this.wrapper instanceof T))if(s)n="";else{this.removeAttribute(e);const r=e.toLowerCase();return r in this.wrapper&&(this.wrapper[r]=null),this}else typeof s!="string"?n=JSON.stringify(s):n=s;if(this.wrapper.setAttribute($(e),n),!(this.wrapper instanceof T)){const r=e.toLowerCase();r in this.wrapper&&(this.wrapper[r]=s)}return this});d(this,"setCustomAttribute",(e,s)=>{let n;return typeof s!="string"?n=JSON.stringify(s):n=s,this.wrapper.setAttribute($(e),n),this});d(this,"setReactiveAttribute",(e,s)=>(b(()=>this.setAttribute(e,s())),this));d(this,"setReactiveCustomAttribute",(e,s)=>(b(()=>this.setCustomAttribute(e,s())),this));d(this,"removeAttribute",e=>(this.wrapper.removeAttribute($(e)),this));d(this,"addStyle",e=>(Object.entries(e).forEach(([s,n])=>{const r=s.startsWith("--");typeof n=="function"?this.addEffect(()=>{if(r){const i=String(n()||"");this.wrapper.style.setProperty(s,i)}else this.wrapper.style[s]=n()}):typeof n=="string"&&(r?this.wrapper.style.setProperty(s,n):this.wrapper.style[s]=n)}),this));d(this,"onConnected",e=>(Reflect.defineProperty(this.wrapper,Q,{get(){return e}}),this));d(this,"addClass",(...e)=>(e.forEach(s=>{typeof s=="string"?this.wrapper.classList.add(...s.split(" ").flatMap(n=>n.split(`
2
+ `)).map(n=>n.trim()).filter(Boolean)):(()=>{let n=null;this.addEffect(()=>{const r=s();r.length>0&&(n?this.replaceClass(n,r):this.addClass(r),n=r)})})()}),this));d(this,"setClass",(...e)=>(this.wrapper.classList.remove(...this.wrapper.classList),this.wrapper.classList.add(...e),this));d(this,"addReactiveClass",e=>(Object.keys(e).forEach(s=>{b(()=>{e[s]()?this.addClass(s):this.removeClass(s)})}),this));d(this,"removeClass",(...e)=>(this.wrapper.classList.remove(...e),this));d(this,"replaceClass",(e,s)=>(this.wrapper.classList.replace(e,s),this));d(this,"addEffect",e=>(b(()=>e(this,this.hostElement)),this));d(this,"addReactiveContent",e=>(this.wrapper.appendChild(x(e)),this));d(this,"setReactiveContent",e=>(this.clear(),this.wrapper.appendChild(x(e)),this));d(this,"clear",()=>(this.wrapper.innerHTML="",this));this.wrapper=e,this.hostElement=e}addEventlistener(e,s,n=!1){return this.wrapper.addEventListener(e,r=>s(r,this,this.wrapper),n),this}}class Ot extends tt{constructor(){super(...arguments);d(this,"setReactiveValue",s=>(this.wrapper instanceof T&&this.wrapper.setReactiveValue(s),this));d(this,"setSlotTemplate",s=>{const n=this.wrapper.slotTemplate;return n&&Object.entries(s).forEach(([r,i])=>{n[r]=i}),this})}}const It=()=>()=>{},et=t=>new Ot(t),st=t=>new tt(t),nt=(t,...e)=>({classList:[...t.map(s=>s.trim()).filter(Boolean),...e]}),Mt=(t,...e)=>nt(t,...e),G=(t,e)=>{if(!e)return t;const s=Object.keys(e||{}).filter(n=>n.startsWith(".")||n.startsWith("@")||n.startsWith("$"));return s.filter(n=>n.startsWith(".")).forEach(n=>{e!=null&&e.attributes||(e.attributes={}),e.attributes[n.slice(1)]=e[n]}),s.filter(n=>n.startsWith("@")).forEach(n=>{e!=null&&e.listeners||(e.listeners={});const r=n.slice(1);e.listeners[r]=e[n]}),s.filter(n=>n.startsWith("$")).forEach(n=>{e!=null&&e.effects||(e.effects=[]),e.effects.push(e[n])}),at(t,e.classList),ct(t,e.style),ht(t,e.attributes),lt(t,e.reactiveClassList),it(t,e.customAttributes),rt(t,e.children),ot(t,e.effects),N(t,e.listeners),N(t,e.customListeners),t},N=(t,e)=>{e&&Object.entries(e).forEach(([s,n])=>{typeof n=="function"&&t.addEventlistener(s,n)})},ot=(t,e)=>e==null?void 0:e.forEach(s=>t.addEffect(s)),rt=(t,e)=>k(t,...e||[]),it=(t,e)=>{const s=e;s&&Object.keys(s).forEach(n=>{w(s[n])?t.setReactiveCustomAttribute(n,s[n]):typeof s[n]=="function"?t.addEffect(()=>{t.setCustomAttribute(n,s[n]())}):t.setCustomAttribute(n,s[n])})},at=(t,e)=>t.addClass(...e||[]),lt=(t,e)=>t.addReactiveClass(e||{}),ct=(t,e)=>t.addStyle(e||{}),ht=(t,e)=>{const s=e,n=(r,i)=>{i&&(w(i)?t.setReactiveAttribute(r,i):typeof i=="function"?t.addEffect(()=>{t.setAttribute(r,i())}):t.setAttribute(r,i))};s&&Object.keys(s).forEach(r=>{n(r,s[r])})},k=(t,...e)=>(e.forEach(s=>{typeof s=="string"?s.trim().length>0&&t.addHtmlContent(s):w(s)?t.addReactiveContent(s):t.append(s)}),t),M=(t,e)=>{const s=document.createElement(t),n=st(s);return G(n,e)},B=(t,e)=>{const[s,...n]=t.split(" ").map(i=>i.trim()),r=M(s,e);return n.length>0&&r.addClass(...n),(...i)=>k(r,...i.filter(Boolean).flat().flatMap(c=>typeof c=="function"&&!w(c)?g(()=>c(r)):c))},g=t=>M("div").addStyle({display:"contents"}).addEffect(e=>{const s=t(),n=[];Array.isArray(s)?n.push(...s):n.push(s),e.clear(),k(e,...n)}),$t=(t,e,s)=>{const n=M("div").addStyle({display:"contents"}),r=new Map,i=new Map;let c=[];const l=new Set;let u=t.peek();const h=p=>{l.delete(p),r.delete(p),i.delete(p)};return b(()=>{const p=t();c=p.map(e).map(f=>typeof f=="string"?f:f.toString());const S=Array.from(n.hostElement.children);m("containerChildren",S,c),S.forEach(f=>{const E=f.dataset.key;c.includes(E)||(m("remove element",E,f),f.remove(),h(E))}),c.forEach(f=>{var P,j;const E=p[c.indexOf(f)];r.has(f)?JSON.stringify(E)!==JSON.stringify(u[c.indexOf(f)])&&((P=n.hostElement.querySelector(`[data-key="${f}"]`))==null||P.remove(),(j=r.get(f))==null||j.set(Math.random().toString(36).substring(2,15)),i.set(f,()=>s(E,c.indexOf(f),p).setCustomAttribute("data-key",f))):(m("create new element",f,E),r.set(f,v(Math.random().toString(36).substring(2,15))),i.set(f,()=>s(E,c.indexOf(f),p).setCustomAttribute("data-key",f)))}),u=[...p.map(f=>({...f}))];const C=()=>{r.forEach((f,E)=>{m("key from setTimeout foreach currItemSignalMap",E),l.has(E)||(l.add(E),b(()=>{var bt;f();const P=c.indexOf(E),j=(bt=i.get(E))==null?void 0:bt();j&&(m("call effect from setTimeout",E,j.hostElement),P<=n.hostElement.children.length-1?n.hostElement.insertBefore(j.hostElement,n.hostElement.children[P]):n.hostElement.append(j.hostElement))}))})};Promise.resolve().then(()=>C())}),n},kt=t=>{let e=[M("div")],s=!1;return b(()=>{var i,c;const n=t();s=Array.isArray(n);const r=[];r.push(...[n].flat()),r.length===0&&r.push(M("div").addStyle({display:"none"}).setAttribute("id","empty_template"));try{m("newReactiveComponent.map",r.map(l=>{var u;return m("newReactiveComponent hostElement",l.hostElement),(u=l.hostElement)==null?void 0:u.id})),m("currComponent[0].hostElement?.id",(i=e[0].hostElement)==null?void 0:i.id,e),(c=e[0].hostElement)==null||c.replaceWith(...r.map(l=>l.hostElement)),e.slice(1).forEach(l=>{var u;return(u=l.hostElement)==null?void 0:u.remove()}),e=r}catch(l){console.error(l)}}),s?e:e[0]},Ht=t=>Rt in t,Pt=t=>{const e=B("div")().addStyle({display:"contents"}),s=n=>(e.hostElement.innerHTML=n,e);return typeof t=="string"?s(t):e.addEffect(()=>{s(t())}),e},V=(t,e,s)=>t?g(e):s?g(s):B("div")().setAttribute("id","empty_div_renderIf").addStyle({display:"none"}),dt=(t,e,s)=>g(()=>V(!!t(),e,s)),Ft=(t,e,s)=>typeof t=="boolean"?V(t,e,s):dt(t,e,s),U=(t,e)=>{const s=g(e);return typeof t=="boolean"?[s].flat().forEach(n=>n.hostElement.style.display=t?"block":"none"):b(()=>{const n=t()?"block":"none";[s].flat().forEach(r=>r.hostElement.style.display=n)}),s},Wt=(t,e,s)=>{const n=[U(t,e)].flat();return s&&n.push(...[U(()=>typeof t=="boolean"?!t:!t(),s)].flat()),g(()=>n)},ft=(t,e)=>{m("createCustomElement",t);const s=document.createElement(t),n=et(s);return G(n,e)},ut=(t,e)=>{const s=t.split(" ").slice(1).map(r=>r.trim()),n=ft(t.split(" ")[0],e);return Array.isArray(s)&&s.length>0&&n.addClass(...s),(...r)=>{L("@rcreateCustomEl content",t,r);const i=r.filter(Boolean).flat().flatMap(c=>typeof c=="function"&&!w(c)?g(()=>c(n)):c);return n.hostElement.allSlotContent=i,n.hostElement.slotContent=i.filter(A).reduce((c,l)=>{const u=l.hostElement.getAttribute("slot")||"default";return c[u]||(c[u]=[]),c[u].push(l),c},{}),n.hostElement.appendAllSlotContent=()=>k(n,...i),n}},pt=(t,e,s)=>ut(`${t.renderTagName}${e&&typeof e=="string"?" "+e:""}`,y(e)?e:e&&typeof e=="string"?s:void 0),_t=()=>{const t=()=>{};return t.oldValue=null,t},Bt=()=>({}),Jt=(t,e,s)=>{const n=e?Ct(e,s)(t):t;return(r,...i)=>{const c=[...i];return r&&!y(r)&&c.unshift(r),pt(n,y(r)?r:{})(...c)}},a={};["div","span","section","input","button","table","tr","td","th","ul","li","ol","form","label","select","option","textarea","img","a","p","h1","h2","h3","h4","h5","h6","br","hr","pre","code","nav","header","footer","main","aside","article","figure","figcaption","blockquote","cite","small","strong","em","b","i","u","s","sub","sup","mark","del","ins","details","summary","progress","meter","audio","video","canvas","slot"].forEach(t=>{a[t]=(e,...s)=>{let n=[...s];return e&&!y(e)&&(n=[e].concat(n)),B(t,y(e)?e:{})(...n)}});const mt=a.div,qt=a.span,Dt=a.section,zt=a.input,Gt=a.button,Nt=a.table,Vt=a.tr,Ut=a.td,Xt=a.th,Zt=a.ul,Qt=a.li,Yt=a.ol,Kt=a.form,xt=a.label,te=a.select,ee=a.option,se=a.textarea,ne=a.img,oe=a.a,re=a.p,ie=a.h1,ae=a.h2,le=a.h3,ce=a.h4,he=a.h5,de=a.h6,fe=a.br,ue=a.hr,pe=a.pre,me=a.code,Ce=a.nav,be=a.header,Ee=a.footer,ye=a.main,Se=a.aside,we=a.article,ve=a.figure,ge=a.figcaption,Ae=a.blockquote,Le=a.cite,Re=a.small,Te=a.strong,je=a.em,Oe=a.b,Ie=a.i,Me=a.u,$e=a.s,ke=a.sub,He=a.sup,Pe=a.mark,Fe=a.del,We=a.ins,_e=a.details,Be=a.summary,Je=a.progress,qe=a.meter,De=a.audio,ze=a.video,Ge=a.canvas,Ne=a.slot,Ve=t=>e=>t(e).addClass(...e.classList??[]).addReactiveClass(e.reactiveClassList??{}),J="eventProps",q="EVENT_CONFIG",H="observedAttributes",Ue=()=>(t,e)=>{Reflect.get(t,H)||Reflect.defineProperty(t,H,{value:[]}),Reflect.get(t,H).push($(e))},Xe=t=>(e,s)=>{Reflect.get(e,J)||Reflect.defineProperty(e,J,{value:[]}),Reflect.get(e,q)||Reflect.defineProperty(e,q,{value:{}}),Reflect.get(e,q)[s]={bubbles:(t==null?void 0:t.bubbles)??!1,composed:(t==null?void 0:t.composed)??!1},Reflect.get(e,J).push(s)},Ct=(t,e=!1)=>s=>{m(t,"start register static attr",s.prototype[H]);const n=[];if(s.styles){const i=s.styles,c=[];Array.isArray(i)?c.push(...i):c.push(i),c.forEach(l=>{const u=new CSSStyleSheet;u.replaceSync(l),n.push(u);const h=new CSSStyleSheet;h.replaceSync(l.slice(l.indexOf("@property"))),document.adoptedStyleSheets.push(h)})}class r extends s{constructor(...l){m("constructor",`%c${t}%c`);super(e,...l);d(this,"effectCleanupHandleEvent",l=>{this.effects.add(l)});d(this,"effects",new Set);L("@osheet",n),n.length>0&&this.shadow.adoptedStyleSheets.push(...n)}render(){m("rwc: render from new class");let l=mt();const u=()=>{m("wrapperEffectCallback"),l=s.prototype.render.call(this)};return u.fake=!0,b(u),l}attributeChangedCallback(l,u,h){m("%cAttribute has changed.%c",`%c${l}%c`,`oldValue: ${u}, newValue: ${h}`,`%c${t}%c`);try{h=JSON.parse(h)}catch{}const p=X(l);if(p in this&&w(this[p])){const S=this[p];h===null?(S.set(S.initValue),this.removeAttribute(l)):S.set(h)}F(this,s.prototype.attributeChangedCallback,l,u,h)}connectedCallback(){var u;m("rwc: connectedCallback"),m("connectedCallback",`%c${t}%c`,this),this.providers&&Object.keys(this.providers).length>0&&(m("WRAPPER for providers",t),Object.entries(this.providers).forEach(([h,p])=>{m("register provider",h,p()),this.addEventListener(h,S=>{var f;m("send provider",h,p());const C=S;((f=C.detail)==null?void 0:f.context)===h&&(C.stopPropagation(),C.detail.callback(p))})})),this.checkInjects(),(u=s.prototype[J])==null||u.forEach(h=>{this[h]=p=>{const S=s.prototype[q][h],{bubbles:C,composed:f}=S;w(p)?b(()=>{L("@oemit reactive value",p()),this.dispatchEvent(new CustomEvent(h,{detail:p(),bubbles:C,composed:f}))}):(L("@oemit value",p),this.dispatchEvent(new CustomEvent(h,{detail:p,bubbles:C,composed:f})))}}),m("start render",`%c${t}%c`,t);const l=()=>{m("rwc: insertRenderTemplate"),O.push(this.effectCleanupHandleEvent);const h=this.render();this.shadow.appendChild(h.hostElement),F(this,s.prototype.connectedCallback),this.appendSlotContent(),O.pop()};if(this.rootStyle&&!s.styles){const h=C=>C instanceof Promise||Array.isArray(C)&&C.every(f=>f instanceof Promise),p=this.rootStyle,S=C=>{const f=new CSSStyleSheet;f.replaceSync(C),this.shadow.adoptedStyleSheets.push(f);const E=new CSSStyleSheet;E.replaceSync(C.slice(C.indexOf("@property"))),document.adoptedStyleSheets.push(E)};if(h(p)){const C=[];Array.isArray(p)?C.push(...p):C.push(p),Promise.all(C).then(f=>f.forEach(E=>S(E.default))).then(()=>l())}else{const C=[];Array.isArray(p)?C.push(...p):C.push(p),C.forEach(f=>S(f)),l()}}else l();this.slotContext&&Object.keys(this.slotContext).length>0&&this.shadow.querySelectorAll("slot").forEach(h=>{m(this.slotContext,this.slotContext&&this.slotContext[h.name]),L("@bslot element",h,`name:${h.name};`,h.assignedElements()),h.assignedElements().forEach(p=>{const S=this.slotContext[h.name];this.slotContext&&w(S)&&(L("@oslot element",h,`name:${h.name};`,h.assignedElements()),b(()=>{p.dispatchEvent(new CustomEvent("handleSlotContext",{detail:S()}))}))})})}disconnectedCallback(){this.shadow.replaceChildren(),this.replaceChildren(),F(this,s.prototype.disconnectedCallback),this.effects.forEach(l=>{var u;(u=l.selfCleanup)==null||u.forEach(h=>h())}),this.effects.clear()}}return d(r,"observedAttributes",s.prototype[H]??[]),d(r,"renderTagName",t),r.toString=()=>t,customElements.get(t)?console.error(`название тега ${t} повторяется, компонент ${s.name} не зарегистрирован`):customElements.define(t,r),s.renderTagName=t,s};o.BaseElement=T,o.a=oe,o.addAttributeList=ht,o.addClassList=at,o.addCustomAttributes=it,o.addReactiveClassList=lt,o.addStyleList=ct,o.appendContentItem=k,o.article=we,o.aside=Se,o.audio=De,o.b=Oe,o.bindReactiveSignals=vt,o.blockquote=Ae,o.br=fe,o.button=Gt,o.camelToKebab=$,o.canvas=Ge,o.checkCall=F,o.cite=Le,o.classList=nt,o.cls=Mt,o.code=me,o.colorLog=L,o.combineLatest=At,o.component=Ct,o.createComponent=Ve,o.createCustom=pt,o.createCustomEl=ut,o.createCustomElement=ft,o.createEl=B,o.createElement=M,o.createSignal=wt,o.customElementHelpers=et,o.defineSlotTemplate=Bt,o.del=Fe,o.details=_e,o.disableLogs=Z,o.div=mt,o.effect=b,o.effectMap=z,o.elementHelpers=st,o.em=je,o.enableLogs=Et,o.event=Xe,o.eventEmitter=It,o.figcaption=ge,o.figure=ve,o.footer=Ee,o.forkJoin=gt,o.form=Kt,o.getList=$t,o.getSignalContent=g,o.h1=ie,o.h2=ae,o.h3=le,o.h4=ce,o.h5=he,o.h6=de,o.header=be,o.hr=ue,o.i=Ie,o.img=ne,o.initComponent=G,o.input=zt,o.ins=We,o.isBaseElement=Lt,o.isComponentConfig=A,o.isComponentInitConfig=y,o.isReactiveSignal=w,o.isSlotTemplate=Ht,o.kebabToCamel=X,o.label=xt,o.li=Qt,o.main=ye,o.mark=Pe,o.meter=qe,o.nav=Ce,o.newEventEmitter=_t,o.ol=Yt,o.option=ee,o.p=re,o.pre=pe,o.progress=Je,o.projectLog=m,o.property=Ue,o.renderIf=V,o.rs=St,o.rxRenderIf=dt,o.s=$e,o.section=Dt,o.select=te,o.setChildren=rt,o.setEffectDebugEnabled=yt,o.setEffects=ot,o.setListeners=N,o.show=Wt,o.showIf=U,o.signal=v,o.signalComponent=kt,o.slot=Ne,o.small=Re,o.span=qt,o.strong=Te,o.sub=ke,o.summary=Be,o.sup=He,o.table=Nt,o.td=Ut,o.textarea=se,o.th=Xt,o.tr=Vt,o.u=Me,o.ul=Zt,o.unsafeHtml=Pt,o.useCustomComponent=Jt,o.video=ze,o.when=Ft,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
@@ -1,7 +1,7 @@
1
1
  var Y = Object.defineProperty;
2
2
  var K = (t, e, s) => e in t ? Y(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s;
3
3
  var h = (t, e, s) => K(t, typeof e != "symbol" ? e + "" : e, s);
4
- const x = (t) => t && typeof t == "object" && ("classList" in t || "attributes" in t || "customAttributes" in t || "reactiveClassList" in t || "listeners" in t || "customListeners" in t || "children" in t || "effects" in t || "style" in t || Object.keys(t).some(
4
+ const T = (t) => t && typeof t == "object" && ("classList" in t || "attributes" in t || "customAttributes" in t || "reactiveClassList" in t || "listeners" in t || "customListeners" in t || "children" in t || "effects" in t || "style" in t || Object.keys(t).some(
5
5
  (e) => e.startsWith(".") || e.startsWith("@") || e.startsWith("$")
6
6
  )) && !("hostElement" in t), tt = (t) => t && typeof t == "object" && "hostElement" in t && "append" in t && "set" in t && "addStyle" in t && "setAttribute" in t && "addClass" in t && "addEffect" in t && "addReactiveContent" in t && "setReactiveContent" in t && "clear" in t, W = (t, e, ...s) => {
7
7
  e && e.apply(t, s);
@@ -12,7 +12,7 @@ const u = (...t) => {
12
12
  ["[rwc]", ...t].join(" | "),
13
13
  ...Array.from(t.join("").matchAll(/%c/gm)).map((e, s) => s % 2 === 0 ? "color:red" : "color:inherit")
14
14
  );
15
- }, M = (t) => t.replace(/([A-Z])/gm, (e) => `-${e.toLowerCase()}`), et = (t) => t.replace(/-(\w)/gm, (e, s) => s.toUpperCase()), A = (t, ...e) => {
15
+ }, M = (t) => t.replace(/([A-Z])/gm, (e) => `-${e.toLowerCase()}`), et = (t) => t.replace(/-(\w)/gm, (e, s) => s.toUpperCase()), g = (t, ...e) => {
16
16
  if (!H) return;
17
17
  const s = {
18
18
  r: "color: #ff0000",
@@ -46,28 +46,28 @@ const u = (...t) => {
46
46
  H = !1;
47
47
  };
48
48
  st();
49
- const g = [];
49
+ const L = [];
50
50
  let _ = !1;
51
51
  const Rt = (t) => {
52
52
  _ = t;
53
- }, V = /* @__PURE__ */ new Map(), R = /* @__PURE__ */ new WeakMap(), P = [], L = [];
54
- function v(t, e) {
53
+ }, G = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new WeakMap(), k = [], R = [];
54
+ function A(t, e) {
55
55
  const s = /* @__PURE__ */ new Set();
56
56
  let n = (e == null ? void 0 : e.signalCompareFn) || (() => !0);
57
57
  function r() {
58
58
  var a;
59
- const o = P[P.length - 1];
59
+ const o = k[k.length - 1];
60
60
  if (o && !("fake" in o && o.fake)) {
61
- const l = R.get(o), d = l == null ? void 0 : l.parent;
61
+ const l = w.get(o), d = l == null ? void 0 : l.parent;
62
62
  if (d) {
63
- const c = R.get(d);
63
+ const c = w.get(d);
64
64
  c == null || c.cleanupFns.add(() => {
65
- s.delete(o);
65
+ l == null || l.cleanupFns.forEach((f) => f()), l == null || l.cleanupFns.clear(), s.delete(o);
66
66
  });
67
67
  }
68
68
  "selfCleanup" in o || (o.selfCleanup = []), o.selfCleanup.push(() => {
69
69
  s.delete(o);
70
- }), s.add(o), _ && ((a = V.get(o.effectId)) == null || a.signals.push(r));
70
+ }), s.add(o), _ && ((a = G.get(o.effectId)) == null || a.signals.push(r));
71
71
  }
72
72
  return t;
73
73
  }
@@ -77,11 +77,11 @@ function v(t, e) {
77
77
  s.clear();
78
78
  }, r.peek = function() {
79
79
  return Object.freeze(t);
80
- }, r.initValue = Object.freeze(t), r.oldValue = Object.freeze(t), r.forceSet = function(o) {
81
- r.oldValue = Object.freeze(t), t = o, s.forEach((a) => {
82
- setTimeout(() => {
83
- const l = a, d = R.get(l);
84
- d && d.cleanupFns.size > 0 && (d.cleanupFns.forEach((c) => c()), d.cleanupFns.clear()), L.push(l), l(), L.pop();
80
+ }, r.initValue = Object.freeze(t), r.forceSet = function(o) {
81
+ t = o, s.forEach((a) => {
82
+ Promise.resolve(a).then((l) => {
83
+ const d = w.get(l);
84
+ d && d.cleanupFns.size > 0 && (d.cleanupFns.forEach((c) => c()), d.cleanupFns.clear()), R.push(l), l(), R.pop();
85
85
  });
86
86
  });
87
87
  }, r.set = function(o, a = n) {
@@ -89,7 +89,7 @@ function v(t, e) {
89
89
  }, r.update = function(o) {
90
90
  r.set(o(t));
91
91
  }, r.pipe = (o, a) => {
92
- const l = v(null);
92
+ const l = A(null);
93
93
  return C(() => {
94
94
  const d = r();
95
95
  C(() => {
@@ -100,22 +100,26 @@ function v(t, e) {
100
100
  }, r;
101
101
  }
102
102
  function C(t, e) {
103
- var a;
103
+ var o;
104
104
  const s = `${(e == null ? void 0 : e.name) || ""}_${Math.random().toString(36).substring(2, 15)}`;
105
- u("current effect", `%c${s}%c`);
106
- const n = t;
107
- t = () => (u("current effect callback", `%c${s}%c`), n()), "fake" in n && n.fake && (t.fake = !0), t.effectId = s;
108
- const r = L[L.length - 1];
109
- _ && V.set(s, {
105
+ u("current effect", `%c${s}%c`), t.effectId = s;
106
+ const n = R[R.length - 1];
107
+ _ && G.set(s, {
110
108
  signals: [],
111
- parent: (r == null ? void 0 : r.effectId) || null
112
- }), R.has(t) || R.set(t, { cleanupFns: /* @__PURE__ */ new Set() });
113
- const o = R.get(t);
114
- r ? o.parent = r : delete o.parent, L.push(t), P.push(t), t(), (a = g[g.length - 1]) == null || a.call(g, t), P.pop(), L.pop();
109
+ parent: (n == null ? void 0 : n.effectId) || null
110
+ }), w.has(t) || w.set(t, { cleanupFns: /* @__PURE__ */ new Set(), children: /* @__PURE__ */ new Set() });
111
+ const r = w.get(t);
112
+ if (n) {
113
+ r.parent = n;
114
+ const a = w.get(n);
115
+ a == null || a.children.add(t);
116
+ } else
117
+ delete r.parent;
118
+ R.push(t), k.push(t), t(), (o = L[L.length - 1]) == null || o.call(L, t), k.pop(), R.pop();
115
119
  }
116
- const y = (t) => !!t && ["object", "function"].includes(typeof t) && "set" in t && "oldValue" in t && "update" in t && "forceSet" in t;
120
+ const y = (t) => !!t && ["object", "function"].includes(typeof t) && "set" in t && "update" in t && "forceSet" in t;
117
121
  function Ot(t, ...e) {
118
- const s = v("");
122
+ const s = A("");
119
123
  return C(() => {
120
124
  const n = e.map(
121
125
  (o) => y(o) ? String(o()) : String(o)
@@ -126,22 +130,22 @@ function Ot(t, ...e) {
126
130
  }), s;
127
131
  }
128
132
  function jt(t, e) {
129
- const s = v(e ?? null), n = (r) => s.set(r);
133
+ const s = A(e ?? null), n = (r) => s.set(r);
130
134
  return t instanceof Promise ? t.then(n) : typeof t == "function" && C(() => {
131
135
  const r = t();
132
136
  r instanceof Promise ? r.then(n) : y(r) ? C(() => n(r())) : n(r);
133
137
  }), s;
134
138
  }
135
- function Tt(t, e) {
139
+ function xt(t, e) {
136
140
  let s = t(), n = e();
137
141
  C(() => {
138
142
  const r = t(), o = e();
139
143
  r !== o && (r !== s ? e.set(r) : o !== n && t.set(o)), s = r, n = o;
140
144
  });
141
145
  }
142
- function xt(...t) {
146
+ function Tt(...t) {
143
147
  let e = t.map((n) => n());
144
- const s = v(e);
148
+ const s = A(e);
145
149
  return t.forEach((n, r) => {
146
150
  C(() => {
147
151
  const o = () => e.filter((a) => a !== void 0).length;
@@ -150,7 +154,7 @@ function xt(...t) {
150
154
  }), s;
151
155
  }
152
156
  const $t = (...t) => {
153
- const e = v([]);
157
+ const e = A([]);
154
158
  return C(() => {
155
159
  e.set(t.map((s) => s()));
156
160
  }), e;
@@ -187,7 +191,7 @@ class O extends HTMLElement {
187
191
  (s = this.appendAllSlotContent) == null || s.call(this);
188
192
  }
189
193
  inject(s) {
190
- return u("%cinject%c", s), this.injects[s] || (this.injects[s] = v(null)), this.injects[s];
194
+ return u("%cinject%c", s), this.injects[s] || (this.injects[s] = A(null)), this.injects[s];
191
195
  }
192
196
  checkInjects() {
193
197
  Object.entries(this.injects).forEach(([s, n]) => {
@@ -214,23 +218,22 @@ class O extends HTMLElement {
214
218
  }
215
219
  }
216
220
  h(O, "observedAttributes", []), h(O, "renderTagName", ""), h(O, "styles");
217
- const Mt = (t) => "render" in t && "setReactiveValue" in t, nt = "handleSlotContext", J = "onConnected", G = (t) => typeof t == "string" ? t : JSON.stringify(t), rt = (t) => {
221
+ const Mt = (t) => "render" in t && "setReactiveValue" in t, nt = "handleSlotContext", q = "onConnected", V = (t) => typeof t == "string" ? t : JSON.stringify(t), rt = (t) => {
218
222
  const e = document.createElement("span");
219
- return e.textContent = G(t), e;
220
- }, U = (t, e) => (t.appendChild(rt(e)), t), ot = (t, e) => (t.innerHTML = "", U(t, e)), q = (t) => {
223
+ return e.textContent = V(t), e;
224
+ }, U = (t, e) => (t.appendChild(rt(e)), t), ot = (t, e) => (t.innerHTML = "", U(t, e)), z = (t) => {
221
225
  const e = document.createElement("span");
222
226
  return C(() => {
223
227
  const s = t();
224
- e.textContent = G(s);
228
+ e.textContent = V(s);
225
229
  }), e;
226
230
  };
227
231
  class X {
228
- // private effects: (() => void)[] = [];
229
232
  constructor(e) {
230
233
  h(this, "wrapper");
231
234
  h(this, "hostElement");
232
235
  h(this, "append", (...e) => (e.forEach((s) => {
233
- this.wrapper.appendChild(s.hostElement), J in s.hostElement && setTimeout(() => {
236
+ this.wrapper.appendChild(s.hostElement), q in s.hostElement && setTimeout(() => {
234
237
  var n, r;
235
238
  (r = (n = s.hostElement).onConnected) == null || r.call(
236
239
  n,
@@ -287,7 +290,7 @@ class X {
287
290
  this.wrapper.style[s] = n();
288
291
  }) : typeof n == "string" && (r ? this.wrapper.style.setProperty(s, n) : this.wrapper.style[s] = n);
289
292
  }), this));
290
- h(this, "onConnected", (e) => (Reflect.defineProperty(this.wrapper, J, {
293
+ h(this, "onConnected", (e) => (Reflect.defineProperty(this.wrapper, q, {
291
294
  get() {
292
295
  return e;
293
296
  }
@@ -313,14 +316,11 @@ class X {
313
316
  h(this, "removeClass", (...e) => (this.wrapper.classList.remove(...e), this));
314
317
  h(this, "replaceClass", (e, s) => (this.wrapper.classList.replace(e, s), this));
315
318
  h(this, "addEffect", (e) => (C(() => e(this, this.hostElement)), this));
316
- h(this, "addReactiveContent", (e) => (this.wrapper.appendChild(q(e)), this));
317
- h(this, "setReactiveContent", (e) => (this.clear(), this.wrapper.appendChild(q(e)), this));
319
+ h(this, "addReactiveContent", (e) => (this.wrapper.appendChild(z(e)), this));
320
+ h(this, "setReactiveContent", (e) => (this.clear(), this.wrapper.appendChild(z(e)), this));
318
321
  h(this, "clear", () => (this.wrapper.innerHTML = "", this));
319
322
  this.wrapper = e, this.hostElement = e;
320
323
  }
321
- test() {
322
- console.log("test");
323
- }
324
324
  addEventlistener(e, s, n = !1) {
325
325
  return this.wrapper.addEventListener(e, (r) => s(r, this, this.wrapper), n), this;
326
326
  }
@@ -337,10 +337,10 @@ class it extends X {
337
337
  });
338
338
  }
339
339
  }
340
- const kt = () => () => {
341
- }, at = (t) => new it(t), lt = (t) => new X(t), ct = (t, ...e) => ({
340
+ const It = () => () => {
341
+ }, lt = (t) => new it(t), at = (t) => new X(t), ct = (t, ...e) => ({
342
342
  classList: [...t.map((s) => s.trim()).filter(Boolean), ...e]
343
- }), It = (t, ...e) => ct(t, ...e), Z = (t, e) => {
343
+ }), Pt = (t, ...e) => ct(t, ...e), Z = (t, e) => {
344
344
  if (!e) return t;
345
345
  const s = Object.keys(e || {}).filter(
346
346
  (n) => n.startsWith(".") || n.startsWith("@") || n.startsWith("$")
@@ -377,20 +377,20 @@ const kt = () => () => {
377
377
  }, F = (t, ...e) => (e.forEach((s) => {
378
378
  typeof s == "string" ? s.trim().length > 0 && t.addHtmlContent(s) : y(s) ? t.addReactiveContent(s) : t.append(s);
379
379
  }), t), $ = (t, e) => {
380
- const s = document.createElement(t), n = lt(s);
380
+ const s = document.createElement(t), n = at(s);
381
381
  return Z(n, e);
382
- }, z = (t, e) => {
382
+ }, B = (t, e) => {
383
383
  const [s, ...n] = t.split(" ").map((o) => o.trim()), r = $(s, e);
384
384
  return n.length > 0 && r.addClass(...n), (...o) => F(
385
385
  r,
386
386
  ...o.filter(Boolean).flat().flatMap(
387
- (a) => typeof a == "function" && !y(a) ? w(() => a(r)) : a
387
+ (a) => typeof a == "function" && !y(a) ? v(() => a(r)) : a
388
388
  )
389
389
  );
390
- }, w = (t) => $("div").addStyle({ display: "contents" }).addEffect((e) => {
390
+ }, v = (t) => $("div").addStyle({ display: "contents" }).addEffect((e) => {
391
391
  const s = t(), n = [];
392
392
  Array.isArray(s) ? n.push(...s) : n.push(s), e.clear(), F(e, ...n);
393
- }), Pt = (t, e, s) => {
393
+ }), kt = (t, e, s) => {
394
394
  const n = $("div").addStyle({ display: "contents" }), r = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map();
395
395
  let a = [];
396
396
  const l = /* @__PURE__ */ new Set();
@@ -416,7 +416,7 @@ const kt = () => () => {
416
416
  )
417
417
  )) : (u("create new element", p, b), r.set(
418
418
  p,
419
- v(Math.random().toString(36).substring(2, 15))
419
+ A(Math.random().toString(36).substring(2, 15))
420
420
  ), o.set(
421
421
  p,
422
422
  () => s(b, a.indexOf(p), f).setCustomAttribute(
@@ -428,9 +428,9 @@ const kt = () => () => {
428
428
  const m = () => {
429
429
  r.forEach((p, b) => {
430
430
  u("key from setTimeout foreach currItemSignalMap", b), l.has(b) || (l.add(b), C(() => {
431
- var B;
431
+ var J;
432
432
  p();
433
- const j = a.indexOf(b), S = (B = o.get(b)) == null ? void 0 : B();
433
+ const j = a.indexOf(b), S = (J = o.get(b)) == null ? void 0 : J();
434
434
  S && (u(
435
435
  "call effect from setTimeout",
436
436
  b,
@@ -469,34 +469,34 @@ const kt = () => () => {
469
469
  }
470
470
  }), s ? e : e[0];
471
471
  }, Ft = (t) => nt in t, Wt = (t) => {
472
- const e = z("div")().addStyle({ display: "contents" }), s = (n) => (e.hostElement.innerHTML = n, e);
472
+ const e = B("div")().addStyle({ display: "contents" }), s = (n) => (e.hostElement.innerHTML = n, e);
473
473
  return typeof t == "string" ? s(t) : e.addEffect(() => {
474
474
  s(t());
475
475
  }), e;
476
- }, Q = (t, e, s) => t ? w(e) : s ? w(s) : z("div")().setAttribute("id", "empty_div_renderIf").addStyle({ display: "none" }), bt = (t, e, s) => w(() => Q(!!t(), e, s)), _t = (t, e, s) => typeof t == "boolean" ? Q(t, e, s) : bt(t, e, s), N = (t, e) => {
477
- const s = w(e);
476
+ }, Q = (t, e, s) => t ? v(e) : s ? v(s) : B("div")().setAttribute("id", "empty_div_renderIf").addStyle({ display: "none" }), bt = (t, e, s) => v(() => Q(!!t(), e, s)), _t = (t, e, s) => typeof t == "boolean" ? Q(t, e, s) : bt(t, e, s), N = (t, e) => {
477
+ const s = v(e);
478
478
  return typeof t == "boolean" ? [s].flat().forEach((n) => n.hostElement.style.display = t ? "block" : "none") : C(() => {
479
479
  const n = t() ? "block" : "none";
480
480
  [s].flat().forEach((r) => r.hostElement.style.display = n);
481
481
  }), s;
482
- }, zt = (t, e, s) => {
482
+ }, Bt = (t, e, s) => {
483
483
  const n = [N(t, e)].flat();
484
484
  return s && n.push(
485
485
  ...[N(
486
486
  () => typeof t == "boolean" ? !t : !t(),
487
487
  s
488
488
  )].flat()
489
- ), w(() => n);
489
+ ), v(() => n);
490
490
  }, Et = (t, e) => {
491
491
  u("createCustomElement", t);
492
- const s = document.createElement(t), n = at(s);
492
+ const s = document.createElement(t), n = lt(s);
493
493
  return Z(n, e);
494
494
  }, yt = (t, e) => {
495
495
  const s = t.split(" ").slice(1).map((r) => r.trim()), n = Et(t.split(" ")[0], e);
496
496
  return Array.isArray(s) && s.length > 0 && n.addClass(...s), (...r) => {
497
- A("@rcreateCustomEl content", t, r);
497
+ g("@rcreateCustomEl content", t, r);
498
498
  const o = r.filter(Boolean).flat().flatMap(
499
- (a) => typeof a == "function" && !y(a) ? w(() => a(n)) : a
499
+ (a) => typeof a == "function" && !y(a) ? v(() => a(n)) : a
500
500
  );
501
501
  return n.hostElement.allSlotContent = o, n.hostElement.slotContent = o.filter(tt).reduce(
502
502
  (a, l) => {
@@ -508,16 +508,16 @@ const kt = () => () => {
508
508
  };
509
509
  }, St = (t, e, s) => yt(
510
510
  `${t.renderTagName}${e && typeof e == "string" ? " " + e : ""}`,
511
- x(e) ? e : e && typeof e == "string" ? s : void 0
512
- ), Bt = () => {
511
+ T(e) ? e : e && typeof e == "string" ? s : void 0
512
+ ), Jt = () => {
513
513
  const t = () => {
514
514
  };
515
515
  return t.oldValue = null, t;
516
- }, Jt = () => ({}), qt = (t, e, s) => {
516
+ }, qt = () => ({}), zt = (t, e, s) => {
517
517
  const n = e ? At(e, s)(t) : t;
518
518
  return (r, ...o) => {
519
519
  const a = [...o];
520
- return r && !x(r) && a.unshift(r), St(n, x(r) ? r : {})(...a);
520
+ return r && !T(r) && a.unshift(r), St(n, T(r) ? r : {})(...a);
521
521
  };
522
522
  }, i = {}, wt = [
523
523
  "div",
@@ -584,29 +584,29 @@ const kt = () => () => {
584
584
  wt.forEach((t) => {
585
585
  i[t] = (e, ...s) => {
586
586
  let n = [...s];
587
- return e && !x(e) && (n = [e].concat(n)), z(t, x(e) ? e : {})(...n);
587
+ return e && !T(e) && (n = [e].concat(n)), B(t, T(e) ? e : {})(...n);
588
588
  };
589
589
  });
590
- const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut = i.table, Xt = i.tr, Zt = i.td, Qt = i.th, Yt = i.ul, Kt = i.li, te = i.ol, ee = i.form, se = i.label, ne = i.select, re = i.option, oe = i.textarea, ie = i.img, ae = i.a, le = i.p, ce = i.h1, he = i.h2, pe = i.h3, de = i.h4, fe = i.h5, ue = i.h6, me = i.br, Ce = i.hr, be = i.pre, Ee = i.code, ye = i.nav, Se = i.header, we = i.footer, ve = i.main, Ae = i.aside, ge = i.article, Le = i.figure, Re = i.figcaption, Oe = i.blockquote, je = i.cite, Te = i.small, xe = i.strong, $e = i.em, Me = i.b, ke = i.i, Ie = i.u, Pe = i.s, He = i.sub, Fe = i.sup, We = i.mark, _e = i.del, ze = i.ins, Be = i.details, Je = i.summary, qe = i.progress, De = i.meter, Ne = i.audio, Ve = i.video, Ge = i.canvas, Ue = i.slot, Xe = (t) => (e) => t(e).addClass(...e.classList ?? []).addReactiveClass(e.reactiveClassList ?? {}), k = "eventProps", I = "EVENT_CONFIG", T = "observedAttributes", Ze = () => (t, e) => {
591
- Reflect.get(t, T) || Reflect.defineProperty(t, T, {
590
+ const vt = i.div, Dt = i.span, Nt = i.section, Gt = i.input, Vt = i.button, Ut = i.table, Xt = i.tr, Zt = i.td, Qt = i.th, Yt = i.ul, Kt = i.li, te = i.ol, ee = i.form, se = i.label, ne = i.select, re = i.option, oe = i.textarea, ie = i.img, le = i.a, ae = i.p, ce = i.h1, he = i.h2, pe = i.h3, de = i.h4, fe = i.h5, ue = i.h6, me = i.br, Ce = i.hr, be = i.pre, Ee = i.code, ye = i.nav, Se = i.header, we = i.footer, ve = i.main, Ae = i.aside, ge = i.article, Le = i.figure, Re = i.figcaption, Oe = i.blockquote, je = i.cite, xe = i.small, Te = i.strong, $e = i.em, Me = i.b, Ie = i.i, Pe = i.u, ke = i.s, He = i.sub, Fe = i.sup, We = i.mark, _e = i.del, Be = i.ins, Je = i.details, qe = i.summary, ze = i.progress, De = i.meter, Ne = i.audio, Ge = i.video, Ve = i.canvas, Ue = i.slot, Xe = (t) => (e) => t(e).addClass(...e.classList ?? []).addReactiveClass(e.reactiveClassList ?? {}), I = "eventProps", P = "EVENT_CONFIG", x = "observedAttributes", Ze = () => (t, e) => {
591
+ Reflect.get(t, x) || Reflect.defineProperty(t, x, {
592
592
  value: []
593
- }), Reflect.get(t, T).push(
593
+ }), Reflect.get(t, x).push(
594
594
  M(e)
595
595
  );
596
596
  }, Qe = (t) => (e, s) => {
597
- Reflect.get(e, k) || Reflect.defineProperty(e, k, {
597
+ Reflect.get(e, I) || Reflect.defineProperty(e, I, {
598
598
  value: []
599
- }), Reflect.get(e, I) || Reflect.defineProperty(e, I, {
599
+ }), Reflect.get(e, P) || Reflect.defineProperty(e, P, {
600
600
  value: {}
601
- }), Reflect.get(e, I)[s] = {
601
+ }), Reflect.get(e, P)[s] = {
602
602
  bubbles: (t == null ? void 0 : t.bubbles) ?? !1,
603
603
  composed: (t == null ? void 0 : t.composed) ?? !1
604
- }, Reflect.get(e, k).push(s);
604
+ }, Reflect.get(e, I).push(s);
605
605
  }, At = (t, e = !1) => (s) => {
606
606
  u(
607
607
  t,
608
608
  "start register static attr",
609
- s.prototype[T]
609
+ s.prototype[x]
610
610
  );
611
611
  const n = [];
612
612
  if (s.styles) {
@@ -623,10 +623,10 @@ const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut =
623
623
  u("constructor", `%c${t}%c`);
624
624
  super(e, ...l);
625
625
  h(this, "effectCleanupHandleEvent", (l) => {
626
- this.effects.push(l);
626
+ this.effects.add(l);
627
627
  });
628
- h(this, "effects", []);
629
- A("@osheet", n), n.length > 0 && this.shadow.adoptedStyleSheets.push(...n);
628
+ h(this, "effects", /* @__PURE__ */ new Set());
629
+ g("@osheet", n), n.length > 0 && this.shadow.adoptedStyleSheets.push(...n);
630
630
  }
631
631
  render() {
632
632
  u("rwc: render from new class");
@@ -671,19 +671,19 @@ const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut =
671
671
  ((p = m.detail) == null ? void 0 : p.context) === c && (m.stopPropagation(), m.detail.callback(f));
672
672
  });
673
673
  }
674
- )), this.checkInjects(), (d = s.prototype[k]) == null || d.forEach(
674
+ )), this.checkInjects(), (d = s.prototype[I]) == null || d.forEach(
675
675
  (c) => {
676
676
  this[c] = (f) => {
677
- const E = s.prototype[I][c], { bubbles: m, composed: p } = E;
677
+ const E = s.prototype[P][c], { bubbles: m, composed: p } = E;
678
678
  y(f) ? C(() => {
679
- A("@oemit reactive value", f()), this.dispatchEvent(
679
+ g("@oemit reactive value", f()), this.dispatchEvent(
680
680
  new CustomEvent(c, {
681
681
  detail: f(),
682
682
  bubbles: m,
683
683
  composed: p
684
684
  })
685
685
  );
686
- }) : (A("@oemit value", f), this.dispatchEvent(
686
+ }) : (g("@oemit value", f), this.dispatchEvent(
687
687
  new CustomEvent(c, {
688
688
  detail: f,
689
689
  bubbles: m,
@@ -694,9 +694,9 @@ const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut =
694
694
  }
695
695
  ), u("start render", `%c${t}%c`, t);
696
696
  const l = () => {
697
- u("rwc: insertRenderTemplate"), g.push(this.effectCleanupHandleEvent);
697
+ u("rwc: insertRenderTemplate"), L.push(this.effectCleanupHandleEvent);
698
698
  const c = this.render();
699
- this.shadow.appendChild(c.hostElement), W(this, s.prototype.connectedCallback), this.appendSlotContent(), g.pop();
699
+ this.shadow.appendChild(c.hostElement), W(this, s.prototype.connectedCallback), this.appendSlotContent(), L.pop();
700
700
  };
701
701
  if (this.rootStyle && !s.styles) {
702
702
  const c = (m) => m instanceof Promise || Array.isArray(m) && m.every((p) => p instanceof Promise), f = this.rootStyle, E = (m) => {
@@ -718,14 +718,14 @@ const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut =
718
718
  u(
719
719
  this.slotContext,
720
720
  this.slotContext && this.slotContext[c.name]
721
- ), A(
721
+ ), g(
722
722
  "@bslot element",
723
723
  c,
724
724
  `name:${c.name};`,
725
725
  c.assignedElements()
726
726
  ), c.assignedElements().forEach((f) => {
727
727
  const E = this.slotContext[c.name];
728
- this.slotContext && y(E) && (A(
728
+ this.slotContext && y(E) && (g(
729
729
  "@oslot element",
730
730
  c,
731
731
  `name:${c.name};`,
@@ -744,16 +744,16 @@ const vt = i.div, Dt = i.span, Nt = i.section, Vt = i.input, Gt = i.button, Ut =
744
744
  this.shadow.replaceChildren(), this.replaceChildren(), W(this, s.prototype.disconnectedCallback), this.effects.forEach((l) => {
745
745
  var d;
746
746
  (d = l.selfCleanup) == null || d.forEach((c) => c());
747
- }), this.effects = [];
747
+ }), this.effects.clear();
748
748
  }
749
749
  }
750
- return h(r, "observedAttributes", s.prototype[T] ?? []), h(r, "renderTagName", t), r.toString = () => t, customElements.get(t) ? console.error(
750
+ return h(r, "observedAttributes", s.prototype[x] ?? []), h(r, "renderTagName", t), r.toString = () => t, customElements.get(t) ? console.error(
751
751
  `название тега ${t} повторяется, компонент ${s.name} не зарегистрирован`
752
752
  ) : customElements.define(t, r), s.renderTagName = t, s;
753
753
  };
754
754
  export {
755
755
  O as BaseElement,
756
- ae as a,
756
+ le as a,
757
757
  Ct as addAttributeList,
758
758
  ft as addClassList,
759
759
  dt as addCustomAttributes,
@@ -764,47 +764,47 @@ export {
764
764
  Ae as aside,
765
765
  Ne as audio,
766
766
  Me as b,
767
- Tt as bindReactiveSignals,
767
+ xt as bindReactiveSignals,
768
768
  Oe as blockquote,
769
769
  me as br,
770
- Gt as button,
770
+ Vt as button,
771
771
  M as camelToKebab,
772
- Ge as canvas,
772
+ Ve as canvas,
773
773
  W as checkCall,
774
774
  je as cite,
775
775
  ct as classList,
776
- It as cls,
776
+ Pt as cls,
777
777
  Ee as code,
778
- A as colorLog,
778
+ g as colorLog,
779
779
  $t as combineLatest,
780
780
  At as component,
781
781
  Xe as createComponent,
782
782
  St as createCustom,
783
783
  yt as createCustomEl,
784
784
  Et as createCustomElement,
785
- z as createEl,
785
+ B as createEl,
786
786
  $ as createElement,
787
787
  jt as createSignal,
788
- at as customElementHelpers,
789
- Jt as defineSlotTemplate,
788
+ lt as customElementHelpers,
789
+ qt as defineSlotTemplate,
790
790
  _e as del,
791
- Be as details,
791
+ Je as details,
792
792
  st as disableLogs,
793
793
  vt as div,
794
794
  C as effect,
795
- V as effectMap,
796
- lt as elementHelpers,
795
+ G as effectMap,
796
+ at as elementHelpers,
797
797
  $e as em,
798
798
  Lt as enableLogs,
799
799
  Qe as event,
800
- kt as eventEmitter,
800
+ It as eventEmitter,
801
801
  Re as figcaption,
802
802
  Le as figure,
803
803
  we as footer,
804
- xt as forkJoin,
804
+ Tt as forkJoin,
805
805
  ee as form,
806
- Pt as getList,
807
- w as getSignalContent,
806
+ kt as getList,
807
+ v as getSignalContent,
808
808
  ce as h1,
809
809
  he as h2,
810
810
  pe as h3,
@@ -813,14 +813,14 @@ export {
813
813
  ue as h6,
814
814
  Se as header,
815
815
  Ce as hr,
816
- ke as i,
816
+ Ie as i,
817
817
  ie as img,
818
818
  Z as initComponent,
819
- Vt as input,
820
- ze as ins,
819
+ Gt as input,
820
+ Be as ins,
821
821
  Mt as isBaseElement,
822
822
  tt as isComponentConfig,
823
- x as isComponentInitConfig,
823
+ T as isComponentInitConfig,
824
824
  y as isReactiveSignal,
825
825
  Ft as isSlotTemplate,
826
826
  et as kebabToCamel,
@@ -830,44 +830,44 @@ export {
830
830
  We as mark,
831
831
  De as meter,
832
832
  ye as nav,
833
- Bt as newEventEmitter,
833
+ Jt as newEventEmitter,
834
834
  te as ol,
835
835
  re as option,
836
- le as p,
836
+ ae as p,
837
837
  be as pre,
838
- qe as progress,
838
+ ze as progress,
839
839
  u as projectLog,
840
840
  Ze as property,
841
841
  Q as renderIf,
842
842
  Ot as rs,
843
843
  bt as rxRenderIf,
844
- Pe as s,
844
+ ke as s,
845
845
  Nt as section,
846
846
  ne as select,
847
847
  pt as setChildren,
848
848
  Rt as setEffectDebugEnabled,
849
849
  ht as setEffects,
850
850
  D as setListeners,
851
- zt as show,
851
+ Bt as show,
852
852
  N as showIf,
853
- v as signal,
853
+ A as signal,
854
854
  Ht as signalComponent,
855
855
  Ue as slot,
856
- Te as small,
856
+ xe as small,
857
857
  Dt as span,
858
- xe as strong,
858
+ Te as strong,
859
859
  He as sub,
860
- Je as summary,
860
+ qe as summary,
861
861
  Fe as sup,
862
862
  Ut as table,
863
863
  Zt as td,
864
864
  oe as textarea,
865
865
  Qt as th,
866
866
  Xt as tr,
867
- Ie as u,
867
+ Pe as u,
868
868
  Yt as ul,
869
869
  Wt as unsafeHtml,
870
- qt as useCustomComponent,
871
- Ve as video,
870
+ zt as useCustomComponent,
871
+ Ge as video,
872
872
  _t as when
873
873
  };
@@ -14,7 +14,6 @@ export declare class HtmlComponentConfig<T extends ExtraHTMLElement> implements
14
14
  removeChild: ComponentConfig<T>["removeChild"];
15
15
  addHtmlContent: ComponentConfig<T>["addHtmlContent"];
16
16
  setHtmlContent: ComponentConfig<T>["setHtmlContent"];
17
- test(): void;
18
17
  addEventlistener(eventName: string, cb: any, options?: boolean | AddEventListenerOptions): this;
19
18
  setAttribute: ComponentConfig<T>["setAttribute"];
20
19
  setCustomAttribute: ComponentConfig<T>["setCustomAttribute"];
@@ -5,7 +5,6 @@ export interface SignalUpdateFunc<T> {
5
5
  export type CompareFn<T> = (oldValue: T, newValue: T) => boolean;
6
6
  export interface ReactiveSignal<T> {
7
7
  (): T;
8
- oldValue: Readonly<T>;
9
8
  initValue: Readonly<T>;
10
9
  set(value: T): void;
11
10
  forceSet(value: T): void;
@@ -1,2 +0,0 @@
1
- (function(o,y){typeof exports=="object"&&typeof module<"u"?y(exports):typeof define=="function"&&define.amd?define(["exports"],y):(o=typeof globalThis<"u"?globalThis:o||self,y(o.ReactiveComponent={}))})(this,function(o){"use strict";var Ze=Object.defineProperty;var Qe=(o,y,A)=>y in o?Ze(o,y,{enumerable:!0,configurable:!0,writable:!0,value:A}):o[y]=A;var d=(o,y,A)=>Qe(o,typeof y!="symbol"?y+"":y,A);const y=t=>t&&typeof t=="object"&&("classList"in t||"attributes"in t||"customAttributes"in t||"reactiveClassList"in t||"listeners"in t||"customListeners"in t||"children"in t||"effects"in t||"style"in t||Object.keys(t).some(e=>e.startsWith(".")||e.startsWith("@")||e.startsWith("$")))&&!("hostElement"in t),A=t=>t&&typeof t=="object"&&"hostElement"in t&&"append"in t&&"set"in t&&"addStyle"in t&&"setAttribute"in t&&"addClass"in t&&"addEffect"in t&&"addReactiveContent"in t&&"setReactiveContent"in t&&"clear"in t,F=(t,e,...s)=>{e&&e.apply(t,s)};let W=!0;const m=(...t)=>{W&&console.debug(["[rwc]",...t].join(" | "),...Array.from(t.join("").matchAll(/%c/gm)).map((e,s)=>s%2===0?"color:red":"color:inherit"))},M=t=>t.replace(/([A-Z])/gm,e=>`-${e.toLowerCase()}`),X=t=>t.replace(/-(\w)/gm,(e,s)=>s.toUpperCase()),L=(t,...e)=>{if(!W)return;const s={r:"color: #ff0000",g:"color: #00ff00",b:"color: #0000ff",y:"color: #ffff00",p:"color: #800080",c:"color: #00ffff",o:"color: #ffa500",w:"color: #808080"},n=t.match(/@[rgbpycow]/g)||[],r=n.map(l=>{const c=l.slice(1);return s[c]||"color: inherit"});let i=t;n.forEach(l=>{const c=new RegExp(`\\${l}([^\\s,]+)`,"g");i=i.replace(c,"%c$1")}),console.log(i,...r,...e)},Et=()=>{W=!0},Z=()=>{W=!1};Z();const j=[];let q=!1;const yt=t=>{q=t},D=new Map,O=new WeakMap,_=[],k=[];function v(t,e){const s=new Set;let n=(e==null?void 0:e.signalCompareFn)||(()=>!0);function r(){var l;const i=_[_.length-1];if(i&&!("fake"in i&&i.fake)){const c=O.get(i),u=c==null?void 0:c.parent;if(u){const h=O.get(u);h==null||h.cleanupFns.add(()=>{s.delete(i)})}"selfCleanup"in i||(i.selfCleanup=[]),i.selfCleanup.push(()=>{s.delete(i)}),s.add(i),q&&((l=D.get(i.effectId))==null||l.signals.push(r))}return t}return r.signalId=`${(e==null?void 0:e.name)||""}_${Math.random().toString(36).substring(2,15)}`,r.getSubscribers=()=>[...s],r.setCompareFn=function(i){return n=i,r},r.clearSubscribers=function(){s.clear()},r.peek=function(){return Object.freeze(t)},r.initValue=Object.freeze(t),r.oldValue=Object.freeze(t),r.forceSet=function(i){r.oldValue=Object.freeze(t),t=i,s.forEach(l=>{setTimeout(()=>{const c=l,u=O.get(c);u&&u.cleanupFns.size>0&&(u.cleanupFns.forEach(h=>h()),u.cleanupFns.clear()),k.push(c),c(),k.pop()})})},r.set=function(i,l=n){t!==i&&l(t,i)&&r.forceSet(i)},r.update=function(i){r.set(i(t))},r.pipe=(i,l)=>{const c=v(null);return b(()=>{const u=r();b(()=>{const h=i(u);h instanceof Promise?h.then(p=>c.set(p)):w(h)?b(()=>c.set(h())):c.set(h)},l)}),c},r}function b(t,e){var l;const s=`${(e==null?void 0:e.name)||""}_${Math.random().toString(36).substring(2,15)}`;m("current effect",`%c${s}%c`);const n=t;t=()=>(m("current effect callback",`%c${s}%c`),n()),"fake"in n&&n.fake&&(t.fake=!0),t.effectId=s;const r=k[k.length-1];q&&D.set(s,{signals:[],parent:(r==null?void 0:r.effectId)||null}),O.has(t)||O.set(t,{cleanupFns:new Set});const i=O.get(t);r?i.parent=r:delete i.parent,k.push(t),_.push(t),t(),(l=j[j.length-1])==null||l.call(j,t),_.pop(),k.pop()}const w=t=>!!t&&["object","function"].includes(typeof t)&&"set"in t&&"oldValue"in t&&"update"in t&&"forceSet"in t;function St(t,...e){const s=v("");return b(()=>{const n=e.map(i=>w(i)?String(i()):String(i)),r=[t[0]];n.forEach((i,l)=>{r.push(i,t[l+1])}),s.set(r.join(""))}),s}function wt(t,e){const s=v(e??null),n=r=>s.set(r);return t instanceof Promise?t.then(n):typeof t=="function"&&b(()=>{const r=t();r instanceof Promise?r.then(n):w(r)?b(()=>n(r())):n(r)}),s}function vt(t,e){let s=t(),n=e();b(()=>{const r=t(),i=e();r!==i&&(r!==s?e.set(r):i!==n&&t.set(i)),s=r,n=i})}function gt(...t){let e=t.map(n=>n());const s=v(e);return t.forEach((n,r)=>{b(()=>{const i=()=>e.filter(l=>l!==void 0).length;i()===t.length&&(e=Array.from(e).fill(void 0)),e[r]=n(),i()===t.length&&s.set([...e])})}),s}const At=(...t)=>{const e=v([]);return b(()=>{e.set(t.map(s=>s()))}),e};class R extends HTMLElement{constructor(s=!1){super();d(this,"isSlotLazyLoading",!1);d(this,"slotTemplate");d(this,"slotContext");d(this,"rootStyle");d(this,"modelValue");d(this,"providers");d(this,"appendAllSlotContent");d(this,"allSlotContent",[]);d(this,"slotContent",{});d(this,"htmlSlotContent",{});d(this,"shadow");d(this,"injects",{});this.shadow=this.attachShadow({mode:s?"closed":"open"})}appendChild(s,n=!0){var r;if(this.isSlotLazyLoading&&n){if(s instanceof HTMLElement){const i=s.slot||"default";this.htmlSlotContent[i]||(this.htmlSlotContent[i]=[]),(r=this.htmlSlotContent[i])==null||r.push(s)}}else return super.appendChild(s)}appendSlotContent(){var s;(s=this.appendAllSlotContent)==null||s.call(this)}inject(s){return m("%cinject%c",s),this.injects[s]||(this.injects[s]=v(null)),this.injects[s]}checkInjects(){Object.entries(this.injects).forEach(([s,n])=>{m("%cinject%c",`%c${s}%c`,"from BaseElement (dispatch event)"),this.shadow.dispatchEvent(new CustomEvent(s,{detail:{context:s,callback:r=>b(()=>{n.set(r())})},bubbles:!0,composed:!0}))})}setReactiveValue(s){this.modelValue=s}}d(R,"observedAttributes",[]),d(R,"renderTagName",""),d(R,"styles");const Lt=t=>"render"in t&&"setReactiveValue"in t,Rt="handleSlotContext",Q="onConnected",Y=t=>typeof t=="string"?t:JSON.stringify(t),Tt=t=>{const e=document.createElement("span");return e.textContent=Y(t),e},K=(t,e)=>(t.appendChild(Tt(e)),t),jt=(t,e)=>(t.innerHTML="",K(t,e)),x=t=>{const e=document.createElement("span");return b(()=>{const s=t();e.textContent=Y(s)}),e};class tt{constructor(e){d(this,"wrapper");d(this,"hostElement");d(this,"append",(...e)=>(e.forEach(s=>{this.wrapper.appendChild(s.hostElement),Q in s.hostElement&&setTimeout(()=>{var n,r;(r=(n=s.hostElement).onConnected)==null||r.call(n,s,s.hostElement)})}),this));d(this,"set",(...e)=>{this.clear();const s=document.createDocumentFragment();return e.forEach(n=>{s.appendChild(n.hostElement)}),this.wrapper.appendChild(s),this});d(this,"removeChild",(...e)=>(e.forEach(s=>{Array.from(this.wrapper.childNodes.values()).some(n=>n===s.hostElement)&&this.wrapper.removeChild(s.hostElement)}),this));d(this,"addHtmlContent",e=>(K(this.wrapper,e),this));d(this,"setHtmlContent",e=>(jt(this.wrapper,e),this));d(this,"setAttribute",(e,s)=>{let n;if(typeof s=="boolean"&&!(this.wrapper instanceof R))if(s)n="";else{this.removeAttribute(e);const r=e.toLowerCase();return r in this.wrapper&&(this.wrapper[r]=null),this}else typeof s!="string"?n=JSON.stringify(s):n=s;if(this.wrapper.setAttribute(M(e),n),!(this.wrapper instanceof R)){const r=e.toLowerCase();r in this.wrapper&&(this.wrapper[r]=s)}return this});d(this,"setCustomAttribute",(e,s)=>{let n;return typeof s!="string"?n=JSON.stringify(s):n=s,this.wrapper.setAttribute(M(e),n),this});d(this,"setReactiveAttribute",(e,s)=>(b(()=>this.setAttribute(e,s())),this));d(this,"setReactiveCustomAttribute",(e,s)=>(b(()=>this.setCustomAttribute(e,s())),this));d(this,"removeAttribute",e=>(this.wrapper.removeAttribute(M(e)),this));d(this,"addStyle",e=>(Object.entries(e).forEach(([s,n])=>{const r=s.startsWith("--");typeof n=="function"?this.addEffect(()=>{if(r){const i=String(n()||"");this.wrapper.style.setProperty(s,i)}else this.wrapper.style[s]=n()}):typeof n=="string"&&(r?this.wrapper.style.setProperty(s,n):this.wrapper.style[s]=n)}),this));d(this,"onConnected",e=>(Reflect.defineProperty(this.wrapper,Q,{get(){return e}}),this));d(this,"addClass",(...e)=>(e.forEach(s=>{typeof s=="string"?this.wrapper.classList.add(...s.split(" ").flatMap(n=>n.split(`
2
- `)).map(n=>n.trim()).filter(Boolean)):(()=>{let n=null;this.addEffect(()=>{const r=s();r.length>0&&(n?this.replaceClass(n,r):this.addClass(r),n=r)})})()}),this));d(this,"setClass",(...e)=>(this.wrapper.classList.remove(...this.wrapper.classList),this.wrapper.classList.add(...e),this));d(this,"addReactiveClass",e=>(Object.keys(e).forEach(s=>{b(()=>{e[s]()?this.addClass(s):this.removeClass(s)})}),this));d(this,"removeClass",(...e)=>(this.wrapper.classList.remove(...e),this));d(this,"replaceClass",(e,s)=>(this.wrapper.classList.replace(e,s),this));d(this,"addEffect",e=>(b(()=>e(this,this.hostElement)),this));d(this,"addReactiveContent",e=>(this.wrapper.appendChild(x(e)),this));d(this,"setReactiveContent",e=>(this.clear(),this.wrapper.appendChild(x(e)),this));d(this,"clear",()=>(this.wrapper.innerHTML="",this));this.wrapper=e,this.hostElement=e}test(){console.log("test")}addEventlistener(e,s,n=!1){return this.wrapper.addEventListener(e,r=>s(r,this,this.wrapper),n),this}}class Ot extends tt{constructor(){super(...arguments);d(this,"setReactiveValue",s=>(this.wrapper instanceof R&&this.wrapper.setReactiveValue(s),this));d(this,"setSlotTemplate",s=>{const n=this.wrapper.slotTemplate;return n&&Object.entries(s).forEach(([r,i])=>{n[r]=i}),this})}}const kt=()=>()=>{},et=t=>new Ot(t),st=t=>new tt(t),nt=(t,...e)=>({classList:[...t.map(s=>s.trim()).filter(Boolean),...e]}),It=(t,...e)=>nt(t,...e),G=(t,e)=>{if(!e)return t;const s=Object.keys(e||{}).filter(n=>n.startsWith(".")||n.startsWith("@")||n.startsWith("$"));return s.filter(n=>n.startsWith(".")).forEach(n=>{e!=null&&e.attributes||(e.attributes={}),e.attributes[n.slice(1)]=e[n]}),s.filter(n=>n.startsWith("@")).forEach(n=>{e!=null&&e.listeners||(e.listeners={});const r=n.slice(1);e.listeners[r]=e[n]}),s.filter(n=>n.startsWith("$")).forEach(n=>{e!=null&&e.effects||(e.effects=[]),e.effects.push(e[n])}),at(t,e.classList),ct(t,e.style),ht(t,e.attributes),lt(t,e.reactiveClassList),it(t,e.customAttributes),rt(t,e.children),ot(t,e.effects),N(t,e.listeners),N(t,e.customListeners),t},N=(t,e)=>{e&&Object.entries(e).forEach(([s,n])=>{typeof n=="function"&&t.addEventlistener(s,n)})},ot=(t,e)=>e==null?void 0:e.forEach(s=>t.addEffect(s)),rt=(t,e)=>$(t,...e||[]),it=(t,e)=>{const s=e;s&&Object.keys(s).forEach(n=>{w(s[n])?t.setReactiveCustomAttribute(n,s[n]):typeof s[n]=="function"?t.addEffect(()=>{t.setCustomAttribute(n,s[n]())}):t.setCustomAttribute(n,s[n])})},at=(t,e)=>t.addClass(...e||[]),lt=(t,e)=>t.addReactiveClass(e||{}),ct=(t,e)=>t.addStyle(e||{}),ht=(t,e)=>{const s=e,n=(r,i)=>{i&&(w(i)?t.setReactiveAttribute(r,i):typeof i=="function"?t.addEffect(()=>{t.setAttribute(r,i())}):t.setAttribute(r,i))};s&&Object.keys(s).forEach(r=>{n(r,s[r])})},$=(t,...e)=>(e.forEach(s=>{typeof s=="string"?s.trim().length>0&&t.addHtmlContent(s):w(s)?t.addReactiveContent(s):t.append(s)}),t),I=(t,e)=>{const s=document.createElement(t),n=st(s);return G(n,e)},B=(t,e)=>{const[s,...n]=t.split(" ").map(i=>i.trim()),r=I(s,e);return n.length>0&&r.addClass(...n),(...i)=>$(r,...i.filter(Boolean).flat().flatMap(l=>typeof l=="function"&&!w(l)?g(()=>l(r)):l))},g=t=>I("div").addStyle({display:"contents"}).addEffect(e=>{const s=t(),n=[];Array.isArray(s)?n.push(...s):n.push(s),e.clear(),$(e,...n)}),Mt=(t,e,s)=>{const n=I("div").addStyle({display:"contents"}),r=new Map,i=new Map;let l=[];const c=new Set;let u=t.peek();const h=p=>{c.delete(p),r.delete(p),i.delete(p)};return b(()=>{const p=t();l=p.map(e).map(f=>typeof f=="string"?f:f.toString());const S=Array.from(n.hostElement.children);m("containerChildren",S,l),S.forEach(f=>{const E=f.dataset.key;l.includes(E)||(m("remove element",E,f),f.remove(),h(E))}),l.forEach(f=>{var P,T;const E=p[l.indexOf(f)];r.has(f)?JSON.stringify(E)!==JSON.stringify(u[l.indexOf(f)])&&((P=n.hostElement.querySelector(`[data-key="${f}"]`))==null||P.remove(),(T=r.get(f))==null||T.set(Math.random().toString(36).substring(2,15)),i.set(f,()=>s(E,l.indexOf(f),p).setCustomAttribute("data-key",f))):(m("create new element",f,E),r.set(f,v(Math.random().toString(36).substring(2,15))),i.set(f,()=>s(E,l.indexOf(f),p).setCustomAttribute("data-key",f)))}),u=[...p.map(f=>({...f}))];const C=()=>{r.forEach((f,E)=>{m("key from setTimeout foreach currItemSignalMap",E),c.has(E)||(c.add(E),b(()=>{var bt;f();const P=l.indexOf(E),T=(bt=i.get(E))==null?void 0:bt();T&&(m("call effect from setTimeout",E,T.hostElement),P<=n.hostElement.children.length-1?n.hostElement.insertBefore(T.hostElement,n.hostElement.children[P]):n.hostElement.append(T.hostElement))}))})};Promise.resolve().then(()=>C())}),n},$t=t=>{let e=[I("div")],s=!1;return b(()=>{var i,l;const n=t();s=Array.isArray(n);const r=[];r.push(...[n].flat()),r.length===0&&r.push(I("div").addStyle({display:"none"}).setAttribute("id","empty_template"));try{m("newReactiveComponent.map",r.map(c=>{var u;return m("newReactiveComponent hostElement",c.hostElement),(u=c.hostElement)==null?void 0:u.id})),m("currComponent[0].hostElement?.id",(i=e[0].hostElement)==null?void 0:i.id,e),(l=e[0].hostElement)==null||l.replaceWith(...r.map(c=>c.hostElement)),e.slice(1).forEach(c=>{var u;return(u=c.hostElement)==null?void 0:u.remove()}),e=r}catch(c){console.error(c)}}),s?e:e[0]},Ht=t=>Rt in t,Pt=t=>{const e=B("div")().addStyle({display:"contents"}),s=n=>(e.hostElement.innerHTML=n,e);return typeof t=="string"?s(t):e.addEffect(()=>{s(t())}),e},V=(t,e,s)=>t?g(e):s?g(s):B("div")().setAttribute("id","empty_div_renderIf").addStyle({display:"none"}),dt=(t,e,s)=>g(()=>V(!!t(),e,s)),Ft=(t,e,s)=>typeof t=="boolean"?V(t,e,s):dt(t,e,s),U=(t,e)=>{const s=g(e);return typeof t=="boolean"?[s].flat().forEach(n=>n.hostElement.style.display=t?"block":"none"):b(()=>{const n=t()?"block":"none";[s].flat().forEach(r=>r.hostElement.style.display=n)}),s},Wt=(t,e,s)=>{const n=[U(t,e)].flat();return s&&n.push(...[U(()=>typeof t=="boolean"?!t:!t(),s)].flat()),g(()=>n)},ft=(t,e)=>{m("createCustomElement",t);const s=document.createElement(t),n=et(s);return G(n,e)},ut=(t,e)=>{const s=t.split(" ").slice(1).map(r=>r.trim()),n=ft(t.split(" ")[0],e);return Array.isArray(s)&&s.length>0&&n.addClass(...s),(...r)=>{L("@rcreateCustomEl content",t,r);const i=r.filter(Boolean).flat().flatMap(l=>typeof l=="function"&&!w(l)?g(()=>l(n)):l);return n.hostElement.allSlotContent=i,n.hostElement.slotContent=i.filter(A).reduce((l,c)=>{const u=c.hostElement.getAttribute("slot")||"default";return l[u]||(l[u]=[]),l[u].push(c),l},{}),n.hostElement.appendAllSlotContent=()=>$(n,...i),n}},pt=(t,e,s)=>ut(`${t.renderTagName}${e&&typeof e=="string"?" "+e:""}`,y(e)?e:e&&typeof e=="string"?s:void 0),_t=()=>{const t=()=>{};return t.oldValue=null,t},Bt=()=>({}),Jt=(t,e,s)=>{const n=e?Ct(e,s)(t):t;return(r,...i)=>{const l=[...i];return r&&!y(r)&&l.unshift(r),pt(n,y(r)?r:{})(...l)}},a={};["div","span","section","input","button","table","tr","td","th","ul","li","ol","form","label","select","option","textarea","img","a","p","h1","h2","h3","h4","h5","h6","br","hr","pre","code","nav","header","footer","main","aside","article","figure","figcaption","blockquote","cite","small","strong","em","b","i","u","s","sub","sup","mark","del","ins","details","summary","progress","meter","audio","video","canvas","slot"].forEach(t=>{a[t]=(e,...s)=>{let n=[...s];return e&&!y(e)&&(n=[e].concat(n)),B(t,y(e)?e:{})(...n)}});const mt=a.div,zt=a.span,qt=a.section,Dt=a.input,Gt=a.button,Nt=a.table,Vt=a.tr,Ut=a.td,Xt=a.th,Zt=a.ul,Qt=a.li,Yt=a.ol,Kt=a.form,xt=a.label,te=a.select,ee=a.option,se=a.textarea,ne=a.img,oe=a.a,re=a.p,ie=a.h1,ae=a.h2,le=a.h3,ce=a.h4,he=a.h5,de=a.h6,fe=a.br,ue=a.hr,pe=a.pre,me=a.code,Ce=a.nav,be=a.header,Ee=a.footer,ye=a.main,Se=a.aside,we=a.article,ve=a.figure,ge=a.figcaption,Ae=a.blockquote,Le=a.cite,Re=a.small,Te=a.strong,je=a.em,Oe=a.b,ke=a.i,Ie=a.u,Me=a.s,$e=a.sub,He=a.sup,Pe=a.mark,Fe=a.del,We=a.ins,_e=a.details,Be=a.summary,Je=a.progress,ze=a.meter,qe=a.audio,De=a.video,Ge=a.canvas,Ne=a.slot,Ve=t=>e=>t(e).addClass(...e.classList??[]).addReactiveClass(e.reactiveClassList??{}),J="eventProps",z="EVENT_CONFIG",H="observedAttributes",Ue=()=>(t,e)=>{Reflect.get(t,H)||Reflect.defineProperty(t,H,{value:[]}),Reflect.get(t,H).push(M(e))},Xe=t=>(e,s)=>{Reflect.get(e,J)||Reflect.defineProperty(e,J,{value:[]}),Reflect.get(e,z)||Reflect.defineProperty(e,z,{value:{}}),Reflect.get(e,z)[s]={bubbles:(t==null?void 0:t.bubbles)??!1,composed:(t==null?void 0:t.composed)??!1},Reflect.get(e,J).push(s)},Ct=(t,e=!1)=>s=>{m(t,"start register static attr",s.prototype[H]);const n=[];if(s.styles){const i=s.styles,l=[];Array.isArray(i)?l.push(...i):l.push(i),l.forEach(c=>{const u=new CSSStyleSheet;u.replaceSync(c),n.push(u);const h=new CSSStyleSheet;h.replaceSync(c.slice(c.indexOf("@property"))),document.adoptedStyleSheets.push(h)})}class r extends s{constructor(...c){m("constructor",`%c${t}%c`);super(e,...c);d(this,"effectCleanupHandleEvent",c=>{this.effects.push(c)});d(this,"effects",[]);L("@osheet",n),n.length>0&&this.shadow.adoptedStyleSheets.push(...n)}render(){m("rwc: render from new class");let c=mt();const u=()=>{m("wrapperEffectCallback"),c=s.prototype.render.call(this)};return u.fake=!0,b(u),c}attributeChangedCallback(c,u,h){m("%cAttribute has changed.%c",`%c${c}%c`,`oldValue: ${u}, newValue: ${h}`,`%c${t}%c`);try{h=JSON.parse(h)}catch{}const p=X(c);if(p in this&&w(this[p])){const S=this[p];h===null?(S.set(S.initValue),this.removeAttribute(c)):S.set(h)}F(this,s.prototype.attributeChangedCallback,c,u,h)}connectedCallback(){var u;m("rwc: connectedCallback"),m("connectedCallback",`%c${t}%c`,this),this.providers&&Object.keys(this.providers).length>0&&(m("WRAPPER for providers",t),Object.entries(this.providers).forEach(([h,p])=>{m("register provider",h,p()),this.addEventListener(h,S=>{var f;m("send provider",h,p());const C=S;((f=C.detail)==null?void 0:f.context)===h&&(C.stopPropagation(),C.detail.callback(p))})})),this.checkInjects(),(u=s.prototype[J])==null||u.forEach(h=>{this[h]=p=>{const S=s.prototype[z][h],{bubbles:C,composed:f}=S;w(p)?b(()=>{L("@oemit reactive value",p()),this.dispatchEvent(new CustomEvent(h,{detail:p(),bubbles:C,composed:f}))}):(L("@oemit value",p),this.dispatchEvent(new CustomEvent(h,{detail:p,bubbles:C,composed:f})))}}),m("start render",`%c${t}%c`,t);const c=()=>{m("rwc: insertRenderTemplate"),j.push(this.effectCleanupHandleEvent);const h=this.render();this.shadow.appendChild(h.hostElement),F(this,s.prototype.connectedCallback),this.appendSlotContent(),j.pop()};if(this.rootStyle&&!s.styles){const h=C=>C instanceof Promise||Array.isArray(C)&&C.every(f=>f instanceof Promise),p=this.rootStyle,S=C=>{const f=new CSSStyleSheet;f.replaceSync(C),this.shadow.adoptedStyleSheets.push(f);const E=new CSSStyleSheet;E.replaceSync(C.slice(C.indexOf("@property"))),document.adoptedStyleSheets.push(E)};if(h(p)){const C=[];Array.isArray(p)?C.push(...p):C.push(p),Promise.all(C).then(f=>f.forEach(E=>S(E.default))).then(()=>c())}else{const C=[];Array.isArray(p)?C.push(...p):C.push(p),C.forEach(f=>S(f)),c()}}else c();this.slotContext&&Object.keys(this.slotContext).length>0&&this.shadow.querySelectorAll("slot").forEach(h=>{m(this.slotContext,this.slotContext&&this.slotContext[h.name]),L("@bslot element",h,`name:${h.name};`,h.assignedElements()),h.assignedElements().forEach(p=>{const S=this.slotContext[h.name];this.slotContext&&w(S)&&(L("@oslot element",h,`name:${h.name};`,h.assignedElements()),b(()=>{p.dispatchEvent(new CustomEvent("handleSlotContext",{detail:S()}))}))})})}disconnectedCallback(){this.shadow.replaceChildren(),this.replaceChildren(),F(this,s.prototype.disconnectedCallback),this.effects.forEach(c=>{var u;(u=c.selfCleanup)==null||u.forEach(h=>h())}),this.effects=[]}}return d(r,"observedAttributes",s.prototype[H]??[]),d(r,"renderTagName",t),r.toString=()=>t,customElements.get(t)?console.error(`название тега ${t} повторяется, компонент ${s.name} не зарегистрирован`):customElements.define(t,r),s.renderTagName=t,s};o.BaseElement=R,o.a=oe,o.addAttributeList=ht,o.addClassList=at,o.addCustomAttributes=it,o.addReactiveClassList=lt,o.addStyleList=ct,o.appendContentItem=$,o.article=we,o.aside=Se,o.audio=qe,o.b=Oe,o.bindReactiveSignals=vt,o.blockquote=Ae,o.br=fe,o.button=Gt,o.camelToKebab=M,o.canvas=Ge,o.checkCall=F,o.cite=Le,o.classList=nt,o.cls=It,o.code=me,o.colorLog=L,o.combineLatest=At,o.component=Ct,o.createComponent=Ve,o.createCustom=pt,o.createCustomEl=ut,o.createCustomElement=ft,o.createEl=B,o.createElement=I,o.createSignal=wt,o.customElementHelpers=et,o.defineSlotTemplate=Bt,o.del=Fe,o.details=_e,o.disableLogs=Z,o.div=mt,o.effect=b,o.effectMap=D,o.elementHelpers=st,o.em=je,o.enableLogs=Et,o.event=Xe,o.eventEmitter=kt,o.figcaption=ge,o.figure=ve,o.footer=Ee,o.forkJoin=gt,o.form=Kt,o.getList=Mt,o.getSignalContent=g,o.h1=ie,o.h2=ae,o.h3=le,o.h4=ce,o.h5=he,o.h6=de,o.header=be,o.hr=ue,o.i=ke,o.img=ne,o.initComponent=G,o.input=Dt,o.ins=We,o.isBaseElement=Lt,o.isComponentConfig=A,o.isComponentInitConfig=y,o.isReactiveSignal=w,o.isSlotTemplate=Ht,o.kebabToCamel=X,o.label=xt,o.li=Qt,o.main=ye,o.mark=Pe,o.meter=ze,o.nav=Ce,o.newEventEmitter=_t,o.ol=Yt,o.option=ee,o.p=re,o.pre=pe,o.progress=Je,o.projectLog=m,o.property=Ue,o.renderIf=V,o.rs=St,o.rxRenderIf=dt,o.s=Me,o.section=qt,o.select=te,o.setChildren=rt,o.setEffectDebugEnabled=yt,o.setEffects=ot,o.setListeners=N,o.show=Wt,o.showIf=U,o.signal=v,o.signalComponent=$t,o.slot=Ne,o.small=Re,o.span=zt,o.strong=Te,o.sub=$e,o.summary=Be,o.sup=He,o.table=Nt,o.td=Ut,o.textarea=se,o.th=Xt,o.tr=Vt,o.u=Ie,o.ul=Zt,o.unsafeHtml=Pt,o.useCustomComponent=Jt,o.video=De,o.when=Ft,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});